Friday, May 23, 2008

Programmers are people too

I read an interesting article yesterday stating that the reason there may be bugs in your program is that programmers are human.

I read the article and agreed with almost all of it, until I finished, then I realized that it doesn't matter. The stress we are under to meet a deadline doesn't matter. The pressure to finish to meet an arbitrary date doesn't matter. Or at least none of it should matter. As a programmer, we owe it to the people who will be using our software, to not allow it to break unnecessarily. We will not be able to prevent all bugs, but we should test the software before we deploy, and we should not deploy with known bugs in the software. Tweaks I can live with, but a bug, as far as I'm concerned, is something that causes the system, program, or computer, to crash.

We are under time constraints and stress for our projects, and we always will be. But being a developer we owe quality to our customers. I will not compromise my integrity and produce a shoddy product to meet a deadline, I will not be bullied into it. At the risk of losing my job, I believe that I owe that quality to both my company and our customer. Putting a bad product out immediately hurts the user, but ultimately hurts the company and it's own image, I will not do that.

I have finished and deployed projects under immense time constraints, and some of my solutions have been somewhat forced upon me, but thankfully, I have never been to a point where I was pressured to deploy a solution with known bugs. It's a good thing too, because I think I'd have to start looking for another job.