I seem to be on the subject of economic fallacies today.
Scripting News: "And perhaps this series of notes on smoking cessation will help a couple of other people to quit before getting a deadly illness. So while it may seem grandiose to think of software as life-saving, it isn't really a huge stretch."
It's not grandiose in the slightest, and in truth, it's sad that people will think it is. The reality is that for any given event in life, the net effect of "the little things" are larger then the effect of what most people would call 'the cause'.
Few, if any, people will have their lives directly "saved" by the sharing of experiences about quitting smoking currently going on. Even if it is the proverbial "straw that breaks the camel's back" that pushes someone that final little bit towards quitting smoking, we can hardly assign the full credit to the sharing of knowlege and experience by Dave and others. The influence of friends, of the never-ending media blitz against smoking, of a person's own friends and experiences, all added together in subtle and ultimately mysterious ways, are what lead to the decision. Only rarely, if ever, is a decision of that magnitude "caused" by some single event.
I once saw the value of a human's life placed at one million dollars or so. The context of the figure is government spending; if the government wastes a million dollars that could have been spent with humanitarian purposes, that's one million dollars that could have been spent saving a life. There's no one corpse you can point to, it's the accumulation of lots of little things, here and there: A baby's life cut short twenty years for lack of proper pre-natal care. A homeless man getting a nutrition-deficit disease instead of a meal. Heart research not done, not leading to a cure. Add it all up, and roughly one human life is lost, on average. (If anyone can find the source for this, I'd appreciate it; I couldn't get the right combination of keywords.)
I think this is, to some degree, one of those programmer truth things; it takes a lot of experience with complex systems to feel this in your gut. But only through understanding the importence of the little pieces, the importence of the gestalt of the system, can we truly understand what's going on. Scapegoating (the assignment of blame/cause to one small part of the network of causes) is indeed a cop-out; every influence counts.
Properly functioning software can save lives, and not just for the 'obvious' reason that in some circumstances, improperly operating software can cost lives. The little effects add up here, too. How many lives can be saved with 60 billion dollars? How many lives are saved or improved in quality because of the productivity benefits of software? We'll never truly know... indeed, I find thinking clearly about such "what if?" questions reveals they can't even be asked in a well-defined manner... but surely the answer is that there is a net gain.
Of course, the effect of software is just a special case of the more general concept I'm getting at here. Understanding this will lower you tolerance for corruption of all kinds (how many lives is the effects of 3.6 billion dollars of fraud worth?), especially governmental. I don't exactly have a source I can point to for this, but I am convinced one of the major reasons countries like Mexico can't seem to get off the ground and economically soar is the pervasive acceptance of corruption by the populace, which of course leads to corruption, which gives the economy 'death by a thousand cuts' ,another phrase that hints at this truth. (That chain of reasoning is violently oversimplified, of course.) Lax safety engineering is a serious issue; something as mundane as picking the wrong tires can cause many deaths.
Everything is connected. Everything but the truly trivial, and even quite a bit of that, is life-saving and life-harming. Not just software, not just government waste... everything. That effects can be isolated, and single causes assigned to events, is a pervasive and dangerous fallacy.