Why I moved from WordPress to Ghost

The Ghost Logo

WordPress is a beginning developer's best friend or just another great tool in a seasoned developer's arsenal. I will go further and make a bold statement: If you are a new dev and are not using WordPress you are doing yourself a disservice. So if WP is so great then why the move? Well young web jedi i'm glad you asked! Keep parusing this post and i'll walk you through the reasons one by one.

WordPress feels confused to me

Like I said above, I love WordPress. I think it's a great tool and an awesome CMS. From a development standpoint though, I feel like it's a bit confused. Some of its API is procedural while some of it is OOP. One release the include Simple Pie for parsing RSS and the next the include magpie. I just don't feel like WP flows stylisticly, developmently speaking.

I want to take advantage of modern patterns and technologies.

I have one achillies heel when it comes to learning: I want to know the BEST way to do something and I want to know exactly how every part of a system works. This is the drive that led me away from using WP as my beginning development crutch to embrace the "how to do it from scratch" mantra. I began a cursory exploration of different PHP frameworks and other "hot technologies" like Node and Ruby and thought all of this stuff was very exciting and then work happened.

I was tasked with building custom reporting portals, asked to troubleshoot Ruby project issues, and evaluate the quality of some Node code, admin and configure assets on our Nginx servers and more of the like. What I realized is that while being a developer means you have to know X, your employers and clients to an extent expect you to know Y, Z, and the rest of the other letters in the alphabet for that matter. :)

When you work with things such as Ruby and Node you get to use all kinds of cool technologies like HAML, Stylus, ERB, and a host of other stuff. You also are exposed to cool design patterns like MVC, The Repository pattern and dependency injection. While yes, you can use some of these natively with WP it isnt built explicitly to leverage those styles in the same manner as something like Laravel. Bolting on tools like these can be more than a trivial process. Sometimes your best bet to do this in WP is to use a plugin which often times leaves you with little control over things like how many SQL queries were ran, what scripts are loaded and what versions of those scripts, ect.

So Why Ghost and Node?

For the last year and a half i've had the fun privelege of bulding tools using custom architecture as well as using PHP frameworks like CakePHP, Laravel, and other toys like Backbone and Requirejs. During that time, I have gotten to realize what I appreciate in a toolset and what I want for my next learning experience. Those things are, speed, flexibility, scalability, and future potential. JavaScript and Node have all of those things. Ghost in specific has some cool stuff going for it:

  • It uses markdown for its writing syntax.
  • It is super fast
  • It runs and LOOKS well across many different devices since it's responsively done.
  • It uses handlebars for it's templating.
  • And many more things..

Basically, it boils down to me wanting to venture into new learning territory and Node looks like a good place for me to go next. Ghost gives me the opportunity to get my hands dirty a bit and play.

Conclusion

If you are looking to become a full stack developer, IE. Doing server setup, handling sysadmin stuff, and you want to be on the cutting edge of development and play with lot's of new toys, then Ghost is for you.