Over the past couple of weeks, while everyone's backs were turned, Ganriki.org underwent a silent but radical behind-the-scenes revolution: we changed to a new blogging application, one written entirely by us in-house.
If it doesn't sound like a big deal, trust me: it's a Big Deal. This move sets us free from so many of the constraints imposed on us by the platform we originally launched this site with. From now on, it'll be all the easier for us to post new content, develop new kinds of content, corral together different kinds of stories into unified packages, and in time bring things to our readers that we couldn't have done before.
Our new home
The new platform, available as an open source project, is called Mercury. We've been building it in secret for the past two years, on and off. As of August 1, we reached a point where we could start hosting Ganriki.org directly on it.
What kinds of things will be possible with Mercury in the future? For one, we're going to be experimenting with new site designs — not all at once, but incrementally; new feature packaging strategies; and more immersive article formats.
These changes won't happen overnight. They'll be rolled in gradually, and any large-scale experiments will be tested on their own before being applied across the board.
Designing such things before would have been prohibitively difficult. Mercury will provide us with a good base on top of which to make those things both possible and easy.
Plus, we've already tested Mercury to handle the load we're throwing at it. We've already been running Mercury in production on another site with good results. We also ran the Mercury-hosted version of Ganriki.org side-by-side with the original to make sure the transition was seamless.
Under the hood
Originally, we hosted Ganriki.org on a system called Movable Type, the blogging application I'd used on my own for many years. That project no longer has an open source incarnation; it's now only available in a commercial version. It also had many disadvantages: it was slow to work with, clumsy to develop in, and unfriendly to users. Rather than try to hack it into a form we were comfortable with, we decided to leave it behind and strike out on our own.
I didn't undertake this project lightly. For one, I know full well building a custom platform for a website is not always a good idea. Consider Gawker Media and their Kinja platform. Originally, the plan was to license Kinja to other companies, but that dream died late last year, and now seems to be doubly dead no thanks to Gawker's legal and financial woes. Our plan with Mercury was never that foundational — it was something we would use to deliver the site, but not something we intended to also make into a business model.
Another thing I was conscious of was how many applications already exist to do site management. WordPress, for instance, is widely regarded as the go-to app for blogging. But I'd worked with WordPress before, and I came away from it underwhelmed and enervated. It required me to work in a language I wasn't comfortable with (PHP); it came with a passel of legacy assumptions about how things needed to be built, deployed, and maintained; it was too tightly coupled to the web server it used to display content; and even with its ecosystem of plugins, add-ons, and themes, it failed to provide the kind of speed and stability we wanted.
I also knew full well building Mercury and shifting our deployment to it would be a lot of work. But it had plenty of side benefits: the finished platform would be something I could deploy other blogs of mine on as well. As an open source project, other people could in turn deploy it themselves, and contribute back to it in the form of core refinements, themes, add-ons, and other improvements.
In the light of all that, it seemed better to start anew, to draw on WordPress and Movable Type for inspiration where relevant, but also to steer clear of their mistakes and dead-ends, whenever possible.
Where from here?
Ultimately, it's not the software that makes a site worthwhile. It's the content. But the whole point of building Mercury was to make such things not just possible, but easy — and to give us the freedom to not feel constrained by any one prepackaged way of doing things.
The fun's just barely begun.