Software developers learn early in their careers that nothing is more urgent than fixing a production outage. Drop everything! All hands on deck! However, the same level of urgency is not often given to problems with our development tools, build systems, QA environments, and other parts of the software development pipeline. But for the development team, the development pipeline is a production…
I propose the following social contract: The sender of an AI-composed message must preface it with a disclosure that it was AI-composed. The reader of an AI-composed message has no obligation to read it themselves, and is free to have an AI summarize it. The reader of a message that was composed by a human is obligated to read it themselves, using their own human brain. This applies to emails,…
The original 1966 cartoon “How the Grinch Stole Christmas” was an absolute masterpiece, a staple of Christmas season TV in the days before streaming. It’s probably best known for the diss track “You’re a Mean One, Mr. Grinch”. It’s so iconic that I always forget that it isn’t the title song of the cartoon, coming a full third of the way in. “You’re a Mean One, Mr. Grinch” is so packed full of sick…
Back when I first started this blog, I was curious about the traffic I was getting. How many people were visiting? What lead them here? So—like many others at the time—I set up Google Analytics on my blog. And, well, I still am curious about all these things. But not enough to subject you to Google’s surveillance . So as of today, I have removed all 3rd party components from by blog. That means no…
I often think about Evan Hahn’s article “ 95% is very different from 99% ”. He classifies it as “a rant”, but I think he really hit on something. He says: I think there’s a huge difference between “usually works” and “almost always works”. One of his examples is a phone’s autocorrect, saying: My phone’s autocorrect, though essential and impressive, fails all the time. I’d like to dig further into…
My favorite tool for finding the source of regression bug is git bisect , and I’d like to tell you a story about how I used it today. Here’s what I knew to start with: A bug report was filed on October 21 ( almost a month ago ) on our main branch. This bug doesn’t exist in the previous version of our software, which was branched from main as the branch release-5.7.0 . The branch release-5.7.0 was…
Ever wonder what words show up most often in song titles? Anyone? Well, I did. And Discogs has a database of over 156 million song, so I put together a couple Node.js scripts in search of some answers! You can look at the raw numbers yourself, but here are some things that stood out to me: After skimming past common articles and prepositions, the most popular word in song titles is You , with 5.8…
There are some awesome illustrations in the 1890 sci-fi novel Le Vingtième siècle. La vie électrique ( The Twentieth Century. The Electric Life ) by Albert Robida . The novel is in French, so I’ve just used Google to translate a few snippets. But the illustrations are killer. First is the cover, which has a pretty chill steampunk vibe. But open this baby up, and it gets intense fast! The caption…
Scenario: you’re writing up some documentation for your HTTP library. You’ve been working on it for hours, and it is getting mind-numbingly boring. You need to provide some examples of fetching by hostname and IP address. No problem: client.fetchByHostname("fake.com") client.fetchByIP("123.123.123.123") But what happens if someone pastes your example into their code and runs it without thinking to…
Strong opinions, loosely held. This is a philosophy I used to be a fan of. It can be paraphrased as “I have very strong opinions on most things, but my mind can be changed easily if given evidence otherwise.” The “strong opinions” part certainly fits in with many online communities; a willingness to change one’s mind is at least an improvement over many of the loudest voices out there. But as I’ve…