Saturday, November 21, 2009

What does "game developer" mean?

(This piece, originally on Gamasutra in March 09 (you can click the title of this post to go to it) engendered 89 comments, many of them quite out of line with reality (both the reality of what I actually wrote, and the reality of the importance of programming to games).)

As we all know, words can create the wrong perceptions. As far as I can see, the word "developer," applied to games, confuses the heck out of people who do not actually create games for a living.

For example, recently I spoke with some newly-minted college instructors who teach students to make games.

One of them told me, "Person X says he doesn't know anything about game development." Person X is a major official in the International Game Developers Association!

Later, I heard, "Person Y doesn't know game development." Person Y is heavily involved in game creation education, and ought to know something about game creation, surely, but comes from the art side.

Upon reflection, I realized that the speakers were equating "game development" with computer programming.

But is "game development," as a term used within the industry, the equivalent of computer programming for games, or is it something much broader? When creation of an electronic game was a one-person endeavor, back in the 70s and 80s, every game developer had to be a programmer. But this "one hero per game" style practically ended around 1990 -- so long ago that many college students were born after that date -- as most games became too big to be done by one person.

Game Development Is Not Programming

Obviously, you can know a lot about games in a variety of ways, and not know much about making games. We get students all the time at my school who think they'll be good at creating games simply because they like to play games a lot. Not so, bucko.

On the other hand, you can be an important part of a team that creates video games, and know next to nothing about computer programming.

Nowadays, many more artists than programmers work on electronic games. And there are teams of game designers, level designers, sound people, narrative writers, and so forth working on big games.

Programming is the minority endeavor. So why do we still call it “game development," have a flagship magazine named Game Developer, a flagship Game Developers Conference, and a flagship organization called the International Game Developers Association?

Here are the problems. First, to people who don’t work for video game companies, a developer is a programmer, someone who codes software. Using the term "game developer" to encompass all of the team that makes video games is quite confusing to computer-knowledgeable people outside the industry.

Next, to the non-electronic game industry, a developer is a person who polishes and finishes a game design for publication -- sometimes the designer, sometimes someone else.

Finally, the general populace rarely knows what a “developer” is in any context.

The Difference

For almost all video games, programming is a necessary evil, something that can only result in negatives for the game, not make it outstanding. What makes a video game outstanding is, first, the design, the gameplay or other interaction; second, the look and feel of the game, which is a combination of design and art.

Good programming can certainly contribute, but mostly, programming is there to implement the vision of the designers and artists, and is a fairly mechanical contribution to the game. But if it's poorly done, it can ruin the game. Further, patches can typically fix programming problems, but rarely fix fundamental design problems.

Today, many of the steps programmers used to have to do manually are now done by software tools, but we still have a long way to go. Ideally, we'd like to be able to tell a computer-based tool how we want a game to work, provide it with art, and it would write the software.

Game engines, a form of CASE tool (Computer Aided Software Engineering), take us in this direction, simplifying programming by (in effect) doing some of it themselves. Constantly, people are trying to write tools that will make programmers less and less necessary, less and less important, in everyday endeavors -- though it will always be true that if we want to improve computers, we’ll need human programmers.

We know there is creativity in programming. But once we get past the highly entrepreneurial stage of an industry (which we have), too much creativity in programming causes problems. In games we want programming to be reliable, solid, fast -- mechanical, not creative. (See Cowboy Coders) for more.)

On the other hand, programmers tend to be paid more than the other folks involved in game creation, so it’s clearly a skill very much in demand. Evidently, it’s easier to find good artists or designers than good programmers (supply and demand drive salaries). Perhaps the high valuation of programmers goes back to the bane of so many games, elementary errors: many of those elementary errors are programming errors.

The Core

So what is the core of game development? It's not programming and it's not development, folks -- it's design and art. Programming is a support function, not the heart of an electronic game. And if we look into the world of non-electronic games, we have design very much dominant, and we have some art, but we have no programming at all.

So why do we call ourselves “game developers”? We can continue to be Humpty Dumpty and use a term that often confuses those outside the industry, or we can adjust to the change in reality -- that programming is no longer the heart of game creation. Why not Game Creators Magazine, Game Creators Conference, International Game Creators Association?

Problems in Education

This term and the confusion around it affects education and influences young people. To go back to my original anecdote, it also influences people who teach game creation. These people equate game development with programming, yet they're teaching a generation that tends not to enjoy programming!

Unfortunately, game development programs in colleges and universities are often started by programmers, who have no interest in art and little interest in design (and sometimes, little interest in games!).

In many less-well-known schools, computer programming is fading away as a topic of interest for the millennial generation, or has already been dropped; game development is grabbed as a life-saver for those who want to teach programming but lack students. Unfortunately, these game development curricula are more than fifteen years out of date when they start.

My own experience of this is that when programmers start game development programs, those programs are usually a disaster for artists and designers. Game development education should be in the hands of gamers who are teachers, not of teachers who are programmers.

If you're a student planning to pursue game creation as a career, and you don’t want to be a programmer, find out whether the school you have in mind runs the programming version of game development, or the broader "game creation" version that accommodates non-programmers.

Problems in Perception of Art

Many video game makers are disturbed that video games are not seen as "art" by the general public. John Sharp recently discussed the difference between "mechanical art" (works of the hands) and "liberal art" (works of the mind).

I think video games are seen as mechanical art by the general public, because they are thought to be primarily achievements of programming, which is generally seen as a mechanical art. (In contrast, the non-electronic game industry is not concerned about whether such games are art: they are obviously works of the mind -- they have no programming.)

If we want video games to be seen as liberal art, we need to educate people that programming is a support function, not the principal activity of game making. One way to do this is to call the activity "game creation," not "game development." Why shoot ourselves in the foot?

We use "game developer" as a title out of habit -- a habit now outdated by changes in how video games are made. Why not switch to "game creator," which will cause less confusion to computer people, cause less confusion to wannabe game creators, and even cause less confusion to the populace at large, as well as encouraging people to think of video games as art?


Mark T. Tomczak said...

I think the point that this article makes (people should stop conflating "Game Developer" with "Game Programmer") is a very good point. We've pushed far past the days when game development consisted of a dozen coders locking themselves in a closet until Doom pops out.

I do take issue with the specific notion that "Programming is a necessary evil." This notion seems to place the game design at a theoretical acme, the pure conceptual notion that the game's code can only approximate. By that definition, the game also has an idealized look and feel, and the visual and audio artists are a "necessary evil" that can, at best, achieve but not exceed the vision of the design.

Based on my experience, it seems odd to pitch a tent and say "The game designers and artists are in here, but the programmers are out there because what they do isn't creative, it's merely mechanical." There's an old maxim that comes from stories of development at Apple: "Real Artists Ship." In the electronic game development space, this implies that a team needs good design, good art, and good realization of the game in the electronic medium to create a good electronic game. Any, or all, of these pillars can fail, resulting in a sub-optimal game.

Lewis Pulsipher said...

I don't regard video games as fundamentally different from non-electronic games. There are tens of thousands of non-electronic games that were never touched by a programmer. If the video game designer had some "magic" (technologically advanced) way to create the software--and as time goes on and technology improves, this will be the case--then programmers would be unnecessary.

That's why I regard programming as a necessary evil of video games, not fundamental to games.

It is already the case that someone who isn't a programmer by training or inclination can create the equivalent of Pac-Man with Gamemaker in a fairly short time. More and more complex video games will be made without trained/professional programmers.

Ultimately, programming is "donkey work," something that ought to be done by machines. But I could say the same about many kinds of work. Some of those kinds of work have already disappeared or are disappearing, some will disappear. Programming is going to be done by machines--already is, in many cases, though the machines are using software created by programmers--long before design or art is done by machines.

Daniel said...

Why have you come to the opinion that programming is something that "ought to be done by machines?" You're making a huge value distinction between game designers and artists on one side and programmers on the other, the basis for which is essentially "if we had some magic technology that could program for us, we wouldn't need programmers." This is hardly an argument, and the exact same case can be made for artists or designers, given a different "magic technology." The people making Pac-Man with Gamecreator don't need to be designers or artists, either.

I do agree that the design of a game (electronic or not) is where you find its soul; the greatest games are those which leave us with a special experience that comes from beyond art and programming. But in order to convey the design of a game, in order to create the medium in which it lives, you need a team of people with many different and complimentary talents.

There are games that exist which are purely design, those which exist only in our heads. But for all other games, without art, without manufacturing, without programming, you don't have a game; you have an idea. As long as these facets of a game are made by intelligent and talented people, they should all be given equal credit and respect.