Coding Horror

programming and human factors

So you want to be a Game Developer

I've often said that game development is the most difficult kind of software development. It tends to be very low level coding, on unusual hardware platforms, and you have to constantly optimize for performance and "fun" -- whatever that may be. Consider the complexity of one small facet of game development, the AI: how do you simulate human opponents effectively? In comparison, my little business apps are a walk in the park.

Of course, the upside is that you're writing a game, something intended for pure entertainment. Theoretically this should be more enjoyable to work on than Yet Another CRUD database application. Well, according to a recently published blog entry, maybe not:

Within weeks production had accelerated into a 'mild' crunch: eight hours six days a week. Not bad. Months remained until any real crunch would start, and the team was told that this "pre-crunch" was to prevent a big crunch toward the end; at this point any other need for a crunch seemed unlikely, as the project was dead on schedule. I don't know how many of the developers bought EA's explanation for the extended hours; we were new and naive so we did. The producers even set a deadline; they gave a specific date for the end of the crunch, which was still months away from the title's shipping date, so it seemed safe. That date came and went. And went, and went. When the next news came it was not about a reprieve; it was another acceleration: twelve hours six days a week, 9am to 10pm.

Weeks passed. Again the producers had given a termination date on this crunch that again they failed. Throughout this period the project remained on schedule. The long hours started to take its toll on the team; people grew irritable and some started to get ill. People dropped out in droves for a couple of days at a time, but then the team seemed to reach equilibrium again and they plowed ahead. The managers stopped even talking about a day when the hours would go back to normal.

Now, it seems, is the "real" crunch, the one that the producers of this title so wisely prepared their team for by running them into the ground ahead of time. The current mandatory hours are 9am to 10pm -- seven days a week -- with the occasional Saturday evening off for good behavior (at 6:30pm). This averages out to an eighty-five hour work week. Complaints that these once more extended hours combined with the team's existing fatigue would result in a greater number of mistakes made and an even greater amount of wasted energy were ignored.

The stress is taking its toll. After a certain number of hours spent working the eyes start to lose focus; after a certain number of weeks with only one day off fatigue starts to accrue and accumulate exponentially. There is a reason why there are two days in a weekend -- bad things happen to one's physical, emotional, and mental health if these days are cut short. The team is rapidly beginning to introduce as many flaws as they are removing.

It's difficult to believe this is standard business practice in the gaming industry, but it sure does seem to be based on the comments posted to that blog entry:

Every book I've read says this kind of shortsighted practice will ruin your project, and eventually your company-- along with the lives of your employees.

Written by Jeff Atwood

Indoor enthusiast. Co-founder of Stack Exchange and Discourse. Disclaimer: I have no idea what I'm talking about. Find me here: http://twitter.com/codinghorror