Sunday, September 9, 2012

Properly Setting Up a Meeting - A guide for production interns



Properly Setting Up a Meeting - A guide for production interns

Setting up and running a meeting can be a daunting task for a new production intern, since it can involve difficult tasks like clicking a button in Outlook, and actually talking to coworkers.  As such, I thought I'd put together this handy guide on key steps to ensure a proper and productive meeting for all!  While specific NetherRealm "call-outs" are made, this handy guide should be useful to all aspiring production interns out there.

  • NEVER actually book a meeting room.  This is a sucker bet.  Given the importance of producers maintaining a near-primal fight for dominance, the appropriate thing to do is to just grab a meeting room five minutes before the top of the hour, and then "stand your ground" when it turns out that the room is booked for a key budget meeting with visiting corporate Vice presidents. In fact, whenever a door opens so much as a crack during a meeting, just start berating the person on the other side with "swears" and personal insults.  In all probability, the person on the other side of the door will respect your position, and politely thank you for informing them of their weight issues before slinking off to find another room.  Again, simple steps like these can really propel you forward in the corporate world.
  • Don't take notes.  No matter what anyone says, notes and "next steps" are completely useless, and in fact, not taking notes can represent a potentially massive cost-savings!  Think about the following: Let's say you are at a meeting where the team decides on 15 tasks they want to do to get the game running better, and each of those tasks takes one man-month to do.  If you take notes and properly track these tasks, there is at least a slight chance that some of these things will get done.  If no one can remember what the tasks are, however, because there are no notes, NONE of these tasks will be worked on.  Congratulations, production intern, you've just saved 15 man months of work!!!  That is certainly a substantial money savings, no?
  • Never forget, YOU are running the meeting, so YOU get the most say.  Let's say there is an art review meeting for a character model, and you invite the art director, character lead, creative director, and character artists to the meeting.  They are rambling on and on about some boring details about how to make the model look better, but you are of the opinion that the character should be wearing a top hat.  CHIME IN.  This is YOUR meeting after all, and regardless of who is in the meeting, they are really just passing time until you jump-in and start espousing your opinions on the subject.  A producers job isn't to facilitate communication, it is to secretly impose your will to design the game in the way that you feel is right.  Remember this!
  • Also, and this is really important, make sure you comment on EVERYTHING, regardless of whether or not you actually have anything valuable to add, just to remind people of how important you are.  Every minute or two, just cut off whomever is speaking to say _something_.  It'll usually be inane and irrelevant, but they will appreciate your input nonetheless, and compliment you for it.
  • Timing is everything!  There are times when you should schedule meetings, and times when it is totally inappropriate.  The best time for meetings, typically, is 12:00 Noon on the dot, but only for meetings of 30 minutes or longer.  For shorter meetings, it is usually recommended to schedule them at either the exact start time for the day (say 10am) or the last possible minute in the day (say 7pm).  That said, don't forget that people do love meetings, so feel free to schedule them very early in the morning, late at night, or even on weekends.  
  • No matter what the meeting is, add Ed Boon and Steve Beran to the invite list .  Let's say there is a meeting to talk about whether or not a specific C++ function should use "const", go ahead and add them.  The nice thing about people like Ed and Steve is that they don't have a million people trying to use their time, so they will very much appreciate it when they get to your meeting and find out that you were merely being kind enough to want to keep them entertained.  This will go a long way to ensuring a prosperous and fruitful career at NetherRealm.
  • Don't bother checking people's availability.  For some reason, Microsoft included a way to see whether or not people have existing meetings for when you try and schedule meetings.  Clearly, this is just to bloat the UI, since no one in their right mind will ever use this.  Go ahead and schedule a meeting at whatever time is convenient for you, since your meeting will be the most important.  The leader of the other meeting will figure out that you scheduled a meeting when no one shows up to his silly "Critical, Urgent Or Game Doesn't Ship Meeting", and instead attends "Why I think we should cut Superman in favor of Detective Chimp in a Cape."
  • Meetings are about fun!  The conversation should meander whenever possible.  Who knows where the conversation might lead, but the one thing we know is  that, wherever it goes, it'll be more interesting than whatever lame "work oriented" discussion you set up the meeting about.  If people seem to be veering off-track, here's some go-to topics you can interject with:
    • iPhone rumors.  Guaranteed to kill any conversation.  If need be, go ahead and make up "something your Uncle at Apple told you" to peak peoples interest.
    • Juicy Personnel Gossip.  It is always appropriate, and interesting, for a producer to share deeply personal stories that you are told in confidence.  Go ahead and save these up so you can use them to get a meeting back off-course!
  • Finally, Meeting success is based upon length!  For a meeting to be successful, it must consume, at a minimum, 2X the time originally scheduled.  Some, lesser, producers will "pad their numbers" by scheduling a meeting to be much shorter than need be.  Don't fall into this trap!  Using the topics above, you can easily pad a meeting by 2X the time scheduled (again, the baseline) without the personal shame of having a meeting end on-time.  The target for a successful meeting increases by producer title, as well.  An intern only needs 2x the scheduled length, while once one reaches Executive Producer, the length of a meeting must be a full 8x over schedule to be considered successful.  A good career goal is to eventually waste an entire day of all leads in the company with a 15 minute meeting!
Hopefully, these tips will help you succeed as an intern at NetherRealm, or wherever your exciting career in the glamorous world of production takes you (Taco Bell)!

Sunday, June 17, 2012

The production translation lexicon

It turns out I had a blog post sitting in my saved folder for over a year - so rather than having to come up with new content, I'll post whatever drivel I was planning at the time!  Begin:

Hello loyal readers (interns I pay to read my blog - and Mom)!

As we were closing out the last minute polish items for E3, it occurred to me that a lot of the members of the team might not be aware of the translation of certain key phrases producers tend to use.  Other producers -or at least producers who attend the mandated, and grueling, industry-wide yearly production month training in Cancun - are taught these techniques during a rigorous break-out session called "Manipulation and Margaritas: Techniques to break your team's spirit - also Margaritas."  With the myriad of JabroniReport knock-off blogs now nipping at my heals, I figured that leaking our secret language would be a great way to get some cheap page views.  With that said, here's some translations for phrases you will often hear your producer say:

  • Producer Speak - "No pressure.  I just wanted to see where you were at with this task.  I don't care when it gets done.  I trust you'll get it to me when it is ready."  Translation: "Seriously, dude, you've got like 20 minutes to finish, or we probably will have to cancel the game.  I have one hundred and one puppies in my office, and for every minute you are late, I'm going to bring one to your desk and murder it."
  • Producer Speak - "You are doing great!"  Translation: "See that intern behind you.  I'm literally measuring your desk every time you step away to make sure he will be comfortable at it."
  • Producer Speak - "I'll take care of it." Translation: "There's probably a 75% chance that the universe will magically make whatever you need happen, and if not, I plan on blaming the fact that it didn't get done on an intern anyway."
  • Producer Speak - "I like this diet Dr. Pepper a lot." Translation: "I like the four shots of rum in this diet Dr. Pepper a lot."
  • Producer Speak - "That is an awesome idea!  Let me check with marketing."  Translation - "That was literally the worst idea I've ever heard, but I want to gather some friends around so we can all make fun of it together."
  • Producer Speak - "How about breaking the job up so it'll fit to run on the SPUs?"  Translation - "I spent two weeks memorizing one single phrase so it kind of looks like I know programming, but I actually utter these words anytime I speak to a programmer on any topic.  That said, I seem to have a 92% success rate at solving technical issues because of this."
  • Producer Speak - "Look, I know it seems like a menial task, but localization really is important."  translation - "Given that you just cleaned my car, I literally can't think of anything else I can possibly ask you to do that is important, so just do this, ok?"
  • Producer Speak - "According to the schedule, we won't need this done for two weeks." Translation - "Look, let's stop playing games - We both know I never made a schedule, so if you just keep your mouth shut about that, I'll assign your task to someone else and we'll go our separate ways."
  • Producer speak - "That's awesome - it reminds me of one of the key features that made World of Warcraft so successful."  Translation -"I'm going to kill whatever feature you just showed me because you kept me from logging in and doing my WOW dailies."
  • Producer speak - "We're switching to scrum." Translation - "I just read a book on scrum, and even though everything is going smoothly with our current project methadology, I refuse to have read such a boring book and have it go to waste...so much so that I'm willing to sink this whole thing just so I didn't waste my time."
  • Producer speak - "I'm in a good mood today!"  Translation - "Every day of my life reminds me of how much I hate every single one of you.  Today, at least, is one step closer to my death, and thus one step closer to a reprieve from having to speak to any of you."
  • Producer speak - "Definitely a lesson learned.  Make sure you put that on the post-mortem!"  Translation - "I've forgotten what we are talking about already, so I'm hopeful that by the time we do a post-mortem, you too will have forgotten."


Monday, April 25, 2011

Browsing the CIA website after watching "Alias"

Tip. Don't watch the first four seasons of Alias and then browse the CIA website (https://www.cia.gov).

You will quickly discover several things, categorized as follows:

A) They use HTTPS. This, in retrospect, seems obvious...but just to check, NASA does not. Nation secure.

B) Out of the dozens of jobs the CIA has, the "cool ones" are filed under Clandestine services, including such titles as Paramilitary Operations Officer/Specialized Skills Officer. You, like I, are not qualified for these positions. You, like I, are more likely to find employment as a Truck Driver or Sign Language Interpreter (really?).

C) Again, it makes sense in retrospect, but it looks like the CIA is the last place on earth that still employs "Cartographer." Seriously, for all of you who went to school hoping to draw maps of areas of the earth that satellites haven't seen for some reason, here's your chance. Mom is proud.

D) Blogging about one's browsing experience on the CIA's website, while initially funny, will most likely seem less so tomorrow morning when I am blacklisted.

E) The kids section is AWESOME. It was also the single most terrifying browsing experience of my life, since in my mind the CIA is obviously using this as a recruitment tool. Somewhere in Virginia, a lonely IT guy and a recruiter are staring at the empty traffic of the kids section looking for their first visitor...watching the answers closely.

https://www.cia.gov/kids-page/games/index.html

Seriously...how awesome is this? "Break the code." "Aerial Analysis." "Photo Analysis Challenge." All of these clearly designed to find me. Unfortunately, I clearly failed the "coloring book"...aka the psych evaluation...even though I chose red, white and blue for the helicopter, my usage of brown on the ground was clearly the wrong choice. It should have been green grass.

The end.

Friday, September 24, 2010

On being a game developer with an internet connection...

Another one of those "serious" Jabroni Reports that is inevitably too long for anyone to read...

Warning: It is after midnight and I don't feel like proofreading.

Reading internet forums is, as most of us know, a special form of torture that should be reserved for those with a preexisting, one-way ticket to the netherworld. That isn't to say that the fans as a whole aren't awesome, or that there aren't interesting topics or well formed posts. I don't mean to be ungrateful, I really don't. I appreciate that, good or bad, people care about our industry's products so much that they spend their time discussing it with others. It is simply that the anonymous nature of the internet guarantees that a certain percentage of the populous is going to be...challenging.

For some reason all of us, even though we know that we will fixate on the inevitable negative posts, eventually seem to find ourselves reading the forums for our respective games. Kevin Smith has written far more extensively (and with much less fear) on the nature of the internet, so I'm going to focus this on some of the special hells we get to deal with in the world of video games.

1. The good-intended fans who don't have to deal with the realities of game development.

It is tough to understand what goes into making a video game until you've done it. There are business, technical, artistic, legal, and creative limitations to every decision we make. Even though some ideas sound awesome, it can be incredibly frustrating to read entire threads devoted to demanding features or changes that are simply impossible. Some generic examples:

"Why don't these lasy developers simply hire a dozen animators and do (insert feature here)? They have millions of dollars!"

A few notes, if I may:
  • First of all, you can expect that whatever feature you want can't be done by a single discipline in the modern era, even if it _seems_ like it would be the case. Concept artists need to draw the first vision (which will require iterations), artists then make content (which will require iterations), designers need to create the gameplay (which will require iterations), programmers need to code the logic (which will have bugs that need to be fixed), and QA needs to test everything. This doesn't even include the overhead of producers getting in the way with the pesky "budget" and "schedule" or leads ensuring the feature is polished. NOTHING is as simple as it seems.
  • Second of all, talent is very, very hard to find. It is also very, very expensive. No matter how nice it would be, it is simply unfeasible to grab a large number of people out of school and expect them to hit your quality bar. It takes MONTHS to train even the most experienced people on the very specific tools that each team has and get them accustomed to the way each team works. Finding the _right_ person for a team is also an art that often takes months of hard work. Even if you could find the people, you'd be amazed at how fast games can eat through their budget.
  • Finally, you should read the seminal classic "Mythical Man Month." The fact is, and this is pre-101 producer stuff, adding 2 people to a six month task does not make it a three month task anymore than putting nine women on a pregnancy makes a baby pop out in a month.
"Game X is so lame...they only have like a dozen characters on the screen...they should have 50 and make epic battles! And the battles should all be procedurally generated so they are unique every time. And they should support 16 player co-op, with fully recorded fights you can play back on your iPhone. They should also make it so every object in the world can be broken in a totally unique way. Also, 30fps is so choppy, it should run at 120fps at 1080p."

So, this example might be a slight exaggeration, but you get the point, and to be honest, it isn't _that_ far off from some of the comments I read. Even with the most talented tech team in the industry (and I'm proud to work with them), the fact of the matter is that the hardware can only do so much. There are a lot of technical considerations that most people never even realize that every game team has to live with. I could go off for HOURS on the difficulties, but let's focus on the easiest one, shall we?

  • For all the arguments on the internet about how we have BluRay now and we have all the gigabytes of storage in the world for art assets, everyone seems to forget the simple fact that memory on consoles is limited. Very limited. All the fancy HD textures, meshes, high quality audio, and game code you see on your screen (and beyond) need to fit into 512K of memory (I'm simplifying the problem here.) That doesn't even account for the overhead of the operating system and game engine which steals our precious space. It doesn't do us a LICK of good to have all those gigs of space on a BluRay disk if, when we need to show you the cool stuff on screen, it doesn't fit in 512 megs. Sure, we are constantly moving things in and out of memory, but that takes time (quite a bit of time), and if it isn't there when you need it, your game will suddenly run at 0FPS instead of 30 or 60 while it gets there. When you understand how large HD assets are and how complicated game code is, you'll realize the miracle of what you see on the screen.

2. The incorrect fans we simply can't correct.

This one is extremely frustrating. I've seen thread after thread of people TEARING into games for things (in development) that are simply incorrect. I'll "genericize" one example I saw to make a point:

"OMG that move is WAY too easy to pull of and never runs out of power!!! THIS WILL RUIN THE GAME. They need to change this or I will not buy it. How can they be so dumb."

Of course, as is often the case, maybe the meter is just full so we can easily demonstrate it? Or maybe the button combo is super-easy so our poor production team can actually pull off the move while doing an interview with a microphone stuck in their face?

What makes this torture, of course, is that maybe the WAY the meter gets full or the ACTUAL button commands to make a move work are still secret and we can't talk about it? Which leads to 3...

3. FOR THE MOST PART WE CAN'T TALK ABOUT THE GAME, AND WHEN WE CAN, WE ARE ONLY ALLOWED TO TALK ABOUT SPECIFIC THINGS!

You can't fathom how excited developers tend to be about the games they are working on. And you similarly can't imagine what it is like not being able to share that enthusiasm with the public. Can you imagine working for years on a project and not being able to say anything? How about creating a piece of art that is the single greatest thing you have ever done and not being able to show your friends? It is, in a word, nightmarish. You, dear internet forum member, may post a totally reasonable question on the internet, and a million fans might be confused as to why the development team can't take a simple second to answer it. The reason? Because if we DO answer the question, no matter how "simple" it might seem, PR will sneak into our homes at night and kill us and our families in our sleep. And if that happens, the game never gets finished. You don't want that, do you?

4. The mean-spirited interview nit picking.

A shout-out to one of my fellow producers, who posted what I consider to be one of the best interviews I have ever seen. I was, frankly, jealous of his performance. And yet, one of the comments was "I would never let someone like that represent my product." I know the internet is anonymous, and I know we will never fix "mean people", but next time someone asks me why I don't often frequent forums, I will cite this example. In summation, dear internet, please be nice to each other.

Tuesday, August 31, 2010

The Tech Team Party Proposal List

We have these awesome new walls at our building covered in "whiteboard paint", which creates a giant wall-sized writing surface. I'm sure that someday these will be used for algorithms or whatnot, but as we break them in we are primarily using ours to make funny lists on the board.

As such, we (well, mostly me) have decided to enter in a "party war" with the lost-souls wandering aimlessly at a Chicago game-tech outsourcing company. As such, I present the following (cleaned for public consumption) party suggestions:

* The start-up in question has a "Fire and Ice party." We proudly invite you to our "Earth, Wind and Fire Party." That is right, dear readers, we have an entire extra element!
* Strip linear algebra.
* "Drunken Knights Party." 20 adult programmers, enough mead to drown a horse, and an evening at Medieval times!
* "Drunken Redneck Party." Paintball and Coors Light!
* Anything where we roast a pig. Or an intern.
* Revenge of the Nerds Party and Talent Show. Jon will provide the Kaossilator Pro!
* Boston Tea Party. Sam Adams and Freedom!
* Come as your favorite racial stereotype Halloween party.
* MK vs SF3 sales and bonuses comparison party!
* Cinema bug fixing party sponsored by Jack Daniels.
* Pre-Party the intervention we are having for one of our employees who is getting married.
* Jon comes to the Jabroni Report's house and calibrates his HDTV party. No refreshments will be provided.
* Let's Mocap our junk party!
* Deliverence re-enactment and pot luck.

We are currently working out how to merge all of these parties, as well as many more suggestions, into a single, week-long festival of fun.

Monday, August 30, 2010

Let's target our hate correctly, shall we...

"UNICO National, the group representing Italian-Americans upset over the portrayal of Italian gangsters in the recently released Mafia II, have scored a win in their battle against 2K Games' mobster adventure."

- Kotaku

As a proud Italian American, I feel it is my job to help set my friends at UNICO straight. Mob movies, and now games, help present the following stereotype of our peoples:

1. We are attractive. We all look like a young Pacino in the Godfather or a young DeNiro in the Godfather II. This is true.

2. We eat delicious food, and lots of it. Even under the most trying of times. I learned from Goodfellas that when I eventually end up in prison for "telling it like it is", I will be joined by my fellow Italians in a delightful private cell with a fully-stocked pantry filled with the freshest ingredients. How is this bad?

3. We are powerful people not to be trifled with. God forbid we keep this stereotype going and instead focus on, I don't know, our stellar military accomplishments since the Roman Empire?

4. We dress well. We wear excellent suits...and we wear them from the "office" to the "clubs." That's right, even when burying the body of some snitch, an act most cultures would do in jeans and a t-shirt, we still wear suits. That is how important looking good is to us.


5. We are so confident in our sexuality that we wear pinky rings. That is right, we make the single most effeminate piece of jewelery possible look downright masculine.


So, in these trying times, is it the WORST thing for our peoples to be stereotyped as Mobsters? Maybe it is time that we band together and focus on the true enemy of the Italian people. The group so likely to ruin our reputation forever that, despite the fact that they don't share our heritage, they have become the poster-children for our country.

That's right, UNICO, despite the fact that I have never paid my dues, nor have you asked, I feel we should spend our money wisely...by distancing our collective heritage as far from the cast of Jersey Shore as possible.

Thank you.

Tuesday, August 24, 2010

The Unsung Heroes...

Today I saw our developer support team install a giant television in our hallway. In a company where you literally have to go to the bathroom to escape a television monitor, this is hardly noteworthy. What is noteworthy is that this TV is connected to some magical folder somewhere in the building where people can drop video clips that will automatically be added to the "loop" that this television displays. The entire tech team is now focused on hacking into this folder to replace the current game clips with more appropriate "wang" clips...but I digress.

Ask yourself, when did IT at your company throw something like this together in their spare time for the pleasure of the company? My experience with IT at other companies has traditionally been a group of people who may or may not fix your outlook inbox after you "accidentally" get it filled with spam for various pills and mail-order partners. I mean this with all sincerity, our game would NOT ship at the quality we have without our awesome IT staff. In fact, we found calling them that to be so inadequate for their duties that we refer to them, justly so, as "developer support."

On top of the lightning fast response time (we are talking minutes) to any issue we may have, I'd like to present a list of the things these guys and girls do that makes a producer's life infinitely easier.

* Today we had a 10 minute meeting to discuss our options for storing priceless game data that we have never dealt with before. 10 minutes...and it is solved. I didn't have to call people, get quotes, follow up...nothing. It is solved. I've had multi-day meetings with people on my own team where we literally can't decide where to go to lunch, let alone build a server infrastructure for huge volumes of data.
* Prior to this game, bug tracking was done in excel and on a twiki. Think of that for a second. Is your mind as blown as mine? Within a week of asking, we literally had a fully working and configured issue system that was personalized for our workflow. Every time we want a new feature or upgrade, it just magically happens. Thanks to this team, we now have an automated way to ignore feature requests from artists...we no longer have to manually delete them from a document.
* We have dozens upon dozens of custom buildbots that check everything from build stability to performance and memory. We have custom scripts for perforce check-ins and reviews. We have websites with charts and graphs for all this stuff. The tech team adds fancy new tools every damn week...and somehow it magically appears the very same day on a server that never dies. God knows we try to make these things explode...can't do it.
* Configuring devkits and updating SDKs is hardly a task for standard IT. Our guys can do it blindfolded. Note: Tomorrow I'm going to make them try this.
* Want a 100% secure remote Perforce depot to China the same day you ask? Our guys have done it. How about running an automated installation and upgrade system for a local "art tool" via the web to some friends in Canada? Done. Are you SO concerned about security that you need a system that uses a one time use key to encrypt data? We've been.

Frankly, this is the "easy stuff." You can't imagine the strange and obscure needs a team full of tech-savvy game developers has. When it is "crunch time" and someone needs a local proxy to some other team's depot, every second can count. Frankly, even though they are on call 24 hours a day, we've never once had to abuse this, since the team always seems to be here when we are...and we work some pretty crazy hours.

Despite all of this, they still find time for our "fun" requests to keep morale high like the "Wang TV." The tech team wants to make a podcast. Not content with poor quality audio, and wanting to make us look good, Developer Support is using spare parts, dusty licenses, and duct tape to put together a pro-tools enabled Mac just for us.

In summation: Lupe, Ryan, Steve, Calvin, C-Bass, Jen...Thank you!

Also, Happy Birthday Mom!