Can People Really Program 80+ Hours a Week?
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 called in Well today because I went in to work on Saturday. I never would have considered that at my old job but I'm finally starting to realise that if I restrict myself to 40 hour weeks I get a lot more done and I have more time to take care of important things like household chores and family stuff.
I've coded, on average, 70 hours a week, for the last six years. This has been on my own project, which is coming along nicely (after about a dozen complete rewrites, language changes, and overhauls).
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.
+ Donald Gunth
+ Email: dgunth@quicktek.net
"Caffeine is the greatest lubricant ever created." -ESR
Don't work in visual effects. It's a crap business.
Doesn't it make you feel good to know that our freedoms are protected by politicans, lawyers and journalists.
It depends on the competency of the coder. Just because you're not able to produce good code 80 hours a week doesn't mean that applies to everyone.
+ Donald Gunth
+ Email: dgunth@quicktek.net
"Caffeine is the greatest lubricant ever created." -ESR
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.
So to be competent you need to be able to work well for 80 hours a week? Nonsense! How good a programmer is barely even comes into it - it's how a person handles stress.
Yes, it's possible to work for 80 hrs a week, or even more. However, you need to define "work" here. Would you define reading/replying to emails as work? Would you define attending meetings as work? Believe me, these small numbers add up to take away a sizeable portion of your workday and your energy.
/. as time wasted. It's also an integral part of the process of coding. Hence, i do claim that one can "work" for 80 arse a weak.
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
What I'm getting at is that when a coder is in said Zone, the hours mean nothing to them. Look up and it's 4a.m. and you haven't gone to the toilet in 5 hours, and you can't remember when you last exhaled.
But extra special conditions are required to get into this Zone.
1. You find the work interesting
2. You have most of what you want grokked
The problem as I see it is the same as when I'm due to be somewhere on the other side of London, and I need to catch the Tube. I know that in a perfect world, to make it to Brixton, say, takes 30 minutes. And it can. iff the tube is waiting when I get on the platform and the connections are smooth. This is all possible, and I've done it before.
Problem is using that perfect situation as the constant in the equation over a long period of time. It is not sustainable unless there is a LOT of 1.) and 2.).
Games coders can fall into this trap because they like it, and they grokk it. So their managers get in the habit of using the Zone as the constant, and they're more right than other managers. Still wrong overall though.
[% slash_sig_val.text %]
And I can tell you, they might have gotten 30 hours worth of work done, but the OTHER 30 hours of effort simply reduced the value of the 'good' 30 hours.
In my opinion (IMHO ;-) they got about 10 hours worth of useful work - sometimes. And sometimes they got NEGATIVE work done. We'd have been better off if NOBODY HAD SHOWN UP FOR WORK!
But convince the PHBs of that....
rc
The problem is that the cost of an error increases by an order of 10 for every development stage it gets through. So when you work 80 hours, you may accomplish twice as much coding but (using your 10%) also increase the total number of bugs by a factor of 4. As a consequence, your test/debugging cost goes up by 2-20 times presuming ALL those bugs are caught before beta. Since a decent test team costs as much as a decent development team, all you are doing at best is passing the time buck at a signficant staffing cost.
Now consider that the test team is swamped too. They're making mistakes (but you don't care...you did your part) which means the same thing all over again: another 2-20x cost multiplier.
JMHO based on 15 yrs exp.
XP suggests that if you spend any more time in overtime you often are wasting money and programmers are way less effecient.
CURRENT RESEARCH suggests that managers need to look at the bigger system and that more than 40 hrs of coding a week doesn't work out in the long run (a few weeks). A few stints of overtime (not a week) are ok but not all the time. I laughed when I heard of EA's 80 hr work week. If they would cut back to 40 hrs there might not be a need for a 80 hr work week.
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?
Does EA sprinkle magic pixie dust on their serfs to get around this problem
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.
Prior to my current position I was a Cost/Schedule Engineer with a construction firm. There have been numerous studies on labor productivity versus hours per week worked and they all point to an optimum long term weekly rate of around 50 hours in the building trades.
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.
> Are these rational working conditions?
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.)
Young coders can be more focussed with fewer distractions. Older coders tend to take on more job responsibilities. Constant little interrupts cause great losses in productivity - it can take me up to 20 minutes to get back in to the flow even after a 5 minute interruption to help somebody else.. Younger people also tend to have fewer out of work distractions. The people going to EA are often very keen and willing to sacrifice their personal lives for work. I remember those days back in the .com boom when I was only 21 ;)
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.
At my first two jobs I had at least 100 hour week at both jobs. What did it accomplish? Customer X needed all the data for Product Y put into our internal formatted and prepared for insertion into our archaic database. It needed to be done and got done properly. At the 2nd job one of our VPs promised (unbeknownst to the programming staff) a client that we'd have a product ready to demo for them to see if they wanted to fund its full development. That was a solo project using VB, Access and Excel. I coded it all at home since I was working 20 hour days, sleeping 4 hours then getting up and showering and repeating. At the end of the week I went with VP to demo the product and the clients bought it so that accomplished something too. These days I'm a contractor and my current contract forbids me from working over 40 hours in a week. I prefer it this way since I work a lot less hours and make a lot more money than the old days (early 90's are old days for me).
I did the same thing, except coffee and caffeine pills instead of Jolt cola.
;)
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.
Do daemons dream of electric sleep()?
I did it a few times... but not for long. It depends on the level of involvement you have on the project and how interested you are to that project.
:)
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.
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.
I can write code without any sleep. I've worked 24+ hours straight without sleep. Bear in mind that writing code isn't the primary function of my job, but I still do a reasonable amount of scripting and programming.
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.
PC moderators can suck my White pierced, tattooed dick. If you think pride == hate, s/dick/Aryan meat mallet/g.
Yup. Too true.
However, its possible to fight against this. I've been doing this for some years now. My team's software has won a number of (financial) industry awards.
We work hard, yes. However, as system designer and team leader, and a husband and dad, i don't see why people have to work more than 9-6.
The point is, and its a bit over used, you can work smarter not harder.
Doing Java, which is what I do, there's plenty of people out there that work really hard turing out below par quality code, and working really hard at it.
I've always found that, up to a point, people can work harder if they are missing out on talent, and still keep up. However, talent is not a commodity, and I'd rather have 2 talented people than ten "commodity" programmers (this by the way is what outsourcing fails to acknowledge), and so I'd rather keep my talented team members, so that's why they have flexible work patterns.
Two words: Unionize coders.
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.
I am officially gone from
Over time as a family life puts hard constraints on my hours I have realized that if I really maximize the quality time I can get my job done without the extra hours.
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.
Does it hurt to hear them lying? Was this the only world you had?
How do Europeans view these horrible working conditions under which Americans work?
eat shiat and bark at the moon
I'm a coder and I'll be anonymous today as what I write is more embarrassing than something to brag about. I've programmed for up to three days without sleep, for up to 125 hrs in one week, for over 435 hrs in a month, for several months in a row, for over 3,500 hrs in a year for over two years straight in a commercial software development job I tolerated for seven years. It was physically painful, mentally exhausting, and made relationships nearly impossible to maintain. Was it financially rewarding? No. Was it healthy? Definitely not. Would I do it again? No and I probably couldn't. But was it productive? Yes. Did the product meet the market? Yes. Then why would I do it? Real people who use software have no clue how long it takes to produce. Especially when the design is so elegant, the hairy problem they were having now seems trivial. So the combination of feeling the need to make that kind of impact and the inability to walk off a job until that goal is achieved drives me to do ridiculous things.
So the practical question is, are you less productive?
Assuming that were talking about someone who is skilled and wise, one learns to adapt to the mental and physical fatigue that sets in. One doesn't try to solve that all-important logic in hour 35 of a 40 hour day. In programming, there is work that is mind bending and there is work that is mind-numbing. Schedule the work appropriately and the time is productive. If it's two days to Xxxx and it has to get done, what choice is there? Quit and get another job, I guess. And that may be the best choice. But for me, the cost is too high.
I remember one major coding crunch at the small software company I used to work for: We were preparing a significant set of enhancements to our core product, while at the same time working on bringing to market a major new product. The two projects shared giant chunks of code and logic, so it wasn't completely off the wall, but it was still clear that we were going to have an awfully long, hard slog ahead of us.
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.
Also I think other countries have 40 hr or less legal maximum work weeks.
Yet, somehow, Americans continue to either ignore or rationalize away the fact that Europe has now a better place to live than America.
eat shiat and bark at the moon
Yes
Is it a good practice
Generally no
Why is it done?
I used to work for a company that during crunches would institute 777's (7am to 7pm 7 days per week).
We only got marginal more work done. Much of it of dubious quality. But..
1. It proved to our client that we were working hard on their project
2. We billed them for it.
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...
W9x:Thanks for the make-work project Bill.
I've worked for a while in "top" law firms experimented with long hours.
1) The first lesson is that people lie. Those that tell you that they spend 70+ hours at work are really speaking about 40-50. They may have done a few days like that, but it's nothing representative. People exagerate, it's human...
2) You need regular sleep. In my case it's 7h a day, add 3h to get to and from work, and get into sleeping conditions, you have 14h left for your day. That's 70 hours of face time (not work time) in five days. At most. Law firms will buy you dinner if you work late at the office, so it's possible to squeeze an hour a day into that (that's still 75h max).
3) So how to you reach 80+? Sleep less. That will help you do some additional work, but only as long as your body will handle it. In my case, I lose a lot of efficiency after 48h lacking sleep. So unless it's for a short burst, it's not worth it.
4) You can add some time in by working Sundays. You sleep your Saturday off, and come to work at 10 am the next morning. It actually works quite well.
5) I would say that 1) is also the conclusion. Pulling in 60 hours on a normal basis is hard to achieve. 80 is impossible.
Yeah my med school mates always mention the long hours they work and the [in my opinion completely insane] 24 hour on - 24 hour off rostering system.
Perhaps they are worked so hard because doctors are in short supply?
Why are doctors in short supply? I think it's because they are allowed to regulate their own industry by having too much control over the training process and artificially restricting the number of students allowed into med courses. Why not lower the entrance mark/grade etc for medicine? I don't mean lower the standard of graduating students, just give more students a shot at the course. If they don't make it through the course then that's fine, they've payed for their education and they lost, it happens all the time in other subjects. With more students the quality and number of doctors will actually INCREASE! And that's win-win for everyone except the existing doctors who find themselves in a more open market and would have to lower prices or raise their standards to compete, etc...
[/rant]
We were the company that coined the term Internet Time. How did we do it, by sleeping at the office and working close to 120 hours a week. Was it healthy? No. Was it smart? Probably not. Did we produce a good product? You tell me. We wrote Netscape Navigator 1.0 in less than 6 months time. (Please don't confuse it with Navigator 3 & 4, which was a very different team) But there was a catch. We had all written a browser before. We were not trying to dream up a new product completely from scratch. We had a good idea from the start of what we wanted to build. Those set of circumstances don't happen very often. If I was tasked with building a new product that had never been attempted before, I would never try and work that many hours. Good design does not coexist well with exhaustion. There are plenty of other reasons not to work crazy hours as well, one of them is "having a life"... :lou
I spent some time working for a game company producing their first game. The last 9 weeks, the hours rose from 80 or so per week to over 105.
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.
Occasionally it took a very physical toll. I remember one morning, at around 9am (when the artists started turning up), I couldn't keep warm. Just constantly shivering, despite it being quite hot. Too exhausted to keep warm. That was a little scary.
Oh, and most of the extra time required was due to interactions with awful, awful code from 3rd parties. Yes, I'm looking at you, DirectPlay. That project turned a strong dislike of Microsoft into a murderous antipathy. I don't think anyone has found the bodies yet.
The U.S. military has tested hundreds of thousands of people to see what they can do after getting X number of hours sleep each night for Y number of days with X having values less than 6 (often down to 0) and Y often having values greater than 14. We are talking young, healthy people who have been screened for many medical conditions, who get lots of exercise and a healthy diet before beginning such tests, (and I specifically don't think anyone in their right mind would argue that the average coder can withstand more physical stress without risk of permanent health damage than long range recon, seals, or green berets).
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.
Who is John Cabal?
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.
If a job's not worth doing, it's not worth doing right.
Hey, this is really interesting information. Not to sound contrarian, but do you have a source for this? Online would be nice, but I'm willing to purchase it if need be. It would go a long way toward silencing some dumbasses that I know.
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.
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.
Being bitter is drinking poison and hoping someone else will die
Not sure about that. In today's economy I think managers love black-hole employees. That is people who suck up projects continuously. They never finish it, and if it's done... it's done totally half assed. But they keep saying "Yes Mr. Manager give me your projects." Eventually the manager gets promoted since his group now handles 200 agendas instead of 20. That's all management sees.
For those of you who haven't heard, it basically eliminates the need to sleep while you take it... (until your immune system bites the dust)
That's some good stuff - all of the flavor, none of the guilt. So far...
I know, personally, I'd eat a handful of mealworms for a script of Provigil - would make call nights a heck of a lot less torturous (and less frustrating for my poor patients...).
Definitely - I used to work on a massive online application at a large UK ISP, and luckily they recognised this problem. They had a golden rule there - "We don't go live after five". Also, no releases were allowed on a Friday. Under any circumstances.
This turned out to be alternately massively frustrating, and a major arse-saver. You might get a huge critical bug to fix and be working like a man posessed on it all day, but if it wasn't fixed, packaged up, documented, peer-reviewed, signed off in triplicate and given to the sysadmins for release by 3pm, it wouldn't get released until the next day. You'd go home cursing procedures and paperwork and middle-management to the seventh circle of Hell.
Of course, you usually got back in the next morning, took one look at your code and saw another potential bug that you missed in your frenzy to get the inital issue fixed.
A few years ago, I never would thought I'd hear myself say this, but most procedures are there for a reason. (Ick! My skin is crawling!) Some of them are there purely to justify some managements existence, of course, but some of them can save your neck.
http://instantbadger.blogspot.com
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:Everything in moderation, including moderation itself
This how we identify bad contractors were I work. When others pickup on his bugs make sure the work is sent back to him and only him to work on. Don't accept it until it is at least adequate. In addition to this create a report (weekly or monthly) of how much work is accepted i.e. actually done, you will want to include everyone for comparison and to not to look like your singling him out.
When you have enough to show a trend (PHB's love reports and can understand situations normally beyond there grasp with the help of one) go to someone in management and ask there advice on how to deal with this troubling situation (by asking or advice your creating the impression that this a serious and/or difficult problem), that your senior programmer is spending a lot of time in the office but is not doing as much work as everyone else, if he is the "darling" of management suggest that he could be overworked and that your concerned that's he's burning himself out.
We use the report were I work as a way of identifying which contractors really are doing the work and who just looks like there working hard.
Saying Apple is better than MS is like saying Botulism is better than rabies.
I have something here from an American, about France anf the hours they work.
Trust me, Europe has just as clueless PHBs. Idiots are idiots everywhere, no need to discriminate against any country.
What's different in Europe is that the laws are far more intended to protect the workers, than to protect the CEO's right to shaft you, use you, and throw you away. So it means for a start that they have to actually pay you for overtime, and even more for overtime on weekends. It also means that the boss can't say "if you quit, I'll see to it that you can't get any unemployment benefits or get any work with computers for the next 2 years", because the law says he's got no say in that. Puts them in a _much_ less despotic position in negotiations. Etc.
But in the end, idiots are still idiots, and still appreciate show-biz more than actual work. That's, sadly, what this industry is all about: show-biz. That's one thing I wish they had taught me in university. Would have avoided the disappointment later.
For starters, show-biz to entertain the boss. I know people who can't code worth shit, and don't even know the most elementary basics of the language. People who do more harm than good to any code they touch, and if they're inclined to dabble in office politics they harm the project far worse than mere bad coding. People who aren't just not producing much, but whose contribution to the project is actually _negative_. (Yes, it would go faster without them.)
But they brown-nose and put up a _great_ show of being involved, dedicated and working 12 hours a day. So the boss loves them. They're the good team members, while those who actually do the work are the "bad guys".
In fact, no offense, but from my experience so far, maybe 10% of the people do overtime because they're actually dedicated workers and enjoy it. (Yes, maybe _you_ fit in that 10%. I used to be in there too, so as I've said, no offense intended.) The rest do it because they have something to compensate for. The more incompetent they are, the more likely they'll put up the overtime and dedication show just to impress the boss.
Or show-biz to entertain the clients.
At least 90% of the software developped today isn't even supposed to solve a problem. It's just supposed to be a buzzword collection (or as I call it: BDA: Buzzword Driven Architecture) to make some client PHB feel good.
Etc.
You can still stick to writing software anyway. I did. It's more fun than the stupid office politics games. But you must learn to accept that that's not what's expected of you. Actually being able to code is as irrelevant to the job as it is to a strip-club stripper's job. Your real job, like hers, is really just putting up a good show.
A polar bear is a cartesian bear after a coordinate transform.