Who's governing the standards of the code behind the things you use on a daily basis? Tennessee's lottery has had an issue with their switch to computer generated numbers. Big deal, the lottery screwed up, we all do it from time to time, right? The problem is there should have been some checks and balances to prevent a bug like this from reaching production. Are they not using test driven development? Did anyone actually review the results of the generated test sets?
How can we know that we can trust the software running the things that we interact with? A friend of mine brought up electronic voting in a conversation we had today. There is a large issue here. How do I know that when I press the button that it really is counting towards the candidate that I select? More importantly still, how do I know that the code and hardware are hardened enough to prevent malicious activity?
Obviously, all of this just raises questions in my head. I'm not sure I have the answers to this, but I know for sure I'd love to inspect the code of some of this stuff. I'd at least like to know that real life code had some kind of audit. Think of it as a Good Housekeeping seal of approval or FDA stamp for publicly consumed software. For lack of a better name, we'll call it the Josh Bush Software Guarantee. I like that, don't you? It kind of has a nice ring to it.
Jokes aside, it's important to realize that computers control many aspects of our lives. Even though the lottery is a tax on the mathematically challenged, I want to make sure it's fair for everyone.