Can People Really Program 80+ Hours a Week? 741
ibn_khaldun asks: "A question in light of the EA controversy. I'm an academic researcher who does his own programming -- I have to eat what I kill. In my 35 years of coding experience, any time I try to work on a complex program for more than, say, 60 hours a week (coding, not just showing up) for a couple weeks at a time, I'm just asking for trouble: I generate buggy code and debugging it only makes it buggier. Numerous studies in other fields (law firms, hospitals) have shown that mistakes rise exponentially after anyone works about 50 hours per week (don't think about this if you go to the emergency room at 3 a.m.)." Are these rational working conditions? (More below.)
"Does EA sprinkle magic pixie dust on their serfs to get around this problem, or is the work so trivial that it can be done while pathologically sleep deprived, or are the PHB's so technically challenged they don't realize what is going on? This whole 'death march' mentality seems absolutely crazy to me as a programmer, but appears to be common. Honestly, can someone enlighten me as to how these 80+ hour weeks ever accomplish anything?"
I think that Microsoft is using the same strategy. (Score:5, Funny)
To answer your question: Amphetamine
Re:I think that Microsoft is using the same strate (Score:5, Funny)
"Speed" code tends to be poorly documanted and maddeningly squirrely. I've tried to use code written by a serious gak head, and it turned out to be easier to just rewrite it from scratch.
Re:I think that Microsoft is using the same strate (Score:5, Informative)
Though code written by a speed freak is indeed quite fucked in the brain. Code written by stoners isn't horrible, though the overall system designs is usually either ingenius or downright retarded. If I had to pick some drug for a coder to be addicted to, I think I'd pick orally administered opiates- especially if the poor schmuck had to work 50-80+ hours a week. Opium has a long history of being used by people who did more work than they'd like to in a week, while staying sane and relatively healthy. Drunks code like shit- both alcoholics and a non-alkie coding whilst drunk.
Re:I think that Microsoft is using the same strate (Score:4, Funny)
Occasionally a drink or joint can help (Score:5, Interesting)
Oddly enough, I went throgh a period where I found coding after a couple of drinks or joints actually helped produce better code.
It was during a period where (modesty aside) I was maturing from "someone who could program well"[1] to a "good programmer"[2]. I've always been unusually aware of my own thought processes (as I suspect many programmers/hackers/martial artists/meditators/etc are), and I've noticed that good programmers all seem to go through a stage where they stop programming with their left-brain[3] and start more right-brain-thinking[4].
During this time I discovered that, as long as I already understood the problem fully, a couple of drinks (or joints) seemed to help me internalise the "rules" of a language, and spend more time on the actual creative side of programming - solving tasks without spending the whole time thinking about syntax or grammar.
Of course, some of the code was still pretty squirrely (what a wonderful word), but I do remember on several occasions waking up in the morning, running over my code again to check for bugs, and actually being blown away by how elegant some bits were - I hadn't thought I was capable of writing code like that at that point in my education. I remember one time finding a solution to a problem in linear time that I hadn't even realised sober could be done in less than exponential time, and it quite freaked me out for a while afterwards.
Even now (several years and several languages afterwards), I find coming back to a problem after a drink or toke can sometimes help you see "alternative" ways of solving it, often wildly different to how you'd normally go about it...
Fotonotes:No, it's worse (Score:3, Funny)
Microsoft" by Julie Bick, it says "Work until your physical pain
forces you into unconsciousness!!"
Re:I think that Microsoft is using the same strate (Score:5, Insightful)
Admittedly amphetamines have their downsides, and some big ones especially with frequent use, but lets not kid ourselves, caffiene isn't exactly brussle sprouts.
Hacking your body chemistry is just like anything else, it can achieve the desired effect, or it can miss wildly. Often it involves trade offs.
I dunno about you but I sleep better, and feel all around better starting about 4 days after I quit a caffination cycle (usually I quit caffiene about the time I start to feel groggy in the morning).
Of course I eventually have a few nights where I am up too late (often involving the weekly poker game these days), and end up needing to see joe in the morning.
I make no illusions though. I am not pretending that joe is health food. Its drugs, pleasant, sweet smelling, black as as a steers ass on a moonless prairy night, tasty drugs. Definitly in the top five of non-medicinal drugs ever. (though if I ever get glaucoma and pot becomes medicinal, it will make it to 4 - and with the amount of time I spend in front of pc monitors, there is a fair chance)
No (Score:4, Funny)
Well, it can be done. But can it be done well? (Score:5, Informative)
Even if you were to assume that my productivity were to go down 10% for every hour over 50 I worked, I'd still be *somewhat* productive at hour 80. Of course it's not linear like that, but if something's *got* to get done, then it's got to get done, whether I'm tired or not.
And I find that I do have hours of clarity even at the end of a long period of work. So If I get that good hour or 2 at 70 hours, I would have missed it if I'd gone home/to sleep at 60 hours.
I don't think anyone can work 14 hours a day, 7 days a week. You need some time to refresh,recycle,renew. What's a reasonable amount of time to recuperate? I think one day always seems to do it for me. I've never had to pull crazy hours like that more than a few weeks in a row, and we always found a way to take off 24 consecutive hours each week. That was what made it work.
It also helps TREMENDOUSLY to work in a cool place with cool people. If you respect everyone around, and they're all busting ass, you'll find it's EASY to do the same, and hard to let anyone else down. I knew guys who would feel guilty about going home to see their kids when crunch was on.
Is that a healthy culture? Probably not. But we did get plenty of work done, and that's I think what you were asking.
Re:Well, it can be done. But can it be done well? (Score:5, Informative)
Ok, which wire goes where now!
Re:Well, it can be done. But can it be done well? (Score:5, Funny)
Re:Well, it can be done. But can it be done well? (Score:4, Interesting)
Heh. Been there too, man. I was an electrician working on the Hard Rock Hotel in Las Vegas during the two weeks before it opened. We were still pulling wire the night before the grand opening, and we'd been working 16 to 20 hours a day all that last week, and many of us worked 36 hours straight the last two days. I tell 'ya, we were making really bad mistakes left and right. One thing about electrical errors, they're a lot easier to find than programming bugs. You just look for the smoke coming out of the fluorescent ballasts and then check which circuit got piped into the 277V panel instead of the 120V one. The only good part was getting paid triple-time at union scale.
Re:Well, it can be done. But can it be done well? (Score:5, Insightful)
Re:Well, it can be done. But can it be done well? (Score:5, Insightful)
This matches my experience. I (and the teams I've worked on) can work long overtime (60 to 80 hours) for a few weeks... maybe even a month or two rarely.
But continually? Or to even attempt to pull one of these months every quarter? I can't do it. The people I know who think they can do it can't do it either.
We always ended up making bad mistakes that took a lot of time to clean up. We missed obvious architectural improvements that could have saved us days of work. We overwrote code and trashed data! :)
The point is that someone who is very tired will make a lot of basic mistakes that waste a lot of time. Someone who is well-rested and thinking clearly will be much more efficient. Work can progress smoothly and somehow you will be able to work calmly, not dealing with crisis after crisis, like the 80 hour teams do.
Re:Well, it can be done. But can it be done well? (Score:5, Interesting)
This is absolutely true. The lead programmer on my current project works at least 60 hours every week (and has for years) and more than that about half of the time. He's in at 6:30am and usually leaves around 6:30 or 7:00pm and he NEVER takes lunch breaks. Towards the end of the week, any problem that he "solves" quickly usually requires at least a day or more to re-fix later on. Unfortunately, his seniority makes him almost untouchable when reporting problems like this to senior management who see him as "dedicated and just as productive as everyone else". What they don't seem to notice is that he needs to work about 25-30% more hours per week than the rest of the staff just to produce adequate (not great) code.
Does anyone have any recommendations on how to present something like this to management in a convincing manner?
Re:Well, it can be done. But can it be done well? (Score:5, Funny)
Resign.
Re:Well, it can be done. But can it be done well? (Score:4, Informative)
1) If you can get away with (as in no repercussions to you) not fixing his mistakes, don't do it. Make sure it's clearly documented who's mistakes they are, and leave him to flounder. It's likely that if it causes problems, management will eventually wake up to the fact that he's the problem. Just make sure you are covered and whon't be blamed for his faliures. If you will, it's not worth it.
2) Find out who the managers trust and have them help you out. There may not be anyone who's in a position where they are willing and able to help. but if there is, enlist their help. Explain the problem, and show it to them, and then ask them to bring it up with the managers. People are odd with trust and advice. You may be technicaly superior to give advice, but they'll take it from someone in another department that they personally trust.
3) If all else fails, fuck it, just ignore it. There are many stupidities where I work, the ones I can't control I just accept and ignore. Sounds like you like your job overall, so don't stress on it. Yes, I'm sure it means your team doesn't do things as efficiently and as high quality as possible, but really, it doesn't matter. Just live with it and do what you can.
Re:Well, it can be done. But can it be done well? (Score:4, Insightful)
So if what he does Mon-Thu is adequate, and what he does on Friday wastes next Monday, he's effectively productive for 60% of the time. 60% of his 60h week is 36 hours, so maybe he's not doing any worse than you.
Just a thought,
Re:Well, it can be done. But can it be done well? (Score:3, Insightful)
Re:Well, it can be done. But can it be done well? (Score:5, Insightful)
All of the sudden it does affect you because the PHB's look at yourself as the slacker.
That is the problem.
Image is everything in corporate America and politics comes in and the guys who appear to work harder are the ones always heard.
Re:Well, it can be done. But can it be done well? (Score:4, Insightful)
'Can we upgrade to Solaris 10? It's 2 better than Solaris 8!'
Re:Well, it can be done. But can it be done well? (Score:3, Insightful)
Re:Well, it can be done. But can it be done well? (Score:5, Informative)
The world's largest privately held software company is a company called SAS in North Carolina. Their software is basically an environment for doing statistical analysis. Regression, multiple regression, correlation, wilcoxon rank tests, and a slew of other things I haven't got to yet. But the important part is, if you were going to do a study to figure out the "optimal" amount of time to work, and consider not just productivity from the programmer, but all sorts of correlated variables (will someone work 80 hours/week for 10 years? How much will it cost to recruit and train a newbie when someone burns out?) then you would probably use a program like SAS to analyze the data. This is a company that has plenty of computer science and statistics Ph.D.'s on staff.
Their conclusion? 35 hours per week. Keeps the productivity high, the turn over low, and the company growing at double digit rates nearly every year (or maybe it has been every year).
Something to think about during your next interview cycle.
Re:Well, it can be done. But can it be done well? (Score:5, Interesting)
Something to think about during your next interview cycle.
Something to think about when libertarians/conservatives claim Europe is hopelessly behind in competitiveness. We get the same amount done AND we have much more pleasant lives.
The point of diminishing returns is just the start (Score:5, Insightful)
Re:The point of diminishing returns is just the st (Score:3, Insightful)
Take care of the basics. (Score:3, Informative)
Solution: Work while eating and sleeping. The second is a lot harder than the first, I'll admit, but if you're stuck on a problem, and you sleep on it, things sometimes look better.
With that strategy, I've been able to do a few 70 hour weeks without diminishing returns. 80 starts cutting into my sleep/food time, and I start getting diminishing returns.
However, I'm a big proponent of a social life. All work and no play makes Jack a mentally r
Re:The point of diminishing returns is just the st (Score:3)
Re:Well, it can be done. But can it be done well? (Score:5, Insightful)
You're making the faulty assumption that negative work never occurs. However, it is not at all rare that a mistake made in one minute can later require ten minutes of time to correct.
At a certain point, the productivity of an individual reaches the point where the mistakes they make during an hour will take more than an hour to correct. Since errors in coding aren't fatal, the problem probably won't arise after fifty hours a week, but it seems possible and even likely that it will arise after sixty hours a week.
Although this may not apply as much to EA, it applies a lot in most the rest of computing. EA makes games, and games are mostly just a get-it-out-the-door type of product. You test for errors, make sure it's clean, then sell it. However, anything that will need to be upgraded to a newer version at some point will need to have clean, maintainable code. For that sort of material, I think you will, overall, start getting negative returns after about sixty hours a week. As far as games go, though, you really might not hit the point until after seventy or eighty hours.
Re:Well, it can be done. But can it be done well? (Score:5, Interesting)
As a kind of non-overtime overtime incentive pay, management set up a deal to pay a bonus at the end of the project, based on hours worked above a certain point, with all kinds of complicated sliding averages and whatnot. My office-mate and I crunched the numbers, and realized that in order to get any appreciable bonus at the end of the project, we would basically have to commit to 60 hour weeks for the indefinite future.
Well, you know, neither of us were exactly in our twenties any more. I had a wife and a brand new house and a 45 minute each way (non rush hour) commute; and while I still felt spry and nimble, I no longer felt immortal and god-like, even with the help of Mountain Dew and m&ms. I was in my mid-to-upper thirties. I decided that, while I was still capable of working arbitrarily many hours in a week for short bursts during an emergency, there was no way that my health would stand up to 55 to 60 hour work weeks every week, indefinitely. Both my office-mate and I decided not to bother signing up for the bonus program.
<irony> (A couple of years later, I fell ill with a chronic and incurable medical condition which has left me essentially unable to perform any work at all; so I suppose I needn't have bothered being so careful).</irony>
In fact, much to management's chagrin, only one member of our small programming staff -- call him "X" -- actually decided to commit to their schedule.
Determined to get a decent bonus for his troubles, X threw himself into it, working 60 and 65 hour weeks. In the meantime, my office-mate and I upped our hours, too, but to a lesser extent: 55 hours one week, 52 the next; and so forth.
The weeks wore on, and we inched along towards our various goals. X was doing his usual fine work, but he was looking more and more haggard (we were all a bit worse for wear, actually). His code got a little sloppier at times.
And then one morning, he committed a bunch of working code to the wrong place, and instantly wiped out about 20% of our company's source code repository.
Did we have backups? Yes, we had backups; but still, it took three or four of us much of the day to both restore everything and to verify that everything was correct. The final tally was, roughly, at least one full man-day flushed down the drain in fifteen seconds due to nothing more than pure exhaustion.
Eventually, the crush passed, of course. It is probably a coincidence that X left the company shortly thereafter, although he came back a year later or so. He's a very good programmer, but some of the code he wrote during that crunch -- especially later on -- was, shall we say, sub-optimal.
Re:Well, it can be done. But can it be done well? (Score:5, Insightful)
If the code is well architected, then my return past 40 hours does not diminish so quickly. But chances are if they are asking you to work past 48 hours, your management lacks management abilities, and are askin you to make up for their shortcomings.
Re:Well, it can be done. But can it be done well? (Score:4, Insightful)
Intelligent healthy young people can spend most of their waking hours doing simple tasks which do not require exceptional creativity. The deffinition of work which can be accomplished in a sixty hour working week is therefore non creative and repetitive.
If you are working sixty hours plus a week, then you are not doing work which taxes your mind and you are wasting your talents. Of course its on offer and does pay the bills and therefore is not neccessarily a bad thing from a financial point of view. However it is bad for your physical, mental, spititual and social health.
Variety is the spice of life, all work and no play makes jack a dull boy, addicts do not make good friends - I can think of no aphorisms which praise spending excessive time doing the same thing. Why do you think Archimedies is reputed to have discovered the law of displacement of water being equal to the weight of a floating body in the bath - most insights are generated when you walk away from the task and see the whole picture whilst your mind idles. Maybe your job is so simple that your not even thinking about it half of the time and you can solve the interesting problems whilst "working" - in which case a machine should be doing that "work". Thats how the industrial revolution changed the world of "work" and its comming to the world of software real soon now.
If sucess is just a question of working more hours then beware, because half the world is underemployed and they are a lot cheaper than you.
Re:Well, it can be done. But can it be done well? (Score:5, Insightful)
Sure, you can work for 80 hours a week. However, during that time your brain is burning chemicals. Sleep is required to regenerate the loss. Sleep deprivation/mental over-work is similar to any other mind altering state. You think you're doing fine and being just as productive, however in reality your performance gets worse and worse. And yes, when your brain reaches its limit IT WILL SHUT YOU DOWN! Passing out is usually the main result.
BTW, that's also not really good for the rest of your body, considering your brain is the regulator.
Doing long hours for short durations aren't bad. But the longer the period of time, the more self -defeating it becomes.
~X~
Re:Well, it can be done. But can it be done well? (Score:3, Informative)
If the code is well architected, then my return past 40 hours does not diminish so quickly. But chances are if they are asking you to work past 48 hours, your management lacks management abilities, and are askin you to make up for their shortcomings.
Something similar happens with piping design at times. For example, a big rush from management ("look busy") to do detail engineering before certified vendor drawings and specifications are received.
would you do it if... (Score:3)
I don't doubt that these kinds of things are done at places other than EA, I think there is something to be said for "knowing" the code and the project - almost an ESP-like approach to difficult problems (what did I just do to get this to work just now?)
I think the problem is the pressure, and what rewards you get by facing that pressure, and conquering that p
Re:Well, it can be done. But can it be done well? (Score:4, Interesting)
Without counting programming blitz at home, so far, my worst cases were:
- 60 hours for 3 weeks, followed by a 4-day blitz of 12+ hours per day.
- 2 weeks to do a 3 months project (2 weeks at 12+ hours per day, last days "till you drop, wake up and start again")
- 2.5 days non-stop.
The first example meant a buggy software. We had to code for months under pressure (at 40hr/wk) and had to implement new features and correct bugs for 3 weeks with overtime blitz and finally we had to finalize things under horrible pressure for a few days while the client was actually waiting on the line. The project was ambitious, the idea was good but it was too late for too little.
The second example, I was required to create a software from scratch, with a semi-specific design. After thinking about it a few hours, I immersed myself in code, taking time to auto-demote myself to a coder level and put a "do not disturb under death penalty" sign around my neck. People knew it was hard, I knew it was hard. I was under my own things and after hectic days of coding, I released a somehow bug-free software. Very minor tweaks and nudges had to be done for the final version, mostly due to interfacing with other people's work.
The third example, something slipped management's mind and I had to rush a new feature. The feature was made. I was happy.
In all these examples, only the first one was a disaster, mainly because we were pressed to do something for a very long time, giving our 120% for weeks, followed by giving yet again our 150% for a few weeks, followed by giving a 200% for days. One has only so many percentages in reserve.
The lesson here is how much sustained work I was able to give, at comparable quality. A programmer is somehow like an artist: if he is given time to contemplate his canvas first and at various times during the project, he is able to create something much better than someone who just go heads on and resurface when it's done.
Re:Well, it can be done. But can it be done well? (Score:5, Funny)
Why, yes, I can.
My computer, unfortunately cannot. It starts making a lot of dumb mistakes during an extended days work.
So do my pencils and pens. It a damn equipment problem, I can do it, really.
References (DeathMarch, PeopleWare) (Score:4, Informative)
Re:Well, it can be done. But can it be done well? (Score:3, Insightful)
Ask an Amish. Your bosses grew up in a post-industrial society that still has a lot of funky industrial/pre-industrial ideas. Historically, sharecroppers and subsitence famers [lhf.org] worked from Sun up to Sun down - usually 12 - 16 hours for 6 days a week during the Spring, Summer and Fall in temperate climates. The only motivation they had was starvation
Re:Well, it can be done. But can it be done well? (Score:3, Informative)
Sorry, Frenchmen are the 21st most productive [wikipedia.org] people in the world.
Re:Well, it can be done. But can it be done well? (Score:5, Funny)
Hmmm... let me fix that. *logs on to Wikipedia*
Done!
Re:Well, it can be done. But can it be done well? (Score:3, Insightful)
You could argue that the money in the bank is a function of productivity, but if I spend that all and keep up my same level of
Re:Well, it can be done. But can it be done well? (Score:3)
Oh really, is that why company's are fleeing france to other European country's. Is that why france has an extremely high unemployment rate.
Don't hold your breath about keeping that 35 hour week. It had nothing to do with efficient work, it had more to do with rampant unemployment. If you want to keep that 35 hour week be prpaerd to lose company's like Siemens and
Re:Well, it can be done. But can it be done well? (Score:5, Insightful)
You are much more likely to do the same stupid shit your users will do.
Make notes. Make automated tests. Fix it when you are fresh.
I reload Slashdot... (Score:3, Funny)
pixie dust... (Score:3, Funny)
sleep during the meetings (Score:5, Insightful)
Answer is NO!! (Score:4, Insightful)
EA's real rate from the articles I could find (Score:3, Informative)
Re:EA's real rate from the articles I could find (Score:5, Insightful)
I say that's not much left after you're done paying for your divorce lawyer and your triple heart bypass when you reach forty...
I did the death marches, the crazy overtime, and the stress before, and you know what? I'd rather be paid half as much but stay 10 times more healthy and happy in my family. And yes, it does pay the bills and the mortgage, as long as you plan your spendings reasonably and you don't live on credit like most Americans do.
EA Controversy (Score:5, Informative)
http://www.livejournal.com/users/ea_spouse/ [livejournal.com]
I'm actually taking today off for that reason (Score:5, Interesting)
You bet. I'm living proof. (Score:3, Interesting)
I don't think I could accomplish this on someone else's code, however. If you love the project you're working on -- if you really believe in it, you can push yourself past the limits of a 50 hour work week. If it's just a job to you, then that motivation isn't there.
But then again, as my signature says, caffeine can help. Not in the long term, but I think people could definitely exceed 80 hours of worthwhile coding in a week if they were consuming lots of caffeine. It really is a wonder drug.
EA doesn't deserve all this criticism. We live in a free market, if those coders don't like their 80 hour weeks, they should quit.
Maybe I should apply at EA.
Re:You bet. I'm living proof. (Score:5, Funny)
What are you working on- Duke Nukem Forever?
Re:You bet. I'm living proof. (Score:5, Funny)
Stop posting on Slashdot Broussard, and get back to finishing Duke Nuken Forever for petes sake - you've had long enough.
Regards,
Your Investors.
we're not worthy, u r teh roxxor (Score:5, Insightful)
HTH, HAND.
Okay--I'll pile on. (Score:3, Insightful)
They can quit, and if everything works out for them okay, they probably should, and probably do. But that's not to say that EA doesn't deserve criticism. Any shitty employer deserves criticism. Any shitty person deserves criticism.
Pretty much anything that's shitty deserves as much criticism as we in 40 hours/week can dish.
Don't you remember the anti-drug commercial? (Score:5, Funny)
Not everyone at EA is a programmer (Score:5, Insightful)
80? 80? That's what I call a vacation. (Score:3, Interesting)
Don't work in visual effects. It's a crap business.
You're missing the point. (Score:5, Insightful)
The Pointy Haired Bosses want to be seen to be doing everything in their power to get the job done, on time and on budget. They see that things are falling behind schedule. What's the instinctive reaction when you're falling behind? Jack up the pace. That means making people work longer and longer hours to try to catch up.
They don't know, or don't care because the Powers That Be don't know, that this is counter productive. They don't know, or don't care, that they're more likely to fall even further behind schedule this way than if the people on the job just do regular hours.
By pushing their people beyond reasonable limits, their bosses can pat them on the back and say, "Well, you did your best, but it wasn't good enough. Obviously we need to check our scheduling better next time." There are no control groups to demonstrate that it was the overscheduling that caused the rampant deadline misses, the excessive bugs, etc.
Some crunch time is fine -- if you're close to being finished, and you have a hard deadline, crunching can get the job done when nothing else can. It's overdoing it that kills you. If I were a manager, I'd be erring on the side of too little crunch time -- not too much. And I'd probably be sacked because the perception would be that I hadn't done everything I could to finish the project on time.
Damned if you do, damned if you don't. The only solution is education, and that ain't gonna happen if those that need educating don't know that they need educating.
Eat what you kill? How badly do you need to kill? (Score:5, Interesting)
If you have tenure, you don't have to kill in order to eat. If the professor you're working for has tenure, he doesn't need you to kill in order to eat.
The reason people work 80+ hour weeks is because if the project doesn't ship on a certain date (and this is particularly prevalent in the games industry, in which payment is often contingent upon meeting milestones), they don't eat.
"OK, so why not set the milestones a little more properly -- so that you're not forced into such a situation to begin with?", I hear you cry.
If you're a game studio, and you demand sane milestones, the publishing house won't sign the contract. And that means you don't even get into the buffet line, let alone eat.
In academic terms: Nobody has tenure. And unless he was willing to sign his firstborn away as part of a contract that guarantees delivery of either a Nobel prize or a $500M IPO out of your research within six months, your professor doesn't even get to apply for the grant money.
Re:Eat what you kill? How badly do you need to kil (Score:3, Informative)
From experience (Score:3, Informative)
Don't do it... (Score:3, Insightful)
Why do that to your body? Trust me, your health is worth more than the overtime.
Working 80 hrs vs. enjoying 80 hrs (Score:5, Insightful)
Simple Answer: No. (Score:3, Funny)
Depends (Score:5, Interesting)
If you're talking about pure coding, IMHO, coding is not a tap that can be turned on and off at will. One needs to "get into the flow" to get some real coding done, and this doesn't happen easily (at least for me). I'll often spend hours tinkering around with stuff, browsing some site, but won't for the death of me, be able to finish writing a simple class or stored procedure. Maybe, i'll keep getting stuck, maybe i'll be too distracted, maybe i'll decide to read some documentation instead. Then, suddenly, everything will start happening smoothly and i'll complete a day's work in a couple of hours.
I don't know if it works the same way for others, but i really feel that one cannot just keep coding continuously all day. At the same time, i will also not consider the interstitial time spent tinkering around and writing comments in
Re:Depends (Score:5, Interesting)
I work 40 hour weeks. Eight hours a day, five days a week. Sometimes ten hours a day, four days a week - depends on my schedule and how I'm feeling.
Usually, two or three of those days I don't get anything done. I write a few lines of code, run a build, get bored waiting, read Slashdot (or k5, or gamasutra, or somethingawful, or bash.org, or webcomics), repeat.
Occasionally I sit down and suddenly everything clicks and I get, like, a week's worth of work done in a day.
Generally, at my job, I tackle crazy insane problems that nobody's even sure are possible. And so I need lots of mulling time ("how am I even going to approach this?") and it works for me. More than one person has been surprised at how much I get done . . . I don't really mention how little time I actually spend working.
So far today's been slackoff, but I can feel my brain revving up. Once I'm done with Slashdot I think I can get some real work done today.
Re:Depends (Score:4, Insightful)
I try to find something necessary-but-dull to do whilst mulling - timesheets, replying to idiotic emails, whatever, though - kill 2 birds with 1 stone, and you also "look productive"
Only in bursts (Score:4, Insightful)
However, in those cases, the all-nighter is fueled by intense adrenalin trying to meet a deadline, and I have found that my code doesn't appear to suffer. My trick is to drink lots of water during (YMMV).
As long as the 80hr week is a rarity, then I can deal with it. But making a habit of doing more than a typical week's work (about 60hr) would surely kill me.
Simple solution: Don't buy EA games. (Score:4, Interesting)
From the NY Times article, it sounds like EA uses coercive techniques and naive young employees. My own response is that I won't buy another game from EA until they reform the way they treat their employees, and I encourage others to adopt the same policy.
My attitude on this isn't just sympathy for EA employees. It's enlightened self-interest. At 35, I'm apparently too old to get a job with EA at any salary, let alone a fair one working under fair conditions. I choose not to support such companies.
Will you forward this story to your manager? (Score:4, Insightful)
So what are you going to do with this knowledge? Are you going to have a talk with your peers? How about your manager? Or bring it up at the next all-hands, right after the available high-ups tell you how fine your company is doing? How should we bring this up without fear for our jobs?
Here are some things to think about (feel free to add):
- Post anonymously. If you are truly affraid of consequences, try to do something like what the EA employee spouse did. Post an anonymous letter with your complaints. Keep the letter constructive.
- Talk to the right person. Before you pour your heart out, make sure you are talking to the right person.
- If your boss doesn't listend to you, consider talking to his/her boss instead. If this is too much of a step, consider talking to HR first.
- Talk to coleagues to measure how they are feeling. It could be usefull to break this feeling to your bosses as a group.
- Be carefull not to whine. You want a discussion, this includes listening to the others sides argumentation of why you have to work this way.
- No statistic should tell you how you should feel.
Lets get of our whining asses and start the discussion with the people that will allow you to get your life back on track. This here slashdot forum, though a decent source of news, is not the place where this particular issue will be solved. If you feel strongly about this topic then please do make a start at really solving it...it is your life you know.
Comparison to Construction (Score:5, Interesting)
For short term gains (read: less than two weeks), 60 or 72 hours can give you a boost, but after abour 3 weeks you actually would have been farther along chugging at 50 hours per week than at 72. After a week or two of 72 hour weeks productivity is in the toilet.
Also, safety problems increase, attendance problems arise, etc. etc.
No construction site in the world would consider working those hours long term since it is so counterproductive.
Waiting For The Weekend (Score:4, Informative)
Waiting for the Weekend
by Witold Rybczynski
http://tinyurl.com/6kt4r [tinyurl.com] [amazon.com]
The author discusses the disruption of the development of leisure time and it's implications for modern society. It's not a pretty picture. Welcome to salary slavery.
Against EU Law (Score:3, Interesting)
Of course not, which is why here in the EU it's against the law to be employed for more than 48 hours per week. No-one benefits from longer working hours: employers suffer diminishing returns and employees turn in to square-eyed antisocial nutters.
(A partial exception is Britain, where employees can work more than 48 hours, but only if they "volunteer" to do so.)
What do Europeans think of us for doing this? (Score:3, Interesting)
France has a 35 hr work week, right? (Score:3, Interesting)
Yet, somehow, Americans continue to either ignore or rationalize away the fact that Europe has now a better place to live than America.
Re:What do Europeans think of us for doing this? (Score:3, Funny)
The story is the same, they get in early hang around, do a bit of work, chat, a bit of work, and so on. 12 hours later they're still at the office but only achieved 5 hours productivity.
It gets harder with seniority (Score:4, Interesting)
I've also found that as I get older (almost 30) that I have harder time sleeping. If I work until the wee hours it's harder for me to make up the next night by sleeping for long enough (I managed to sleep for a whole 7 hours the other day - I was so impressed!). If I work too late of an evening then I have trouble sleeping that night, which also needs to be made up later in the week. I still like to binge drink like I'm 18 again at the weekends so I don't catch up then either.
I think going a 40 to 50 work week is hardest. Anything beyond 50-55 hours and people start substituting their social lives by socializing at work. I feel sorry for those with families working that hard. In my experience every 2-3 hours extra work after that is only equivalent to an hour of 40-hour-a-week work. And yes, errors go up, things get forgotten, process goes by the way-side and there's always something that comes back and bites your further down the road. You end up constantly in a reactive fighting fires mode.
The US (at least) needs another labor movement (Score:4, Interesting)
Dammit, people, the reason the PHBs can get away with this sh1t is that they know that even if you have the self-respect to refuse they can easily replace you with someone that doesn't value self and family enough to say no.
I know that folks in the US have been trained from birth to believe that worker solidarity = communism = ultimate evil, but those whose comments can be summed up as "stop yer whining and get back to work" miss the damn point. I want to work to live, not live to work. When there are enough workers willing to whore themselves out, it makes it impossible for the non-whores to expect fair treatment.
If the developer community would stop putting up with it, the PHBs wouldn't be able to require it anymore.
yes i can - sorta (Score:3, Interesting)
I can code but I can't debug very well after I've been working for about 12+ hours. That goes for debugging code, debugging network problems, tuning a filesystem, etc., anything that requires high-level cognitive abilities. I can't even fucking drive right after pulling an all-nighter, let alone debug where I'm running off the end of an array or whatnot.
And for the people that make comments about getting high, yeah fucking right. Any of my above statements involving lack of sleep apply just as well if you're high ( be it speed, too much coffee, pot, whatever ). Very productive, but not able to think more than 3-5 layers deep into a problem ( and forget about juggling multiple complex problems ), and not all that creative either.
I know a few people who've died through overwork (Score:5, Insightful)
When my contract was handed to me for signing, the default "max 8 hrs x 5 days per week" clause had been removed. I asked about that, as that clause generally serves as protection for both my customer (they don't get slugged for huge dollars and can plan their cash flow accordingly) and me (I get to see my family). The company replied that it was normal practice for them to remove any such clauses.
A few weeks in, and most of the people around me were working 18 hour days regularly (I started right around crunch time). I made a policy decision as follows:
- I'd work up to 14 hours a day
- once I'd worked 60 hours a week, I'd go home
Remember I was a contractor; I didn't feel any personal or professional commitment towards a management group that had put into place these sorts of work practices, and it was quite obvious to anyone working there that the long hours being worked were leading to mistakes that led to additional hours being worked to fix them.
Anyway, as expected, I got confronted pretty quickly about my perceived slacking off. My response was that I hadn't signed up for a lifestyle change; I was after income, pure and simple. Being close to Xmas, I was quite happy to work a few extra hours, pocket some extra cash and thus fund a nicer holiday, but that was the extent of the sacrifice I was prepared to make for the cause.
I pretty much had them over a barrel at that point; there was no time to train someone to replace me, and I'd made it abundantly clear what my motivations were and that they were essentially non-negotiable.
My personal lack of commitment was discussed in front of the rest of my workmates, by my boss, at the next team meeting. I took it on myself to respond, outlining my reasons for working as I did and that I didn't regard limiting myself to 60 hour weeks as being a lack of commitment - I said I thought it showed a lack of planning, and left it at that. When I finished, you could have heard a pin drop...
A few days prior to Xmas, my boss didn't turn up. This was strange, given that he worked huge hours himself, but not unexpected since pretty much everyone was quite ill at that point due to tiredness and shared (airborne) diseases. When he didn't turn up the next few days either, someone called his house and there was no answer. Eventually a relative of his went to his house and found he'd hung himself in the bedroom.
I've got no doubt at all that his death was 90%+ due to overwork, possibly exacerbated by my taking a somewhat defiant stance in public several days earlier. He'd lived alone and worked huge hours for the past several years, so there was no real possibility for other issues to have caused his suicide.
After a few months' thought, and subsequent discussions with my fellow workmates at that place, I decided that what had happened had been pretty grim but ultimately good things had come out of it. Work practices in that particular group had changed quite dramatically in the following few months; the new boss had put caps on the number of hours worked each day and each week, and re-introduced paid overtime for full time employees. Although several people had left (the turnover in that group ran close to 80% per year), those that were still there were now working in a way they felt was personally and professionally sustainable.
Having several of them call me up to thank me for taking a stance in a very awkward environment certainly helped me personally, although my "stance" was totally selfish.
Since then, I simply refuse to work in "death march" situations. I find the whole idea totally absurd; the end result is that a crappier product is shipped slightly sooner, but people's lives are affected too much for the trade-off to be worthwhile. I've seen two deaths (one described above), several bitter divorces, people leaving the industry, middle-of-the-office screaming matches,
Re:I know a few people who've died through overwor (Score:3, Funny)
BTW, was the company Anderson?
Re:I know a few people who've died through overwor (Score:4, Insightful)
I would guess you're in a situation of working too many hours that you cannot get out of, and you are envious of the previous poster's situation. I am guessing you want out but seem stuck.
You have found the need to put the poster down personally proving you disagree with what he says. The difference between attacking the poster instead of his story tells me you don't want this type of story to be told. You are in an unfortunate situation. I don't envy you.
You will have a hard time getting the independence you want, until you see the truth in the previous story instead of fighting against it. By fighting against it you are helping to keep your self in an undesirable situation.
From your bitter comment, I don't expect to receive an answer -- what's better is no answer, but that you do some serious thinking instead. I hope you get things straightened out because it's never fun to be in a bad situation.
Whew! How do you feel now? :)
A solution to this problem (Score:4, Interesting)
I know many of you out there will hate that suggestion, but it's a tool workers have to stop runaway PHB's. Here are the difficulties:
* Defining who is a "coder", because any union contract would immediately have management trying to make employees not part of that contract.
* It's got to be international, so that our colleagues in New Delhi are on the same side as we are.
* Getting people to join.
If we can organize ourselves to produce desktop suites, surely we can organize ourselves to give us more money and time.
Quality suffers (Score:3, Interesting)
I'd done lots of these non-stop coding fests. At least for me, there's like this illusion going on. You put in the hours, but in reality those extra hours aren't accomplishing nearly as much as you can when you're fresh and had some time to let your subconscious percolate the ideas down. You use the volume of hours to paper over the fact that you're not very good at organizing and utilizing your time.
Yeah, there are crunch times but it is so easy to fall into the lifestyle where you stay late, but then come in late, fooling yourself that you're actually getting a lot done by the lateness that you stay.
I also would find myself wasting more time distracting myself (espeically web surfing) when my mind was telling me it was time to quit and go home and rest.
Lastly, one device that helped me was to have a clock with an hourly chime. Then each hour I can ask myself "What do I have to show for this past hour of work?!?" It helps me realize that you can easily burn an hour without realizing it on 3 Slashdot comments, some stock quotes, and some pinball research.
Yes, I have written working code at 80 hours a wk. (Score:3, Informative)
The work is always brilliant, it works, it is incredible - but there are two problems:
1. You have to be at the same concentration level as I and my partner were at during the time we wrote it to understand the code. No one doing maintenence would be at that concentration level. This includes me.
2. The comments in the code were written at that same concentration level, and so they were too arcane to be useful - as an example, "the rising edge of the signal is needed, and the motif button press is at 270 degrees from it in the sequence in the clause, so rotate another 90 degrees by adding a not". Yes, this does describe what I did - but would it help anyone who is reading the comment?
So, I would say that you can do 80 hours a week on a one-time effort - but you will not be able to maintain it - even if you have code reviews, because everyone will be in the same charged state. For games that don't sell, this will work. For games that do sell, it will result in the need to do a complete rewrite every time a new feature is added that is not segregated to to a completely new part of the game (or website, or configuration tool, etc...).
Sleep deprivation is an enemy (Score:3, Insightful)
How about number of hours per day sustained? (Score:3, Interesting)
Important for me is to get my sleep. If I'm working long enough that I can't get close to 8 hours, my useful working time goes down rapidly. Next most important is to get at least a couple of hours away doing something else - a game, movie, book etc. By the time you add your travel time, eating, etc you have 12 hours max useful work time.
It's pathetic that EA can't get their asses sued off for treating people like this (and have to pay big time compensation). This, in the sue happy States where you can sue oh so easily for other things...
Short Answer: Yes (but try 120 hrs/week) (Score:5, Interesting)
Depends on how those 80 hours are being used. (Score:3, Insightful)
I think it is a matter of how those 80 hours are being burned. If you sit at your computer desk and work those hours all the way through for the whole 16 hour day, then yes, your performance will degrade even within the first day, let alone towards the end of the week.
It probably becomes a matter of cycling. How many hours are you overheating as opposed to working at optimal levels?
For me, I can chug at the desk for almost 16 hours straight. Take 5 minutes every 4-6 hours for a restroom break and to get something to drink and you're set.
However, that isn't optimal. I wouldn't be able to, nor would I want to, do that for a whole week. I would burn out and then need to go offline for a few days.
If you take that same 16 hours per day and break it up into 3 hour work windows, you have 3 hours of work, 30 minutes to 1 hour of kick-back, and then three hours of work. Granted, you lose out on four hours of actual work, but you are able to partially "reset" your mental state every three hours.
That allows you to clear your palate, so to speak, so that you can prevent yourself from going into a burn-out mode of working. You work three hours on the code, go splash yourself, get some snacks, and maybe catch a 30 minute cartoon or game and hit the code again.
Better yet, you do the three hours, and during your 1 hour break, you look over other bits of code, references, sketch outlines, and physically and mentally shift gears before going back into the work mode.
The other end of it is that you do need to crash.
Working 16 hours a day, assuming you get a full 8 hours of sleep, leaves you with no time to eat dinner or breakfast. That means the normal "breakfast", work, "dinner", sleep routine doesn't work. You would need to keep yourself fed throughout the day, in order to get your 8 hours as well as getting your 16 hours.
The problem with people who pull the 16 hours is that they then go and pursue other activities after that. This results in a lowering of their nightly sleep and a progressively more draining day. End result? Constant tiredness, more caffeine, and degradation in work quality.
In both cases, you're getting your 80 hour week, but in one case, you are actually getting more quality work out of it rather than shoddy work which will require time and effort to debug and fix.
If you work 80 hours that week, but need to spend the next week correcting the errors and bugs, you really haven't gained as much as you thought you did.
If a company was serious about pulling 16 hour days for their employees, they should really think about on-site housing, exercise programs, and time management/stress relief schedules. The longer you need people to work, the more you need to ensure that they are in top shape and form to do that work for those kinds of hours.
RE: Can People Really Program 80+ Hours a Week? (Score:4, Insightful)
There are good ones around, but they seem to be fewer and fewer in number.
Contemplate the fact that more and more software is being done like this, and be afraid, very afraid. The next time you get on a commercial airline flight, imagine that the software for their in-flight systems might have been produced that way. If you used an electronic voting machine, think about the fact that the software for the machine you used was probably produced that way.
Is this sustainable? Of course not. But the folks making these kinds of decisions figure they'll have their bonus and be long gone before anyone has to pay the consequences.
It really just can't be done. (Score:3, Interesting)
Not only that, but in addition to simulated life or death situations, the military has seen the effects of sleep deprivation on a number of the realest of real life or death situations, some of which could also have profound bottom line impact on the whole institution,(so somehow I also don't think motivation is somehow higher for coders).
Any management team that expects positive results from 80 hour+ weeks for 6 weeks or more is expecting its people to outperform all those whimpy Airborne Rangers and such, and if they are really crazy enough to think that's possible, need to be encouraged to personally go tell some group of Huaah!~ types off. That should take care of the problem.
Creativity and Sleep (Score:5, Informative)
A long time ago I talked about this subject with my brother, at the time a pilot in the Strategic Air Command. I was working with a group of people who were acutely interested in precisely same question as the poster--is ther a point at which extra hours != additional useful code? As it happens, the question has been extensively studied, and answered, by the U.S. military.
There is a long-established relationship between the ability to handle abstraction (such as OOP) and the ability to do spatial reasoning. The U.S. Air Force, in the 1950s and 1960s, did a lot of research in the relationship between sleep deprivation and spatial reasoning--they were alarmed about the accident rate of aircrews after very long missions. If you're at the controls of a KC-10 tanker, a slight touch with your fingers will affect the rate at which the aircraft wheel bogies forty feet beneath you and a hundred feet back will descend to the ground. If you're sleepy and groggy, you're much more likely to misjudge your altitude or your rate of descent. Hit the runway a bit too hard, or a bit too early, and the landing gear can collapse--and you and your crew will disappear into a ball of flames.
The result? The Air Force instituted something called "mandatory crew rest"--you fly X hours, and you must get at least eight hours of sleep (in addition to debriefing, flight planning, etc.). No matter if there is a global crisis and you are rarin' to fly, if you haven't had your mandatory rest, you stay in your bunk until you do.
So what does that mean for us?
As I wrote above, there is a strong relationship between abstract reasoning and spatial reasoning. The U.S.A.F. has proved that sleep deprivation diminishes your ability to do spatial reasoning; ergo, sleep deprivation diminishes your ability to do abstract reasoning. Based on twenty-plus years in the business, that makes sense: time and again I've seen programmers try to pull all-nighters to finish up a project, only to fall further behind because they wrote gibberish all night long.
But wait, there's more...
Sleep deprivation isn't the only issue: dehydration will also affect your ability to do spatial reasoning (trivia fact: baseball batting averages are lower in the second half of a daytime doubleheader; because the players have been out in the hot sun, baking under dark-colored baseball caps. They get dehydrated, which limits their ability to hit a curveball.)
Bottom line:
Wanna be an effective project leader? Send people home at a reasonable time; provide bottled water or spring water; and discourage (or at least don't encourage) coffee or other caffeine-based sleep substitutes. Do not run a death march project in order to look macho; and be prepared to fend off the Guys in Ties who think a death march atmosphere is necessary.
Sigh--I'm drinking WAY too much coffee these days....
Re:Every play an EA game? (Score:3, Funny)
"EA games: question everything"
Paranoia is not an uncommon response to lack of sleep from overwork :-)
Re:Definitely possible (Score:3, Interesting)
Now I'm 10 years older, thoroughly chemically dependant on caffeine (really -- a few hours late in the morning and my day is ruined.. and probably the next one, too), and in NO WAY CAPABLE of doing that anymore.
In fact, I recently tried to pull a 70 hour week, and wound up with the Pepto Five.
That said, I get more done in 40-50 hours now than I did 10 years ago working 80+. I guess experience is helpful.
Re:Definitely possible (Score:3, Interesting)
It was possible to code those crazy hours, but only because of tactical napping. Get too tired to concentrate -- 10 minute nap. Didn't help? 2 hours. Every 30-50 hours or so, go home, grab a shower and maybe 5 hours sleep. Trying to work straight 15 hours simply did not work. There were of course large amounts of caffeine involved, but napping made all the difference.
Naive loudmoth (Score:4, Insightful)
But I've never seen a scientific study show that interns and other medical professionals are as effective on hour 12 as hour 3. Its been a while since I've studied this at all; its possible that today the AMA and acadamia has condemned the practice, but I wouldn't count on it.
Intern Workdays (Score:3, Informative)