WordPress vs. Roll-Your-Own Blog Engine

Alex King posted an interesting rebuttal of Santiago Valdarrama’s missive explaining why he’s building his own blog engine.

Taken together, these posts pretty much sum up the reasons why I went with self-hosted WordPress, rather than try to roll my own solution, or continue to lope along indefinitely with Manila.

A couple of Alex’s points in particular stuck out for me:

Santiago: There’s always a learning curve. Every platform is different, specially when you want to fine tune your layout and deviate from the provided templates.

Alex: This one strikes me as a bit silly. There is a learning curve when building your own system too – especially if you haven’t written your layout/templating system yet.


Santiago: You’ll never get to experience the satisfaction of engaging in a conversation about how you developed your own platform from scratch.

Alex: … if what you want is engagement then joining a bountiful and vibrant community of developers is a much bigger opportunity than the potential for a conversation with another NIH hacker.

Santiago finished his post with:

It takes a few evenings of work to get it done. It’s that simple.

Honestly I doubt it. Although I’m an experienced web developer, if I were to attempt to roll my own solution from scratch, it would be a huge undertaking, fraught with many potentially fatal problems:

  • First I’d have to choose a programming language and platform, with very little in the way of criteria with which to make the right decision—at least not without doing a lot of research first.
  • I’d need to decide what features I really need and what I could do without.
  • I’d have to write (and debug) the code—probably a lot of code.
  • If I wanted to be able to use a native app to post to my blog, I’d have to implement a well-known API, with a dialect that the app understands. (Mo code, mo problems.)
  • I wouldn’t be able to take advantage of the vast universe of WordPress plugins: I wanted a feature a plugin implemented, I’d have to write it myself. (Mo code, mo problems)
  • And so on…

And after all that, I’d still have to find a way to export the content from my current site, and import it into the new one, which was something was going to have to do anyway. 🙁

Plus, as Alex hints at by pointing out the vibrancy of the WordPress community, I wouldn’t be able to leverage the experience to actually learn WordPress (and some PHP, and some optimization, and some Apache config, and…).

Update: Santiago has a follow-up post:

“I’d never ask someone to do this. Rolling your own engine means a lot of work, and unless you are really on the nerd side (like I am and Brent Simmons is), it will be a waste of your time.”

Update: More dialog on Twitter

Ps. In the end Brent decided to stick with the self-built engine he’s been using for years, and write an iOS app for himself to post to it remotely. Moral of this story: Stick with what you know?


  1. Thanks for your comments about this conversation! I’ve learned a lot with all these posts about the topic, and I’m glad there’s such a vibrant community around WordPress that jumped in to defend it right away.

    With my original post I wasn’t talking specifically about WordPress (or any other blogging platform.) I focused on answering Brent’s question about whether or not to keep building on top of what he had or ditching everything and move to an existing platform.

    WordPress has my biggest respect and I do manage a lot of projects at my company in WordPress. But it isn’t the solution for my needs, neither I though it was for Brent.

    And by the way, despite I said in my follow up that it’s a lot of work, you’d be surprise in how small the code of my engine is. It’s open sourced here: https://github.com/svpino/blog-engine

    Thanks again for your thoughts!

    October 16, 2014
    • Jake Savin said:

      Sure thing, Santiago. Hopefully you didn’t feel it was any kind of attack. The decision I made to go with WordPress were based on what I wanted to learn, how much time I was willing to invest in getting my content in, and what features I wanted. I might have made a similar decision and gone with Drupal or any number of other systems, but writing my own CMS wasn’t something I wanted to tackle just now.

      All that said, I agree with you that there’s a lot to be learned by building your own CMS / blog engine, and if my situation or requirements were different I might have made the same choice you did.

      Cheers! 🙂

      October 16, 2014

Post a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.