I have always wanted to write my own blog, but I have always been too lazy to actually setup one for myself. This year, I am a Google Summer of Code student at HPCC Systems, and I am working with one of the most awesome communities out there. This - is sort of - my Journal and gives me with a good opportunity to finally start blogging. It will also help me in tracking my progress with the project!
Special thanks to the my mentor Gordon and our GSoC admin Lorraine. You guys have made my time here as a student really wonderful. Thank you!
Ghost is one of the best blogging platform available out there - for Free! They have paid options if you want to use their hosting service, but you can setup a blog for free using a combination of Github, Heroku and Ghost. I was almost too tempted to use anything like WordPress, Joomla or Tumblr, but I wanted to look into the process of how to host my own blog. The journey so far has been pretty fun, and I would like to cover it in brief.
I also looked at Github hosting and Jekyll blogs, and I host my site there, so I already know the process quite well. I didn't wanna take that path because I wouldn't learn anything new that way. Hosting on Heroku (configuring my own instance of Postgres with Ghost, setting up MailGun and routing the app to use my custom subdomain) seemed really exciting to me! Also, I didn't like the idea of hosting a perfectly static blog, I know it works fine (one of my favorite blogs, written by Zach Holman is hosted like that among many others) but it doesn't offer all the functionality offered by Ghost, and not to mention, the really sweet UI (I am a sucker for good looking UI), right out of the box!
Some steps that I followed in hosting this blog are :
I started with creating a free account on Heroku, installing their toolbelt (provides easier access to their services), and installing Git, and downloading the zip of Ghost from their official site.
Copy the contents from the zip into the directory, init a git repository there and push the files to Github.
Link the Github repository to automatically deploy the changes to Heroku using the app dashboard on Heroku. That is a neat feature IMO.
Configuring other things like the database, the email service (MailGun is nice, but if you can also use Mandrill) and the custom domain takes a little bit of Google Searching, but is not very difficult (As always, Stack Overflow is your friend!).
I faced a few issues with the installation of Heroku Toolbelt on my Ubuntu 14.04 machine, but that was caused by some incompatibility between my shell (Zsh) and Heroku Installer Script. Once I fixed that, it was all good!
So finally, I am starting on a new journey! I hope this brings me some great experiences, and helps me improve my writing skills!