I was discussing bugs with some students and why it is important to identify and then crack them. When the topic hovered over memory leaks, I gave examples about how the software had to be restarted to regain the memory. Memory leaks when a software acquires memory from the computer, but does not release it back after the work is done. The only way then, to release the memory, is to kill the application. One of the biggest symptoms of a memory leak is the computer gets sluggish, since the available memory for operations keeps decreasing.
Well, a certain group thought that it was not a big deal to restart the software. They did so many times with the browsers and their OSs. That it is not worth spending more effort in tracking down the memory leak and fixing it, and that the user should be told to restart after some time. There was no point discussing the details about usability or ROI with them, since their approach was based on their experience.
That is when I used the analogy of electricity. I asked them to consider if they lost electricity at regular intervals in the 24 hours. What would happen? They would not be able to do spontaneous tasks, they would have to have a schedule, and it would have to work around the electricity cuts, and work when electricity is available even if it was a suitable time by other factors. Electricity would make it impossible for them to work because that is what powered their tools. There would be no other option, unless they figured out an alternate source of energy.
Similarly, if a software has to be restarted or crashes regularly, business processes would have to be changed to accommodate the breaks. Not only that, the time of lapse can cause discontinuity in the business processes and transactions and a possible loss. To some extent, business processes do account for the downtime, especially during maintenance. But it is planned and it is not frequent. Bugs like memory leaks can make it impractical for businesses to continue using the software, in fact it would become a losable proposition. Luckily for the businesses, alternate software is more easily available than alternate source of energy!
This was a good session for them, and a good refresher for me too. It helps once a while to remind yourself of such things and to help you check if your priorities or alignments have changed. Today software is as, or maybe a little less, important as electricity to businesses. It not only supports, but powers them!