Welcome to the latest incarnation to my personal blog. As you may have guessed, I'm Stu. This is at least the third time I've reintroduced myself online. It seems customary at this point for developers to discuss the technology powering their site when they preform a relaunch, so here goes nothing.
The current incarnation of Stuart-Jones.com is powered by the Ghost blogging engine. Ghost is a relatively new player in the blogging scene, but it's got a few things going for it. First and foremost, Ghost is just a blogging platform. They've very purposefully tried to avoid the CMS bloat that blog engines tend to experience over the years. Continuing the theme of keeping things simple, Ghost entries are based on the Markdown syntax. Markdown is minimalist syntax for formatting documents in a way that's easily read by humans, yet parseable into valid and simple HTML.
In a way, Ghost is a combination of my previous two attempts at a personal blog. My previous site was powered by Jekyll, a Ruby based static-site generator. The site before that was, as I imagine it was for most developers, a self hosted Wordpress page.
Wordpress is a fine and capable content management system that can handle just about anything you throw at it. This ironically can be an issue when all you want to just blog. Wordpress can host everything from a forum to a e-commerce shopping cart. While web hosts have bent over backwards to make Wordpress simple, there can be a surprising number of hoops to jump through in order to get your post online. Pair that with a theming engine that requires you to not only know PHP, but know PHP the Wordpress way, and you've got an environment ripe for competition.
This is where Jekyll comes in. Jekyll is a Ruby script which grew out of Github's README.md pages. Instead of its original purpose of converting a single Markdown file into a single HTML page, Jekyll converts entire folders of Markdown files into a site's worth of HTML files. It's about as drastic a shift away from Wordpress one can make. There's no longer a CMS to deal with. There's just a terminal command, some plugins, and the resulting
/_site folder to upload. For a pure HMTL junkie, Jekyll is great. The site's template use the easy to learn Handlebars system, and the resulting pages can be served up by anything from Apache and nginx to NodeJS and Github Pages.
If Jekyll is an over correction, Ghost is an attempt to right the ship. Jekyll's largest issue is that it requires you to install it locally on every system you want to publish on. This is fine is you work solely on *nix systems, but I spend a lot of time traveling solely with my Surface Pro 3. Once you've gotten Ghost set up on your web server, it's no-fuss console lets you write and publish blog posts from just about anywhere. Ghost's template engine uses the same straightforward Handlebars system as Jekyll, so for me there was very little downside in making the switch. Don't take my word for it though, here's what the Ghost docs have to say:
Ghost is intended to be a happy medium between a completely dynamic CMS-style application, and a static file generator. The Ghost admin is a dynamic client side app, but the blog pages are generated server side and sent to the browser as static HTML. This makes Ghost themes super fast, and also allows for the blog pages to be heavily cached.
If you're thinking of jumping ship from Wordpress to Jekyll, or Jekyll to Ghost, I highly suggest you give Ghost a chance. The underlying engine of Ghost is based off of NodeJS, which means you can test it out on the localhost of any modern OS, including Windows.
If you'd like to learn more about the Ghost theme powering this site, check out my writeup here. Thanks for stopping by my site. Enjoy the ride.