Categories
entrepreneurship games industry

Leaving the IGDA(3) – Holding a mirror to the games industry

So. After the recent events (1.Background and 2.What Happened?) where the IGDA Board has triggered a PR “FAIL”, and in passing made a mockery of the IGDA’s own flagship initiatives … does it matter? Does anyone actually care what the IGDA does anymore – especially after how it’s handled this matter?

Yes. Very much so.

Because when you look at these IGDA-specific events you can see a partial microcosm of the games industry at large, played out on a smaller scale, and more explicitly than in many places.

The massive problems that the IGDA has are the same as some of the problems that pervade the industry. The issues that some commentators (and the IGDA Board!) even now fail to appreciate or understand are the same issues that face studios across the world.

Issues? What Issues?

Is Exploitation part of the American Dream?

IGDA Board Member:

“Mike does it by compensating his employees richly.”

TCE Member:

“No, Mike does it by compensating those employee’s willing to work extended hours at the expense of their own lives, richly.”

TCE Member:

“My favorite was the guy saying “You join a company to make a game… it’s like joining a rock band. Do you think rock stars work 40 hour work weeks when they’re on tour?”

No… they don’t. But we’re not the “rockstars”, you are. You make the money, and we’re the f—ing roadies. F— off.”

Funny. It seems that the boss gets the money, the power … and when the recession strikes, or the budgets were “mistaken”, or bad decisions are made, it’s the employees who lose their “not guaranteed” bonuses, and get “made redundant” … but it’s the employees who should be working 80 hour weeks for the priviledge.

But it’s all OK, apparently, because … you don’t have to work for a living if you don’t want to (at least, if you’re a Studio Director you don’t – you’ve got all that money and all those second homes to live in).

Issue Summary

The Free Market – where anyone can choose freely to buy (or not buy) anything – is a theory, not a real-world model. People need to eat. They need homes. They need … jobs.

It is NEVER valid for a manager to excuse exploitative working practices with the declaration “You chose to work here”; they are still exploitative, and the manager is still morally and ethically wrong.

(where does this end? A proposed pricing model for life-saving drugs is “take the future life earnings of the individual, and charge them close to 100% of that, even though that is several thousand times the cost of manufacture. They should be grateful that we’re giving them the chance to prevent their kids being orphaned and dieing of starvation”. Would you be grateful? Is that how you envision a civilized society?)

When you “stand for” something, you have to actually STAND for it

IGDA Chairwoman:

“I don’t think it’s the role of me, the IGDA, or any other organization to tell an individual what kind of workplace they should choose.”

IGDA Board Member:

“I would not use the model that Epic does and I would not work for a company that does.

I’m fine with Epic recruiting only the folks who want to work long hours and make game dev their life. That leaves thousands of great employees for Kaos and other studios committed to 40-hour work weeks to steal away”

Issue Summary

Beliefs are not something you pick up and set down when it’s convenient; you either believe them, or you don’t.

If you are one of the people running the organization that explicitly describes it’s campaign for “Better Quality of Life in the industry” as one of it’s most important activities, you had damn well better believe it – or resign and make way for someone who does.

Why do so many professionals have so little faith in the IGDA?

TCE Member:

“I’ve gone to the trouble of registering on the forums simply to answer this point. I’m not an IGDA member and with comments like Mr Capps’ being essentially defended by the board I have no intention of joining.”

TCE Member:

“Ignoring the QoL issues involved for a moment, it also unbalances the industry for all well-managed companies, be it clothing or games, who do not resort to such exploitative tactics by creating an uneven playing field for competition.”

TCE Member (?):

“If i’m honest, this is a ridiculous model. Can you imagine trying to source funding, outside of the games industry, on the basis that it might make you rich if everything goes to plan?

This is the whole problem with the games industry. I do not understand how anyone can defend this sort of position. It is untenable. Sure occasionally it works but once it has worked it is not a viable method to continue your business around. Its all about risk. Unfortunately you are putting that risk on to your employees and that is wrong.”

TCE Member (?):

“As a slight aside I will also say that the reason I never did and will never join an organisation such as the IGDA is because they cannot change that which the board has a vested interest in.”

Response, from IGDA Board Member:

“I will defend Mike and the others on this board unfailingly because the bottom line is that they are good people who are trying to do good things for the industry.”

Issue Summary

If the IGDA is supposed to make the industry better – a better place to work, a creator of better products, a better contributor to the lives of people who consume the products – then it needs to *improve* the industry.

It is not enough to simply say “it’s a world of free speech, I’ll defend every opinion to the death” – you have to actually have an opinion of your own, and you have to push it, everywhere.

Who does all the work around here?

IGDA Board Member:

“To be frank, the complete lack of support and involvement from the membership has been totally disheartening. Production level developers dropped off of the Taskforce and Roundtable discussions about this initiative at GDC a few years ago were universally empty with a total of 5 individual developers attending all 3 sessions. There were actually more Taskforce members and HR people from studios in attendance that there where individual developers. ”

IGDA SIG Chair:

“people can identify that there’s a problem, but the workers suffering most by definition do not have time to volunteer at anything – let alone something that might get them fired.

depending on meetings at GDC… yikes. The people who feel most strongly about this issue are not the ones who can afford to go to that conference (and again, by definition their companies are not paying them to go).

I believe we’ve made a real difference in the industry. Maybe not a difference everyone likes or agrees with, but when this SIG started in 2002 nobody would even think to put up a list of “Top 20 Game Writers” on Gamasutra. ”

IGDA Chapter Co-ordinator:

“I do my damn best to make the Boston chapter a useful and good thing for our local community.

Here are the basics of the Boston chapter:

Here’s what we provide:

So, IGDA broken? Sure, in places. IGDA useless? Not in Boston, that much I can say.”

IGDA Chapter Co-ordinator:

“But Jason, we can’t just sit back and say, “Hey, we formed some committees and we’ve scheduled some meetings: come one, come all, time to GET INVOLVED.” That doesn’t work. It never does.

When I was helping grow the Boston Chapter, it wasn’t enough to just hold the meetings and expect people to show. We had to provide incentives. We had to inspire people to show up. For the chapter, that was beer, food, and an informative speaker every month. And even then I had to personally reach out to hundreds of devs and harass them every month just to get them out to their first meeting. The incentives really only helped *retain* attendees.”

Issue Summary

Ah … here’s where I get a little controversial. Here’s the thought I’ve had but never voiced, even to myself, for a long time – it was too close to the bone. But hey, if I’m leaving, I might as well come clean with myself and everyone else.

The SIG Chairs actually do stuff. They make things happen (with very little overt guidance from the central IGDA – instead they have to make it up as they go along). They don’t tend to hold a lot of meetings (although a lot do, it usually very quickly goes nowhere – I know, I’ve made those mistakes myself).

The Chapter Co-ordinators actually do stuff. They run real-world events. They (with very little help from the central IGDA) get people to do things that others talk about, only … they actually get them to *do* it.

The Board?

I’d like to apologise to Tom Buscaglia here, in the interests of fairness, because in this exchange I used him as an example of people saying, not doing – whereas in reality I think the QoL program *is* doing things. So … I’m sorry.

HOWEVER … I suspect that if it were being done by a SIG or a Chapter, it would have been “done” a lot sooner – even if a lot “less well”. Chapters and SIGs live or die by their rapid, substantial results. The wider IGDA doesn’t seem to.

Again, an apology – I don’t know the details of why the QoL stuff is taking so much time, despite Board-level direct involvement, and IGDA’s not inconsiderable resources, and there may well be (probably are!) reasons outside of Tom’s (and the other members) control. But the problem here is that if you take *so* much time over things, maybe you lose more from the delay than you gained by doing it properly. Maybe not. It’s not an easy problem.

The End

I haven’t even broached all the key topics here. For instance, there’s the issue of people in other industries claiming that because *they* routinely work 50 or more hours a week, it’s pathetic of people in the Games Industry to complain about it.

(so what? your work is different, the effect on people’s lives is different, the careers you lead are different. Even if it were all exactly the same … does the existence of your poorly-run industry somehow “invalidate” the suffering in our industry? Of course not)

But I suspect most people have already stopped reading by now :).

Categories
entrepreneurship games industry

Leaving the IGDA(2) – What Happened?

(if you’re not sure what the IGDA and TCE are, read the Background post first)

This post lays out the IGDA event where (IMHO!) the IGDA’s own Board undermined the IGDA’s most famous public initiative, and what the Board said about the matter when challenged over it.

2008 IGDA Leadership Forum

At a public IGDA event a few months ago, the “2008 IGDA Leadership Forum”, there was a session where two of the 12 IGDA board members (plus one about-to-be-board-member) spoke on the topic of working practices within the industry. The event was specifically about “Studio Heads” – i.e. people who run studios, and their particular insights into running the businesses (the board members in this case were also studio heads).

One of the speakers/board members, Mike Capps, the CEO of one of the most famous game developers (Epic), made some very clear comments about his own thoughts on QoL. You can see the video here (Mike’s comments are at about 21:00).

The video for this event went up a few weeks ago, and a TCE forum member posted a link for comment.

I suggest you watch the video, otherwise you’ll be in no position to make up your own mind and appreciate the issues at play here.

Grossly over-simplifying (read on, there’s a proper summary linked below), Mike’s comments sparked outrage and fury among the professional developers (remember: there are (practically) no fanbois on this forum; you have to be a professional game developer to get in; the vast majority of people there are extremely well informed about the issues within the industry, because they’re actually inside it)

Fixing the IGDA

Discussion on TCE raged on and on about this. The core issues at stake were not new – dismay at studios justifying treating their employees like crap, hope at various ways we can change this/it’s not so bad as it was, the role of the IGDA and other orgs in pushing for change, etc.

But this time was slightly different. Because:

  1. The comments were aired at an official IGDA event
  2. The IGDA event was the first conference that is wholly owned by IGDA (instead of being attached to a commercial partner’s larger conference, e.g. GDC)
  3. Half of the speakers on the panel were IGDA Board Members
  4. The IGDA made no attempt to refute/rebut/distance itself from the comments
  5. Simultaneously with this forum debate, the IGDA Board Elections were underway, and votes were being taken for the next 4 Board Members to take up 3 year terms starting this year

A lot of (fair, if sometimes extreme) condemnation was levelled at IGDA, both over this series of events, and it’s symptomatic relevance to the bigger, wider problems of the IGDA. These events did a pretty good job of exposing one of the biggest rifts within the IGDA:

What is the IGDA for, really? And does it succeed at that, or fail?

One of TCE’s members felt that there were a lot of good points, and a lot of great examples of just how offensive developers found the IGDA’s actions here. So, he went and asked for permission from each of the members to include their comments in a letter to the IGDA Board; you can see the results here:

http://www.igda.org/Forums/showthread.php?threadid=34741

IGDA Board response

“So long as Epic is honest with their employees about their expectations, I don’t think it’s the role of me, the IGDA, or any other organization to tell an individual what kind of workplace they should choose.” – Chair of the IGDA Board

One of the TCE members, who was not an IGDA member (allegedly because of his lack of faith in the organization), was moved to register on the IGDA site merely to respond, publically:

“IT IS NOT OK, EVER, TO EXPECT PEOPLE TO WORK MORE THAN 40 HOURS A WEEK.

If IGDA is so utterly incapable of seeing this while twittering on about its QoL efforts, it’s a totally lost cause and should disband, or own up to its utter impotence as a vehicle for real improvement of working conditions in an industry that needs that change desperately.” – Brian Beuken

(TCE members generally cheered Brian on, although maybe with slightly differences in the details)

What response did that (and other similar comments) get from the IGDA board?

“We support the initiative of the IGDA, which is to make the industry a better place for game developers, and we all do it in our own way.

Mike does it by compensating his employees richly. I do it by teaching and preaching a 40-hour work week. That said, I will defend Mike and the others on this board unfailingly because the bottom line is that they are good people who are trying to do good things for the industry.” – Another IGDA Board Member

…and there’s a bunch of other commentary from key people in the IGDA or in TCE. Go ahead, read the IGDA forums thread (http://www.igda.org/Forums/showthread.php?threadid=34741). Notable contributions include:

  1. The Chair of the IGDA Board
  2. Several other Board members
  3. The President of the IGDA
  4. The Chair of one of the IGDA SIG’s
  5. The Chapter Co-ordinator of one of the larger IGDA Chapters

My involvement

The IGDA has three branches: the general (15,000+) members, the Special Interest Groups (Online, Casual, Writers, Accessibility, etc), and the Chapters (city-specific social/meeting groups). Having run one of the SIGs since 2005, I’m now quitting the IGDA over this issue.

I stood for election to the Board this month, and those 15,000 members didn’t vote me in. This means two things.

Firstly, I don’t have the opportunity I’d hoped for to change things for the better as a Board member. I stood for election specifically to make the org more pro-active in not just talking about the things it stands for, but actually making them happen.

Secondly, the membership at large have proven – diplomatically – that they don’t agree. There’s no point fighting for an organization that’s made it so specifically clear that it doesn’t believe in the things that you believe in.

With this issue in particular, if it can’t deal with these issues even internally, it’s got a snowball’s chance in Hell of fixing them in the wider industry.

So … I quit. I’ve got some IGDA commitments at GDC next month, which I’ll obviously see through, but after that, I’m standing down as a SIG Chair, and having nothing futher to do with the organization.

Next…

…why this has wider significance than the internal politics of a single non-profit organization.

Categories
entrepreneurship games industry

Leaving the IGDA(1) – Background

This is a series of posts about one of the big problems facing the games industry: honesty, exploitation, standing up for better quality of life, and actually “doing, not talking”.

IMHO it has added poignancy given the vast layoffs that have taken place across the board in the past 12 months. I’m splitting it into sub-posts so that the people who already know e.g. all the background to where we are now don’t need to trawl through it to get to the commentary.

I bear no personal ill-will to any of the people involved, and I don’t hold their opinions against them; in some cases I strongly object to the things they’ve said as spokepeople of their organizations, and I disagree strenuously with some of the opinions, but none of that makes them bad people. Although it might well make the organizations they represent into “bad organizations”…

IGDA: International Game Developers Association

(http://igda.org)

Formed some 8 (?) years ago, but in reality only really an independent organization for the past 4 (?) years, the IGDA’s vaguely-worded mission is to represent “game developers” in all forms, and make things better for them. It is non-specific whether it stands for “developers” as in “individuals who develop” or “developers” as in “development companies”, although there tends to be an implicit slant towards the former.

Alternate Reality Games (ARG) SIG: A “Special Interest Group” of the IGDA

(http://igda.org/arg)

Formed in 2005 by myself and 10 other people, our mission is even more vaguely worded :). But something along the lines: provide fora and support for ARG developers to meet each other, learn from each other, share ideas and advice, discuss developments in the industry, and generally just meet and talk to like-minded people.

IGDA Board Elections: 2nd Feb 2009 to 24th Feb 2009

(http://www.igda.org/board/elections.php)
The Board consists of 12 elected volunteers, who each serve 3 years, with 4 of them re-elected each year (so there are always 3 tranches of directors at any one time).

This year, I put myself up for election. I felt that despite all the good things IGDA was doing, it was failing in a couple of key areas to do with its role in the wider world of game development. It needed to get a lot more pro-active. It needed to stop just talking about what people should do, and do more to make them, and help them, to get there. Too many people have no idea what the IGDA is, even in a vague sense, and I wanted to fix that too.

TCE: The Chaos Engine

(http://www.thechaosengine.com/)

An internet forum that – unusually – is private, and enforces reasonably strict membership criteria. You must be:

  • A professional employed in the games industry
  • Not a manager
  • Work in the “making games / shipping games” part (i.e.: not PR, not HR, not Finance, etc)
  • Not a journalist

In essence: it’s a place for people who actually make games, with all the attendant joy and suffering, to talk freely with other knowledgeable people, without the presence of rabid fanbois who know nothing about what they’re talking about, and without the constant fear that an unscrupulous manager or HR drone is reading your every word and looking for excuses to fire you.

The stage has been set … read on to What Happened?

Categories
agile community computer games entrepreneurship games industry massively multiplayer

How can we make a Europe-wide MMO Publisher?

(4 posts in one day? Yeah! Too busy to be regular right now. GDC is on the way)

At the end of my commentary on the formation of NC West, I added almost as an afterthought a little comment about Europe and the MMO industry:

there’s a gaping hole in the MMO sphere. For someone bold enough to step into that hole, you could “own” Europe’s online gaming industry for the next decade.

Since I wrote that, surprisingly many people have commented on it both by email and in person, either along the lines of “look who else missed the opportunity” (Jagex, Ankama, Bigpoint, Gameforge), or along the lines of “yeah!” (count me in) … or both.

So, I wonder: what *would* it take, right now? If you have ideas, post them here. I’ll be at GDC in 3 weeks time, and I’d be more than happy to pitch this as a credible plan, if you come up with a comprhensive-enough plan. It’s a lot more expensive than any of my own humble plans, but in many ways I find it a lot easier to justify, financially. And I’m not even trying (it’s just a game for me right now, idly imagining what I’d do, if I were Jagex, or Ankama, or Gameforge, etc).

Wishlist time. Over to you, Dear Readers…

Categories
entrepreneurship games industry startup advice

Pragmatist’s view of Corporate Culture?

The IGDA Leadership conference 2009 just launched their call for speakers.

The form is pretty brief, so I wrote some personal notes on what I’ve just submitted (so I don’t forget if/when they accept the talk!). It just occurred to me that a large percentage of my blog posts are, essentially, about Leadership in companies (anywhere) and the game industry (specifically). So, I’d be interested in any comments on this skeleton outline.

1. it changes your reputation
* your reputation is the biggest influence on your hiring-applicants
* your business is based mostly on people (games industry specific!)

2. it changes your collective happiness
* unhappy people do different things: cause problems, stop working, stop caring, suicide-by-cop
* happy people: … be the best tehy can be

3. culture is formed by perception
* it’s not what you say, it’s what you are NOTICED to be doing

4. internal and external culture
* they improve and sink independently
* …but one can pull the other up (or down)

5. changing culture
* very steep change-curve == very hard, but then … very sudden massive improvement
* starts with: who are you going to fire?
* c.f. “perception” of belief, not the statement of it

6. cultural “tells”
* what does your employent contract say?
* what is “a manager” in your org?
* how are projects structured in terms of people + human-roles?
* how much do you pay?
* what does the man-on-the-street think you are?
* what do you do when times are hard? (hard questions, hard problems, hard money problems, etc)

7. shining examples
* e.g. this

8. flaming failures

Categories
iphone programming

Using shared libraries for iPhone with multiple projects

You would think this is easy, seeing as how it’s an essential, simple, part of any programming project. HA! You obviously haven’t used Apple’s shockingly bad IDE (Xcode) much, have you?

You can read the extremely widely-linked blog post – http://www.stormyprods.com/blogger/2008/11/using-static-libraries-with-iphone-sdk.html – which is incomplete, and doesn’t work properly if you want to do auto-updates when source changes (which, in most cases, you do). Unfortunately, it doesn’t give any pointers to making linked projects work. I don’t blame the author for stopping at that point, their solution “works”, but I wanted to get the full benefits of auto recompilation.

You can google to try and find some documentation from Apple. I can’t find any, although I can find lots of other people on forums asking for documentation on how to do it themselves.

Eventually I worked it out, after hours of trial and error, and reading as much of the Xcode docs as I could find that seemed to relate to what was going on.

  1. Make a new project to hold your shared library
  2. Put all the .m and .h files for your library in that project (drag/drop them to the groups and files list)
    • XCode “feature”: it will by default fail to copy the files, even though that means everything will break later on, when you delete the originals. You need to tick the “copy files if necessary” checkbox)
  3. Create a “Static Library” build target
  4. Drag the .m files *only* to the static library build target’s “sources” twisty
  5. DO NOT DELETE THE FILES FROM THE MAIN PROJECT (because you’ve just created references, not copies, although it doesn’t tell you that … so Xcode will silently delete them everywhere, and OS X still doesn’t support undelete; Sulka tells me that Undelete will be coming to OS X in the next version. Oh, how I laughed)
  6. DO delete the files from the main Build Target
    • (again, they’re not actually files there, just references, so “deleting” them merely gets rid of the reference, not the file)
    • is this another bug in XCode? It seems strange that you use the “delete” funciton to do something that isn’t really a delete
  7. Click the NEW build target (the static library) and right click and select “build”.
    • XCode “feature”: if you highlight the thing you want to build, and hit Cmd-B to build, it WILL NOT BUILD the selected target, it will instead build the main target and ignore the target you actually wanted built
    • The *only* way to make cmd-b build the thing you want is to change some of the options on the Target dropdown at top left of the window – but you’ll have to change it back and forth each time you want to build somethign different with cmd-b … there seems to be no context-sensitive Build command in Xcode (bug?)
  8. If you want to test that your static lib built correctly (hint: you probably do)
    1. Add the static library to the main target
      • XCode bug: you can add the static library to the “direct dependencies” section. This has no effect; don’t do it. The static library MUST be added to the “linked libraries” section, i.e. the bottom panel of the General tab of the Inspector for the Build Target
    2. Write some code that uses your static lib – I suggest putting it in the app delegate class that Xcode auto-generated when you created the new project – and try building the main target (you CAN use cmd-b for this … unless you switched targets above, in which case you’ll need to switch them back first). If you have added the static lib in “the wrong place” or created it “in the wrong way” then this will fail with missing class errors etc

    All that has achieved is to compile your source code. No, seriously – it is THAT HARD. Now you have to actually try using it from another project.

    This is where the StormyProds link takes the easy way out (which only partially works): it simply copies the .a file (generated by the compiler) to somewhere on your hard disk, and has you hard-link to that file from other XCode projects. This will work; but it will also get out of date rapidly, and cause all sorts of bugs if you forget to update it. It will never auto-compile when there are changes.

    What Apple wants you to do (and for once I agree with them :) – this makes sense for most developers who aren’t using an external build system) is to link the projects directly, so that changes in one cause the other to automatically recompile *if necessary*.

    NB: for all my disappointments with Xcode, this is one feature I think has been extremely well done – it handles “links” between discrete Xcode projects extremely well, and (although the menus and docs for it are a bit hard to find) it mostly Just Works.

    1. Link the two projects
      1. Following Apple’s instructions here: http://developer.apple.com/DOCUMENTATION/DeveloperTools/Conceptual/XcodeProjectManagement/040-Files_in_Projects/chapter_5_section_7.html#//apple_ref/doc/uid/TP40002666-CJBJHJCJ – i.e.:
      2. Open the project that will import the static library
      3. Go to the “Project” menu and select “Add to Project”
      4. Find the .xcodeproj file on your harddisk that representst the other project, and select it
      5. Check it worked:
        • At the top of Groups and Files panel, you should see a blue twisty for your project, and just inside it a blue twisty for your imported / linked project
        • Inside the second twisty MIGHT be a .app file (representing the main target of the imported project, which you won’t need – you MIGHT have created a project wihtout a main executable, or deleted the spec for it, but by default you’ll have this)
        • Inside the second twisty should be a .a file (representing the static library from the imported project, which you DO NEED)
    2. Make the secondary project import the compiled static library from the first project
      1. Drag the .a file from inside the second twisty, and drop it inside the “Link Binary with Libraries” section of the main Build Target of the main project
        • DO NOT drop it anywhere else in the Built Targets section – it will work, but will have no effect (you do that in the next step)
        • If you do it correctly, you should see the static library appear with the same icon as each of your included Frameworks (all iPhone projects have at least 2 Frameworks normally: UIKit.framework, Foundation.framework), and appear right next to them in the same twisty underneath Build Targets
        • ALSO open the inspector for your build target and add a second dependency in the main dependencies section to the static lib – NOT the app – from the imported project.
        • (if you don’t do this, you’ll see weird things like the build compiling for iPhone, but not for the Simulator, for no apparent reason)

    Finally … drag and drop the header files from the original project’s location in Finder into the new project’s source folders. Do NOT check the “copy files if necessary”. Xcode will do a reference / softlink, so that changes to the header files in the original project are picked up. NB: you will need to do a drag/drop each time you add a new header file to the original project.

    (You *might* be able to get away with putting all the header files in a sub-fodler of their own in the original project, and drag/dropping that FOLDER into the new project, but … I tried that, and it seemed to sometimes fail to notice the new header files, so I’m not sure I’d risk it).

    Some fun errors:

    Line Location Tool:0: “_OBJC_CLASS_$_ScoreUploader”, referenced from:

    Various causes of this useless error message:

    1. you added a class to the source project … but forgot to drag/drop that .m file into the “Compile Sources” part of the Target for the Static Library in the source project (or you did so, but you didn’t link your xcodeproj’s directly … but forgot to recompile the source project (linking the projects, as described above, triggers auto-rebuilds and you dont see this problem so often))
    2. you had all the source in one project originally … but haven’t deleted FROM YOUR HARD DISK the source files for the source inside the original, main project

    (this is IMHO another bug in Xcode: it silently leaves the files in place, by default, and yet silently (secretly) uses them when compiling – but ONLY when dealing with imported libraries, NOT when dealing with local compilation. Huh?)

    Line Location Tool:0: literal-pointer@__OBJC@__cls_refs@NSMutableList in libhiscorelib.a(XMLSuperParser.o)

    You haven’t added the static lib as a non-lib dependency

    Some things to be aware of

    The header files that you drag/dropped from one project to the other have NOT been copied to the new project and are therefore NOT real files – they are references.

    If you delete the original files (in the statically compiled lib project) then the references in all other projects will vanish; be careful!

    If you updarte the original files (in the statically compiled lib project) then the referneces in all ohter projects will automatically update (with no UI indication of this).

    Unlike most normal IDE’s, there is no obvious UI indication that the files are not inside the current project (you can check by doing cmd-i on any of the files and looking at the value of the “Full Path” field, but otherwise you won’t see a difference).

Categories
agile games design iphone programming recruiting

iPhone Creators: Brighton pub meet March 9th

http://upcoming.yahoo.com/event/1917163/?ps=5

If you have any interest in iPhone development (you have ideas for apps, or you want to start coding for your iphone, or just want to meet other like-minded folks over beers), then come along.

Bring friends. Bring iPhones (I’ll bring my laptop so you can download and try my current work in progress)

If you’ve got anything you’ve made yourself, definitely bring it along!

We had a quiet first meetup last night, I’ll be adding screenshots / app descriptions for the two apps shown on the night to this post later.

EDIT:

Snooker Scorer

snookerscorer1 This is a simple app that keeps score of a snooker match. You can use it in a club, watching a match live or even following on tv.

Just tap the ball that has been potted. Hit the ‘swap’ icon to swap players. If a foul happens, hold the ‘foul’ icon and tap the ball fouled. Free balls can be added as well through the popup actions icon.

Future additions will make the information line adapt to show the most relevant info such as current or maximum break, difference and points remaing, balls potted in current break, match history, undo mistakes, and whatever else I can think of.

Categories
games design marketing massively multiplayer

The power of Free: Free Wifi

I’m sitting in the Departures Lounge at Helsinki airport, which now has end to end free wifi (I can see 3 or 4 different wifi stations here, on two channels). It’s the “open a web browser window first and hit a button to say “yes, I agree to your terms and conditions”” variety – took me a couple of attempts to check email until I woke up (it’s not yet dawn here!) and guessed what I’d need to do.

But the interesting thing is quite how much benefit the airport gets.

Modern airports, as entities, get a huge amount of their revenue from the shops inside them. I’m from the UK, where Heathrow (and to a lesser extent Gatwick) have taken this to extremes for decades, but it’s spread over most of Europe and much of the USA by now too.

Advising passengers that they must arrive 3 hours before a flight leaves is one way to make them spend lots of money. Cancelling their flights is another (the branch of the WHSmith’s newsagent inside Heathrow airport made vastly more profit than any other branch in 2007 thanks to the plane cancellations that year). Making the airport experience a pleasant one, so that people *don’t mind* coming early is yet another. Facilitating people “working” at the airport too.

And free wifi supports not one but two of those. Making it hassle-free and ubiquitous is the difference between me wiliingly turning up more than an hour before my flight, and what I would normally do (aim to arrive 30-45 minutes before an international flight, and waste as little time as possible).

This is a model of “free” that I feel is still under-explored in the game space: Free as driver of larger secondary monetized activity.

Categories
maintenance

RSS readers: this site RSS feed changing URL … NOW!

In case you missed it, due to some incompetence / deliberate nastiness from Google, I’m being forced to pre-emptively move the RSS feed for this site. Sorry.

New URL (you should change now, or you won’t receive any more posts in your RSS reader) is:

http://t-machine.org/index.php/feed/

Categories
bitching maintenance Web 0.1

Web 0.1: Feedburner + Google say “F*** YOU”

Today, I attempted to login to Feedburner.

I had to go through not 1, not 2, but three different adverts for “here’s why we’re forcing you to create a new Google/Gmail account, you really want to do it, it will be good for you”.

The third one has a link “ignore this and login to feedburner anyway”.

That link redirects back to the adverts. It didn’t last time I logged in, a mere week ago – back then, it did what it claimed to do: logged me in to Feedburner.

This time, I clicked a dozen times, with waits in between, just in case it was a momentary glitch.

Nope – Google/Feedburner is engaging in some kind of sadistic schadenfreude designed to make Feedburner users collapse psychologically, and give-in and create Google accounts. Or, if like me they already have a Google account, to delete their Feedburner identities and throw away privacy, personal data, and any semblance of control of their online personas to instead merge their account IDs.

(in some kind of surrealist nightmare, the final ad opens with the words “Moving to a Google Account is easy” (no, actually, it’s enforced), and finishes with the line “You don’t have to move today, but we’ll remind you each time you visit feedburner.com” (um, no – you’ve placed an auto-redirect that does, in fact, force me to “move today”. Bastards)).

So. Feedburner? Google? You say: “F*** YOU”? Well, then, I say: “F*** you too; harder”.

Categories
bitching programming Web 0.1 web 2.0

phpMyFAQ: don’t use it, part 2

Disappointing

No spam filter (there is one, allegedly, but it’s invisible, non-configurable (!), and missing obvious spam words)

(there are comments on the official forums from 3 years ago saying “we need some basic anti-spam tools” and the author replying with “we’re working on it”)

Annoying

No spam controls for reactive processing (banning users, marking comments as spam, etc).

Unforgivable

Each comment can ONLY be deleted one, by one, by one, requiring 6 mouse clicks per deletion!

The concept of a list of comments, and a checkbox next to each, and a “delete selected comments” is now well over 10 years old – and it only takes a few minutes to implement with PHP + SQL. If you ever find yourself making a web app for general usage, please don’t forget this core feature :).

(I’ve been too busy for the past month making actual iPhone apps to finish my free PHP FAQ platform, but watch this space, shouldn’t be too long now…)

Categories
amusing games industry recruiting

Dear [Recruitment Agent / Hiring Manager / HR staffer]

I mean this in the nicest possible way:

I suggest you save us both some time: have a look at my LinkedIn profile, and see what I’ve done – http://www.linkedin.com/in/adammartin – it’s shorter and clearer than a CV/Resume, too.

If you find that you have something that would interest me, personally, then feel free to email me and explain why.

If not, I suggest you don’t contact me again.

I’m sorry, but if you don’t have a specific position, with salary range, or you cannot send info in advance, or can’t answer some question I’ve already emailed you … then I’m not interested in talking further. I don’t want to speak to you on the phone. I don’t want to meet you. I don’t want to email you info about my previous work history. This may seem extreme to you, but I’m guessing you have no idea how many blind job offers I receive every single week? Enough that I don’t have time to reply to every single one of them with the same info over and over again, I’m sorry.

(Note to readers: Sorry if this turns up in your RSS; I’m now actively forwarding this link to recruitment agencies, as I’ve received several enquiries in the past week where they didn’t visit my blog, and I had to copy/paste sections from my rather less forgiving / tongue-in-cheek Open Letter to Recruitment Agencies)

(Note to recruiters: Feel free to follow the above link. Try not to take too much offense if you do, and please try to recognize that many of your fellow recruiters are an awesome waste of time for those of us who actually work in the industry)

Categories
computer games games design games industry

Jagex: Runescape is not Freemium / Free-to-play,pay-for-stuff

This is IMHO a very important point. I don’t normally tell people this – I’m quite happy for them to go around misunderstanding RS, Club Penguin, HH, et al and screwing up instead of providing credible competition for me :). But since the new CEO has just said it:

“RuneScape is different from all other MMOs in that the free game has an epic amount of content (we’d estimate over 2,000 hours worth to get all your skills up to 99 and complete all the quests) and isn’t merely a demo for the members’ version. If anything, we see the members’ version as an expansion pack for those that really love the game”

If you’re citing Runescape *anywhere* in your design, development, funding, or revenue models (or even in your secret dreams of success), you’d do well not to miss this distinction of what the RS free version is. Remember this: it was designed and built as a free game, not as freemium game. The subscriptions were never part of the plan, and the extra content for them was added on as an afterthought. If you want to go head to head with RS with your own “free” content, that’s a high bar you have to hit.

Speaking of the new CEO, Nicholas Lovell has some thoughts on what happens when you have a CTO and and a CTO run an MMO company together.

Categories
agile community entrepreneurship web 2.0

The Rules: Open Source Startup Funding

Mark Cuban’s blog is an odd one; I really can’t remember why I started reading it (presumably linked by a VC blogger would be my guess), and yet even though I read very few blogs I’ve stuck with his. It’s not like the standard SiValley other investor/commentator blogs. It’s a lot more based in the real world, and a lot closer to my experiences of running the business side of a business as opposed to the “building to flip” side of running a startup without ever being profitable just to sell it to someone else.

Anyway, advert over. He’s posted an interesting challenge: want money for a startup? Right. You have to publish the entire business plan, and let everyone else copy it. If – as many people are fond of saying – it’s implementation that matters, not the idea, then this shouldn’t be a problem for you. But it may bring wider-world benefits to everyone else, intangible virtuous-circle stuff.

I will invest money in businesses presented here on this blog. No minimum, no maximum, but a very specific set of rules. Here they are:

1. It can be an existing business or a start up.
2. It can not be a business that generates any revenue from advertising. Why ? Because I want this to be a business where you sell something and get paid for it. Thats the only way to get and stay profitable in such a short period of time.
3. It MUST BE CASH FLOW BREAK EVEN within 60 days
4. It must be profitable within 90 days.
5. Funding will be on a monthly basis. If you dont make your numbers, the funding stops
6. You must demonstrate as part of your plan that you sell your product or service for more than what it costs you to produce, fully encumbered
7. Everyone must work. The organization is completely flat. There are no employees reporting to managers. There is the founder/owners and everyone else
8. You must post your business plan here, or you can post it on slideshare.com , scribd.com or google docs, all completely public for anyone to see and/or download
9. I make no promises that if your business is profitable, that I will invest more money. Once you get the initial funding you are on your own
10. I will make no promises that I will be available to offer help. If I want to , I will. If not, I wont.
11. If you do get money, it goes into a bank that I specify, and I have the ability to watch the funds flow and the opportunity to require that I cosign any outflows.
12. In your business plan , make sure to specify how much equity I will receive or how I will get a return on my money.
13. No mult-level marketing programs (added 2/10/09 1pm)

PS: I love Mark’s attitude that comes across in his blog. E.g. in one of the first comments to this blog post:

Would you be open to reviewing pitches on your blog and then details privately?

From MC> No. This is an open source opportunity. Not a pitch Mark opportunity

Categories
entrepreneurship games industry massively multiplayer

NCWest: Stage 1 complete; Farewell, European MMO Industry!

Yesterday’s announcements of layoffs at NCsoft (both in USA and Europe) caught many people by surprise, judging from the number of emails and conversations I’ve had where people have brought it up. I think it’s interesting to try to understand why this is happening, and given Scott’s point that this is really not the right way to do layoffs (bits and pieces at different times), then to look at how it could in this situation be done better (if it could; that may not be possible).

But in terms of the surpise? No. I find there is no surprise here. There’s IMHO two major things going on.

1. Clean up the mess created last summer in Europe

From yesterday’s announcement:

“The European office is transitioning to have a stronger focus in marketing and sales”

Last Summer, they made redundant the entire Development division of NCsoft Europe. Traditionally, in games, you have Development and Publishing. In online games you have a third major wing: Operations/Support.

Publishing and Ops have to be / should be local to the country(ies) where they are being sold – it makes things much cheaper, and it makes things more successful, as the staff are actually immersed in the culture and timezone of the people they’re selling to or serving.

I was a little surprised when the Dev division was cut that it wasn’t done cleanly. As Scott points out “Hey, management? You’re doing it wrong”. If you get rid of Dev, then certain other things HAVE to happen:

  1. Get rid of all Dev-sub-depts in their entirety – including things like QA, that “can” have a foothold on the side of both Ops and to a lesser extent Publishing. If you’re actively *cutting* dev, then that QA dept (as an example) is an abandoned outpost that will get left to rot, politically speaking, and you can guarantee it will be starved and eventually killed (or die of hunger)
  2. Get rid of a large chunk of Publishing and Ops that are *not* part of Dev, but are co-supporting of them. If you had a Dev division, you would have built up extra resource in those areas; that resource is now under-utilized. If you’ve had to do something as brutal as destroying your Dev division, you clearly are desperate enough that you need to be making those cuts as well

NCsoft Europe did *some* of the above – but clearly not all. I’m not expecting you to tell from the headcounts (that would take some effort with LinkedIn, or buying beers for a few people after work) – there’s an easier way: look at what “departments” still had staff. Once the redundancies had completed, there should have been *no-one left* in a bunch of departments that – in fact – were left with a handful of lost, abandoned, individuals.

Going back to that press release, what it really meant was:

“The European office has finally implemented the strategic plan from last Summer, so is transitioning toeffecting immediately have a strongerpure focus in marketing and sales”

Cutting Development in 2008 meant one thing: NCsoft Europe was now purely an off-shore Publishing division (coincidentally, back to its historic roots). In the games industry that means you are (in decreasing order of importance): Sales, Marketing, Localization. You’ll be lucky to keep anything in teams like QA because there’s no need for QA to work hand in hand with sales teams – they could be located anywhere (unlike QA + dev, which really need to be colocated). In some companies, with the number of people remaining relatively small, the CEO’s would have left the abandoned people to sit in their jobs not being very useful, while the management got on with bigger issues of trying to do whatever the strategic plan was that they were doing. But that couldn’t happen for NCsoft, for reason 2 (see below).

PS: I like to believe that the reason it took so long for this week’s cuts (in Europe) to happen is largely that the exec team in Brighton were trying hard to keep as many good people within the company as possible. I don’t know Geoff Heath (the CEO) well, but he’s always come across as genuine and proactive in his concern for his staff. The rest of the exec team also – whatever their faults and failings – have tended to put a lot of effort into “looking after” their people, whether or not it’s worked.

2. Convert the overall company to “how it should have been run back in 2001”

Last summer’s re-organization in NCsoft America was all about giving total control of the non-Asian subsidiaries to ArenaNet. Reading news articles etc, I do occasionally wonder how many people grokked what had happened. A quick summary…

All this waffle about becoming “a unified organization under NC West”, and the reporting by bloggers and journalists that this was “consolidating” the subsidiaries and offices (they were already consolidated, you know) … what a load of crap. Follow the money, guys: who has the power now, and what unites those people? And if the answer is “nothing”, then ask yourself: who stands to benefit from an exec team comprised of individuals that are likely to be in conflict?

Look at the Directors of NC West:

  1. Jeff Strain – Co-founder of Arena.Net, Director of Arena.net
  2. Chris Chung – Director of Arena.Net
  3. Pat Wyatt – Co-founder of Arena.Net, Director of Arena.net
  4. David Reid – only started working at NCsoft 2 months ago

Notice a pattern?

So NCWest was simply a handing over of the reins of power from the OSI Mafia (ex-Origin people such as: Robert Garriott, Richard Garriott, Peter Jarvis, Starr Long, etc) to the Arena.Net Directors (the only one who stayed behind was Mike O’Brien, who now runs Arena.Net).

Remember that Korea acquired not one but two studios early on in North America: the first was Destination Games, which developed the tragically failed Tabula Rasa, and the second was Arena.Net, which quickly (note) developed Guild Wars, then a bunch of expansions, and is now well on the way to shipping Guild Wars 2.

This is “acquire experienced and skilled American game-developer Directors, and get them to run our non-Asia subsidiaries … attempt 2”.

Which should also point out something pretty obvious (to me at least): Chris Chung has a heck of a lot riding on the success of the revamped NCWest. ArenaNet’s top team has to show that it can do what the Origin team failed to do. They’ve been waiting in the wings all this time, implicitly saying “we could do better than that”, and now they have to prove it.

He’s / they’re re-arranging the entire company to fit with “how we would have done it in the first place if we’d been given the chance” (or something like that).

Doing it Better

I have two criticisms of what’s going on, and neither seems to be shared by the general press. Which either suggests I’m very wrong, or I’m very right. Your choice. Guess which one I’m going for :).

1. Too slow

If you’re reforming a company, do it lightning fast. If you’ve been at that company, playing the politics, for 5 years, you ought to have a battle plan in mind well in advance of being “officially” given the reins. There are always reasons that you “cannot”, from the operational to the legal.

But I’m sure that’s what they said to Lou Gerstner at IBM, and he proved wrong, when he fired the entire middle management, worldwide. I bring up this piece of history regularly, because it’s an excellent reference point: if one of the biggest, most bureaucratic companies in the world can do “the unthinkable” then what excuse does everyone else have left for not going far enough themselves? The redundancy pay-outs cost IBM so much money they booked a sudden loss that year greater than the GDP of entire nations. But they did it.

The “what would we do if could break the rules…?” game was one I played at NCsoft quite a bit; I needed to second-guess what would happen, given the long lead times of any development, organizational, and tech issues, if/when failing teams, projects, and managers got cancelled (as they did). Lots of other people were playing it too. It’s much scarier to actually have to put your thoughts into practice and risk being wrong, so some “more serious” prep may be needed when push comes to shove, and some paralysis is understandable (but still not acceptable). But with all the time we had, the extra due diligence shouldn’t have been necessary. Courage of convictions and all that. I’ve become a fan of moving as fast as possible (although even at NCsoft I still had crises of confidence and over-analysed some of the risky situations, and was fortunate to work with better people who simply said “stop worrying, run with what you’ve got, it’s planned more than well enough already”).

2. NC Europe is screwed

NCsoft had the opportunity to create a giant of the MMO publishing world in Europe; Europe is screaming out for it and just needs a banner to rally behind – and a visionary exec team to say “we’re going to turn Europe into an online gaming powerhouse”.

Europe is a bigger market than the USA (by some 30% or more).

Europe has no multi-title successful MMO developer or publisher.

The UK alone has a lesser but comparable level of mainstream game developers and output of titles to the US (UK currently 4th in the world behind Canada).

So … the development industry is here, less so the publishing industry (although there’s a lot of mid-sized publishers spread through Europe), but there’s a gaping hole in the MMO sphere. For someone bold enough to step into that hole, you could “own” Europe’s online gaming industry for the next decade.

Missed opportunity? Hell yeah.

At the end of the day, I eventually realised that NCsoft won’t do it for one simple reason: Korea still probably doesn’t quite understand how they managed to go so badly wrong with the Garriott brothers as the founders and owners of NCsoft North America, and wouldn’t dare risk another, independent, self-managing, ambitious subsidiary *anywhere* in the world. The Asian subsidiaries are all kept on a very short leash and get practically no independence from the Mothership (in Seoul) at all – the whole western conceptualization of subsidiaries is already anathema to the Koreans.

If anyone out there is interested in taking over Europe like this, drop me a line. I’d love to join in.

Categories
games industry recruiting

Shaming the recruitment agencies – Lorien

(today Lorien joins previous awardee Aardvark Swift)

There’s an insidious new form of spam on LinkedIn: people posting job ads on the linkedin forums. This is particularly stupid because you lose all the benefits of LI’s built-in job search system.

I saw a great one today from Lorien plc (clearly, not an agency you want to work with).

Forum: Video Game Industry Executives
Description: “for Gaming Industry Sales, Marketing, PR & Digital professionals”

Post:

We are seeking experienced C++ Games Developers just like you for a permanent oppurtunity in Scotland. Send your CV now to Ahmid.Nawaz@Lorien.co.uk or call on 0131 718 6396

OK, so a few tips for Ahmid:

  1. Tip: Use a spell checker when spamming job adverts to unrelated groups.
  2. Tip: Don’t spam unrelated groups
  3. Tip: Don’t spam job adverts on a site that has a dedicated Jobs section
  4. Tip: Fix your webserver so that when people go to http://lorien.co.uk they don’t get a “site does not exist or is not working” error message
Categories
iphone programming

High Score Server for iPhone (free)

I’ve made a highscore system for iPhone, complete with registrations, email confirmations, global highscore board, and iPhone client-side rendering.

I’d like to make it available as a free service (it’s live already, and included in a game I’m about to publish). I’m looking for volunteers who want to try integrating it into their games.

If you are such a person, or know someone, drop me an email (adam.m.s.martin at gmail).

A couple of very basic screenshots to give you an idea of what it does at the moment:

Admin features

In-game UI

(I’m not sure how much of this I’ll put in the download, but I’ll at least give you working sourcecode for it all and you can customize the UIView instances to display whatever you prefer)

Categories
maintenance

Question for RSS readers: replacement for Feedburner?

Hey, guys, I need some help!

Feedburner will be removed from the internet in 20 days time, which means I will no longer have an RSS feed.

Because of the way Google works (they do not allow multiple Google accounts to be simultaneously signed-in on the same computer), it will be physically impossible for me to use the “replacement” service from Google (I believe google thought this out very carefully indeed, and is very well aware of the consequences, but I won’t hit you with the conspiracy theory today :) ).

(and, in case you hadn’t noticed, Google has forcibly removed some of the features from Feedburner in the process, including the single most valuable one – the count of how many people are accessing your site through RSS)

Worst case scenario, I’ll go back to wordpress-managed feed, but someone with a misconfigured feed reader killed wordpress the last time I had that on, so I’m not sure how long it will stay up. I could install a cache server purely to cover the RSS feed, but that’s going to be a bunch of hassle I could do without (and I might well get it wrong, it’s been a while since I’ve configured Squid). I’ve looked at the WordPress Cache plugins, but they all have major incompatibilities / conflicts with other common plugins.

So … if I can’t find a replacement before 28 February 2009, the RSS feed may well magically disappear. Suggestions greatly appreciated!

Categories
bitching iphone Web 0.1 web 2.0

Web 0.1: Apple: please hire some web developers

I can no longer develop iPhone Apps. I am on my eighth attempt to download the 1.75Gb 2.2.1 SDK – without which, XCode refuses to even talk to my iPhone any more, because I allowed the iPhone to upgrade.

EDIT: I have it! I HAVE IT! YES! NO MORE PRAYING TO THE GODS OF ****ING APPLE’S CRAPPY WEB SERVER! (it’s probably a corrupted download)

The problem?

Sheer mind-numbing incompetence by Apple’s web team, it would seem (NB: I may be wrong; I haven’t tried packet-sniffing the HTTP traffic to prove this beyond all doubt, but my experiments with different browsers and different ISP’s strongly indicate it is the case). They’ve (mis)configured the webserver over at developer.apple.com to kill partial downloads of this monstrous file.

If you cannot download the whole thing before Apple automatically logs you out of their website (which they do every half an hour or so if you don’t actively surf the site), then your download is cancelled, server-side. You cannot resume from where you left off (their web server refuses to honour the HTTP command that tells it to resume a partial download).

What did they do wrong?

It’s a session-management problem – you CAN pause and resume a minute or two later. Just not half an hour later.

The other major bugs in the Apple websites (including that force logout!) suggest that some novice web programmer made a half-assed Session-management system that, well, sucks. (am I sounding angry? Hell yes; Apple’s website is behaving like some naive bricks-and-mortar company from 1999, not 2009). Or maybe they picked up a 3rd party one … that sucked. Whatever. It seems the session-manager is overriding Apache’s built-in support for this core element of HTTP, and saying “no”. For no reason other than bad web coding.

In passing, I noticed that they are *still* (allegedly – it’s easy to fake) running the same version of the Apache webserver that they’ve been shipping by default with OS X Server for some years now – a version that is more than 4 years old, 8 versions behind the current “maintenance” release, and 1 major version behind the “mainstream” release. Personally, I wouldn’t run Apache 1.x if you paid me, not with 2.x out there and running a “proper” webserver arch (apache 1.x is not a real webserver, it’s a hack using forks that makes it unnecessarily slow under heavy load).

</rant>

Categories
entrepreneurship games industry startup advice

A game dev studio made of Graduates

Someone emailed me recently to say he’s setting up a new game development studio, and that (for various reasons specific to his situation) the company will consist of around 90% recent university graduates. Without asking for details, I can make a pretty good guess that there’s government funding involved – I’ve previously seen grants aimed at game studios with similar constraints everywhere from the UK to Singapore. Probably this one is tied to a local University (that’s another classic government thing, especially in the EU: grants that have to go to “industry/academia equal partnerships”).

As he says, it’s an “interesting” challenge. Oh, yes. He invited me to blog about it (yes, I know – it’s a way of avoiding paying consultancy fees, but what the heck), so here’s some thoughts. At least this way I can record/archive some of what its like to be a recent Graduate before I get so old that I completely forget where they’re coming from.

(I’m not a recent grad, but I’m not yet old enough to have forgotten being one)

Where do you start?

In the past, I’ve seen people start with the management team. Then move on to the senior staff (hey, he’s got 10% of the company to play with), decide who’s needed, fit them to potential projects, etc. And finally – working with all of those people in place – finding and hiring all the Grads.

But … my first inclination would be to play to the strengths and weaknesses of the majority of your staff. In a brand-new startup with a team that don’t know each other the influence of each individual on the overall success/failure is disproportionately strong. Over time, as things become more settled, influence starts to becom proportional to seniority, experience, and knowledge. But not initially.

i.e. in this case the graduates.

Graduates

In my experience, graduates everywhere (including at least some parts of Asia, although I’ve mostly experienced Koreans not Chinese) are young, naive, eager, foolish, and fearless.

Specific universities mould their grads into having a very different set of characteristics, but assuming you’re picking bright, interested people, then those 5 are always present no matter where they schooled.

Personal Projects

They thrive on being given their own little projects that are their total responsibility. I think this is driven by two things, certainly in tech. Firstly, a fear of becoming the invisible cog in a giant machine that all adults have appeared to be to them, at a time when they’ve only recently found themselves and found their own uniqueness.

Secondly, I think most grads find University is the first time they start to experience personal responsbility, a move away from the family, no longer entirely dependent upon (and sheltered by) their parents. Some people become very independent during uni, others only just dip their toes in the water while there. In most countries, uni straddles the age of majority, and grads find themselves starting to be treated as adults by their society – one of the biggest parts of which is the expectation that they will take personal responsibility.

Clone Wars

I think a lot of people in this situation feel tempted to embark on a clone of a known game. The idea is that this will make up for the lack of experience by obviating the need for decisions on key game design and implementation issues: you don’t have to think, you just just play game X an extra time and “do whatever they did”.

That can work. As a recent example: so far as I can tell, it’s what a lot of the early F2P Chinese developers did – cloned Korean F2P games and just tweaked the “shallow” content (story, plot, theme, geographical location, etc – all the non-programmatic stuff). They’ve all done very well out of this.

However … as soon as market expectations ramp up, cloning becomes extremely difficult. You cannot afford to get “stuck” because you can’t figure out “how” the original game achieved something. With a team of veterans, you have an encyclopaedia of knowledge of techniques in their heads, and usually for each trick the original developer used at least one person on your time already knows that one. Where that doesn’t work, all your veterans each have a bag of tricks and hacks and band-aids that they can use to fudge it; nothing will slow them down for long.

(incidentally, China is probably well into the secand wave of MMO development by now, meaning that new studios there have no chance of doing the “clone + make lots of money” route; the developers that did that are now worth billions of dollars, and they’re already pushing the minimum quality bar up very, very high)

In the end, I think cloning is a bad fit for a bunch of grauates. If you get the timing just right, they’re a very cheap workforce to do it with, and they have too little self-esteem to object (see below). But at any other time, it plays on their weaknesses, and invalidates a lot of their strengths.

What graduates are good at

Grads are great for churning out large amounts of repetitive content. To them, everything still has a newness and freshness that makes even boring tasks interesting (up to a limit). This is partly why they get so “abused” by companies “eating them, chewing them up, and spitting them out”: they’re a cheap but skilled labour force. The mistake a lot of companies make is that grads are also smart enough that they see what’s happening. They’ll eat dirt for a while, having decided that it’s a fair exchange for the work experience and the knowledge they’ll gain both immediately and later.

I think a lot of companies are surprised that despite being more willing to eat dirt than other workers, grads also tend to rebel much sooner. In their minds, it’s a contract, and if the company doesn’t hold up its side of the bargain, they can easily go elsewhere and try again. Older workers have ties (families, fear of finding an equal new job, etc), but grads are both too young and too inexperienced to have picked those up; they can leave easily (or believe they can).

(IIRC South Korea has an interesting take on this: the grads can’t leave, by law, at least in the game development companies. Many of them are avoiding doing their National Service by working at a “critical industry” company instead – if they quit, they’d have to take up their NS place and run around in the freezing cold shooting at each other. Although it only buys the companies 2 years of immunity per grad, I’m sure that has been a huge boon to the SK tech industry)

Grads are also great at innovating, especially in stupid ways. They don’t have wisdom, so they don’t know that stuff won’t work, and will happily do it. Older/maturer grads start to develop suspicions that things might not work, and still charge ahead, but with some doubt; younger ones don’t even realise there’s a possibility of failure.

It’s a bit like an early hand-made gunpowder cannon. It can be a total disaster. And it can rarely be channelled, certainly it can’t be aimed with precision (by definition, the grads ignore the channelling efforts of their managers). But it can be pointed in vaguely the right direction…

Grads also don’t mind having their feel pulled out from under them so much. Upheaval and U-turns by management can give more senior staff cause for fear, especially those that have experienced incompetent management in the past. Where your management is strong, and gifted, and making a difficult decision to U-turn early in response to new realisations / better understanding of the situation, you can end up having to put a lot of work into allaying the fears of panicked workers. (of course, many good management teams underestimate the need for this, blindly expect their staff to trust them implicitly (ha!), and cause an even greater panic, and/or catalyse individuals into becoming the worst of themselves. Then they fire some of their best people, naively thinking they’re getting rid of the worst).

I’m not saying Grads enjoy this, just that they handle it much more easily (although some love it – it’s giving them *even more* of that all-important “real-life work experience” and the coveted “industry knowledge”).

Middle Management

A little story: when I was the CTO at one startup, the majority of our first fifteen or so employees were doing their first or second ever full time job. If I’d had the choice, I wouldn’t have done it that way. Not because of complaints about the people (people are great or terrible largely independent of their level of experience), but because the *collective* lack of experience made the overall team a lot less effective and a lot more fragile than it should have been.

(by the way, this story doesn’t reflect well on me :). I’m sharing it in the spirit of “let’s all try to avoid making mistakes like this in future, shall we?”)

One recurring issue was that the CEO would complain at length of the pointless waste-of-time crap his staff were getting upset about. He’d bemoan that these were tiny issues, that happened all the time, in all companies, and why were we obsessing over them so much? I objected greatly to this attitude w.r.t to our staff, that it was their fault and that they were weak and stupid to get upset – and that their distress was an irrelevance, and to be publically belittled and privately ignored. With hindsight I think that incited me to overreact on plenty of occasions, but … leaving aside the sentimental aspects, he had a good point.

This went on for many months, and at the time I could think of lots of things that could explain why these issues came up – and pointed to ways of solving or avoiding them – but the recurring thought was always: we wouldn’t even see these issues if more of our team had had more real-life working experience. I think we both agreed on that, too. In the darkest hours, he even muttered about considering firing the entire company and hiring an entirely new staff, of similar size, but of “better, more mature” people. If I remember correctly, we’d fallen way short of targets so he was under a lot of stress and just wanted all these organizational problems to “go away” so he could focus on the stuff he loved, the product design and the marketing.

I don’t think that company ever really managed to sort it out, at least not for several more years, just going by the quantity and quality of people that resigned or were “let go” (whether that means redundancies, firings, or whatever) over the years.

I had some vague ideas for solutions at the time – I could see that the problems were catalysed by the attitudes of the most senior people in the company, starting with the CEO, flowing through (and added to by) myself and the rest of the management team, and then down through everyone’s social and professional relationships to encompass the whole company. It was clear that even the best of people couldn’t always refrain from “putting the boot in” when crap flowed to them, making a bigger ball of crap for the next person along. It was subtle and pervasive – no one individual felt that he or she was responsible for what was happening, because their contribution was so small. But that’s the beauty of a team, isn’t it? The whole is more than the sum of the parts… In the end, I decided (amongst other things) that if we couldn’t reform from the very top down, we’d never be able to break out of the vicious cycle. I tried different ways to get the CEO to change, and tried to change myself, and worked hand in hand with some of the other C-level staff that felt similarly about the need for a top-down change, but I just wasn’t good enough to make it all stick. So in the end, I quit, just before the next funding round closed. Wherever the company was going to go with this new money, I no longer felt I could be part of it.

Over the years since, having seen other situations both earlier and later in companies’ and teams’ lifecycles, I’ve come to suspect that the solution might have been less diffcult than I’d thought. That all it needed was one simple thing: Respect. Easy to say, not so easy to visualize and enact, of course. In a company – a startup especially – that means: Complete transparency, Trust, Faith, and (this one was a killer at that particular startup) self-doubt whenever you find yourself disagreeing with your peers.

At that startup, I saw over and over again people with huge amounts of experience – in some cases decades’ worth – being laughed at and ignored by people with none. In the other direction, and no less forgivably, I saw people assume up front that their colleagues were “too stupid” to understand the task at hand and so go out of their way to hide the very existence of it from them. Plus plenty of other activities that ranged between those extremes. At the time, I objected to these things on a general professional level (and sometimes on a personal one); I even managed to fire someone who was a particularly strong offender – but I did it too late, and too slowly. What I didn’t fully appreciate, I think, is quite how *directly* critical it was to the overall wellbeing of the studio itself; I thought it was just one (particularly emotive) aspect amongst many.

And it was lead by the CEO. It got so bad that the management team ended up having two weekly meetings: one official one with all the C-level staff, and another, secret one preceding that one, with the same people – but without the CEO. It was an open secret. All the staff knew about it, except for the CEO, of course. It was a combination of damage limitation on our part, and playing him at his own game (he liked to play us all off against each other, whether deliberately or accidentally, drawing attention away from himself). So, we’d share critical info that we needed but he was refusing to disseminate. We’d prep each other so we could provide a united front on difficult company issues that we knew he’d try and twist into an emotional issue and wriggle out of, or belittle. We’d even occasionally select a fall-guy from among ourselves, someone to put up a strawman argument on new issues, because we’d found it was one of the most effective ways for him to accept suggestions and solutions that weren’t his idea: if he had the opportunity to first demonstrate his own authority by putting someone else down. I still don’t know if anyone ever told him about those meetings, although I’m sure someone must have sooner or later.

Obviously, there’s more, but that’s where this story ends. Any new company of Graduates is (I sincerely hope!) going to have a much more clued-up CEO. But, tempting as it may be to read the story and think it was all the CEO’s fault, it’s dumb to think that one man could control a whole company so completely: there was a collective problem as well. And IMHO it mostly came from the inexperience and insecurities and uncertainties of many of the staff. If so, then the tendency will be there for similar problems to develop, and fester, with any large body of inexperienced staff. The middle management for the new company need to read this story as a parable of an extreme situation they must never get anywhere close to (just to be clear: I’m not singling out non-managers as the problematic ones here – the senior management at that startup included people who were doing their first job too).

They need to not only rise above it (that’s enough to be effective as a company, but not enough to stop the rot setting in, as I think we found out) but also have to step in early and often to prevent bad habits and bad cycles forming. I think we were all too hopeful and happy in our jobs early on to feel enough fear and forsee how much “the little things” were in danger of snowballing; sure, we might have got lucky, it might not have happened – but the risk was big enough, and the outcome severe enough – that we should have snuffed it out right at the start.

That’s going to be a tough job. You have to act a lot more like parents and a lot less like colleagues some of the time. Again, with hindsight, I guess this makes a lot of sense – didn’t I just say at the start that recent Grads are still only half stepped away from their parents, or perhaps even less? Why should it be a surprise that they’re going to need more parent-like support than people in their thirties, forties, and fifties?

And, in contrast to the startup I described, I would hazard that I’ve seen at least one company where the most senior management were more than capable of it, but their middle management were not. It took longer for things to go wrong, it was a gentler slide, but a similar set of problems eventually engulfed them. So it’s going to be doubly hard for the guys running the show: it’s not just “can you do it?” but “can you be sure that the people who are reporting to you are themselves doing it, every day?”.

Projects

Go for the stuff that allows open-ended innovation, and large amounts of creative content. That’s what Grads are great for, in the abscence of anything else.

Make sure – above all – that you have a thriving “internal incubation” system, where everyone – and I mean “everyone” – gets to work on purely explorative internal game designs at least one month per quarter. Perhaps have 50% of your staff at any one time working on non-milestone-driven pre-production experimentation. Kidnap a Google software engineer and bribe them into telling you in detail exactly how the infamous 20% time works (and doesn’t) – don’t rely on the rumours – and work out how you too can afford to sacrifice so much of your time to apparently “pointless” work.

Because until you’ve got your company established, and some of your grads have found their natural places both professionally and within your specific company, you need to do everything you can to keep from killing their spirit and optimism. If you lose that, especially for a new company, you’re screwed. With such inexperienced staff you have very little else to stack the odds of success in your favour. You’ll produce unimaginative, weak games, and the way this industry works, everywhere, your first game is more important to your future than any other single game you do.

Wrap up

That’s enough free consultancy for now. I haven’t said anything about team leaders (lead coder, lead artist, art director, etc), nor about the mix of skills to look for in hiring the Grads themselves. But I think there’s more than enough meat in what I have said to keep you all going, and to give me new things to think about for the next few years.