because Hindley-Milner rocks
Long story short, I have no test machine at work. I can’t do clean installs nor can I replicate potential customer machines. Moreover, my boss doesn’t want me “wasting” my time building and rebuilding every configuration that a customer could potentially have just to make sure it can install cleanly. My boss, my boss’s boss, and the customers are all unhappy with the fact that they have such trouble getting the code I ship to install. I’m taking a lot of heat, it makes me look bad and is oh so frustrating. It could easily be fixed with the purchase of a “$199” testing machine.
So what do I do? How do I plead my case to management? How do I make them understand even after dragging a senior developer down to explain to them how it is impossible for me to anticipate all pitfalls without access to a test machine?
Make a post on SO of course! That’s the new age, internet way. Armed with responses from seasoned pros who have fought and won the war I could valiantly ride to battle… And, um, yeah. Only in my dreams. The responses, while they gave me many things to think about didn’t help me resolve the one pressing issue I face, the lack of a test machine.
You see, my boss’s boss won’t spend a dime unless he has to. When I got tendinitis from the poor chairs and desks at work I was denied a lowered keyboard. I had to buy it myself. Ugh!
Then there’s the whole “quit your job” thing (2nd highest voted comment.) I’m never given enough time to code unit tests, integration tests, or even the proper tools to test to begin with (like a test machine.) Add a ton of schedule pressure and last minute changes. Things that have to be done ASAP! Right now! We needed it done a few days ago!!
It’s as if they expect me to write perfect code without any tests. The worst part of it was this past Christmas. I was given a new feature to code up Friday afternoon, 3 business days before a big deadline. I estimated the work should have been allocated 2 weeks for development, testing and some “just in case” time. I came in that weekend and even canceled my Christmas Eve plans (which went over real well…)
So what was the end result of my Christmas Eve sacrifice? How did it turn out? I barely got it done. More than that, it only had 1 bug. One bug, you say? That’s not impressive, you say? This change involved rewriting a major swath of code in 2 applications, some code in a third application, modified the database, and altered how we ran a third party executable. I should have gotten a medal. Instead, my yearly performance reviewed harped on my mistake.
Damn, I need a Tylenol and a test machine.