As 2020 draws to a close, I performed the annual cleansing ritual of formatting my laptop and upgrading to macOS Big Sur.
Following Tom’s recommendation, I bought a Samsung T5 500GB portable SSD and used SuperDuper! to take a copy of my entire hard drive. I then upgraded to Big Sur, restarted my Mac into macOS Recovery, used Disk Utility to erase my internal hard drive and reinstall macOS from scratch.
While I don’t have an automation tool to my name, almost everything I need to set up my computer can be found in my dotfiles (aside from my private SSH and GPG keys). After copying over my music and photo libraries, I was back up and running within an hour.
We enjoyed Christmas day with the family with its equal parts of rich food and busying myself with the construction of various toys given to C (e.g. a tricycle and a repair garage with 32 pieces of track).
While we’ve been staying with my parents, C has started saying words. His first was “apple” and his vocabulary has now expanded to include “ball” and “dada” which, confusingly, is his attempt at “grandad”.
C was particularly fond of a Hey Duggee wooden puzzle from my parents but managed to break it after dropping it only once.
From the outside, it seemed the circuit board attached to the inside of the puzzle had simply come loose but, as the entire unit was glued shut, I had to take a handsaw to it to investigate further.
After much sawing and clumsy prying with various screwdrivers, I managed to get inside to discover the integrated circuit that powered the device had detached as it was stuck in a blob of glue.
After asking Leo for advice, he encouraged me to look up surface-mount technology (SMT) soldering and give it a go. Calling upon my father-in-law’s soldering iron once more, we gave it our best shot and got it (mostly) working! Only one of the characters (sorry, Tag) no longer speaks when you fit their piece in the puzzle but five out of six isn’t bad.
Leo has also been teaching me Go as I’ve been working on a custom HTTP reverse proxy to complete requests on behalf of a desktop application whose HTTP client has not been configured to follow redirects.
Despite having done the excellent A Tour of Go, I find that new languages only really stick when I try to ship my own project.
Writing automated tests using the httptest package was great fun and Leo’s recommendation to watch Mitchell Hashimoto’s “Advanced Testing with Go”, focussing on subtests and table driven tests was invaluable.
It was also useful to learn about the standard Go project layout even though my project is so small I’ve stuck everything in
I’ve been working my way through various Christmas specials: Mortimer & Whitehouse: Gone Christmas Fishing, Motherland: Christmas Special, The Great British Sewing Bee: Celebrity Christmas Special and, of course, The Great Christmas Bake Off 2020.