Note: Originally posted in the early days of Habitat, I realize I neglected my own advice in the headier times of 2014 with a big full-time team, and failed to be an engineer, opting instead for being a “manager”. Finishing the game now, I am paying for that lapse. Indie game makers, take heed. -C
Holy crap, I’m still alive. Sorry, that’s just the first thing I always think when I wake up on New Year’s Day. The world didn’t end (every year since 2012 is another quiet little victory over that horrible Roland Emmerich movie), but I’ve got a problem. And it’s one that can only be solved by a decisive, all-encompassing, fundamental change in how I go about this business of building my game.
So, obviously, calling it a New Years Resolution is a really, really bad idea.
We all know how New Years Resolutions go, because Google Trends tells us so. That said, I need to make what I’m about to try and do in the form of a pledge to me, to you, and to everyone, because if I don’t make this stick –
MY. COMPANY. WILL. DIE.
Look, there’s no question that 2013 was a big year. Helped launch Xbox One, put together million-dollar developer events in Redmond and the UK, delivered the new, more beautiful Node.Hack and competed for the Indie Prize in San Francisco, wrote an article for Casual Connect magazine, gave a post-mortem about my first 1.5 years as a company, moved to Seattle, left an eight-year career, a house and a car behind, and put together a new team and an amazing office space to create this next new game, but ALL of that — ALL of that — will pale in comparison to what can happen in 2014…if I get my shit together and execute.
And after (hey, don’t pull it out unless you gonna use it)
What is this huge, sweeping change that is going to take every ounce of determination, of skill, of raw chutzpah I’ve got to be able stick the landing? It’s this:
STOP BEING A MANAGER. BE AN ENGINEER.
Yep. That’s it.
I know, right?
Listen, you all remember, I’m sure, that my previous career was as a program manager, which is a world so far-and-away-weird that I ended up writing blog posts about how to color-code your email, as if that was something that middle America was just dying to learn how to do better.
Working in a 90,000 person company is bizarre. And I’m still trying to shake it. It hurts even as it’s therapeutic, kind of like waggling your head to get a lobster to stop pinching your nose (hey, you don’t have to take my word for it).
But these habits are killing me, and they’re killing any chance I’ve got to get this game to where it needs to be.
The biggest difference — and problem — is how managers and engineers think about time.
The Thing About Managers
Tenacity is part of the game about changing culture; there are psychological anchors set deep in my braingoo. When I was doing my work at Microsoft, I noticed that I, like many managers, cut my day into tiny little wafer-thin slices. We liked it that way, even competed over it — the more we could context switch in a given day, the more “influential” we saw ourselves to be.
Managers tiny-slice their day.
Since our toolkit was mostly email, PowerPoint, and Excel sheets, that kind of slicing almost actually works. You spend an hour in a meeting, an hour following up over email, an hour on an Excel sheet to prove your point, a PowerPoint to encapsulate it for the senior leadership, then you’re back into a meeting and you do it all over again.
Is there something wrong with that?
No, not if you’re in a company that needs that level of oversight. What I’ve learned is that great managers do this whole dance for a very specific reason: to accelerate and protect their engineers. Because engineers tend to work differently.
The Thing About Engineers
I was trained as an engineer. It’s what I went to school for. Management happened as a lucky accident that involved my obsessive need for approval, a decent set of teeth, and a history of dealing with hairy parent-to-parent telegraph-style communication issues as the only child in a divorced family. That, and I happened to like Excel. Yes, that is weird; that’s an okay thing to say.
And when I take off the manager hat and look at what the engineers at Microsoft were doing during their day, I saw a huge difference; one I need to emulate now if I’m going to get this game on track.
Engineers do not tiny-slice their day.
Instead of running from meeting to meeting, engineers were happiest and got the most done (not unrelated, I’d think) when they had big, uninterrupted swaths of time to solve problems deeply and get them done. As a general rule, I saw about two problems per day, in chunks of 3–4 hours at a time.
Were there other distractions there? Sure, everybody FaceTweets and InstaCraps and there’s just no way you’re not going to play your fifteen minutes of Candy Crush, but that’s different than having to prepare for (let alone go to) an hour-long meeting that drags into two hours and that might as well be half the damn day because there’s email that backs up and there are follow-ups and Ernie wants to corner you after the meeting over by the mocha stand because he’s trying an end-run around the VP of Marketing and really, really needs you to back him up on this one, okay chief?
So, Why is This a Problem?
I’ve got 11 weeks to deliver a playable build for Game Developers Conference 2014. I’ve spent the last two months planning and designing and coming up with budgets and schmoozing potential investors and strategizing this thing and that thing and there’s almost no damn work left to do there that’s going to make any difference in the long run.
I’ve managered as hard as I can manager, using just the weapons my brain came up with first, like trying to beat up a tank with my tiny little manager fists. Oh, I’ve done some coding, and there’s some art moving around the screen and some interaction but it’s being — you guessed it — tiny-sliced to death.
Why don’t I show you the problem graphically:
The Goal: More Right, Less Left
The Seven Commandments (or “There’s No Such Thing as Manageneering”)
The mega-pledge is to stop managing the production of my game (as if I’m actually some damn two-hundred person shop) and actually code the freaking thing, with no self- or outside-imposed interruptions. I’ve got great people around me who are willing to help me get this done if I just stick to some basic principles and work hard each day.
And so, we come to the meat of it. The rules I need to follow every day for the next 11 weeks to show real progress. I mean real progress to getting this freaking thing done. I’m committing to making these happen, even if it means other stuff won’t get done.
1. Solve Just Two Problems Per Day Pick two things to work on each day, and give them 3 hours a piece. Three non-stop, no-bullshit, no-interruption hours. That means they need to be big enough to matter but small enough to get done in that time. They can be related, but you don’t get a cookie or anything for that. What matters is getting each thing done and checked in.
2. Shut Up Do not let anything get in the way of those engineering hours. Every distraction, even five minutes, is a lost hour. Blog at night, Facebook at night, emails at night. Nobody wants to watch you code so don’t even tweet during the day. Schedule calls for morning or evening, period. Establish a Zero Communication Zone and protect it with your life.
3. NO XCOM Thank you, Firaxis, for delivering 2012 and 2013’s Game of the Year! Now please leave me alone.
4. Stop “Designing” Things The game is as designed as it’s going to get right now. And forget about architecture. You have an architecture. It’s called Unity. What you’re going to do is (optionally) draw what you want to have happen — as in draw a picture, write it down in pseudocode, and then code it. Full stop.
5. Employees: Give them Three Numbers and Then Walk Away Face it, there are people that work with you. But they’re smart, give them big problems to fix so you can focus on your engineering. They just need three numbers: a budget, a deadline, and a target. Ex: “I’m giving you $5,000 to use to launch a website and trailer video by February 21st that needs to get 500k views. Now leave me alone, I’m coding.”
6. No Meetings Thirty minute skype calls max, and only two per day. If you have to get everyone together, do it on a weekend day and buy everyone booze so at least we all have fun and because then you realize they’re too expensive and YOU STOP HAVING THEM.
7. Don’t Ever Forego Rest Work hard, then go home and shut off. Shut right the hell off, because that’s the only way you can go back and do it again. Eight hours of sleep minimum. And working out at the gym doesn’t equal rest: cortisol is cortisol. It’s the same reason you don’t have a TV in the bedroom.
There you have it. My path to success, riches, the ability to pull off interviews like Macho Man used to do (RIP), that ridiculous Shipman 80 yacht I keep going all Miami Vice over, and all that other stuff that’s statistically impossible, it’s all compressed up in those seven commandments.
It needs to be simple, because the leap from Mister Manager to Mister Engineer has to stick. It can’t be halfway. Come on, who wants to be a Manageneer? Even the word itself screams “unacceptable compromise”.
And compromise of my time is one thing I can’t afford anymore. No more distractions. No more slicing. And no more XCOM.
You know, starting tomorrow.
Happy New Year, everyone. Hoping your 2014 dreams come true as all hell.