The title says it all. This applies to all aspects of life – from a pothole on your drive to work, to a broken link on a website, to asking a question in a class, to fixing a bug in a software project.

There are three main reasons I attribute to people following this bad behavior of “not fixing problems as they arise”- 1) Laziness, 2) They don’t think action will be taken in response to their report and 3) Bystander effect

1) Laziness
In 2010, the excuse, “I don’t have time to report the problem” is simply ridiculous. In almost every case, an at least semi-relevant email address can be found and a two sentence email sent in less than one minute. “Hi, I was on your website today and I noticed that a link  is broken. I just thought you’d like to know!” or “Today I was driving on 1st Ave between 22nd and 23rd St. and I hit a HUGE pot hole. I thought you’d like to be made aware of this so someone does not damage their car or get injured!”

In software, a very common, very unfortunate situation that stems from laziness is a “workaround”. That is, developer A notices that something doesn’t work as expected. Rather than fix the problem, they find an alternate route to the solution. This is fine for developer A, but what about developer B who is working closely with developer A. Developer B notices the same thing doesn’t work as expected. He then asks around and developer A shows him the alternate path to the solution. Eventually the amount of time spent frustrated and trying to figure out why the feature doesn’t work would clearly be undercut by the amount of time it would have taken to fix the issues at the time it was first noticed. Now, developers C – Z (and all of the users). These people are outside of the close-nit team comprised of developers A and B. This very large group will certainly struggle with the same problem but are not in a position to find out about the workaround (likely due to (2) and/or (3) below). They then simply label the software as “buggy” or “broken” and the software starts to gain a negative reputation.

2) Anticipated Lack of Action
In the above cases, one may think “Yea it’s easy to do, but they aren’t going to care” or “They’ll think I’m whining”. According to my point (1) above, the worst case scenario is no one responds and you wasted one minute. The best case is the item gets fixed and it makes life better for the next [huge number] of people who would have come across the same issue. The risk-reward ratio here is extremely good.

3) Bystander Effect
http://en.wikipedia.org/wiki/Bystander_effect
This is a well known psychological problem, and therefore is theoretically the hardest to rectify. In summary, no one reports the problem because everyone thinks someone else will report the problem. This is closely related to “pluralistic ignorance” (http://en.wikipedia.org/wiki/Pluralistic_ignorance). The only thing that can be done here is to educate the public of these natural psychological occurrences so that they can try to consciously avoid them.

Lately I have strongly adopted the attitude (inspired by the NYC subway system!) of “See something, say something”. If I find even the smallest problem or have a small idea, I make it a point to let the person or group who is in charge of that item know about it. No, I have not made any huge, notable changes, but if weekly every person made even the smallest improvement in even one thing, imagine the result. Any time anything is multiplied by 7 billion (estimated world population), a VERY large result can be seen.

The Open Source Life Analogy

In open source software there is a principle of “release early, release often”. I believe systems in the world have become big enough that this principle is the only way that they can be managed reasonably. That is, “things” (road systems, websites, etc) are simply too big these days to be monitored solely by the companies and governments that are “responsible” for maintaining them. They must rely on their users (the general population) to alert them when there is a problem. If organizations are counting on their users, the users must ensure that they are not falling into any of the three traps listed in this article!