26 years later, restarting from scratch
A few weeks ago, I was thinking about this blog. I’ve been renewing the domain for years without actually touching it. Ten years ago, I switched to WordPress with the idea of untangling myself from the technical stuff so I could focus on content. But then… well, I got bored, my passions shifted, and my time got sucked into other things.
It’s been 26 years since I first registered this domain. Over time, I’ve changed its look quite a few times, right up until everything ground to a halt in 2017.
Going back to a few weeks ago maybe because lately I feel like I have so much to say, I started wandering around the World Wide Web to see with my own eyes what personal blogs look like today. I stumbled upon a couple of interesting blogrolls and literally devoured them.
That very same night, I created a new Python file named blog_render.py. Because just like a mechanic loves getting their hands dirty under the hood of their own car, a programmer loves writing their own code, at least to some extent.
I didn't embark on the crazy mission of writing a Markdown parser completely from scratch; I found exactly what I needed in Mistune. I customized it heavily with a handcrafted render class and a couple of plugins to handle typography, single images, and galleries within the posts.
For the frontend, I used the Jinja2 template engine, it's just as easy to implement as it is packed with features.
After losing quite a few hours of sleep trying to implement the cool features I kept spotting on the blogs I was visiting, and after a ton of testing, I finally ended up with the script that generates this site. Which, by the way, is almost entirely static.
In fact, all the pages on the site are generated as static HTML files. A tiny splash of JavaScript acts as a bridge to a few PHP scripts that add real-time features like the Kudos button at the bottom of the posts (that little red heart to leave a "like").
Anyway, I’d say the backstory of this new version is already getting too long. That’s enough for now, it's time to write…
Happy reading, everyone!