More notes on bug blindness
Some misc. notes following up on the bug-blindness discussion Dan Luu prompted earlier this week:
- I've long advocated developing the skill of describing software that you want, whether it's something totally new or a better(-for-you) version of something that exists. This is useful in several ways: describing the desired software precisely is illuminating; you might some day have time to make software but want ideas for what to build; and cultivating a critical eye for software is valuable. Because of that last aspect, the ability to describe non-existent desirable software seems to me adjacent to having "bug vision" of the sort Dan describes.
- I missed an important aspect of bug blindness in the previous post: when someone hits a bug, they often assume they must have been using the software wrong or must be confused about its purpose. (There is, of course, also a third-person version of this belief.)
- Do not underestimate the relevant social dynamics. Once, when I worked on a bug-riddled internal application, we were discussing an undiagnosed bug (a write had failed) during a team meeting. Someone suggested that it must be a bug in DynamoDB's batch-writing API function. Just on Bayesian grounds, it was almost certainly better than 1000:1 against its having been a DynamoDB bug, but it took me quite a bit of argument to get people to see this.1
- In the day or two since the previous bug-blindness post, I've compiled a list of bugs I've encountered. I'm not including anything that's non-public or a prototype; and I've only included clear-cut cases of bugs. My list is only 7 long, but all on important aspects of enormously popular software. I'm sure I've hit many, many more that I've been blind to or just forgotten to write down. On the one hand, if I'm only writing down one major bug per two or so hours of heavy computer use, I'm probably not bug-sensitive enough. On the other hand, I think many people would doubt that I hit one (distinct) important bug in major software every two hours.
This actually ended with my winning a bet that we'd discover that it was not a DynamoDB bug. I am technically still owed one of the relevant food item.↩