Resting Place of ProgrammerAbuse.org
This page is the resting place of the contents of the programmerabuse.org web site, which was started in December of 2004, largely in response to the "EA Spouse Phenomenon," and was retired in October 2005. While a few people posted a smattering of interesting comment (see below), the site never caught on. Why? Perhaps the "programmer abuse" concept simply did not resonate with people. Perhaps people did not want to see themselves as victims. Perhaps a few people who did have stories never found the site or chose to keep their stories private. Regardless, we're glad we tried it, if only to collect the interesting stories and comments you can read below (in chronological order, oldest first).
This is a Place to Vent
Welcome to ProgrammerAbuse.org. The purpose of this site is to allow developers and other software professionals to "vent" a little by telling their work-related horror stories.
The term programmer abuse is in part meant to be ironic; we're not working in salt mines with whips at our backs, after all. Real "abuse" of real people does occur, and often people who don't feel like they have a choice are asked to do more than is fair, but a lot of the time we programmers go along with the madness (the long hours, the grueling work) willingly.
Why ask people to tell their worst stories? Why concentrate on the negative? Three reasons:
- It feels good to let it out; these stories come out of stressful, trying times for a lot people. Venting has some value in and of itself.
- It's helpful to see what others have experienced. For younger developers, especially, they don't always tell you in school what some of these jobs can be like.
- And three, this site will become an important document that will far exceed any one person's "anecdotal evidence" of screwed up projects, bad management, excessive overtime, and, in many cases, outright exploitation. At the very least, it should be entertaining.
Everyone is welcome to tell his or her tale: coders, QA engineers, database experts, configuration management specialists--even managers. All we ask is that you keep it cool and keep it anonymous.
The "EA Spouse" Story
Just to get things started, here is a link to a story of programmer abuse that has gotten a lot of attention lately. It was written anonymously by the spouse of a programmer working for Electronic Arts, the large video game company. The author is known only as the "EA Spouse".
Comment posted to the ES Spouse story: "Hard to believe, even though I know it's true"
It seems to me that this holds true mostly in the game programming sector, where many "young guns" clamor for few positions, and will endure endless ill treatment to hang on to it. Whether this is born out of ignorance or masochism, I can't tell. But imagine: relatively high salary, cool environment, the prestige of working for an industry top dog. Priceless, right?
Wrong. But I think in time people learn. The problem now is that developer positions outside the game sector are rapidly dwindling in the US. So there's not really a guaranteed opportunity to realign one's expectations.
The bottom line for me with respect to this story: unfair labor practices are unfair labor practices, no matter what field you're in.
H-1b Exploitation
I worked for a *very* large international company for a few years and observed a lot of 'abuse' of the many H-1b contractors working there. However, the big company protected itself by making sure that it never hired any of these H-1b contractors directly. They always worked through agencies, most of which I think we're pretty shady. Most of the H-1b contractors were from India, and the irony is that most of the agencies were run by Indians! The 'abuse' I saw took two forms:
The Big Company worked these people like crazy (tons of hours, working weekends, etc), and there was huge pressure on the contractors not to put the extra hours on the timesheet.
The agencies were the worst, though. They would take big markups on the contracting rates, much higher than the normal agencies were taking for the American programmers. I personally witnessed occassions where a contractor earned a raise in rates, and the agency took the whole thing. The contractors didn't see a dime of their own raise. A few times the Big Company cut rates across the board, and the agencies would pass the entire cut onto the contractors. I know one contractor who was not paid by his agency for more than six months. These people did not complain about their mistreatment because any time they did the agency would threaten to revoke their sponsorship and send them back to India. I know one guy who wanted to leave the agency when he got his green card, and he was threatened that if he did his wife, who also worked for the agency, would be fire. One of the agencies forced the contractors to sign a contract that had a clause that if the contractor quit wihout giving FOUR MONTHS (!) notice, he would have to pay the agency $10,000.
Most of the 'programmer abuse' I've seen in my own career has been self-inflicted. I always felt that if I was asked to do something I didn't want, I could just quit. I guess as an experienced, caucasion, bachelor with no dependents, I had a bit more freedom than an immigrant or a married guy with three kids.
Comment Posted to the H-1b Exploitation post: "I totally agree"
I am an immigrant programmer (H1B. Yeah thats right, from India you guessed it). I was fortunate enough to be directly employed by my employer. There are a lot of contractors that work with me who suffer the same problems you have described above. Most of them found this job themselves. Their Employers didn't even lift a finger. However the employer deducts anywhere from $5 to $10 PER HOUR(:O) from their salary. That is a straight $20,000 (yes twenty thousand) deduction from their salary every year. Lets set aside another $20,000 for taxes. What are you left with? Yes most people who exploit H1B workers from India are American citizens but of Indian origin. I suspect a lot of the above would be applicable to Chinese immigrants too.
Anyway sob stories aside, here is a real opportunity for the business minded programmer. I would have done this if I were a US citizen. All you need to do is start up a consulting company and search promising resumes on monster or dice. Here is the clincher. Study the immigration process and *AUTOMATE* (duh, you are a programmer right?) the *ENTIRE* process of filing for the employee's H-1B (yes even lawers use a software to do that) all the way through to depositing checks from the client to the employee's bank account (can be done with the right payroll company). Don't be a Shylock and take a fair share from the H1-B worker's salary. Before long you'll have more money than you'll know what to do with.
Now you might wonder.. Why should I help these H1-B bastards who are stealing my jobs anyway. Well you are not *helping* anybody. You are helping yourself. I suggest "Atlas Shrugged" and "Fountainhead" if you want to brush up your basics on how life in a capitalist society should be. Here is an opportunity for you to earn some money. In the process of making that money, you are helping a few H1B workers. You might put that money back into "starving american programmers fund" or "enterprising jobless american programmers fund", that is totally upto you. Anyway looking at it from the capitalistic point of view, one might think that the Indian H1B employers are being capitalistic themselves. Yes they are and that is where you step in and "correct" the market. I'll be glad to provide any clarifications if I know the answers to any of your questions.
Chill!
Another visitor asked in reply to this comment, "Got any details on that process? I'd like to take a look at what automating it would entail."
Occupational Hazards
Okay, so my current boss is actually pretty good, and I've had mostly very good bosses. But I have had two particular *bad* experiences, and I'll share them, so we can all comiserate.
Job From Hell #1: Insurance-Industry Software Shop (Circa 1995)
Just about everything about the failure of this company is analyzed in brilliant detail in the book "The Death March", a famous book on doomed software projects. If I had to pick one thing to single out, it is the "politics", the emotional games and the back-stabbing that made me physically sick every morning at the thought of going to work.
Just when I thought I couldn't take the abuse any longer, I was rescued by a kind manager who thought enough of me to get me fired, and given two weeks pay, and escorted to the door. Two weeks later, a co-worker tells me, the remaining staff members were phoned and asked to come to the offices late at night, to attempt a "midnight-move". My former employer tried to take off without paying about a year of past-due rent on their office space, in a posh downtown location. They had been basically financially insolvent for almost a year, but had managed to keep paying their staff, because the owner took private loans. Most of those people never got a nickel back.
Job From Hell #2: Adventures in Advanced Fab-less Semiconductor Land (Circa 2002)
Imagine the nicest, kindest, most straightforward boss in the world. Then imagine people who have been working without getting paid, some for as long as four years, and imagine that you are the fourth person to get hired, to last about six months on average, and then quit when you find you aren't ever going to get paid. Then imagine a product that never gets anywhere, imagine a tiny 20,000 line firmware project that is perpetually 6 months away from completion, and an ASIC design that is just five or six more bugs away from having a working FPGA prototype. After a while everything begins to seem like Deja-Vu. Wait? Didn't we have this exact conversation three days ago? Didn't it lead precisely nowhere? Haven't we beaten all these horses to death long ago? Exactly when do we get down to making any progress on these products we're supposed to be building? Then comes the sickening realization that it's only *you* who cares if we ever get anywhere. Everybody else is too tired, too scared, or even gleefully willing to go on collecting a paycheque, and to accomplish exactly nothing. Two years after I left this company, it still exists, and I still have the root passwords to their servers, which they haven't changed.
I checked their CVS revision logs, and only 12 lines of code, in two files, were written in two years on the firmware half of the project that was six months away from completion two years ago is still six months away from completion, and their ASIC designs are still fundamentally broken.
TheRussianJudge
Ignorant Boss
My boss (who has no development knowledge) had me develop a very complex web page - but he gave me the changes incrementally. Like building a house, without knowing what the end result was going to be. Except, I did not know that we were even building a big house - I thought it was to be a two-room shack.
As you can imagine, the page is messy, hard to maintain and very inefficient. Not server response - we won't know about that until the page is put to use. That would get their attention. The biggest problem is that all this is so delicately put together that I am afraid adding or removing features will make it fall apart.
Sure enough he has now asked me to take the page and change it to a new one. Except, the new page will not have 3 of the old features. In their place two new features will be added.
I know that he is extremely resistant to change. But, I did not relish the thought of taking Humpty Dumpty apart and putting him back together again. So, I (very mildly) suggested that we could consider a redesign and move the processing to the server. This would need some changes to the UI.
As I had feared, he said a flat "No" to any UI changes. Did not even show mild curiosity about what I might have in mind. He is so sure that his design is "intelligent design" :-)
What do I do?
- Talk to the uber boss?
- Grin and bear it ?
Even if my suggestion is no good - I don't understand the resistance to seeing an alternative. The lack of respect is getting to me. I feel like a monkey doing an idiot's bidding.
Help!
Commment posted to the Ignorant boss story: "time for some change"
Well, in my opinion you should have never started developing the web page without some sort of requirements, possibly broken down into phases so you would know what to build now and what to plan for down the road. Building software like you have done does exactly what you have said, makes it hard to change and probably won't be the best performer in the end. For you boss to come to you and try to do this again is horrible. I think you should have a sit down with your boss and tell him software is not developed in the way he is making you do it. Tell him if he cannot provide you with some documented application features with some kind of minimum expectations of what the application should do, then there is no way you can build it.
I'm sure your house was not built like that. You deserve the same amount of professional respect as anyone else in any other profession. Where I work right now is somewhat of a challenge with the Marketing women trying to make demands all the time. Thankfully the IT department has a great manager that does not let them run over us. If your own manager does not offer you some level of protection from the very sort of thing he is doing, then you must step up and do this for yourself. There's no need to be ugly, stay professional and stick to your guns and eventually you can break this guy of his bad ways.
Additional comment posted to the Ignorant boss story: "It goes on and on"
I guess it is a very common thing. I used to work for a telecom equipment design startup run by a CEO who had a background in hardware design. He never considered software development as something that requires careful planning and lots of insight. Result was evident. Hardware was designed in time, but the software was always patchy, difficult to maintain, and no surprise that all the product from the house were not released in time just because software was not in proper shape. And the same cycle repeated again and again across all the products. It killed the company, that had lots of potential. I think what the previous submission says on this "You deserve the same amount of professional respect as anyone else in any other profession " is extremely important.
Final comment posted to the Ignorant Boss story: "XP May Help"
I myself have succesfully used Extreme Programming practices and other Agile methods to overcome similar problems. The idea behind XP and Agile methods is that you develop in small chunks, get frequent feedback from your users (in this case, your manager), write automated tests to assure you don't break old features when you add new ones, and refactor frequently to keep your design adaptable and able to change.
Unfortunately, we rarely can actually get complete requirements up-front. And even if we do get them, the only thing we can be sure about in life is that something completely unexpected will happen. That's why I've found that it's more productive to put in place a process and system that is flexible enough to embrace change, rather than try to fight against changing requirements.
I have successfully used these methods, ironically, to push myself into obscurity. It seems I mostly deliver working, deployable systems. I don't fix bugs. (There are no bugs to fix.) I never employ heroic efforts to rescue the production schedule. (My stuff is stable when it's needed.) I rarely work overtime. (And when I do I just get tired and start making mistakes.) I guess I make it all look too easy, as if I weren't trying.
This is not to say that these practices socially would work in your particular work environment. (Not all work in mine.) But what you're facing is not a technological problem. Using modern techniques, it is possible to accept and adapt to change. Usually the problem is that social and political forces get in the way.
Good Ole Boy Club
I have a condition I have to share where I work. While my overall work environment is positive, there is one thing that just burns me up to no end. This is the "Leads" group of developers. When I hear "Leads" I think senior level programmers, educated people that act their age and have some of professionalism about them. Is this the case with the people in the "Leads" group where I work...not for most of them.
Now, I have this little semi-power-tripping so called VP man that is the so called CTO. He is really a Marketing whipped little man that tries to convey a sense of "for the people" and tries to make the developers think he is on their side. I know better as do several others that don't go along with his crap. He is more for himself and trying to make himself look good than anything else. His other big downfall is the belief in this "Leads" group of so called developers. These "Leads" get to go to this guy’s meetings, give him feedback about the state of the department and recommend assignments for other developers. First of all, let me put it out there that I have no problem with the concept of a lead group of developers as long as these developers meet certain requirements. Not just because they act like kids and kiss this little man's butt.
These meetings and info gatherings and task assignments that these "Leads" get to be a part of is getting very old. Why, because others are left out and are treated in an indirect way like we are not as important to the company. Man, why would someone that just launched the biggest software application at the company, ever, be left out. Someone that instituted the most professional software application from ground up be left out. Why? Am I not childish enough? Do I not go out with these kids and get drunk all the time and waste my money at poker games? Maybe I would be more accepted into this good ole boy crew if I A) stopped being a professional B) did not produce top quality software C) did not play and yell and act like idiots all day long.
I really don't have a bad attitude, it's just that I am writing this after receiving an email from the newly promoted development manager after the most awesome ass development manager I have every had the pleasure of working with left the company. This new "manager", if you can call him that, sent me an email and said:
"When important information is shared to me by upper management and I deem the information to be exciting and uplifting and not proprietary, I will forward it to all developers."
This is paraphrased of course, but the meaning is the same. Now all this came along because I responded to an email he forwarded from upper management about sales figures and order numbers generated by new application launches we launched recently asking why this wasn't shared with all developers since everyone had a hand in the increased figures. Am I not as important as the other "Leads" are? Am I only going to be told when things are peachy king and not be forewarned about things that might affect me at work unless this manager man deems it important? This is total crap.
I spoke with my prior, awesome manager that left about this different treatment of developers and making some feel left out and not important. He shared my concern and talked to the little CTO man wanna be several times, but got no where with it. I even voiced my concerns in an very professional way with the litle CTO wanna be man asking if we can reevaluate the "Leads" concept so other developers are not feeling left out and unimportant. That has gone no where at all. Basically, my concern is being ignored.
So, let the good old boy crew keep sticking together, keep getting drunk together, keep wasting their money together, keep leading development efforts down bad paths, keep making others feel left out, and myself and a couple of the very good, professional developers will leave and then they will be hurting for sure.
I'm not arrogant or stuck on myself, but I know I am damn good at what I do and I only want to be able to spread some of my knowledge to others and try and help to improve the overall quality of the development department I am a part of. But with this "Leads" thing constantly on my back, I have lost almost all motivation to try and make things better. I guess I'll just do my own thing and let these other clowns deal with sloppy, kid-level code. Some things never change.
Thanks for listening
Comment posted to the Good Old Boy Club story: "We need info"
Why not post the names of the company and the names of these people. We need to know who these tards are so we can protect ourselves from thier mass stupidity. It will also give us the opportunity to hunt these tards, go into the companies that they "work" for and remove them. It is our duty to the software industry to rid the work place of the tard.
Final comment: "I Have a Similar Problem!"
I wrote a couple of days ago about a very similar situation that i face in my company. here i applied for the post of LEAD and only got to work as a Sr. Developer.
this is the link 2 the complete article.
U Guys must read it
Confessions of a Coder's Mind!
###end###


Recent comments
24 weeks 2 days ago
25 weeks 1 day ago
25 weeks 1 day ago
26 weeks 1 day ago
26 weeks 5 days ago
26 weeks 5 days ago
27 weeks 5 hours ago
27 weeks 23 hours ago
27 weeks 1 day ago
27 weeks 1 day ago