How Wordpress got itself fired
I’ve used Wordpress ever since I set this blog up in 2007. For the most part, it worked and stayed out of my way.
However, there were an increasing number of irritations. Older content had random accented characters sprinkled through it. The image handling annoyed me whenever I used it, mostly because the default upload size was too small to accept raw images taken from a modern smartphone. That’s probably something I could reconfigure but I just want Wordpress to be magic - after all, this is supposed to be the blog platform of choice for non-techies, right?
The final straw came when it started injecting non-breaking spaces between every character in a sentence. This resulted in some stupid looking line wrapping in certain posts, and despite showing this faithfully in the editor, switching to HTML view outright denied the existence of all those nbsp characters.
Enough is enough. With a move to new hosting coming up, not having to bring PHP or MySQL with me was quite appealing, so I fired up Jekyll and set to importing the blog.
There was a certain amount of manual fix-up needed, but for the few hundred posts I have, that could be done with a bit of
sed and some ad-hoc review.
The result is rather nice: I can update the blog by writing Markdown in any editor I like, keep it all in version control, and it’s now a 100% static site. All the discussion happens on social media these days anyway, so the loss of comments is no big deal. Being fully static makes it much easier for Cloudflare to cache, so in the unlikely event of anything I write getting popular, it should scale out pretty much infinitely.
The old posts are all still HTML on disk because that’s what Wordpress stored them as, but they look OK and can be converted ad-hoc if I ever need to edit them.
Wordpress is dead, long live my blog. Here’s to the next 14 years!
Update: A couple of tweaks to Cloudflare’s settings are required to tell it that everything is now safe to cache according to its last-modified headers.