No one will remember if you shipped on time, but they will always remember if you shipped a bad product.
At work, I’m in crunch mode—that time when you put in extra hours to get over the hump of a project milestone. In our case, it’s the first “works like” (as opposed to “works like and looks like”) version of a new product. So there’s a lot of focus on making sure all the features work reliably. In fact, I really should be coding instead of writing this column.
I talked my way into my first programming job. Back in 1975, my university paid the then-princely sum of $15,000 (a year’s salary for many people then) to an outside company to take electronic files and generate a magnetic tape that contained the typesetting commands to produce the university course catalog. A smart guy named Lew Law (who would hire me for that first job) realized that it could be done in-house for the cost of hiring a student programmer for one summer. And that programmer was me. I didn’t know the C language, but I talked a good game and landed the job. Of course, there was a deadline that wouldn’t move (lest incoming students have no catalog), and I got my first exposure to crunch mode. To a student who pulled an occasional all-nighter, it didn’t seem too bad. In fact, to a 20-year-old, it was fun and exciting to know that software I wrote was generating something everyone at the school would use.
In the ensuing almost-40 years, I’ve shipped a fair amount of software and gone through crunch mode again and again. I was one of the original creators of the best-selling Chessmaster software, and I distinctly recall delivering the master floppy disk (remember floppies?) for Chessmaster 2001 on Christmas Eve of 1988 (the first version, Chessmaster 2000 shipped in 1986). I also programmed the first version of Mavis Beacon Teaches Typing and worked an epic 140-hour week the year we shipped it. (I was living in a house with two other programmers—we ate and slept that project.)
In the game development business, there’s an adage: Christmas doesn’t move. Christmas represents the biggest game-buying time of year, and missing it could be the death knell for a small company. At least it seemed that way then. The counter-argument is that so many games are released just before Thanksgiving, it’s easy for the product of your blood, sweat and tears to get lost in the rush.
A friend of mine, who’s still in the game biz, asked the other day, “At some point, all the crunch hours are worth it, right?” This was my response:
Unless you have a piece of the action, probably not. And even then, it’s long odds. Those crunch hours have to significantly change the odds of success, and you must have a liquidity event to make it pay off. If you crunch and fail, it just lowered your effective hourly wage.
Of course, some people enjoy crunch hours (adrenaline high?), and more power to them if that’s their true choice. I think the big reasons we do those hours is that we’re part of a small team that, generally, we like and respect (and seek respect from), and we don’t want to let down the team. That can be played to the disadvantage of the team and its members.
I’m ambivalent about crunch mode. When a company is small and has only one or two (or none) products and few employees, it may be absolutely vital to crunch. On the other hand, a larger company has many fewer excuses (aside from unreasonable expectations or mismanagement) to expect it.
And realistically, people can’t sprint for extended periods of time. So, if the “crunch” has been going on for months, it’s time to start questioning why.
One can, of course, always refuse to play. I don’t know how easy it is for developers to find a new job or how many employers have the “crunch mode good” mentality. Fear keeps a lot of people in place.
(I jokingly added):
That’s why single nerds without lives make such good employees. The worst thing that can happen to employees is they get into a serious relationship/marriage and have kids….
If you work in a public or a venture-backed company, there’s always a strong emphasis on “making the numbers.” Shipping on-time and on-budget is how numbers get made. But having lived through this (The Software Toolworks, where I spent 10 years, was a public company at one point), here’s what I have to say on the matter: No one will remember if you shipped on time, but they will always remember if you shipped a bad product. (I usually replace “a bad product” with something more scatological.)
What matters to me is shipping great products. Not perfect products: People who want to ship perfect products never ship (another lesson). I’m willing to endure a certain amount of crunch mode to achieve that goal. But I’m also old enough to know when my professional sensibility and personal pride is being abused.
Tell me your crunch-mode stories at mduffy@northbaybiz.com.
Author
-
Michael E. Duffy is a 70-year-old senior software engineer for Electronic Arts. He lives in Sonoma County and has been writing about technology and business for NorthBay biz since 2001.
View all posts