Why Developers Say, “It Works On My System”

Because it is not as bad as saying, “Don’t blame me for it.

It works on my computer” is one of those things that reminds me of how pedestrians behave as drivers and vice versa. The pedestrian feels that the driver should be careful and drive safely, but the same person, as a driver, hates all the jaywalking pedestrians. All programmers, at some point in time, have replied to a bug stating it works on their system, but it drives their team leaders (once programmers themselves) crazy when they hear them.

To the manager, this statement sounds insane. He thinks, “Why does it matter whether it works on your system? We are not talking about your system. We are talking about a customer who is unable to do their work because the application doesn’t work as it is supposed to? Why are you being so callous?

The developer, simultaneously, thinks, “There shouldn’t be any problem with the application. After all, I tested it a million different ways. It passed testing and we didn’t have any problems so far. Maybe the person at the customer site is using an unsupported environment. Maybe they are missing a necessary component or turned off something for security reasons.

The developer remembers the several times in the past when he had to deal with a supposedly huge problem in the application and then found out that the user did not have the network cable plugged in (yes, Google too stopped working!). Or that some IT wise guy decided to turn off JavaScript (all those nasty XSS exploits). Or even when the customer was specifically told not to use anything less than Windows XP, and they decided anyway to run the application on a Windows 98 box (it happened to be lying around).

Maybe this time, it is different, but probably not.

Yes, the developer knows it is not his fault. But saying that makes the developer sound too defensive. Better to use an actual fact, i.e., the application has been known to work. It is not a problem with the code he wrote. Inside, the developer also knows that he will have to fix the problem despite this statement. But he wants to win this mini-battle to maintain his credentials.

So, manager, when you hear a developer say, “It works on my system“, don’t burst into flames. Just say without any sarcasm, “OK, it is good to know that the application is working here. [significant pause] Now, can you call the customer and get it working on their system?

This entry was posted in software development and tagged . Bookmark the permalink.

6 Responses to Why Developers Say, “It Works On My System”

  1. LK says:

    The moment I saw the title of this post, I just couldn’t stop smiling. It’s so common in developers to think like that but I like the simplicity of your advise to deal with developers.

  2. sankarsan says:

    @Krishna:Very nicely chosen topic.Developer’s say “It works on my system” mostly from a myopic vision that writing correct code is end of his job.

  3. Kevin says:

    All programmers say this statement(loudly or in secret) sometime in their programming careers :)

    It is kind of a knee jerk reaction. When an application that a programmer works so hard on is supposed to be failing when used by a person who doesn’t know the effort that has gone in trying to make it good, it is a natural response.

    But it can make you seem arrogant. So the best solutions is to refrain from saying it up front(though you can say it in your mind :) ). Then understand that software can fail due to various external and internal reasons and try to help fix the problem.

    • Krishna says:

      That is right, Kevin. Programmers have to think about the perception it creates in the mind of the users when they say that.

  4. Gunjan says:

    This is sooo true… and happens alll the time!
    nice post!
    This sure will make all the developers think twice before uttering the phrase again!

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>