Quest for the next blogging platform
Let's face it - Wordpress is passe.
Though immensely popular, Wordpress has been criticized of late for being too "large" and complex for the requirements of a simple blog. Indeed, it is advertized as a CMS and a publishing platform and is capable of doing way more than you'd like, or want your blogging platform to do. However, the reason for its popularity is its ease of use nevertheless. It's pretty straightforward for the average Joe to use a hosted Wordpress solution and publish a blog, complete with excellent themes and comments, without paying a dime (if you host it on wordpress.com for instance). There are several reasons why I don't quite like it - although I don't exactly hate it either:
- Quite heavy on resources, see the image below
- The default comments system - though simple and good, is sometimes very spam prone (oddly, I faced this even with the presence of Akismet)
- The backend is a LAMP setup, and I find a relational database an overkill for a simple blog (that should ideally be a set of static files)
- Very easily hacked! This is a serious problem with lesser capable Wordpress hosting providers.
The current setup I'm using (hosting and domain provided by Godaddy) works, but is turning out to be quite expensive. I didn't realize that most coupons are not applicable to the renewals of Godaddy - and the very basic Linux hosting renewal package costs a bomb (INR 5300, ~ USD 100)! All I need is hosting for a simple blog.
Enter GitHub + Octopress
Let's face it - GitHub rocks! I'm a huge fan of the entire GitHub ecosystem - and they've really taken the open-source world by storm. They have a neat product called GitHub Pages which offers free websites "for you and your projects". Although GitHub pages are static only (meaning you cannot run Wordpress on top of it), it features native support for the Jekyll static site generator. Hence, it supports the Jekyll based Octopress blogging system natively as well.
So one weekend, I set up a "Hello World" blog on Octopress. Phew! That was quite a challenge. Octopress is serious when it claims it's a "blogging framework for hackers". In the end, here's the performance of my simple blog (hosted here):
Note: the above performance would degrade in a real life situation, with images and so on - however would surely be faster than Wordpress. Having gone through the setup (which should be another blog post in its entirety), here are some pros and cons of this approach:
- Generates a static site - hence is fast
- I love Markdown - very semantic in nature, and perfect for programming blogs
- Everything is git version controlled - which seems nice!
- Pre-built integration for the stuff I need - Disqus comments, Facebook login, GitHub repo links and so on.
- No web interface for posting - decidedly inconvenient
- Very complicated setup for the Ruby unaware (me!). I've never been into the Ruby ecosystem and the tools (rake, bundle, gem, rvm, ...) are, frankly, a bit overwhelming for a newbie
- Even creating a new post needs about 5 commands
- Though git is nice, I find the Octopress structure on git a bit weird (main containing the website, and source branch containing the Octopress code)
- Themes are a bit weak, especially compared to Wordpress
That's it for now. Octopress seems a promising alternative, but I want to study two additional platforms before migrating rajorshi.net:
- The new kid on the blog (sic): Ghost. An additional tool (buster) is required to generate a static site that GitHub pages mandates
- My own simple static site, generated using Pelican or something else.
Stay tuned for more updates ;-)