Gobbling Dogfood

Welcome to the new Simian Zombie! It looks almost the same as it used to, and it works in pretty much the same way, but the back-end is now completely different.

The old Simian Zombie used WordPress as its blogging engine and was hosted on BlueHost. This combination resulted in terrible response times. Fetching and rendering the site took an average of around 5 seconds (testing suggested a range from 2 to 9 seconds), which is abysmal. Worse than using WordPress’ combination of PHP and MySQL was sharing a database server with a site that was either appallingly written or hugely popular; in either case, it kept taking down the database.

The new Simian Zombie is hosted on a VPS provided by Digital Ocean. It uses Gobble as its blogging engine, which is written in Go, uses the filesystem for permanent storage, and serves posts from an in-memory cache. A full render of the same blog page takes around 2 seconds on average (with a range from 1 to 3 seconds). Most of that time is used up by the JavaScript syntax highlighter; fetching the rest of the page usually takes around half a second. It probably helps that there’s 50% less HTML in the Gobble layout.

It took longer to re-format the content from the old site into correct Markdown than it did to write Gobble. Around half of the posts lost their formatting during the automated HTML-to-Markdown conversion process, so I had to add it all back in. I’ve been reluctantly working on fixing the posts since I announced Gobble, which was two months ago. After that was done, I had to ensure that all of the various downloads and images still worked (I’m sure I’ve probably missed a few links).

I’m hoping that Gobble holds up to being dogfooded. I’m also hoping that I haven’t lost anything during the transition.



Though it pains me to do so, I’ve installed WordPress. It pains me because up until this very moment I’ve written everything I’ve ever hosted on any of my websites myself, from scratch. This time, though, I’ve gone with an existing system simply because I don’t have time to write my own blogging software. More importantly, developing web software for seven hours every day of the week leaves me less than enthusiastic about writing web apps when I get home.

Anyway, I’ve decided to start this because I’ve just begun developing homebrew for the Nintendo DS, and it seemed like a good idea to keep a development diary. As I’m now up to nearly 8,000 words, or 4/5ths of an undergrad dissertation, I thought I’d get the thing uploaded before the text editor I’m using gets too bogged down. I shall, therefore, splat the whole thing here in one mammoth posting session, and ye shall quake before the poorly-explained C++ code and badly-written-at-1AM wittering in between.

I should note that I am terribly impressed with the WordPress system so far. BlueHost (my very cheap, very reliable, and very feature-packed host) use a system called “Fantastico”, which must be an open-source jobbie designed to install other web systems with little user effort. Half a dozen clicks later and WordPress is up and running. The admin interface is very polished, even if I did spot an AJAX problem fairly early on.