In the three and a half years since I launched this website, a lot has changed.
I’ve refactored my CSS, switched hosting provider, changed my development toolset, migrated to HTTPS, moved to GitHub, and lots more. In fact, until recently, the only thing that hadn’t changed was my approach to actually adding content: while on other projects I’ve experimented with a variety of CMS and frameworks, this website has remained firmly hand-coded.
By this, I mean that Bennet.org was literally just a collection of static HTML files that I’ve iterated on over time. This was fine when I started - building everything from scratch and scrutinizing every line of code was a great learning experience, and I’d encourage everyone to give it a try. But recently I decided it was time to move over to a modern development pipeline.
I’ve now rebuilt the website from the ground up using Hugo, my favourite static site generator. All my code is still held on GitHub, but I’ve finally moved the site over to my preferred platform Netlify. Netlify are awesome - I’m hosted for free on a weapons-grade CDN, and by pushing commits to my repository, can instantly deploy changes without leaving the command line.
So yeah, I’m now rocking the JAMstack.
As for processing my CSS & JS and running my development server, I’ve tried quite a few different build tools over the years. These include command-line Node.js options like Grunt and Gulp, as well as graphical programs like CodeKit. All had their advantages and drawbacks, but eventually I decided that I prefer vanilla npm. Perhaps if my sites were more complex I’d better appreciate the merits of tools like Gulp, but even so, I don’t know why more developers don’t use straight npm.
If, like me, you value simplicity and are averse to using tools you don’t fully understand, I’d encourage you to try out this approach. Check out this post by Keith Cirkel and this tutorial on CSS Tricks.
That’s all for now - thanks for reading. I will see you up ahead.