I have been writing code, albeit not always well, since I was in 1st grade. There are things that we get right (AIM plugins and modules) and some we don’t (AIM Triton). It funny sometimes to step inside the world of developers in other industries to realize that they have some great successes and failures.
As someone who has owned just about every version of Madden football and basketball game through the years, an article on ESPN caught my attention where Pat Hruby went through his own personal pet peeves of every sports video game ever made. It is amazing how good sports video games have gotten over the years, but its still not a perfect world. At the end of the article, a software engineer laments on a recent game play experience he had, with his own game.
“The other day, I’m playing [against the Lakers], up one with 30 seconds to go,” says a basketball game developer. “The CPU fouls me, sends me to the line. Why would it do that? Play out the clock, get the ball, call timeout, take the last shot. Anyway, I make the free throws. The AI rushes the ball up the court, shoots as quickly as it can with Pau Gasol. And it’s an 18-footer. I get the ball and win.”
The developer sighs. He’s talking about his game. And it makes him crazy.
“For the past five years, we’ve set aside time to make sure the AI makes the right decisions at the end of the game. But either our engineers are stupid or our designers are stupid or I’m stupid, because we still haven’t gotten it right.”
I know the feeling. Perfection takes time and a little luck along the way.