What I Did
It feels like a busy week. I did a lot of class-organizing work at NYC Resistor - I’m really psyched about our June and July class line-up. In particular, I can’t wait for the sewing basics class. My two New Year’s resolutions were “do fewer things” and “learn to use a sewing machine”. I’m not sure how I’m doing on the first one, but at least I can manage the latter!
I’m also teaching an intro to soldering class on July 30th. As part of that, last night I soldered up the kit we’ll be using:
I also finished knitting what might be my most ridiculous scarf yet. It’s a giant pile of squishiness.
And I prepped my slides for React Europe. Looking forward to the conference!
I finished a book! I’ve Heard the Vultures Singing left a huge impression on me. Go read it, if you like beautiful ugly things. It’s a fairly un-sentimental, lyrical, wry, emotional series of essays dealing with illness, disability, nature, and life. Written in prose, but really, it’s something close to poetry.
I’m getting back to reading CS papers. It’s been a while! I don’t think most software engineers read CS research papers. (Possibly for good reason! Are they usually relevant to us? How do you discover interesting papers? The answer depends a lot on your background and the kind of work that you’re doing.) Some folks at Twitter run a distributed systems reading group and I’m trying to keep up with the readings.
Your computer is already a distributed system. Why isn’t your OS?, Baumann et al from 2009. I took OS in college but don’t know nearly as much about it as I would like, so I can’t really have opinions on the whole multikernel thing.
We argue that a new OS for a multicore machine should be designed ground-up as a distributed system, using concepts from that field.
The Byzantine Generals Problem by Lamport, Shostak, and Pease. This was a pleasure to read. There’s also some good snark in it. I feel like I’m not particularly well positioned to say much interesting about it though? It’s basically about the cost of ensuring reliability when you might have “untrustworthy” (or malfunctioning) parts of your system.
Achieving reliability in the face of arbitrary malfunctioning is a difficult problem, and its solution seems to be inherently expensive. The only way to reduce the cost is to make assumptions about the type of failure that may occur. For example, it is often assumed that a computer may fail to respond but will never respond incorrectly. However, when extremely high reliability is required, such assumptions cannot be made, and the full expense of a Byzantine Generals solution is required.
Time for a change of pace! I love knitting blogs. Here’s an interview with Bristol Ivy about a new pattern she’s designed. When describing her design process, she quotes Sondheim:
“There are only three principles necessary for a lyric writer, all of them familiar truisms. . . . In no particular order, and to be inscribed in stone: content dictates form; less is more; God is in the details - all in the service of clarity, without which nothing else matters.”
I like these ideas, especially as applied to knitting.
The written version of Sumana’s speech, Inessential Weirdnesses in Open Source Software from OSCON 2016, is awesome. Go read it.
You can’t be all things to all people. [pause]
We would be making more and better software, and empowering more people, if we got and kept more people, who have different strengths. [pause]
This is a contradiction. It is.
The strange story of how internet superfans reclaimed the insult ‘trash’ provokes my love of fandom linguistics. It’s also just a lovely note in praise of tumblr culture. I can rant at great length about the originality and vibrancy of tumblr, opaque and disorienting a cultural space as it can be.
How complex systems fail is a paper I’ve encountered before but recently had cause to read again. Wonderfully concise description of how complex systems are intrinsically hazardous.
why GNU grep is fast - the TLDR; here is fantastic. “The key to making programs fast is to make them do practically nothing.”
Some notes on content and documentation debt from 18F, and how to prevent it.
The Chaos by Gerard Nolst Trenité is a horrifyingly wonderful poem containing “about 800 of the worst irregularities in English spelling and pronunciation.” Go on, read it out loud.