Krishna Kumar is a software development manager from New Hampshire. He writes on topics related to software development, programming, project management, and business management. Krishna is a DZone MVB and is not an employee of DZone and has posted 41 posts at DZone. You can read more from them at their website. View Full User Profile

How Many Hours Can a Programmer Program?

01.17.2012
| 15638 views |
  • submit to reddit

I am a little late to this party where Michael Arrington says that startups mean working hard and sleeping under your desk. But I will add a few words. I read a lot of commentary about how such death marches can be counter-productive and ultimately unsuccessful, and also the real dangers they pose to the well-being (short-term and long-term) of the lives of the programmers. But I didn’t see many people actually do a quantitative analysis. So here it is.

Your average working day is 8 hours and the average week has 40 hours. Now,  in the absolute best case (unworldly) scenario, your startup has a programmer who does nothing other than program, 24 x 7 (not even sleep). That translates to 168 hours, which means you have a programmer working 4 times harder than usual.

But of course, programmers are not machines running all the time and even those break down. They are subject to the same biological needs that other human beings have. Like, sleep. The optimal amount of sleep for human beings is between 7 to 8 hours. Now, you can survive a day or two with less sleep, but it will catch up and in the meantime, you are operating at below-peak efficiency and it is a wash. Using an estimate of 7.5 hours, we are down to 115.5 hours.

Then food. And you need to first get the food (order or cook) and eat it, at least three times a day. On average, let us say that takes 30 minutes per meal and 90 minutes overall. Now, if you are ordering pizza delivered all the time, maybe you can bring that down to 15 minutes per meal and cut that down to 45 minutes. So, let us average it to an hour per day. We are down to 108.5 hours. Hygiene? Brush your teeth? Take a shower sometime? Best case, let us say 30 minutes a day => Down to 105 hours. Commute from and to work? The average commute in 2007 was around 45 minutes round-trip. 5.25 hours per week => Down to 100 hours. Maybe you can reduce that by sleeping under the desk!

At 100 hours, that is just working two and a half times more. And we have not even talked about productivity, family needs, illness, having friends, non-work needs and activities, etc. For all intents and purposes, you are looking at somewhere between 10 and 14 hours of work 7 days a week.  And even that can only be sustained on a short duration (months).

So, here is the question: Is working about 2.5 times more going to make your startups yield the astronomical (i.e., 10 times or 100 times) returns expected? What is the value of the extra 150% put in by the programmer? Does 40 hours a week mean regular company returns, and 100 hours means Facebook-like valuation? And if that is the case, why not hire extra programmers while you are at it? Seriously, if putting in more hours means a huge guaranteed return, then surely adding more people gives you bang for the buck, right?

If not, why is it not? And why do people like Arrington and Jason Calacanis want people to work themselves to death? One possibility is that they don’t know how to count and seriously think that working a few extra hours suddenly translates into huge profits. I think there is something subtler happening.

The truth is that even with sophisticated metrics collection at work, you cannot properly gauge programmer productivity. There are ways to game the system, and even if people are not trying to game it, you have to spend time looking at the code in detail to see what is being churned out. People like Arrington don’t have the time or the expertise to do that. Instead they measure productivity by the number of hours the programmer is available to them. This means how much time the programmer is at work (they must be coding every second!) or how easily they can reach the programmer when not at work. If a programmer picks up a call from Arrington at 1 am, she is practically working all the time, regardless of the fact that it might only take her 10 minutes to answer the call and fix an issue.

So while Arrington and Calacanis say and even think that they want the programmer to work all the time, what they actually want is the person to be available all the time. More so because they cannot produce or fix anything without their help. This has nothing to do with startup success or failure. You can read similar stories in established companies with stupid bosses, where leaving one minute earlier than the boss has a whole different meaning than leaving one minute after.

 

From http://www.thoughtclusters.com/2012/01/how-many-hours-can-a-programmer-program/

Published at DZone with permission of Krishna Kumar, author and DZone MVB.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Tags:

Comments

Mihai Dinca - P... replied on Tue, 2012/01/17 - 2:48am

Lets not write articles just to publish something , please!

Juan Macias replied on Tue, 2012/01/17 - 3:29am

I could not agree more, Krishna.

Stop sleeping under your desk, @Mihai.

Mihai Dinca - P... replied on Tue, 2012/01/17 - 3:51am in response to: Juan Macias

Lets not make unjustified remarks. Those who are working everyday "under the desk" have their problems. I am not one of them. But I am not interested to find out how much time someone spend eating or brushing his teeth on Java Lobby. I can go on other sites if I want to look for such kind of things.

David Benson replied on Tue, 2012/01/17 - 7:19am

I think this article is a welcome change from the constant stream of articles thinly pretending to do something other than advertise a product/service. It's not exactly about Java, but applies perfectly well. I've worked for mostly European companies, but also some US and the later tend to have this fall asleep at your desk mentality. In the US based companies the long hours were simply glossing over ineffective middle management and poorly strategy at the top.

Jilles Van Gurp replied on Tue, 2012/01/17 - 9:08am

The "pizza culture" is ultimately an unhealthy life style that leads to obese individuals that will be in a pretty lousy shape by their forties and might find it challenging to reach their pension. Worse, it is actually counterproductive. People working long hours start making more mistakes, lose a bit fo focus and  you can't compensate that with maintaining a cafeine habit.

I can't count the number of times that I solved a problem by going home and sleeping a night on it. A clever programmer organizes his life such that he can deliver about 6-8 hours of actually getting shit done type work rather than 10+ hours of sitting behind a screen drinking coffee and generally doing a sloppy job. I'm not exactly a 9-5 type person and I often put in more than 8 hours in a single day. But I'm well aware that I'm not actually that productive some of the time. So, if it is 7 pm and I feel tired: I go home. Best thing for everybody.

Michael Schenk replied on Sun, 2012/01/29 - 6:51am

Mens sana in corpore sano !

as this is a fact well known for a long time, there is a regular need to highlight it. Especially in a world that tries to become sustainable.

thanks Krishna

Sandeep Bhandari replied on Sun, 2012/01/29 - 12:16pm

Startups really want your blood :)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.