Yet Another Website Rework
I've been considering completely remaking my personal website for a while now. For multiple reasons, among which were: (1) the content was stale and low quality, (2) I got bored of the old aesthetics, and perhaps most importantly, (3) my fully bespoke static site generation system proved to be more of a liability than anything useful.
When I created it over two days in the summer of 2022 I semi-ironically called it Durak, after the Russian word for fool. You can still find it on my GitHub here. Written in Python, it had its own templating language parsed using ANTLR 4, and was fully scriptable. It might not sound too bad at first, but it also was buggy, didn't provide useful error messages, and worst of all, didn't support anything but HTML. Even generating XML for the RSS feed was giving me trouble. All that meant it had to go. I only needed to find some motivation to do it.
And so I did, at last. The website you're on right now is served by a single Python file using FastAPI, Jinja and a few other dependencies. Blog articles are written in Markdown and converted to HTML using python-markdown with pymdownx. RSS and Atom feeds are generated using feedgen. All that in under 200 LoC. It's magnificent. Did I mention I hooked up MathJax for \(\LaTeX\) rendering?
With that done, I'll hopefully feel motivated to write more. I want to write about programming, cryptography, maths and all the nerdy things that interest me. So you'd better stay tuned for some technical blog posts.