From today, my blog is finally up. One of the reasons why it’s taking so much time is I couldn’t find one suitable blogging platform. I guess I could give a comparison on some technologies I have used or assessed in the process.

In-browser Editing

Wordpress is probably the most widely used platform, originating from blogging and remaining the number one choice for the majority. However, I didn’t so inclined to write much text outside of my editor, so I gave up after composing several posts. Somehow I came across this Ghost kickstarter video while surfing on the Internet, and was truly amazed by its elegance and dazzling themes. However, its delivery date was far fetched so I had to continue my seeking.

Publishing Files in Cloud

I had to admit that I was very happy when I firstly found Postach, and believe that it would revolutionize the blogging community. However, some of my posts were weirdly formatted, and I spent quite much time before locating the real culprit, Evernote, which does not store notes as plain text files, but instead as HTML files. Giving up composing plain text files is not acceptable for me, especially for technical posts containing code snippets, so I had to say goodbye.

Scriptogr.am serves files from Dropbox just like Postach serving files from Evernote. However, in Dropbox, files are stored as text files, written in markdown. I used this solution until they decided to terminate their service.

Github Pages + Hexo

Github page is advocated as one great alternate to Wordpress for blogging, and in fact, a lot of cool people are using it. Personally, I feel using git for blogging is like making a mountain out of a molehill, especially the history of an post is not of interest mostly. I believe it’s too tedious to create a commit just for some trivial typing change.

However, on revisiting Github Pages after leaving Scriptogr.am, I realized that I don’t have to use git manually; instead, I could view Github Pages as a hosting site for static html files. This way I can just set up an cron job to invoke a static site generator followed by git commit ; git push. StaticGen lists some popular static site generators, which I skimmed through, and ended up with Hexo, for it’s written in JS.