My Message close
GAME JOBS
Latest Jobs
spacer View All     Post a Job     RSS spacer
 
May 21, 2013
 
Blizzard Entertainment
Senior Software Engineer, User Interface
 
Blizzard Entertainment
Senior Technical Artist
 
Blizzard Entertainment
3D Environment Artist, Senior
 
Blizzard Entertainment
Dungeon Texture Artist
 
Blizzard Entertainment
3D Character Artist, Lead
 
Hidden Variable Studios
Senior Designer
spacer
Blogs

  That Awful “C” Word: A Student Perspective
by Alan Jack on 07/22/11 05:58:00 am   Featured Blogs
11 comments Share on Twitter Share on Facebook RSS
 
 
The following blog was, unless otherwise noted, independently written by a member of Gamasutra's game development community. The thoughts and opinions expressed here are not necessarily those of Gamasutra or its parent company.

Want to write your own blog post on Gamasutra? It's easy! Click here to get started. Your post could be featured on Gamasutra's home page, right alongside our award-winning articles and news stories.
 

Reposted from AltDevBlogADay

I’m always quite concerned about speaking my mind on industry topics. I am, after all, just a student – albeit a mature student with some (old & outdated) industry experience. I know that a lot of my speculative arguments, theories and opinion pieces could be shot down with “you don’t know what its like”.

There’s one topic, however, that I have very strong feelings on, and that I feel, as a student, I can offer some perspective on: CRUNCH.

Being a student, crunch is something I come up against all the time. When exam/deadline time rolls around, our library goes into 24-hour opening times, the union starts dolling out caffeine tablets like candy, and the counselling department pretty much just opens its doors to accept the cracked and broken souls that don’t make it through. Throughout all of this, though, the message is clear: it shouldn’t be this way. Do you work early and pay attention to your time and you’ll be fine. To “crunch” in University, however common it might be, is seen as something you do because you’re too young/naive/unprofessional to handle your deadlines responsibly.

What worries me the most about crunch in the games industry is the view of it as acceptable practice. I worry this can lead to an exponential explosion of crunch-time, leading to a dreaded state of near-perma-crunch. By accepting that crunch happens because of deadlines, producers then begin to schedule crunch time into the plan. Which means that when unseen problems come along, the stress rises, because you know crunch is coming anyway, so you have to crunch more for the new problems. Thus crunch happens earlier, or more intensely. This becomes a habit, gets accepted, and finds its way into the schedule for the next project, and so on …

In the course of the last year, I’ve developed 3 (admittedly tiny, barely-finished & prototypical) games at Uni, and – believe me – I can appreciate how difficult it can be to properly predict and scope a development project. Games development is, by its very nature, unpredictable – you can’t really “sketch” the play of a game the way you could a painting, or outline it the way you could a lengthy essay or dissertation (ways in which you might attempt this are a topic worthy of its own post).

At the end of the day, however, we are being taught to work as professionals. This is something that I both love and loathe about our course (blatant shilling alert!): unlike some more liberal, artistic courses, Abertay University’s Professional Masters in Games Development is all about the business of making games as professionals. We might not be encouraged to be as innovative and creative as possible, but we have producers, we have schedules, and – yes – we have deadlines, and by and large we hit them, because the job of producers is to make sure that the project hits those deadlines. They cut content when they have to, they reign in designers when they have to, and they generally work towards that singular goal – crunch is essentially their failure. If they ask programmers to stay late, they do it as a favour to cover their butts.

Where developers are willing, or in some cases even wanting to put in extra hours, I feel like this is something that needs to be more carefully considered than the “hey, if they’re willing to do it” attitude. A good producer should see the developer as a whole, and the company culture is a big part of that. If some of the team are willing and dedicated to working extra hours, then it creates a culture of overtime that can suck in those who don’t want – or worse, can’t – put in that extra time. Not to mention that there are those developers who are so dedicated to a project that they’ll literally work themselves into ill health for their passion. A good producer should get the best from their team – and often times that might mean telling someone they need to stop working and go unwind. Simply buying dinner or drinks for hard-working teams can, in some cases, be seen as treating the symptom (stress and fatigue) rather than the cause (overwork) of a problem.

On top of this, producers (and any team member associated with people and resource management – lead artists, programmers and designers) must consider the value of each step in the development process. A poor pipeline leads to downtime, confusion and work that does nothing but gets lost in the ether. This not only produces delays in development, but also increases frustration and lowers morale.

Thus, I feel that the root cause of habitual crunch is a lack of professionalism – not professionalism of low level developers (although I do feel that not speaking out against habitual crunch as a practice is a little amateurish) but the professionalism of higher-ups, managers and producers.

Perhaps I’m way off base here, and the problem lies somewhere with publishers not offering realistic deadlines to developers. Perhaps production in the industry works fairly well – but the fact remains that the image projected by the industry still tends to be that working harder = getting more done. I would argue that the more professional approach would be not to work harder, but to work smarter and more efficiently by understanding not only the process of development but the needs of both the individual developers and the development group as a whole, and maintaining a healthy working environment and culture for all.

 
 
Comments

Rey Samonte
profile image
Hrm...it's true that crunch is often times the result of poor management, however, I believe there are other factors at play. Often times, people stop looking past the publisher and they constantly see the pressures publishers put on their developers to hit their deadlines. In reality, publishers have to answer to their investors who really don't understand the process of game development. Often time, investors only see the potential for profitability and never understand the complexity of developing games. Investors want to see a return on their investments in the least amount of time. Since they are probably investing a lot of money into the publisher, they essentially have the power to enforce and pressure the publisher to deliver on time. Sadly, that trickles down to the developers.



From a developer's point of view, developers can also be guilty of over promising. We naturally have the desire to make the best game possible with all the features we want to add. Management often works with developers in coming up with a schedule. If developers underestimates the features and the time it takes to implement them the problem starts to create pressures from above and below. Management is found somewhere in the middle and when the pressure is on, in order to satisfy both the publisher and deliver what their developers promised, crunch is often put into place.



I don't know, I'm sure there are other factors that contributes to the need for crunch, but this is what I've observed from my own experience.

Alan Jack
profile image
There's a definite issue with over-promising and a desire to make the "best" game you can. I ran into that on the comments on alt-dev-blog - lots of people think that working longer on a game means it'll be better. I disagree.



People want to play a finished, polished product. Cramming new features in doesn't always make a product better. It's the same in any media - authors cutting chapters from books, directors cutting scenes from a movie. William Goldman coined the term "killing your darlings" for what he saw as a necessary action of taking out of a movie any scene you become personally attached to, and ensuring the movie flows without it, because you can't let your personal feelings interfere with the end project.



At the end of the day, the public might SAY they want features X,Y & Z in a game, but they'll be much happier if you give them X with plenty of polish and work done. I have a feeling a lot of games can easily become vanity projects for the developers, rather than aiming for a solid finished product.



You're also right about publishers - they need to be realistic, just as developers need to be realistic when making deals. This is where it gets messy, because there will always be publishers who don't care how a game is made, and developers who will break their own backs to undercut other developers ... I imagine, as I get out into the industry, I'll try and make a stand, but I can see how it could get difficult!

Jonathan Jou
profile image
From what I can tell, crunch is what developers call what is more commonly known as unplanned overtime. In any industry where there are deadlines and unknowns, schedules can never be perfect. It's simply the case that programming unknowns are significantly harder to manage than manufacturing unknowns.



I think you're right--crunch is the unintended combination of clumsy project management and overly optimistic publishing models. It's one thing to give a student a well understood, self-contained problem and expect completion by a statistically sound (if not somewhat generous) deadline; it's another thing to give a team of people who have to coordinate a poorly-defined task and expect anyone to know when anything will be done. Guesses are made, milestones are set, and then suddenly there's not enough time.



Voila, crunch! From my brief time developing commercial software, I've found that the best developers who actually decide on crunch time and deadlines always do the following:



1. They always have a plan b. If the team is out of time, the first thing to do is look at the list of features and figure out what can wait.

2. They never set hard deadlines until they actually believe they understand the problem. When push comes to shove, and there are features that can't be cut which won't make the deadline, they don't cross their fingers and hope things aren't as bad as they seem. Their boss finds out as soon as they're sure, and deadlines never materialize into actual dates until they seem realistic.

3. They *never* promise miracles, or even pretend that miracles exist. Good dev leads never agree to "try" to get a feature on time. They either deliver or know that they can't guarantee delivery and say so.



This tends to result in slipped ship dates, missing features, and a lot of stress and scrutiny before the product is anywhere near shipping. And, in my opinion, that's how it should be. No surprises. If there's going to be crunch, it's going to be carefully managed, and very narrowly scoped.



Crunch will always exist, of course. But between good management and better scheduling, it's supposed to be part of a 40-hour work week and not the 100-hour horror stories we hear about.

Alan Jack
profile image
Bang on. I was just kidding with my producer the other day about his ability to answer every question he was hit with through indefinites. I don't think he's ever said "yes" once on the project, always "we'll see", "we'll try" and "possibly".



I've also had a a lot of talk on alt-dev-blog about how throwing more man-hours at a project doesn't solve problems efficiently, and that a good producer sees the needs of the project before the desires of the developer. This speaks to you second point - managers need to understand both the project AND the developers, often better than the individual developers do themselves.

Jack Wilson
profile image
IMO Crunch happens because the best developers set the bar super high and crunch is the only way to even attempt to close the gap. If noone crunched we'd be making streamlined commodities that everyone simply accepted. You can't push the bar in an environment this competitive at 40 hours a week.

Stephen Chin
profile image
Yes you can. It's been proven time and time again that working too much reduces productivity, creativity, and any other sort of mental metric you care to measure. If you want to create something innovative, then the 'simple' solution is to devote a lot of time (ie 6 years) and/or be willing to iterate indefinitely (Valve time) and/or be sure to set a definitative goal of how innovate you want to be... and stick firmly to that goal.

Michael Millea
profile image
I agree, Jack. I think that the best alternative for developers who want to avoid crunch is to get a job with the post office or possibly a call centre.

Stephen Chin
profile image
Though I don't disagree, I don't think that discounting the contribution to crunch that developers have is as easy as just telling them to take a break. In the projects I've been in and in the projects I've seen, crunch is as much a matter of individuals or the team as a whole effectively working on things outside the schedule/outside the scheduled hours.



Whether to get ahead or to work on a polish item or whatever, this work ethic is one of the pit falls of good behavior I think. If you feel like you need to 'get ahead', all that really means is that the team has overscoped. If you add in a 'simple' polish item, great... but realize that while it may not have cost hours -now-, it has effectively added hours to the project because now that it's a feature, it must be tested and devoted polish time towards.



Likewise, it's developers discounting the time it takes to do trival things. Yes, scripting X may be very easy... but that hour or two spent comes from somewhere. And a dozen 'easy' things suddenly becomes an entire work day.



There's any number of reasons that crunch happens... but I don't think it's just poor scheduling or just poor producers. I think it's a combination of poor producers and leads not seeing the many poor decisions that look like good or harmless behaviors.

Ian Richard
profile image
I'm with Stephen.



In my experience... Crunch doesn't come from only a single source. Crunch is caused by minor mistakes made from EVERY direction. Producers and managers can cause crunch with poor scheduling... designers can cause it with over-scoping or gold plating... and low level developers can cause it by cutting corners while trying to meet deadlines or failing to plan out their implementations for all the situations.



Crunch is not something that we should just accept. But it also isn't something that can be fixed by blaming one party.



Yeah... our publishers pushed us to a deadline we could never meet... but my managers promised them that we could... and our designer never got around to finishing the design because he was busy polishing... and our schedules were literally ignored because they weren't accurate... and guess what... even I can take blame because I became shortsighted when fighting to meet the constant deadlines. Every little mistake each person made added up to insane amounts of crunch time.



Crunch is everyone's problem... and crunch is everyone's fault. The only way that we can solve it is to all work together to keep things realistic and feasible.

Alan Jack
profile image
I think perhaps I didn't make my point quite right, because I'm right with you on this.



I think part of being a good producer/manager is knowing your individual developers better than they know themselves, in regards to their work, and seeing the project as a whole: knowing that an extra 4 hours done to save this feature will create this extra work for someone else, and so on ...



I'm aware that sounds condescending, but its the way people management works, in a sense.



But you make a good point that the low level developers should understand this as well, and aim to understand their workflow better.

Inti Einhorn
profile image
It seems logical to start at the top of the chain of crunch-inducing factors you lay out: "our publishers pushed us to a deadline we could never meet" Is this not the genesis of the issue?


none
 
Comment:
 




 
UBM Tech