Weeknotes 14
Mundane overhead
-
Happy Easter! 🐣🍫
-
I tried to make vegan marshmallows as an Easter treat for Nat. They came out alright despite the difficulty of doing anything like this without a sugar thermometer.
It’s not a perfect result but it’s fun and surprising that such a thing works at all. At some point I’ll try again with a thermometer and a whiter sugar to see if I can keep more of the foam’s structure.
-
I made dough today and the shaping went surprisingly well. I don’t know whether this is because I’m doing something differently (perhaps more confidently?), or because my flat is several degrees warmer this time, or because the difference is imaginary and the resulting loaves will be the same as usual when I bake them tomorrow. Pictures undoubtedly to follow.
Sorry to add yet more unbearable bread content to the world wide bread but I would remind you that I was already stuck at home with nothing better to do back in January so I’m the trendsetter here.
-
I’d been meaning to watch Free Solo since it won an Oscar a year ago so I was glad to discover it’s available on Disney+. Apparently Disney owns National Geographic‽ Anyway, we watched it and it was very good.
I do wish it had spent more time talking about the technical aspects of both the climbing and the filming. Both of those things are pretty mysterious to me so the occasional scraps of detail were interesting. At other times I found myself getting distracted by trying to work out how they recorded the audio or achieved some of the shots, and without properly understanding the mechanics of free soloing I kept wondering how various parts of the climb were even possible. Conversely I’ve already seen plenty of films about a person who wants to do something dangerous and another person who cares about them and therefore doesn’t want them to do something dangerous so I wouldn’t have minded skipping those bits. But that’s because I’m a horrible robot isn’t it?
-
After working out how to communicate with my Elgato key light last week, this week I cobbled together some Ruby code to expose it through HomeKit. It was satisfyingly easy: I already knew how to do the DNS-SD discovery programmatically with the
dnssd
gem; sendingGET
andPUT
requests to the light itself withNet::HTTP
is straightforward; and theruby_home
gem lets you advertise a HomeKit light with a few lines of code.Once I could control the light through HomeKit, the only wrinkle was keeping the HomeKit device state updated when the actual light is controlled by its native apps. The iOS and macOS apps show the light’s state changing in their UI when another device controls it, so I wondered if there was a clever way of subscribing to updates… but no, a quick look with Wireshark revealed that the app queries the light with
GET
once a second whenever its UI is visible. So I just added a thread to do that and everything works great.Why bother doing any of this? I dunno. It’s mildly convenient to be able to ask Siri to turn the light on, but that’s not a big motivation. I think I must enjoy this sort of pointless tinkering for its own sake. There is something rewarding about being able to lash bits and bobs together with code, especially without the mundane overhead of having to deeply understand any of it or worry about it being completely robust.
-
One concrete benefit is that I learned the HomeKit Accessory Protocol Specification represents colour temperature in “reciprocal megaKelvin (MK-1) or mirek” which is a funny bombastic name for quite a boring SI unit.
-
We are, in a few narrow ways, living in extremely scientific times. I’ve seen a lot more conversations than usual about semi-log plots, second derivatives, Bayes’ theorem, the polymerase chain reaction and hash functions. This is weird and, of course, it’ll go away again once everyone is less worried, but in a way it’s fun to have a little collective moment where the general public is interested in something unusual.