Blog

All posts

Next page

Theory of Mind in Numberblocks - 5 Apr 2021 Rant 

Before I start this I should clarify something: yes, I know it’s just a show for kids, and I’m a fan of the lessons and techniques it’s using behind the candy-coated facade. However it’s also weirding me out in various ways, and so I felt this needed discussing. I’ve only actually watched the first two episodes (along with my toddler), but I think this got enough of the core concept over that I can at least vaguely talk about this.

Immutable Systems Infrastructure, or how to mashup Kubernetes and Nix - 20 Feb 2021 Tools  Rant  DevOps 

TL;DR: Proposal for a way to define multiple-machine systems in a immutable way, without requiring by-hand layouts.

Scraping Lewishams bin days - 7 Sep 2020 Python  Web  Docker 

Lewisham Council have what at first glance appears to be a perfectly good webpage for figuring out what day your recycling is on. Except, there’s no API, and the pages appear to have been designed for the explicit goal of breaking every option for scripting them.

Customising Github profile pages - 11 Jul 2020 Python  Web  git 

I saw a blog post recently by Simon Willison that shows you how to use a somewhat hidden feature of Github (as in it seems well known on the internet, but it’s not in their docs). Normally, a Github profile just contains either a random set of repositories, or you can pin particular repositories if you want. However, it turns out there’s an extra hidden feature: if you have a repo with the same name as your username (e.g. palfrey/palfrey for me) and it has a README.md, that will get displayed at the top of your profile.

Celebrating 100,000 downloads of serial_test - 23 Jun 2020 Rust 

About 18 months ago I was wondering how to make Rust tests run in serial occasionally and I wrote a little crate called “serial_test” to solve this. I was digging through some other things, and idly noted that serial_test now has over 100,000 downloads, and so it’s probably a good time for a little retrospective on it.

Virtually going to the pub - 22 Mar 2020 Tools  Web  Pontification  Business Ideas 

Due to the current pandemic, we're all on at least social distancing, and some of us on full-on lockdown. This has curtailed most people's social lives somewhat (mine less so, but a 1 year old will do that), and so various people are now doing various meetups on Zoom, Skype, Houseparty, etc. I've used these tools before, and they're good for certain use cases, but less good for others. So we build a pub. Of sorts. Here's the model I've got in my head...

munger: Scan-to-cloud for local scanners - 31 Jan 2020 Python  Hardware  Cloud 

Despite the ongoing good work in many places to move to fully digital options, many organisations remain committed to sending you shards of dead tree through the post (particularly the NHS, though I can understand that given how they’ve been burnt in the past). Keeping track of all this paper is tricky, and particularly hard…

Weird software licenses you may have not tried yet - 6 Jan 2020 Rant 

So, you've just made your first software project and are wondering how to license it. Well, here's a quick guide to some options you may want to (not) take.

Traditionally there are approximately 4 different paths for licensing:

How to get a 10x developer - 6 Jan 2020 Rant  Pontification  Project Management 

Long time readers will note this post as being similarly clickbait as my earlier ‘How to be a Rockstar developer!‘. Don’t worry, hopefully there’s useful information here. (I’ve been inspired here by Keavy McKinn’s post ‘Thriving on the Technical Leadership Path’, which talks about many good things, but a lot of is about how to…

Solving Docker’s ‘wait for database’ problem - 22 Nov 2019 Cloud  Docker 

One of the problems very familar to anyone doing anything with Docker is that of knowing when a service has become available. If you’re working with Kubernetes, then there are various probes that solve the problem there, but for some reason this has never been solved fully in Docker as such. They are aware it’s…

Next page