Mar 17, 2008

The Productivity of the Office

I would say the vast majority of programming jobs are 40-hour/week jobs, 9-5 (or a similar time-frame). You go to an office and program for 8 hours a day with some breaks thrown in there somewhere - sometimes. Unless you work in the gaming industry, in which case you're probably working 10-12 hours a day for 6-7 days a week.

I fail to see how this is productive, for the following reasons:
  • From my experience, most good programmers program at night. You might not get started until 2 or 3 in the afternoon, but then you get going and can keep going until well after 9pm.

  • Programmer productivity is not constant over time. A lot of the code I write before 11am (when my coffee kicks in) is slower than anything I write in the afternoon. I find little mistakes, or wonder why the heck I did certain things. Even worse, I completely forget how it works unless I'm actually looking at the code. It's like when you're writing papers for that English class they made you take, and 2 months later you can't remember anything you wrote about.

  • Transportation = no fun. It's an hour (at least) commute to work today, and another to get home. Most of the stuff I do at work I can easily do at home, so I really see no reason for all this travelling.

The problem with working from home or having an unorthodox schedule is that it does not fit into the normal business world. Most people work well between 9-5. That's when the managers are in. They want to keep an eye on you while you are working.

You've also got the problem of software licenses. Many of the tools we have to use at work (even though there are free ones available that do the same thing) are proprietary software and you can't install them at home. The bosses want everyone to be working in the same environment - it makes it easier to manage - and so using the software of your choice is not an option. Neither is taking home the software that they shelled out their "hard-earned" cash for.

I did contract work for a while. Although it doesn't pay as well and isn't a nice steady income, it is a much nicer work environment. I could sleep in each day, the commute was walking from my bedroom to my computer room (with maybe a side trip to the kitchen and/or the bathroom). My only problem with this environment is that there is no line between work and home unless you impose it on yourself. The greatest thing about working in an office is that as soon as you leave the office, you can completely forget about the work you do until the next morning - unfortunately in my situation I tend to forget a lot of the work that I did the previous evening until midday after the fog in my head has cleared a little.


thecodewitch said...


Unless you work in the gaming industry, in which case you're probably working 10-12 hours a day for 6-7 days a week.

I still wince when I remember working in the games industry. It has to be the WORST place you can work as a programmer. Sweatshop working conditions, repetitive unimaginative and uninteresting projects (just look at the games in your local games shop, try to find one title that doesn't involve shooting, racing, or shooting while racing) and worst of all nasty, soul crushing double talk from sadistic HR dweebs who tell you "but its fun, isn't it?" as a justification for barely paying a living wage.

Rob Britton said...

I've been reading on Slashdot and other media that some veteran game programmers are leaving the big-times and going into indy development. Maybe that's the way to go?