An odd thought, isn't it, that the people that need to make the most of new technology and drive development forward are those generally less welcoming of the next evolution in tech? But Albrecht's assertion that programmers in general are resistant to change has plenty of support.
One of the reasons programmers resist learning new technology is due to the sheer complexity of essentially relearning their job - "a change of operating system or code language is much more complicated than a change in many typical work processes," says Ricky Ohl, Senior Lecturer of Games Programming at Qantm College in Brisbane, Australia. For instance, whereas a concept artist may continue to use PhotoShop, something with which he may have 10 years of experience, a programmer may potentially have to throw code he's been optimizing for years out the window with each and every new console. Adapting to new technology takes time, which in turn reduces productivity. Taking this into account, it's easy to see how a programmer might be hesitant to discard the old for the new.
Leanne Bartlett, Senior Programming Teacher at the Academy of Interactive Entertainment (AIE), offers another explanation for why programmers might actively resist change. In her experience as a teacher, she's found that programmers are generally perfectionists, a necessary trait for the job but one that can result in programmers who "don't like to leave something until it's absolutely perfect."
In an effort to break in new student programmers seeking work in the gaming industry, the AIE "tortures" their programmers by putting them on a very tight schedule and then shifting them - "we get them to swap projects with each other and get them to work on each others code," says Bartlett. "We try to break those [resistant] habits in them."
Qantm takes a similar approach in educating their up-and-comers by "diversifying and exposing the students to as many different environments as possible," explains Tim Peach, a lecturer in game programming, "to equip them with not only the skills to program under different environments but also, and more importantly, the skill to teach themselves to program/problem solve under different and often new environments."
Teaching programmers to problem solve and adapt is more important, according to Albrecht, than actually teaching programmers how to program specifically for current generation consoles. "I don't think it's possible to teach programming, in particular, that will be directly applicable to current-generation consoles. You can teach good programming behavior and get them to actually build a game with artists, designers and producers. You can learn a lot from that."
Albrecht's message is clear: "Programmers need to be able to adapt. They need to change with the times. Just because you have spent five years learning a certain flavor of shader language and are proficient in Direct3D doesn't mean that the console you are working on will present you with that interface. The Sony consoles are a classic case of that - you have to relearn everything about the system [from each PlayStation generation to the next].
"Working on consoles is like climbing a mountain. You can climb one mountain over and over again and get really good at it (which is what a lot of programmers like and prefer) or you can challenge yourself and use what you've learned from climbing other mountains to help you climb new ones."
After talking to so many programmers, I'm inclined to spare a thought not just for the artists that created the remarkable character models and envisioned the environments of the latest epic, but for the programmers behind the scenes that have worked hard to ensure the newest games are running at a blistering 60 frames per second on whatever console I choose to play. Code hard, ye' monkeys, and let the next generation of consoles be many years away.
Daniel Purvis is an Australian gamer still praying his country will pull inline with the rest of the world and establish an adult R18+ rating for videogames. He is also Editor of www.GamingSA.com and blogs infrequently at http://graffitigamer.com.