New year, new blog!

As of today, I have a brand new blog. The old posts are still here, but the look and feel, and everything under the hood, is different. Everything is still free for me, except the domain name.

This post lists the technologies involved in editing and publishing my blog.

To read why I transitioned from my old blog to this new blog, see Goodbye blogger!.

Repository: GitHub

GitHub logoThe blog content now consists of markdown files and image files. They all live in a private repository on GitHub, a clone of which I have on my local computer. Every once in a while I push to origin, essentially creating a backup. This means that I can always view the history of all changes I make to my blog. Also, if something bad happens to my local computer, I have everything on GitHub. If something bad happens to GitHub, I have everything on my local computer.

Markdown editor: Obsidian

Obsidian logoFor editing the markdown files I use Obsidian, a cross-platform desktop application which is proprietary but free. Obsidian gives me a very nice markdown editor, which, although not perfect, is probably the best in existence. Most importantly, Obsidian keeps all my links in sync, so I can freely rename content files and move them around without fearing that the links might be broken. Obsidian even has git integration, so I can push my files to GitHub with a click of a button. The important thing is that my blog content is now in an open format, as opposed to Blogger format, or WordPress format, etc. this means that I could switch to another markdown editor if I wanted to, without having to change the slightest thing in my blog content to accommodate that editor.

Site builder: Hugo

Hugo logoFor converting the markdown files into HTML I use Hugo, a free, open-source, cross-platform, command-line tool that is distinguished for being much faster than other tools that serve the same purpose. Hugo reads the entire directory containing my markdown files, plus another entire directory containing a "Hugo theme", and produces a new directory containing a static website. Hugo then remains running, acting as a local web-server, making my website available on http://localhost, so that I can view it using my web-browser. As an added bonus, each time I modify any of the content files or theme files, Hugo causes the browser to immediately show the change. Hugo can be replaced with something else, at the cost of learning a new theming mechanism and redoing theme customization.

Hugo theme: 'Stack'

Stack Hugo theme logoThe theme that I currently use is based on the free, open-source "Stack" theme for Hugo. I have customized the original theme to suit my needs, and my custom files also live on GitHub, alongside the content files. (Same repository but different directory.) When the original theme gets updated by its author, I use a git merge tool to combine the new changes with mine, resolving conflicts if necessary, just as I would do if I was merging program code. This theme could, in principle, be replaced with another, but that would require redoing the customization work.

Commenting: IntenseDebate

IntenseDebate logoFor commenting I use IntenseDebate, which is a free service provided by Automattic (sic), the makers of WordPress and Gravatar. They provide a small HTML snippet which I have added at the right place in my theme, so it shows at the bottom of every post. The snippet handles everything comment-related: showing existing comments, adding a new comment, subscribing for notifications, etc. Blog commenting is all about spam control, which is a fairly complicated topic, and Automattic (sic) have a lot of experience with spam control, so I trust that they do it right. If it turns out that IntenseDebate does not suit my needs, I can easily replace it with something else.

Hosting: Netlify

Netlify logoFor serving my static web-site to the world, I currently use a free hosting plan with Netlify, a well known web hosting company headquartered in San Francisco, USA. This free plan seems to offer enough to suit my needs, and can certainly be upgraded in the future if my personal blog grows into a blogging empire or something. Once the static website has been generated by Hugo, and I decide that it is ready for publishing, I push it to yet another private GitHub repository, and from there Netlify automatically clones it, processes it, and makes it available to the world. If it turns out that Netlify does not suit my needs, I can move my blog elsewhere. (I am planning to give CloudFlare a try.)

Vector image editor: Inkscape

Inkscape logoFinally, since I am now in full possession and full control of my own content, I have replaced many of the PNG and JPG images in my blog with SVG images. For that, I use Inkscape, a free and open-source SVG editor. I like SVG so much that on some occasions I have gone through the trouble using the tracing feature of Inkscape to produce SVG images from raster images. (This requires editing afterwards, so it is time consuming.) Again, the SVG format is open, so I can switch from Inkscape to any alternative without having to change the slightest thing in my content.


Of course, this is not to say that all of the above tools and technologies are without problems; I will probably be writing some grumpy post in the future listing the issues that I have with each of them. But for now, I am really enjoying the new look of my blog.


Cover image: the logos of the technologies that I am currently using for blogging.

Last updated on 2026-01-24 Sat 14:41:36 CET