Ask Slashdot: Does Your Work Schedule Make You Unproductive?
debingjos writes "Management at my company seems to think that our developers can get extra work done if they work extra long days. However, as one of the devs in question, I don't agree. When I've been coding for eight hours, my pool of concentration is exhausted. Working overtime either fails to produce any extra code, or the quality of the code is very bad. What is the community's opinion on this? This can be broken out further into several questions: What are the maximum number of hours you can work in a day/week and still be reasonably productive? When you absolutely must work beyond that limit, what steps do you take to minimize degradation of quality? If you're able to structure your time differently from the typical 9-5 schedule, what method works best for you? Finally, how do you communicate the quality problems to management?"
You will never change them. Find a company that allows flex hours and doesn't manage by putting out fires with more fires. They are out there.
Now that's just me, but taking a break and stepping back makes a huge boost to my productivity. I also code best late at night because I'm not distracted or disturbed and can get into something without worrying about a schedule. I can do several days of 10-12 hours if needed but not more than that before work quality suffers.
"Does Your Work Schedule Make You Unproductive?" - no but Slashdot and TheChive sure do
Oh come now! You're Slashdotting is counted toward Professional Development. Same as for when the execs slip out for an afternoon of golf.
A feeling of having made the same mistake before: Deja Foobar
1- Manage MILESTONES, not MINUTES ;-)
2- Quality problems are why there is a design spec and QA engineering. If these are too "old school" for your management and methodology, expect the beating to continue. That means code coverage and quality will be measured by your customers.
"Flyin' in just a sweet place,
Never been known to fail..."
When you crank out 100+h/week, you should probably ask yourself question about your life (or lack of thereof)...
Solving problems is like marinating meat. It takes time. If you rush it, you get a quick solution, but not the best. A quick solution might be acceptable for one meal, but not for future meals.
The "Eureka effect" isn't something new.
In creative endeavours like coding, an 8-hour day of actual work is never, ever 8 hours of successful coding, and often results in questionable code that I have to rewrite later because looking busy when you really need a bit of time away from the desk. I think that if I could get away from the desk more without being perceived as slacking off, I would actually get more done.
Get up, take a walk around the block, play a little guitar, or whatever suits your fancy. As long as it gets your mind off the present obstacle. Come back with a fresh perspective and a fresh mind.
It certainly does worlds of good for my own free-time projects, but at work? It seems more like people believe they are paying for time, and not for actual work done.
In SOVIET RUSSIA... erm...NSA AMERICA, the Internet logs onto YOU!
By "distraction" do you mean 3 group of people having right now conversation around me ? I hate openspaces...
As a developer, once I'm in the 'zone' I can code until I'm practically asleep... Although if I was forced to code for X hours, I couldn't say if I could 'enter' that zone or not - my guess is I wouldn't considering I would probably be thinking more about how pissed I was.
lol
True. It really varies by the individual, amount of sleep, consecutive days of intensive work, etc.
As a person with an executive function disorder it's much much easier for me to work for extended periods of time because I don't recognize the time passing. I'll go until I can't go anymore. That said it takes me a while to get into "code mode" so a schedule which is interrupted by meetings and other crap means a huge loss of productivity for me.
In fact, I find that after the distractions of the office are gone, either because I am working at home or everybody has gone home, I can get a lot more done.
Agreed. I'm the most productive when everyone else has gone home. But I pay for it by being dull and generally unresponsive the next morning. I'm thinking it's like the old proverb, you can't make a string longer by cutting off a piece and tying it to the other end.
I think what we're saying is that there are productive hours and hours that you're required to ... be there ... and they're not necessarily the same hours.
The collateral damage of staying late is that the company will start *expecting* you to stay late.....
Oliver's law of assumed responsibility: If you're seen fixing it, you will be blamed for breaking it.
6 hours max per 24...
“He’s not deformed, he’s just drunk!”
When you can't do in 100+ hours / week what I can accomplish in 30, you're probably too young for the job. Step aside and let someone with some experience and perspective do the job that you obviously can't. Development productivity cannot be measured in hours, nor in lines of code.
I one took a job for a company developing a Futures Trading system, and they pushed us hard (at least 12 hours a day, 6-7 days a week) in order to meet their imposed deadline.
We finally got the system to pass the entire test suite on a Sunday afternoon.
Monday morning, when I arrived at work, the outer office was full of boxes containing all of the personal belongings of the developers, along with the CFO, who was handing out pink slips.
Amazingly, they actually issued a press release boasting of how they had gotten rid of all of their expensive software developers since they were "done" with software development.
In 3 months, they were out of business.
Hope you fare better!
Any company that measures progress by how many hours your ass is in the chair is not a company worth working for. It's a sign management is not only incapable of measuring real productivity but that they are also indifferent to your well being.
It's not the same thing but I work from home a couple days a week and it's great. I save a couple hours/week on the commute and get to spend some time working in a way that's best for me. And if after lunch I'm tired.. I go hit the couch for 20 mins of shut-eye. Wake up refreshed, far more productive, and in a better mood for when the kids and wife get home. WINNING.
Eat your hearts out.
I'm recently retired and loving it.
I'm currently building a kayak rack in my back yard without any deadlines.
Sometimes I just put down the tools and paddle off to check my crab pots.
At the start of every day I sit on my patio overlooking the water, drink my coffee and decide what (if anything) I will do for the rest of the day.
I wish I could have retired 40 years ago.
So long and thanks for the fish.
I'd say in a given week I probably only do about fifteen minutes of real, actual, work.
Chuuch. Preach. Tabernacle.
One problem that IT folks often come across, especially with development jobs and especially at startups, is the expectation that long hours produce better results. Large companies also do this -- Google, Microsoft, etc. have on-site everything as a perk for employees, but also to keep them there for the maximum possible time. This works very well when you're just out of college -- you're used to working long hours to finish stuff, the dorm-like atmosphere is inviting, etc. But it really gets old when you're older, more established and have things outside of work like a marriage, family, etc.
Also, employers hate to add staff in IT roles because most of them see the entire function as a necessary evil. If you're in one of these places, you'll never get free of being called to fix stuff out of hours and working like crazy to put out fires. On top of that, many see themselves as "great places to work" and don't think that their workers feel any of this pain.
The one common myth throughout IT employment is that every place is like this. It isn't -- I happen to work for a place that allows flexible hours. And although we're lean in the staffing department and often have to work *a little* extra time, the workload isn't crushing. There are trade-offs, and people who work here know them. Pay isn't at the top of the range, the stuff we work on is typically not cutting edge (but not ancient either,) and the work our department does (systems integration) is very difficult if you don't have the right attitude/mindset/troubleshooting brain. In addition, those flexible hours get cashed in for marathon work sessions on very rare occasions. My company basically says "keep sane hours, make sure you're around for meetings, and we reserve the right to fly you halfway across the world if a disaster happens." I could get a job working myself to death for an investment bank or video game company, but I have a family at home now.
Seriously, not everywhere has a toxic culture. And yes, I'm aware that there are a lot of people who love working insane hours and have very little to do outside of work. That's why different companies have different work styles.
Entirely dependent on the project. If I was intensely interested, I could work much longer.
There is no 'absolutely must'. If you have a limit, it's a limit. It's unhealthy to push past that, people have died.
Four long days followed by three off.
Walk up, say "Hey....
Does code golf count too?
Ezekiel 23:20
Pointless telephone calls and stupid 'do you have a minute' conversations waste about half of my day.
I'm with you on working outside office hours and ideally outside the office.
Unfortunately, management is a largely evidence-free space. Research on all your questions, and a thousand more, exists. 99% of managers don't seem to know anything about management nor people. Not in the way anyone else knows anything about their profession. That's largely because few people actually study management, most are something else by profession and were promoted to management positions, and if you're lucky they got two weeks of training.
Your case is typical. Managers don't know about how people work, so they try to manage them like any other resource. But, as the excellent little book "Peopleware" put it: "Adding manpower to a late project makes it later."
If you want to have a good job - leave. A company with that kind of management is unlikely to change.
If you can't or don't want to, buy your manager that book, or some other. Send it to his private address, anonymously. You don't want to embarass him. He most likely knows that he needs help, but he would never admit it.
Assorted stuff I do sometimes: Lemuria.org
When you can't crank out 100+ hours/week at max capacity, you're too old for the job. Step aside and let us younger and more capable guys show you how it's done.
If you have to crank out 100+ hours a week on a regular basis you can't do your job.
This is a well-researched topic with hard data available. And it's pretty unambiguously and consistently the case that the hard data show that working extra hours results, not just in lower productivity per hour, but lower productivity overall. Which is why people who start pushing for extra hours can't seem to catch up -- they're making it worse rather than better.
Your managers are trying to find out just how much gasoline they have to pour on this fire to put it out, and I don't think you can reasonably expect them to get smarter.
My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
Unfortunately, the main question seems to imply everyone staying late, which negates the positive side of what you are describing.
Not totally. The slackers that cause 80% of the noise and distraction all go home at exactly 4:59 pm.
I worked for a manager once that didn't believe that anyone who practiced WFH actually worked when they were at home. His position was, you must be visibly in your cube to be considered to be working.
Sounds like he was assuming other people would behave like him.
I worked in hospital IT several years back. Hospitals routinely schedule doctors and nurses for 12 hour shifts 3 days a week.
While I was there a report was released that said that after extensive study of doctor and nurse patient care habits throughout their work day, they determined that the quality of patient care dropped sharply after 8 hours. During hours 9-12 the risk of being misdiagnosed (incompletely or inaccurately), administer incorrect medications (patient allergies or medication contraindications), administer incorrect dosages of medications, etc. The risks were almost double compared to the previous 8 hours. After hour 12 the risks got even worse. The study estimated that preventable accidents would fall over 75% by changing to four 8 hour days.
Unfortunately, the attitudes of doctors and nurses were that the quality of their patient care was just fine, and nobody wanted to give up the schedules that they currently had. The medical field has a culture of overworking yourself and working while tired, so they are highly resistant to change even in the face of such profound data revealing how destructive their behavior was to patient well-being.
The road to tyranny has always been paved with claims of necessity.
Or you're being expected to do more then just YOUR job.
All the world's a CPU, and all the men and women merely AI agents
If this is news to you, you must be new here...
"Our opponent is an alien starship packed with atomic bombs," I said. "we have a protractor"
Good point about distractions. Good managers or team leads will make sure their coders are not distracted. Someone mentioned phone calls and silly questions taking up half of their work day, but interruptions are worse than that: interrupting a coder who is in "flow" even for one minute can easily cost half an hour or more of that coder's productivity. Even worse: nudging a coder out of flow several times a day for an extended period of time will lead to severe fatigue and, when under pressure to deliver, a high risk of burnout.
Working coders need to be left alone. Not because they are prima donnas, just because of the nature of their work and the mindset required for it.
If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
Thanks for cutting through the clutter. I read through far too many comments arguing for this set of hours vs that set of hours. No one's family life is the same. No one's biorythms are the same. I've been a programmer, analyst, project manager, entrepreneur since the early 1980's and have learned that my teams performed best if their hours were self-managed. Even within the same individual I sometimes needed to work in small 50 minute increments and, at other times, in huge non-stop spurts with a satisfying 18 hour day.
These days, if I'm productive n hours, that's exactly how many hours I work. I'd make exceptions to this only to honor confirmed appointments and periodic team meetings.
Thanks, again, for a quality post!
Good point. But everyone, and everyday is different. I've had inspired days when I worked 12 hours. My blood was up and concentration was good. I've had bad days when I caught up on email, admin, documenting, etc. no point in trying to code, nothing productive would result.
old school management is a classic fail
There are a lot of jokes about morning and night people, but studies show there is validity to this. I learned to work with this when teaching special ed and later, when I ran my own software company, where I did all the programming, I saw a dramatic illustration of some of those issues.
Morning people get up and are perky and ready to start. However, they're the ones who often need a nap in the afternoon and work well with an 8 hour day, but do not do well with marathon sessions. Night people do not start quickly. They wake up and need time to adjust to the world again and often are not ready to really focus until the afternoon. But they gain in strength and focus over time. They can often work marathon sessions, working all through the night and into the next morning.
I found that when I was coding and could work on my own schedule, I could get some work done in the afternoon and this is when I set things up, did simpler tasks, and caught up on things. But my real work hours started about 8:00 pm, when I could start focusing and I would often work through until sunrise or longer. 18 hour coding sessions were not unusual for me, but, of course, if I did a few in a row because I was working on something difficult, then I'd need several days to just recover. But I might be able to do 5 days straight of mega-sessions if needed. It's also worth noting this was in my 40s, not when I was some over-energetic teen or 20-something. In fact, in one month, when I was over 45, I did more all-nighters (with good code as a result) than I did in all my time in high school and college combined.
It does vary according to the person. Forcing night people to try to work in the morning will always be an issue for them and will not produce the good code they can produce. Forcing morning people who tend not to do well in marathons to stay for 10 hour days four times a week is just as bad.
Corporations don't understand these things, which is one reason I never wanted to be involved with any larger corporations. If you want coders to do their best work, you can't regiment them and dictate how they work. You need to let them find their style. Let them work on their own schedule. If they need music, let them have it. If they need silence, find a way to make quiet places available. Some need neat work spaces, others need chaos.
The risks are very different first off. If I crash my computer I don't usually kill anyone, if I crash my double trailer on the freeway there is a good chance that people die.
Second, the fatigue is very different between mental jobs and manual labor. I agree that for the most part humans shut down after 8 hours. That said, Tech jobs are quite a bit like being an artist. You find a groove, and you can make magic. I have done a couple of 20 hour days in the past because A) I really really enjoyed the project I was working on, and B) I was in a groove and everything was snapping together. The 20 hour days are extremely rare, but I doubt I'm the only one that's had a couple of those moments.
The thing is, if you find your groove and work a 12 hour day the bosses need to make sure you get compensated. A 40 hour week does not give much time to rest, and a 50 hour week leads to burn out rather quickly. If your boss does not allow comp time, get the hell out!
Many managers learn who the workers are and never comp, often pushing the workers harder and burning them out quicker. As long as they get their bonus they don't care about the staff they have left next quarter.
-The wise argue that there are few absolutes, the fool argues that there are no probabilities.
Good point about distractions. Good managers or team leads will make sure their coders are not distracted. Someone mentioned phone calls and silly questions taking up half of their work day, but interruptions are worse than that: interrupting a coder who is in "flow" even for one minute can easily cost half an hour or more of that coder's productivity. Even worse: nudging a coder out of flow several times a day for an extended period of time will lead to severe fatigue and, when under pressure to deliver, a high risk of burnout. Working coders need to be left alone. Not because they are prima donnas, just because of the nature of their work and the mindset required for it.
Hamming, a famous programmer at Bell Labs talks about open-doors and closed-doors. The general consensus is that people with open-doors tend to be more successful than people with closed-doors.
It is very important to keep your ears to the ground and know what is going on in the workplace. Those "distractions" can sometimes be very important information that can save you hundreds of hours of works or advance your career. A "minute" talking to a person can reveal what a thousand words cannot.
Good point. But everyone, and everyday is different. I've had inspired days when I worked 12 hours. My blood was up and concentration was good. I've had bad days when I caught up on email, admin, documenting, etc. no point in trying to code, nothing productive would result.
As a manager of a small dev team (and 'developer' myself more than 'manager'), I recognise this in my team and specifically have different kinds of work available depending on the 'mood' that the guys are in. Someone's having a great head-down-and-churn-out-awesome-code day, I'll let them go at it until they're done. Someone's having a blergh-can't-seem-to-even-handle-basic-refactoring day, they can maybe double-check some documentation, or read up on some new technology that might be useful to us, or something else.
I also recognise that some days the hearts and minds simply aren't in it at all. For this reason, we don't have fixed work hours - come in when you want, leave when you want, do your 38.5 hours per week (and if you do more, you can take it off later as time in lieu).
Yes, this can lead to delays on projects, but that's my job as the team manager to sort out. When I tell marketing/whoever about schedules, it's my job to take in to account that people in my team have good days and bad days. I'll build that in to my estimate (and therefore occasionally finish a bit earlier than 'scheduled', giving us time for a bit of spit-and-polish on some non-core parts; or help out on other projects that aren't looking so good).
Occasionally, I've had some difficult conversations with my management about why they saw my employees engaged in a network game instead of working, but again - it's my responsibility to take care of that and my superiors can't fault us on quality of output. My team of course are generally pretty happy with the work environment and I take that as a matter of pride being the one providing it to them.
My book about LSD and Self-Discovery
Also on facebook as: DroppingAcidDaleBewan