When I started my blog back in May 2007 (12 years ago!) I was running Wordpress, then switched to DotNetNuke, then BlogEngine, then finally back to Wordpress - which I’ve used since 2010. Today I’ve cut over to a new architecture based on Hugo and hosted on AWS using a combination of Route53, Cloudfront and S3.
Why the change? If it ain’t broke…#
You may well ask why I’ve made the move, or you may not…I’m going to tell you anyway…
- Security - “Installing Wordpress is like installing a RAT (Remote Access Tool) on your server”. There are literally no moving parts in the new setup, which means I don’t have to worry about patching an OS, webserver, PHP, Wordpress and plugins every 30 seconds. Sure, I need to lock down S3, but that’s pretty simple, and once it’s done I shouldn’t have to worry about it again.
- Time - OS updates, Wordpress updates, Plugin updates…who has time for that?
- Cost - running a web server isn’t really that expensive in the scheme of things, but compared to Route53, Cloudfront and s3 - it is! A reduction from $15/month to $3/month soon adds up over time. More to fund the lab?
An architecture for a modern blog#
- Hugo - Hugo is a static website generator based on Go, it’s a very quick and very extensible framework for building websites. It allows me to write blog posts in Markdown and generate my entire site in less than half a second!
- Route53 - I’ve migrated my DNS from Cloudflare to Route53, the DNS capabilities are similar, but it made sense to bring it under the AWS umbrella. I’ve not migrated my domain registration to AWS yet, but it makes sense to do so.
- Cloudfront - I previously used Cloudflare as a Content Delivery Network (CDN) to cache my site, reducing the load on my web server, bandwidth and increasing the performance of the site. Again this was migrated to AWS to bring it all under one roof, and to simplify some of the operations (like invalidating the cache when I update the site) using the AWS CLI.
- S3 - Since Hugo outputs static files - HTML, images and CSS/JS, they can be hosted directly from an S3 bucket. Not only is this lightning fast, literally costs me pennies. S3 is locked down to only allow Cloudfront to access it, so it’s pretty secure too.
VMware Clarity - a thing of beauty!#
I am working feverishly on getting my Clarity-based Hugo template to a point where I can publish it - it’s getting there, but I need to do a bit of tidying. If you’re interested, ping me on twitter and I’ll let you know when it’s ready to go! I will be putting it up on my Github repo.
A new workflow#

…and finally#
Grudgingly, I have to give a shout out to Cody De Arkland for being an inspiration/irritation to do this. I tweeted a while ago that whenever I have (what I think) is a great new idea, I do some digging and find Cody’s size 13 hoof-prints all over it already. This is true, which is irritating, but it’s also awesome to have a colleague and friend that I can bounce this stuff off of, and he’s always ready to help…so cheers you great soppy lump.