Just in case you didn't notice, I got myself a new blog a while back. When I first began blogging, I started out with Tumblr because well, I felt it was my best option out there. I wanted something attractive, easy to display code on, low cost, the power to edit HTML (even though I would rather use markdown) and easy to use. I was not satisfied with my Tumblr setup but after some amazing products became available, I feel my blog is pretty decked out now.

Besides using Tumblr, I was not happy with my blog for another reason: the content. I was not happy with my writing. I felt that blogging was not fun. It was simply way too much work for me to even enjoy it. I wrote blog posts with the end goal of lots of people reading my content because lets be honest, isn't this what all bloggers want in their posts?!

I wrote about what I thought people wanted to read about. I chose topics that were popular and would get me the most readers. I conducted lots of research on the topics because I had an opinion about the topic but I did not necessarily know facts about the topic. I wrote blog posts for others. Not for myself.

I thought that in order to write a blog post, it had to be many pages long in order to be a quality post. It had to include tons of high-res photos, sophisticated grammer and quotes from famous experts in the area. Even though all of these things are great in posts and I still include them all from time to time, this is not the most important part of blog posts.

I had it all wrong. I was blogging the wrong way. I was not enjoying myself and I knew it was time to change. I started to pay more attention to other blogs that I read and found out, the blog posts they publish were sometimes the length of a single paragraph. I realized that my opinion is the power of blogs. If I am simply sharing facts from elsewhere, why would readers come to my blog if all it was going to be was a bunch of links and pretty pictures outside the Internet? Blogs are powered by the content the publisher creates. My opinion and my thoughts were what I was missing. And simply put, I was not having fun.

From this point on, I deleted all of my posts. Every. Single. One. It was time to have fun and share my thoughts on the world around me. I knew I was blogging wrong and it was time to do it right.

What else did I do besides create all new content? I got a new set of tools. I was not happy with my current setup of Tumblr and I decided to find an alternative before I wrote new content. I wanted something attractive, open source, customizable, use markdown instead of HTML, something I could host on GitHub pages and had a preview of my posts before I publish. This was my list and to me, it sounded impossible to find a solution that would meet every one of these criteria but guess what. I found a solution that satisfied every single feature I required.

I was very lucky that at the time that I was looking for a new blogging platform, the ghost platform had just began its development and had a very early and barely functional product out. I found out that it allowed markdown editing, was open source, and gave you a preview window while you typed. This sounded perfect to me in every way but it was not available to use yet. They did not offer a hosted solution yet and in order to use the product, you needed to run it locally on your own machine by running it from source. This was fine, but this meant I was not sure yet how I could get it running on GitHub pages like I was hoping for as well. It was here that I found buster.

ghost platform

Three words that sold me within one second when I first saw the homepage.

I discovered buster from a forum post created from the developer of the project. This simply made my dreams come true. I found my solution and I could be writing again! Well, not quite. Buster was nice, but it had a few flaws that did not allow me to get what I wanted out of it. So what did I do? I created a better version of buster and what did I call it? betterBuster of course!

I worked on betterBuster for many weeks in my spare time to improve the project and fix all the flaws I saw. (When I saw "improve" and "flaws" this is my opinion. Not to say this in a negative way, buster is a great product and I really really appreciate that it exists but there were some parts of it that just drove me crazy including it clearing out your git repo every time you wanted to make a change, it dumps the files in a directory called "static", and the command line arguments list is super long.) Along the way, I learned about many new products such as waffle.io, Travis CI, Coveralls, and docopt that buster was using that I decided to also give a try. I continue to use most of these products in all projects I work on now. And eventually, the project got to a state that I was able to use it for my personal blog and it had all the features I was looking for with a nice easy to use UX. As a project, betterBuster is in the process of being rewritten in Ruby with the old one eventually being removed. I am doing this because I want some more practice with Ruby and because while developing betterBuster in Python, I found that writing tests for Python, especially mocking, is near impossible so I want to use some other language and keep Python to writing quick scripts with.

I am very happy with my blog setup now and I plan to stick with this setup until I am somehow forced to change. Anyone interested in having this setup as well? It is easy but takes a little chunk of time to setup. If you want this same setup but done within a matter of seconds? ghost offers a hosting plan now you can take advantage of. If you want the free open source edition, do the following:

  1. Download and install Ghost locally.
  2. Download and install betterBuster.
  3. If you want my custom theme with some nice widgets installed such as prism code syntax highlighting and Twitter tweet embed styling, download and install my version of Casper.
  4. Setup GitHub pages.

Any problems or questions? Comment on this page or contact me.