Showing posts with label game industry. Show all posts
Showing posts with label game industry. Show all posts

2018/01/01

2017 not in review

If you were looking for the next installment of my award winning series, well, you're going to be disappointed. There are two reasons for this, one bad and one worse which I'm about to rant about. Suffice to say that my 2017 wasn't as awesome as I'd have liked.

I started the year intentionally unemployed. This has its ups and downs. Fast forward to a mercifully short interview cycle and I left my state-subsidized health insurance and retook my place amongst the gainfully employed. This also has had its ups and downs, though mostly up, save for working a millionty-billion overtime hours. For those wondering, this also contributes to this last year's miserable post count.

I make it a point to not talk about where I work, partly because of NDAs/confidentiality and because it's not usually pertinent to what I'm writing. I've been making games professionally for a long time and have a lot to say about their construction. I've also been playing games for a much longer time and have a lot to say about their consumption.

Many bemoan the state of the gaming press on a regular basis as if that'll fix it. For my part, I'd much rather give examples of what I'd like to see than just wax ineloquent about how bad it might be. So when you look at one of my big write ups, that's what it is: me organizing my thoughts about a thing I spent a lot of time as an expert witness with experience on both sides. I hope it is abundantly obvious that all things said here are my opinion, nothing more and nothing less. In fact, I often note this just in case it isn't clear. On my personal blog. Like a lot of people do.

My new employer has a very specific policy regarding social media of which these un-hallowed grounds are an example. "Thou shalt not, under any circumstances, speak/write/blether about anything within the scope of our business about which our competitors might soever doeth such that we, the employer, might be liable to some greater government function such as the FTC or whatever department draweth the short stick of concern, so sayeth Ye Olde Employment Agreement™, amen." Or something like that.

If you asked, I'd probably agree that thiny-veiled advertisements and corporately sponsored smear campaigns against competitors are pretty awful (curated streaming being a sketchy area). That said, I don't think that anyone with enough brain cells to rub together would have any difficulty determining that the crap written here isn't that. And if that's not the case, then I'm pretty sure humanity is Double-Dog Doomed™.

This is a stupid policy (that's an opinion), one argued from a position of fear and insecurity. In layman-ese, it means I can't talk about games here, which is dumb (also opinion). Games are probably the only thing I'm qualified to talk about with any authority and I have a lot to say about the stuff I played this year (Skyrim, my first Bethesda game, Fallout 3, and Fallout New Vegas) but about which I've put only these words to page. That's why this post is a rant instead of what I'd rather be writing.

I will probably still write up my thoughts though they'll molder with the other dozen-ish pieces I'm still putting together--editing is a bitch, yo. Some day the policy will change because it's stupid (more opinion) or because I've moved on, in no small part because of this ridiculousness (that one's fact).

So for the poor chumps from legal or HR or whomever it is who draws the short stick to police this crap (and yes, I know you do), tell your superiors that it's dumb to give people more reasons to leave your employ--I have enough of them already.

Oh, and in case it wasn't obvious:  all the writings herein are the opinions of the author only.

2019 edit:  I don't work there anymore, so a year and change out, here ya go.

2010/11/06

And Now, a Rant From Our Sponsors

I'd say that few things get me into a ranting mood but that'd be a bald-faced lie.  Instead, I'll pick one thing that sent me into a frothy rage last week and go from there.

If you aren't familiar with The Escapist, it's generally a pretty good gaming-oriented site with a bunch of usually-reasonably-well-thought-out articles and home to the terribly amusing Yahtzee of Zero Punctuation fame.  (In fact, I wouldn't be surprised if half their traffic is directly attributable to ZP.)  So last week while waiting for a (terribly long) compile I pop over there to see what's what, and I find this:  Open Letter to People Who Make Games as penned by Russ Pitts.  It's not a long read, but if you, like me, have ever spent time in the Biz, you'll get good and frothy too.  Feel free to read it if you like (I'll wait), but I'll sum it up:  the game industry is doomed because game people suck.  One particular quote really sent me off the deep end:
 I know that some of you take this seriously enough to devote your working hours making these games right, making patches and fixes that will resolve your players' issues. I know that some of you work overtime on this. I know you lose money. I know it sucks for you. And yet, I don't care. 
This is indicative of the kind of entitlement that the general public has that is particularly maddening.  If you've heard about the jackasses who did a DOS attack on Minecraft because they weren't happy with Notch's speed of updates then you know exactly what I'm talking about.  I could probably link a bunch of other similar things but I won't bore you with that.  Instead, I'll bore you with a bunch of my observations across five companies and more than a decade of professional game development.

Let's start here:  No one in the Biz wants to ship a shitty game.  I don't care about your hypotheticals about evil execs and pernicious designers, none of the untold hundreds of people I've worked with personally have ever set out to build a game that sucks all ass, ever.  It's just not part of the culture which is why I have no issue making such a blanket statement.  Most games are released before they're ready which is part of what Russ's rant is about but that's largely decided by execs and money guys; you know, the stuffed suits that make the real money.

Why is that?  Well, because it's a business.  That business would be making as much money for investors as possible and that means shipping the most things with the most appeal at the most opportune times.  Hardcore gamers just looooove to whine about how everything is getting dumbed down.  This isn't a coincidence.  The economics of the thing is that if you need a budget of $30M (small to middling these days; giant when I started in the Biz) you have to sell about a bajillion copies to break even.  Sorry.  That's just the way it is if you want your spiffy art at a decent framerate.   So the industry as a whole tries to open up any given game to the widest audience possible even if it means knocking off all the gnarly corners that us old-timers really loved.  Usually this is stuff like "approachability" and "accessibility" and probably a bunch of other "ibilities" that escape me at the moment.

The "opportune times" bit also comes with baggage.  Everyone who's ever worked on software knows that software projects pretty much always run long; sometimes way long if they even ship at all.  This is super bad when you start talking about fixed schedules like we almost always have, i.e., we mostly ship around the holidays.  How fixed these schedules may actually be tends to never be as fixed as management would make them seem to be which is part of why at most companies people crunch like fucking corn flakes most of the year.  The best part?  A lot of the time your reward for being a hero is getting laid off at the end of the project!

Software people outside the Biz understand a lot of this.  No plan is ever as complete as the Suits would like and no plan ever survives first contact with the enemy schedule.  In the greater software world this is generally understood which is why stuff like Agile is such a big deal.  If you can't adjust the ship date, then you'd better be able to adjust one or both of { budget | feature set } otherwise, well, in the immortal words of one Adam Savage:  "Failure is always an option".

In the Biz, teams which can actually affect quality directly almost never have control over any corner.  Our ship date is fixed and most times pushed inward due to certification checks and manufacturing, our feature set is largely fixed because it's part of what the Suits want to market (not that they wouldn't change their minds midway through a project and mandate said changes without adjusting schedules or budgets or anything), and as a kicker, the same Suits who fix the ship date also fix the budget.  Each of these things from a business point of view is sensical but it means that there's never enough of anything on a given project and you're usually short two if not all of the three.

Software is a pretty young art (almost certainly not a science despite what my two fancy, expensive pieces of paper say) and the greater industry is still wrestling with its care and nurture.  The Games Biz is even younger and seems to be so heads-down that we can't even effectively learn from the larger body of experience that the software biz has.   Why is this?  Our management tends to be inexperienced.  I've had maybe two or three managers that didn't outright suck over a couple dozen of them and I don't think I've ever met a reasonable exec.  Real Managers (TM) don't often show up in game dev because pay is so comparatively low and hours are so comparatively crappy.  Managers, unlike artists, designers, or programmers, don't grow up wanting to make games--at least, I haven't met any good ones that have at this point in time.

And wouldn't that be just like a disgruntled worker-cog to pin the blame solely on management?  Probably, but our worker-cogs tend to be inexperienced too.  We turn over something like 20% of our workforce every year.  Other than college sports rosters, I don't know of any group that does that and remains competitive.  (Maybe we're only competitive because most of our peers are doing it too.)  Most people burn out after a few years.  It turns out that crappy working environments + long hours + looming layoffs + lower than average pay is way greater than the idealism that drives most people to get into the Biz in the first place.  But, as it turns out, this is kind of what drives a lot of studios because for every one of us that falls there are ten bright eyed kids that would do the job for free.  Never mind the fact that only a few of these kids will statistically stick around for more than a few years or that exceptionally few of them are actually qualified to do what you need them to do.  I've been on more than a few teams that bulked up during the painful phases of a project with a bunch of junior people who made the entire thing generally much harder.  It's almost as if we should know better by now.  This is part of why studios go through the hire/fire/re-hire cycles and part of why salaries are so comparatively low.

So, OK, Mr. Pitts:
When I play a game that you have made, and which is broken, I ask myself the question: Which is it with you? Did you not know that your game had problems, or did you know and decide to ship it anyway? I hope you can understand that either way we have a problem. Actually, the problem is mostly yours. 
I'm really not sure who he thinks his audience is.  I sure as hell don't decide when the thing goes out.  I don't think I've shipped a title that I didn't wish I had more time to fix.  Maybe Suits read this stuff.  Either way, most games don't ship in as broken a state as he seems to imply.  All software has bugs.  I dislike buggy games as much as the next guy (actually, probably way more than the next guy) but to reiterate:  no one wants to ship a shitty game.  Want to send a real message, one that will be way more meaningful than a snarky plea?  Stop buying games you think are broken.  Bonus points if you don't give a broken game a buy recommendation.  Tell the Suits that this just isn't good enough and maybe they'll start getting us worker-cogs enough resources to build better games.  Seems pretty simple, right?
You will be the one who has made a game that is so bad I can't actually play it. You will have failed at your only job, tomake a game. Worse, you will have contributed to the depression of your industry. You may be putting yourself and people you know out of a job. 
News flash for you, buddy:  I'm probably out of a job either way.  Ship a million copies or miss a ship date, it doesn't really matter.  The economics just plain don't scale and most companies just plain don't care about the people they employ either way.  The typical work agreement is that they can fire me at any time without cause!  That's right, kids, you're just a cog and they don't even need a reason to kick your ass out the door.  That's just part of the cost of following The Dream.  Apparently another part of it is suffering fools who really ought to know better.

2008/05/09

MIND THE GAP!

Ever been on one of those projects where someone (usually the leadership) thinks it's going way better than it actually is? If you've spent a reasonable amount of time in software, you probably have. Here, then, is my sole addition to the software engineering lexicon. Feel free to use this whenever appropriate.

    The distance between the actual doneness of a project and the perception of doneness is hereby defined as the Reality Gap.


So, assuming you had some magical way to determine precisely how far along on a project (or task, or whatever) you are, the distance between there and where you think you are is the Reality Gap. If the Reality Gap is large, then, well, your team may be tremendously optimistic or, sadly, in denial. Welcome to deathmarch.

I mention this for no reason whatsoever. None.

2007/01/02

GWA2006 Release

I ended up not finishing the postmortem until very late and wanted to read it over when not falling asleep. Here are two links that you can use to download the game and/or the docs courtesy of filefront:

Download gwa_v100.zip from FileFront!
Download gwa_docs.zip from FileFront!

The first is just version 1.00 of the game (about 1MB). The second contains the original design doc, the annotated design doc, and the postmortem in MS Word .doc files.

Excerpts from the postmortem, "Lessons Learned":
- Reliable and expedient tools are a MUST.
- Keeping the deadline in mind when evaluating new systems is crucial.
- Being able to throw features out or rework them is key.
- Reinventing the wheel is a lost cause.

January will be off of doing a game; I need some time to finish up some housework and to fix some of the issues of my engine. I expect to try again in February.

2006/11/14

I *HATE* the Fine Print

I don't care about street cred. I don't care about particularly making any money off of anything I publish myself from now until I'm no longer gainfully employed. What I do care about is learning about my craft. In particular, I want to know what it takes to bring a personal project to market as a product and I'm certainly not going to learn that at my day job. There is a tremendous amount of effort involved there. Beyond my college comic book misadventures, I haven't ever seen that. I'd bet that most people haven't and that's a damned shame. I think that if more people had experienced shipping a product--their product--that we'd see a lot more consideration from the general populous. All too often we assume that things we don't understand are trivial and that is very often not the case.

For those not intimately familiar with my past job decisions, the last time I changed jobs I chose this one over the other largely due to issues with their non-compete clause. It basically read "you can't work in the games industry for two years after you leave our employ" which was not at all acceptable (this is why I read everything). They gave me every assurance that this wasn't something they'd ever do except in very particular circumstances and that the chances of my ever being held to that were exceptionally slim. If it was such a statistical improbability, I wanted it out. They wouldn't budge. I now work elsewhere. I was informed that this policy was changed to only apply to a small geographic area as a direct result of the stink I made. I'd like to think I did the others in my chosen field a good deed but, honestly, few people read or really understand the legal and binding contracts they sign when they take a new job.

Today I learned that any programming work I do is owned by my corporate overlords including those done outside the scope of my employment. The legalities of this are sadly unarguable even if they are imprecise and likely unenforceable. At the end of the day, if they want to put legal pressure on me they sure can and there's no way that I'd be able to survive that financially.

Given that my current employer can fire me at any time with or without reason, I don't particulary see a strong need for them to also be able to take anything I do outside of work. That just seems...wrong--especially when you consider mandatory overtime and a stagnation of professional skillsets that myself and my co-workers tend to suffer. I do on the other hand, understand what it is that these policies are trying to protect, it's just that I think they a) aren't really true to the intent, b) are a little intrusive and thus disrespectful to employees, and c) kind of do a crappy job anyway.

Learning that all programming work I do is owned by my employer comes as news to me--I thought I understood that part of the law. It all hinges, I suppose, on what the "scope of my work" really is. If that includes my hobby work at home then I think I might be entitled to more than I currently make (I write a *LOT* of code at home). I don't think that this was the intent of the law but I'm also not a laywer. I think it's silly that I'd need to be to answer the question: "who owns the work I do outside of work".

Next time around (if there is one) I'm going to be a lot more careful. But I suppose that's how we learn: screw something up bad enough and you'll know to watch for it next time.

2006/10/25

Agile or Not?

I'm a real big fan of one Alistair Cockburn because he's in the past said a lot of things I think are insightful. He's also a proponent of Agile Development which has had some bad press lately. Googlisms of those links aside, I've always been skepitcal (like many) about "Agile" and what it really means. On the other hand, I think there are some really good ideas therein and can't dismiss it out of hand like many do.

My disclaimer for the discussion that follows is that video game development is crazygonuts different than "normal" software development if there even is such a thing. It seems that as an industry that we've been pretty good about completely ignoring the rest of the software industry--even about ignoring those things that might help us. Though not dedicated to the software part of the industry, there's a lot of good stuff at IGDA's site of which I am now officially a member.

Then I read this piece which I found from here. As is typical of the works therein, it was interesting and insightful with the one exception of point #3 where he's listing "outdated and inefficient process conventions". Specifically:
* People work better in private offices.


This seems in complete disagreement with sources that I've quoted here before. This invariably lead me down the path of trying to figure out what I'm missing which is what I usually do when faced with such contradictions. On the one hand, I respect Alistair Cockburn and don't think he'd lead me wrong intentionally. On the other hand, his statement just plain seemed wrong given the bulk of software culture I know of and even the bulk of my, ableit short, professional exeprience.

I've ranted about my current workspace before. Others have undoubtedly done the same (and no, I don't have any links handy, sorry). I can also point out that during my last two jobs I had very similar experiences where, in the company of many people, both the quality and quantity of my work has declined dramatically. What I can't point out about my current job that I can about previous jobs, is that when moved back to private workspaces that I got all of that quality/quantity back. I don't think this is particular to me, nor do I think that it was particular to these three companies.

The essence of what I do on a regular basis is private. I debug code, I read code, and I write code. Timewise, secondarily I also have to track down requirements and read through a pile of emails (typically 100 on a slow day to up to 500 nearing a build) and context switch to fight some fire or another while someone is standing on my desk waving their hands around in a panic. Ok, so the standing on my desk part is exaggeration, but they tend to be very panicky. As a lowly grunt I really don't have a lot of design time nor do I spend time with clients who, in this case I suppose would be management. This has not changed in 6 years.

Debugging code, reading code, and writing code tend to not require outside assistance. Occasionally I will ask for assistance when debugging someone else's code but that's fairly rare and even then, in the search for info to be able to ask good questions, I usually figure it out without intervention. I don't know if it's just me (I suspect it isn't) but I find that I'm able to get more done by focusing and not being interrupted on all of these tasks than I am with, say, between five and fifty people in the same room.

Business software as I understand it, is a totally different beast where there's a lot more interactive design between people on a team. I imagine that in those types of situations that you could get a lot more done if you could talk stuff over with the people making the decision especially if you were one of the people responsible for said decision. It probably also helps if everyone within earshot is at least tangentially involved in whatever it is you're discussing.

None of these are true for me right now in the vastness of the 2000s wing. To my right is an artist. Across the row from him is an artist. Across the row from me is an artist. On my left is the audio tech programmer. Across the row from him is a performance 360 tech programmer, probably the only person in my near vicinity that I have any technical business with. So when the two artists talk about UI graphics and stuff like that, which I have almost no input into, I don't particuarly get anything out of it and it can be incredibly distracting. Don't even get me started about when they start talking about WoW, loudly.

My conclusion at the moment is that this is a largely cultural difference in opinion where both sides are right in their own context. I'm not entirely happy with that explanation but I'm also at a loss for anything further. I think that if you want your programmers to program, debug, and generally be assigned those tasks that are best handled individually, that sticking them into a huge bullpen with others not of the same department is probably not a good thing. I won't comment on the appropriateness of such decisions on task assignment, but that seems to be what happens more often than not in places I've worked.

Either way, I'm going to let this one soak for a while; I think I may be missing something here.