ramoska blog logo showing grasshoper

ramoska

Stick to Pelican or switch to Writerside

Posted on November 2023 in Web development

Starting again

After being laid off from Shopify not so long ago I realised that I don't have a lot to show for myself in terms of things I learned, problems I worked on, and solutions I came up with. Writing this blog is a way for me to document my progress and share my expertise with others.

When I started writing this blog before, I used Nikola as a static site generator. Nikola was chosen over other generators because it was written in Python, language I was almost in love with, although I worked with PHP. And most likely I would use Nikola again if not my memory leading me astray. For the love of me I was sure I used Pelican as a static site generator. And I was frustrated that I couldn't get it up and running again. After some tweaking and small adjustments to my old entries I managed to get it up and running with Pelican. After doing that I found that I actually used Nikola 7 years ago. But new config was smaller, got nice tools like Makefile (or tasks.py if you prefer invoke) and I decided to stick with it. I also found some other difference comparing both that I favoured Pelican more. But I guess these differences will be left for another post. This also explains a bit misleading title of this post.

Why switch to Writerside? Over the years after playing with PHP, Python, and Ruby, programming language became just a tool for me to solve problems. I still like Python a lot, even though I don't work with it professionally and have least experience with it. So now I tend to look for new tools that might be interesting or useful despite stack it uses. Like Writerside. Because from very little I looked into it, it might not fit the bill for blog site, but it might be a good tool to generate static sites for documentation or help pages.

Why Pelican and Writerside?

Pelican and Writerside both are static site generators. For blog posts I don't need anything else than have a way to write posts with some markup and have that available in HTML put somewhere accessible from the internet. When I started with Nikola 7 years ago I didn't (and still don't) want to use Wordpress or any other CMS - too much of a hassle to setup and maintain, almost none of their features were needed, and I didn't want to deal with security issues. Static site generators seemed like a wau to go. And they still are if you're not afraid to setup CI/CD pipeline to build and deploy your site. Or do it manually via ssh/sftp (no shame here).

Nikola was chosen because it was written in Pyhton (so in theory I could extend it to my needs) and it was easy to setup and use. Also it was pure static site generator and not a CMS that builds HTML, but still runs in server with its own database. Also it uses Jinja2 for templating, which I was familiar with. It was no-brainer for me back then. All of that could also be said about Pelican. That's why I am kind of happy with the trick my memory played on me.

How Writerside came into picture here? After abandoning this blog for a long time I found out that JetBrains has new IDE/plugin for technical writing called Writerside. Sine I'm using their IDEs for all my work I decided to look what they offer and what selling points would be. Hands on experience with it would be the best way to find out. And where could I use it? Well, this blog was at the back of my mind for quite some time now and pieces just fell into place.

So this small evaluation will be for me to see if Writerside is worth using for this blog and if it's worth using for other projects. I am well aware that Writerside is still in early access, missing a lot of capabilities it will have in let's say half a year, and intended use case is not blog site. Nonetheless, I'm interested in how sites are built, what output it generates, what inputs it accepts, and how easy it is to use. I know that Pelican is more than enough for my needs, but I guess I just need to pit Writerside against something to have reference point.

Conclusion

My almost fresh experience with Pelican and Writerside are in separate blog entries. One reason for that is to have shorter posts. Other reason is to separate posts to be about those tools specifically, because I think I might get back at them in the future and I would like to have some reference point without much noise.

So will I use Writerside for blogging site? Nope. Not see it happening. It's a very good tool to write help docs, and help docs only. Even API docs I see being better written by building OpenAPI spec document from code comments or annotation and using one of available themes to build a documentation HTML file. But for product help pages it is awesome (if you aren't using something already) - it has great theme (although minimally adjustable), it supports Markdown markup, and has it own schema for semantic markup (if that's what rocks your boat), easy to work with and (for now) is free. But for other kind of static websites I'll be using Pelican. Or Nikola. Or something else. Depends on me not abandoning this blog and misremembering what I used to build it. But after looking into Writerside a bit closer I saw what I would really like to have in Pelican. Just small things like table of contents for a page, tabbed code snippets, and other small fancy things.

This is part 1 of the Resurrecting blog series.

Next posts:
Create blog site with Pelican
Create site with Writerside
Setup blog deployments

Tags: Pelican, Nikola, Writerside, Static site generator