Why my blog is on Medium

Instead of WordPress or Ghost

Brian Smith
@brismuth’s blog

--

The Ghost blogging platform got its initial start on kickstarter. When I first read about it, it sounded perfect! Fully open source with a clean, simple, intuitive interface. None of the useless clutter that has overtaken that bloated pig Wordpress! I was already familiar with node and nginx, so I went ahead and spun up my own instance. It was beautiful! The side by side markdown editing was clean and intuitive. I wrote a couple posts and loved it.

Things got a little more complicated when I decided I wanted to add disqus comments to the bottom of my posts. Ghost had guides online, but they required you to modify the source code of the default blog theme. Oh well, I thought. At least I’ll only have to do this once.

A month or two went by, and something else came up that I wanted to blog about. I work full time as a software engineer, so it’s only once in a blue moon that I end up writing posts. I logged into my instance to find that an update was available. Hooray! I clicked on the upgrade button, naively expecting to be able to upgrade entirely from the front end. Alas! Instead of that easy experience, I was taken to a page with several pages of prep reading, followed by these steps:

What a hassle!

I thought to myself that’s okay, it’s worth it because Ghost is so easy to use. So I went ahead and read the guide and started the upgrade process. When I got to step 8, I realized that there was even more work than I’d previously realized. Ghost’s upgrade instructions tell you to replace the entirety of your theme source code (Casper) with the new code. That means that the work I’d already done to incorporate Disqus commenting, as well as Google analytics, would all need to be redone.

But wait, you say. What about that (optional) bit there? I was also hopeful, for a few minutes at least. After reading their blogs more and looking through their source, I realized that they put that there because some people use custom themes (instead of Casper). From what I could find, Ghost makes no guarantees about backwards compatibility with their old themes.

So I went ahead with the upgrade, and manually incorporated my previous changes to add commenting to the new upgraded theme. I got everything working again and wrote a couple more blog posts.

Several more months went by (as they tend to). Something else came up that I wanted to blog about, and so I signed into my blog again. Ack! I now had 4 or 5 notifications at the top of my blog telling me to upgrade. I clicked on the link, having fully forgotten how much of a hassle it was to upgrade before. On the instructions page, this time I see something new:

Ahhhh! So this time, I not only have to go through that long list of commands again, but I have to do it five times. And for each one I have to track down a link to old versions of the source code. Just to keep this clean, simple, intuitive blog up to date.

Nope! It was at that point that I decided Ghost was not for me. The whole thing that drew me into Ghost was the promise of simplicity and ease of use. With my infrequent posting, I would be spending more time updating the blog’s code than actually writing!

So I looked around online a bit. I considered using a static HTML generator like Jekyll or Hugo. The premise was cool, and I liked the idea of having my posts version controlled, but ultimately I decided there were only a few things that mattered to me most about the platform I’d choose:

  1. It’s easy to write new posts, with support for basic styling (including code blocks)
  2. It’s easy to maintain
  3. It supports comments

I found guides to add comments, and they seemed to work well enough, but I didn’t like having to build the site locally to test each time I wanted to add a post before rolling it out to github pages. Then I found Medium.

Medium meets or exceeds all three of my requirements. It has a clutter free UI like the one I came to love on Ghost. The editing experience is very easy. There is no maintenance required. After pointing my name servers at their domain, they even purchased the SSL certificate for me so I don’t have to do any work at all to get HTTPS working! The commenting system is of course built in as well.

It’s not without its shortcomings. Bullet points and numbers don’t work well with code blocks, and for some crazy reason there’s no strikethrough support. For now though, those downsides are outweighed by how easy it is to use. For now, it’ll do.

--

--

Some things I love: my family, building things, helping people, tinkering.