I’ve now launched the fourth version of my “personal website” in the decade or so it’s been up. I used Hugo for a basic portfolio and blog site. A fast look at the history of this site follows the broad trajectory of web design in recent years.
Ugly tables > wordpress complexity > responsive wordpress, less complexity > HTML5 responsive static site.
Version 1 2007-2009
I built a basic, table-based website for a class. This was my first taste of web design. It worked, was janky, and was perfect. I have a copy of it on a hard drive somewhere..
Version 2 2009-2013
This Wordpress site utilized a theme Modicus Remix that I believe stands up eight years later. I used this site during my last stretch of college and later cross-posted articles I wrote for my employer Fast Horse.
Version 3 2013 - 2016
Because I was tired of paying $100 per year for hosting I didn’t need, I switched to a wordpress.com site.
Version 4 2017 - Present
[You’re looking at it.]
A few reasons I wanted to pursue a static site:
Simple, free hosting through Github and GitHub Pages
The effort I would put towards managing a wordpress theme and looking for weird php garbage on StackOverflow would be more enjoyable put towards modifying the CSS that styles the site and simply writing.
Ownership over content. While there are workflows to export WordPress sites, the seperation in static sites between raw content and final pages is attractive. This page and all of the blog pages are written in Markdown
Speed. You waste a lot of server resources running server side code to generate pages and expose yourself to vulnerabilities.
I wanted to learn about it.
I’ve experimented with Jekyll because it ranks as the most popular generator, has the backing of GitHub, and appears to have a massive track record and community. It was more than a pain in the butt to create a Ruby environment on my machine and manage a few competing version, so I ultimately switched to Hugo. It’s written in Go and has a big community behind it. The tutorials and documentation had me making a mess of a workflow, but the hot, live reloading function makes for a great feedback loop as a tweak the site.