Two days in at THQ

It’s been nearly two months since my last blog post, and that’s due to several factors. As I mentioned on Twitter and Facebook, I’ve started a new job as VP Technology for THQ. It’s a role I’m very excited about, and it took quite some time to move down to Los Angeles (from San Francisco). Another reason I haven’t blogged for awhile was this feeling of being “talked out”. After my time at Google I felt tired of communicating, which was a first for me. I spent so much time during my short stint there pounding out emails in the middle of the night, finessing messaging, and working on presentations to deliver at conferences. When I left Google I suddenly found myself needing some time for quiet, some time to think.

Now I’m sitting here relaxed yet displaced, in our temporary housing just northwest of Los Angeles, and having been to my first two days at THQ I’m starting to feel like my old self again. Moving away from San Francisco wasn’t exactly high on my list – I really enjoy the entrepreneurial vibe there, from the social games community in the city to the web-focused churn of Silicon Valley. There are always so many interesting things going on, and brilliant people trying to change the world around every corner. But in recent years it’s seemed like the people of MY games community, pushing the boundaries of technology and story-telling in games, had slowly moved out of the area. Studios had shut down in San Francisco, companies had closed in Marin, East Bay companies were encountering hard times, and publishers on the peninsula had downsized or moved away. I really enjoy mobile and social games, of course, but the hub of AAA games has slowly migrated away from the hub of technology innovation, to the center of entertainment: Los Angeles.

So I was already thinking, “Hm, if I ever had to move, it’d be either Los Angeles or Seattle.” (Seattle is where I grew up, and my family lives.) Peculiarly, the day I left Google, as I was literally driving out of their driveway, some friends in LA rang to see if I knew anyone who could do some game technology consulting for them. “Why, yes! Let me drive another 10 feet forward and then tell you a story…” Hm, fate calling! Soon after, I heard about the VP role open at THQ and we started having a chat.

During the three years or so that I did game technology consulting, what I enjoyed most was visiting studios and vetting them for publishers or investors. I’d get the chance to talk to the executives in the studio, as well as the directors of production, tech, art, audio, and design. I’d learn about their best practices, and share with them tips I’d learned as well. Then I’d compare the studio against the project or publisher or investor and highlight where the match worked well, or poorly. It was always so much fun to analyze the studio and see how it worked, and try to find ways to make it operate more smoothly.

As a consultant though, at the end of the day, you always walk away. As a consultant you don’t build up much over time except contacts and your own personal knowledge. What made me immediately interested in this role at THQ was the feeling that I could take all the knowledge I’d built up as a consultant, as well as my connections to the game engine, middleware, and console companies, and use it to help build up the company by doing what I enjoyed most as a consultant: analyzing studios and helping them make their games more fun, more efficiently. How could it get any better than that?

I talked with a lot of other really good people on the road toward joining THQ, at social games companies and mobile games companies, game engine creators and middleware manufacturers, as well as other large games publishers. But seeing THQ in the middle of a reboot, with a team of new yet veteran executives recreating the company by taking risks in AAA and casual titles, with a future roster of intriguing AAA titles on track, and a back-catalog that includes Company of Heroes, WWF, Red Faction, Homeworld, and MX vs ATV… it just sounded like so much fun.

So being here in LA – it’s kind of weird. I miss walking. I miss the fog. But I feel like, perhaps, I’ve found my people here. The place may be different, but the conversations are familiar: how do we make a really great game, how can we create an experience people haven’t seen before, how do we do it in on a budget, how can we finish it on time. And in that way, I have to admit, it kind of feels like home. :-)

Moving on from Google

Thanks!

This past Monday, I left Google. There are a lot of very interesting things going on at Google right now, and I enjoyed working with many of the people there, but it was not the perfect fit for me. I’m looking forward to my next adventure.

One of those things Google is working on that I do think is particularly great is Native Client. Opening up the web so that you can readily use languages other than HTML/JS and ActionScript is a really big deal. I hope that other browser providers will also adopt Native Client – it is open source after all! The web feels like it is blossoming open with this next wave of technologies, moving past its history as a markup language wrapped around text and toward a fully interactive platform for applications.

I’m really proud of the coverage we got this past week at GDC Europe about the Chrome Web Store. The idea of running apps in a browser is still controversial to some, but using the Chrome dev channel build with apps enabled I’ve quickly gotten used to the workflow and find myself spending more and more time in the browser. I still work on the desktop for larger apps, but for those apps which have a lot of the same needs as the browser, it just makes a lot of sense to have them live there.

For game developers, I’m looking forward to the day where we see more games running in the cloud, like Farmville and World of Warcraft do now, and it is easy for developers to create clients on multiple platforms so I can bring my game with me no matter where I am. As game developers we’ve talked about the idea of making multiple-platform game access simpler for a long time – trans-platform play where the experiences may be different, as opposed to cross-platform play where the experiences are the same – and it should be easier for developers to create clients for web, mobile and desktop without needing to write them in completely different languages or using vastly different SDKs. Microsoft is closest to this with XNA and Silverlight across multiple platforms; Apple’s SDKs across iPhone, iPad and Mac OSX are pretty cleverly designed as well; and Google is approaching it with Android NDK and Chrome Native Client. The increasing use of web services can abstract away a lot of the need for platform-specific SDK features, but there’s still a lot of work to do all around. Games aren’t getting cheaper to make, that’s for sure, and it’s important that technically complex features are still easily available to independent developers working alone.

Game engines and middleware are only getting better and better, and make increasing sense to use to bridge all these gaps. But the costs can be difficult to bear for indies, and there are also the different market systems, social graphs, and platform tech requirements to deal with… it’s clear there are still a lot of problems for the game industry to solve to make things easier for small developers. Which is good, because we all don’t like being bored. :) I’m going to continue studying and talking about the game technology space in this blog and occasionally on my Gamasutra expert blog, as always.

Lastly I want to apologize to those of you I haven’t kept in good touch with these past few months. A lot of people reached out to me during my time at Google, and I’ve been pretty lousy at replying back or staying in touch due to how busy I was. Sorry about that! I’ve found that increasingly my inbox overwhelms my ability to get work done, so I hope to do more tweeting and blogging in the future to help with that, a lesson I’ve learned from the very wise and public Robert Scoble.

I’m looking forward to sharing with you what I’m up to next!

Sharing video game history

Scott Steinberg’s article on CNN.com this morning got me thinking. Not about museums per se, but making historic games available for people to play and study.

However, let me first get something off my chest about video game museums. I’m really happy that some museums are sprouting up, and I’m a big fan of the International Center for the History of Electronic Games. But I really wish we had a video game museum in the San Francisco Bay area, which was the home of Atari. What better place?

We do have the Musee Mecanique, which is fantastic and specializes in early-1900s games. We also have the Pacific Pinball Museum, which you could say specializes in 1940-1980 games. What about 1980-2010 games? Arcade games? PC games? Console games? Where will people go to see these?

About a year ago I got together with a group of local folks with the same interest and we had a chat about the idea of starting up a local video game museum, but we’re all very busy and it was difficult to keep the momentum going. I still think about it a lot though.

However, there is one thing I’m spending a lot of time thinking about at work lately, and that’s Native Client, the sandbox for running compiled code inside of the Chrome web browser. Having compiled C++ games able to run in the browser is something I get very excited about. It makes me wonder – would it be possible to get some of these old games running in the browser via MAME? That could really lower the barrier to playing some of the historic older games… although admittedly nothing is quite like the experience of playing them on the original hardware.

I wonder, would it be interesting to emulate the old tools as well? I’m inspired by people creating new games for the Atari 2600, like Ed Fries’ Halo 2600 and Ian Bogost’s Guru Meditation. To me it would be very interesting to see what the experience was like of creating games for the Atari 2600 or Intellivision “back in the day”.

I’m going to do some playing around and see what I can get to work. Native Client is still fairly young, and under rapid development. But it could wind up being a wonderful way to share the love of historic video games with others.

Joining Google

Today was my first day as Google’s developer advocate for games. After doing consulting for the better part of three years (outside of some time helping spin up GreenScreen Interactive), the decision to go back to full-time work was not one I took lightly. Especially since it meant trading my 15 minute walk to the office for a one hour drive hahaha! But this was an opportunity I was extremely interested in from the moment I first talked with folks at Google.

Those of you who know me know that I’ve always been a huge advocate for lowering the barrier to entry for game development. I want games easier to make, less expensive and time-consuming to create, and simpler to distribute. These are goals that may never be completely achieved, but by continually striving for them we learn what needs to be done to encourage more voices, and to accelerate the growth of the art form.

I’ve always felt that Google thinks of web developers the way I think of game developers. Aside from being extremely committed to open source, Google creates many of its products with open APIs, so they can be easily extended by developers to add functionality. And the company really does encourage its internal developers to spend 20% of their time working on their own ideas. Some great products have come out of the passions of developers working during their 20% time! The idea of Google leveraging its strengths in web technology, bringing tools and services to massive numbers of people around the world, plus its over-arching friendliness toward developers – that gets me extremely excited about what it can do with the game developer community.

Over the years I’ve seen Google ship products that seemed very useful for game developers, like Google SketchUp and 3D Warehouse. I always wondered why they didn’t dive into games further – or, perhaps they were, and they were doing it in secret! :-) Google Lively was probably the closest thing to a game that they produced. When I started hearing about their work on O3D, I began to get very curious about what Google was planning.

Clearly there are a number of initiatives going on at Google that can relate to games in some way. Those of you who attended GDC for example saw a massive push for games for Android, with Google giving away perhaps thousands of Android devices. Now seemed like the perfect time to join Google!

My first day today was filled with meetings, something I don’t expect will change for a few weeks at least. :-) I don’t have too much to say about what I’m working on… yet. But I’m awfully excited about the direction we’ll be going, and am looking forward to sharing it with you all when the time is right.

Trendspotting at GDC 2010

Earlier this year I was planning to do a “Top ten trends for 2010″ post. But then, I got busy, friends of mine were doing it, and I figured hey, things are a little crazy, maybe I’ll do it later.

But then DICE came around, and GDC, and I started thinking – wow, if I’d written that post in January I’d look like I was really prescient now. Dang it! Seeing the games industry move in some unusual ways this past year has been fascinating, and there were some marked changes at GDC this year that I’d like to call attention to for those of you watching the game industry. Here are a few things that have caught my eye lately. I’ll keep it to six.

Disruption! Or, the diversification of platforms, distribution mechanisms, and business models. Dean Takahashi really nailed this at GamesBeat this year. We used to only have to think about a couple consoles, the PC, and maybe Gameboy, with all games delivered as boxed products. Now when planning a game we have so many more choices! Of course there is PC/Mac/Linux. And then PS3/X360. PSN/XBLA. Wii or WiiWare. PSP or DSi? PSP Mini? DSiWare? iPhone/Android/WinPhone7/Palm/Blackberry. Facebook and other social networks (Flash games largely). Oh wait, distribution? Well, aside from boxes, about a zillion digital distribution channels, including Steam and Direct2Drive, as well as social networks and mobile app stores. Ultimately the question for a business person is: if I have N dollars to spend creating a game, what platforms, business models, and distribution systems are going to maximize my likelihood of making N+M dollars in revenue? Will I make a free-to-play game selling virtual goods, or stick a disc in a box and sell it at a brick-and-mortar store? Or, oh yeah, OnLive? Gaikai? So many questions. It didn’t used to seem like the world was a simpler place. But it was. (A corollary to this is that platform providers will need to work harder to attract developers, since there are so many platforms.)

Broadening of the mobile space. At GDC this year I sat in on a Blackberry technical session. Later in the week I visited the Palm booth. Google was giving out Android phones. Microsoft was talking up Windows Phone 7 in a series of talks. And almost everyone in San Francisco seemed to be sporting an iPhone (God knows why, the AT&T signal in San Francisco stinks!) Now, as a developer, how am I going to make an app that works on all these devices? Yikes! Two years ago, I only needed to worry about targeting the iPhone. Now, at the least, I’m thinking about iPhone and Android, and planning to be ready for Windows Phone 7. And I’d really like to support Blackberry. And Palm. If you’re a game engine developer or providing cross-platform libraries or tools, now is your time to shine! I was surprised not to see many cross-mobile-platform tools at GDC. Unity is coming to Android… ShiVa is coming to Android. There aren’t too many others! There’s a huge opportunity for cross-platform mobile game engine technology.

Increasing interest in “serious games” and “game-ification”. I’ve been incredibly excited to see the White House engage with the videogame industry on several game education initiatives recently. The question “can games really affect learning?” is almost as common as “are games art?” and just about as useless a question, in my opinion. The answer to both questions is, “Of course!” Now let’s stop talking about it and go make some good-quality and effective learning games. At the same time, “game-ification” (thanks to Tim Chang for that term) is also growing. The increasing use of game design techniques in the “real world” is fascinating to watch. Using games to encourage people to lose weight is low-hanging fruit here (weight is an awfully easy “scoring” system). The new Ford Fusion has a game-like interface designed to encourage you to conserve energy. And leveling up at your local coffee shop by buying 12 lattes to receive a free one is a simple form of game. Game techniques are spreading out into the culture, and this is understandable – the language of games is one that more and more people grok, as kids who have grown up immersed in games become adults and continue to seek out ways to improve their lives. Game techniques (leveling up, reward systems, design loops, etc) make more and more sense.

Production quality rising in social games. The rise of social games was not something many people saw coming. The number of players playing Farmville itself each week strikes both fear and awe into many a videogame developer. How does one go about trying to compete with that? A way to compete which many have turned to in previous generations is not to build a better mousetrap, but to build a more beautiful mousetrap. We’ve already seen games evolve from Mafia Wars style spreadsheets of numbers to 2D Flash games. Some of the latest Flash games include a bit of 3D (Café World). What will come next? Full 3D games of course! Games made using Unity, Torque, or ShiVa (or Java) all allow for a full 3D gameplay experience but require the player to install custom plugins. Unfortunately, without installing a custom plugin, players are stuck with the simple 3D experience that can be created using modern-day Flash. There are a few Flash 3D engines out there (Yogurt, Papervision3D, PushButton Engine), highlighting the growing demand for 3D on the web. There are also a handful of native 3D technologies for the browser under development currently. Which will break through? O3D? WebGL? ANGLE? NaCl? Over the next 12-18 months it seems certain that we will finally get hardware-accelerated 3D on the web.

As the production quality of social games rises, budgets go up, making it riskier for companies trying to make money in the space. Smaller companies get squeezed out, and larger established companies find accelerated success via branding and co-marketing opportunities. It’ll be interesting to watch the space to see who survives!

The increasing use of external technology. Whether it’s the use of licensed game engines or the use of freely-available open source tech, it seems that many people are overcoming their fear of using other people’s code. I still remember the arguments years ago about the idea of licensing someone else’s game engine. And the original idea for Game Programming Gems was to give people code and algorithms they could use to jumpstart their development. These days open source and licensed tech is all over the place. No longer are people rolling their own game servers, for example, they’re using LAMP: Linux, Apache, MySQL and PHP. Small game developers are looking for every advantage they can, and turning to the vast environment of open source software such as free engines (OGRE, Irrlicht, PushButton Engine), tools (Blender, Gimp, VirtualDub), and physics libraries (Bullet, ODE, Box2D). New students coming into the game industry recognize that they can more quickly bring their game to life if they start with someone else’s code, so using an engine and toolset like Unity is a smart solution. Traditional games companies have had issues in the past with the use of open source code in a game they are boxing up and selling – too many potential legal issues – so what will they do with the flood of open source use from the indy community?

Increasing viability of game schools. I remember when the first few schools started teaching game development – at the time most people got into game development by dropping out of school and creating their own game, or perhaps they got in by spending time in the QA department. People going to school to learn game development? That was just a crazy idea! Thankfully, that was awhile ago now, and it has been a long road. But just in the past year, it seems a tipping point has been reached, and more people tell me about the GREAT students they’re getting out of schools now as opposed to the inept ones. The new graduates may not be able to code in assembler (and probably won’t need to), but they think about software engineering, engine architecture, and are creative in their use of data structures. They may not know how STL works and how to use it (or not use it) efficiently, but they can code up some really useful tools for your game, quickly. And those programmers you just hired also have design backgrounds, and have worked with other disciplines before, and shipped indy games, or iPhone games. Certainly there are good schools and bad schools, and good students and bad students. But this year I’ve been really pleased to hear about so much GOODNESS.

The past few years in the game industry have been tumultuous. But it always heartens me to see so many great games, and so many people playing them!