Bank Error in Your FavorSat, 8th Dec '12, 1:20 pm::
It's a gorgeous winter day here in Florida. Perfect weather, sunny skies, and best of all, someone else made a mistake in my favor. I went to the county services to file some paperwork and they made a mistake. Since they could not reverse the transaction, they offered to provide me two future services at no charge. Now I don't go around looking for free deals or figure out ways to beat the system; not worth the effort in most cases. But I do appreciate those "Bank Error in Your Favor. Collect $200" instances because more often than not, the error is not in my favor and I have to waste a lot of time correcting someone else's fault.
On the topic of fault, having written quite a few business software applications, I have a tremendous amount of empathy for clerical workers and customer service personnel. Not just because they have to face irate customers and frantic callers on a daily basis but rather because their fault is not usually theirs. I do not blame the clerk today for processing my paperwork incorrectly when she clicked A instead of B. All humans make mistakes. I fault the developers of the system who do not provide her a way to fix the mistake by reversing the transaction with minimal effort.
In defense of the developers, it is not always easy to build an "undo" transaction in every system and there is a significant cost associated with reversing entries that have already been posted. Instead of having just two types of transactions "purchase" and "sales", you now need two more - "purchase return" and "sales return". If you were selling ID tags with serial numbers, now you need "undo issue" and "undo payment" transactions. These additional types of transactions have to be included in every screen, journal, table, and report, increasing the cost of development.
Since I have yet to come across a software development project with infinite budget, usually the features that get cut are the ones that would help reverse human errors. Instead of paying for an expensive undo button, administrators prefer to provide additional training to the users so they do not make mistakes. But humans always make mistakes. And when they cannot fix it, the feeling of helplessness causes low morale, irritability, and overall loss in productivity. If you see a long line and stressed out customer service personnel, be nice to them because the fault is most likely not entirely theirs, even when they type 3 instead of 2.