Craig Weber

Efficient SSG with CSP

In this post, I'm going to discuss my new static site generator which uses communicating sequential processes (also known as "actors") to efficiently build a static site from source, improving performance on the order of 10X (on my laptop) by efficiently using all available cores.

Read More

Moving blog to EC2 Spot Instance

We recently moved from Chicago to Des Moines, and we're staying in an AirBnB for a couple months while we look for the right house to buy. In the meanwhile, most of our stuff (including critical components of my homelab) are in storage, which means my blog wasn't running. In this transient period, I figured I would try to run my blog in the cloud, and while there are easier and even cheaper options, I decided to try out running it on EC2 in order to learn a bit more about traditional Linux system administration. This post will document the approach I arrived at.

Read More

Securely expose private service for cheap

Disclaimer: This is not a production-grade solution

At home I have a Raspberry Pi Kubernetes cluster running, among other things, this blog (or at least at the time of this writing). One of my goals for this cluster is to keep my cloud/SaaS/etc costs down below $5/month. Another goal is to avoid poking holes in my home router's firewall.

Read More

Blog infrastructure updates

Another year, another blog update. BitBucket is deprecating their Mercurial support, and while I really do appreciate Mercurial, it's just easier for me to keep everything in GitHub than trying to find another Mercurial provider. Also, GitHub seems to be improving at a pretty rapid pace. So voila, this blog is now hosted on GitHub. This includes my pet static site generator, neon which is used to generate this site. Read More

New blog infrastructure

I finally got around to automating the publishing of this blog. It hasn't been a high priority, since I only post a couple of times a year, but it's always bothered me that something that is such an ideal candidate for automation hasn't been automated. Anyway, I finally did it and I want to describe the setup in case it's helpful for anyone looking to do the same.

Read More