After publishing last week’s notes, E and I noticed a high pitched whining noise coming from our kitchen.
Unable to locate the source of the noise, I switched off the power to our oven, fridge and freezer but still the whining continued. I resorted to holding the cardboard tube from a toilet roll to one ear while plugging my other ear with a headphone, crawling on all fours trying to pinpoint this infernal whine.
With a growing headache, I climbed onto the kitchen counter and checked our fire alarm when suddenly I realised: the noise was coming from C’s baby bouncer. He’d accidentally turned on one of its soothing sounds and the manufacturers had seemingly chosen the sound of a single, agitated mosquito to represent the rainforest.
In my search, I did discover our fire alarm had a sticker on its underside that read “Replace by 2014”.
My changes to RubyGems.org stats were deployed so I can tell you on Friday, 15th May 2020, out of 54,933,639
- 19,634,055 (35.7%) were from Ruby 2.3 (end-of-life since April 2019)
- 13,631,483 (24.8%) were from Ruby 2.5
- 8,370,929 (15.2%) were from Ruby 2.4 (end-of-life since April 2020)
- 5,952,688 (10.8%) were from Ruby 2.6
- 3,882,306 (7.1%) were from Ruby 2.1 (end-of-life since April 2017)
- 1,090,639 (2.0%) were from Ruby 1.9 (end-of-life since February 2015)
- 782,778 (1.4%) were from Ruby 2.0 (end-of-life since February 2016)
- 726,975 (1.3%) were from Ruby 2.2 (end-of-life since April 2018)
- 720,261 (1.3%) were from Ruby 2.7
- 122,573 (0.2%) were from Ruby 1.8 (end-of-life since August 2014)
This means that 34,610,255 (63%) of all requests were from versions of Ruby that are technically “end-of-life”.
Following Facebook’s description of their newly rebuilt tech stack for Facebook.com, I enjoyed reading Tom MacWright’s “Second-guessing the modern web”.
I was particularly drawn to the idea of the pit of success:
And it should be easy to do a good job.
Frameworks should lure people into the pit of success, where following the normal rules and using normal techniques is the winning approach.
I’ve mentioned my interest in the design concept of “affordance” before and my main consideration when designing software is what kind of behaviours does a decision encourage and discourage. “Pit of success” is a pithy way to communicate this idea: how can we construct a system such that the easiest possible thing is also the right thing to do?
In one of our recent trips to The Baby Club, the answer to the regular question of “what’s in the bag?” was “a bag”. The recursive nature of this answer reminded me of the filling inside KitKats and made me secretly wish the show would take a more surreal turn. I suppose I’ll just have to rewatch “Don’t Hug Me I’m Scared” instead.
This week at work, after successfully launching a major new feature, we took a few days to clean up some technical debt we’d accrued to meet our deadline. I took to calling it a “firebreak” week, having stolen the term from GOV.UK.
Having overheard this, E wished me well “turning off the fire engine”.
After seeing John Siracusa recommend using
pmsetto diagnose problems with a Mac that refuses to sleep, I used it myself when E’s laptop kept draining its battery with the lid closed.
pmset -g assertionsrevealed that
UserIdleSystemSleepand, sure enough, toggling Screen Sharing (and a reboot) fixed the problem.
I went down a bit of a GPG rabbithole after discovering that my 12 year old 1024 bit DSA key is threatened by weaknesses found in SHA-1. Thankfully, The Apache Software Foundation’s “How to transition to a new PGP key” was an excellent guide to generating a new 4096 bit RSA key and transitioning to using it.
After reading many recommendations, we started watching “The Mandalorian”. It’s fine.
A recurring section of C’s Sing and Sign lessons is a cat named Jessie hidden in a box. I assume this is to teach children the problem of the Copenhagen interpretation of quantum mechanics.