My quest for a more efficient (and fun) website-deployment method continues. It all started with Wordpress, then Octopress, and now Hugo. The last jump was a tougher decision, but after playing around with Hugo offline, I believe this is where I will settle and build a nice cozy home for now.
Wordpress was good to me at first, but as time went on, minor annoyances began to add up and removed the enjoyment of writing for me. Firstly, the markdown plugins available for Wordpress were all lacking in some way. Adding code snippets and images with captions was a huge hassle and it became more of a mission to find the next best plugin that didn’t necessarily increase my writing efficiency as much as I would like.
But that wasn’t the deal breaker, oh no. The deal breaker was not being able to use Vim to edit my content. Okay, so this is a personal preference, but being able to use my favorite text editor just makes everything more fun!
Octopress was what I was searching for. It was a static website generator, had a sane default template (I’m a terrible graphics designer), and I could use Vim! What more could I possibly ask for? And then, having added /r/golang to my subreddit list, I discovered Hugo.
Hugo is a Go-based static site generator, not so dissimilar from Octopress. The project is much younger than Octopress and hence some features were yet to be implemented. I sat on the fence for a few days while I tinkered with Hugo and eventually the scale tipped in its favor.
Here is the cliffnotes version of what I liked about Hugo over Octopress:
- Speed – Hugo is written in Go as opposed to Ruby. Even with my small website, the generation speed increase is noticeable.
- The ability to manage different types of content/pages by simply creating a new layout provides a lot of flexibility.
- Hugo ships in a single binary. No need to mess around with Ruby gems and other dependencies.
- It’s written in Go! That’s freaking awesome.
Aside from having to brush up on HTML and learn some CSS, spruce up the default theme, and deal with yet-to-be-implemented features (such as pagination), I am liking where this project is headed. So for now, when you visit my page, you get to marvel at my brilliant design skills, or lack thereof (thank goodness for themes and templates).