Keep Taking Steps Forward

In the last couple of posts I’ve talked about a programmer’s greatest enemy: getting stuck. I talked about the various levels of how stuck you can get, from getting stuck while trudging through documentation to getting stuck because you don’t have the resources—passwords, files—that you need to perform a task.

This leads me to my ultimate advice for how to avoid getting stuck and how to get unstuck.

The secret to getting and staying unstuck is to keeping taking steps forward. Simple as that sounds, it is more difficult than it seems, and many programmers never master it.

Continue reading “Keep Taking Steps Forward”

Four Kinds of Stuck

A programmer’s worst enemy is getting stuck. Getting stuck on a problem hurts your productivity. Worse than that, it hurts your joy, your confidence, and your soul. Therefore learning how to avoid getting stuck, how to recognize when you’re stuck, and how to get unstuck is a key skill in the quest of becoming a great programmer.

One of the things that helps me both to avoid getting stuck and to get out of being stuck is understanding the different kinds of stuck.

Continue reading “Four Kinds of Stuck”

A Programmer’s Greatest Enemy

A programmer’s greatest enemy is getting stuck. A crucial skill in programming—and one that many of my beginning game programming students lack—is the ability to recognize when they’re stuck, to get out of being stuck, and to avoid getting stuck in the first place.

Indeed, it’s a skill I’m still learning myself, although the contexts in which I still get stuck are shrinking with time, study, and experience.

Continue reading “A Programmer’s Greatest Enemy”

How Siri Works

Once again someone has offered us incredible artificial intelligence, and once again we are bracing for disappointment. It happened with handwriting recognition on the Newton, which proved to be slow and clumsy. It happened with the not-as-smart-as-they-first-appeared creatures of Lionhead’s Black and White. And remember the Kinect debut video showing a kid interacting with an on-screen villain effortlessly, the AI character perfectly intoning the kid’s name? Kinect brought some of the innovations promised in that early teaser, but clearly the video implied a level of sophistication and polish that turned to vapor in the end.

But it’s Apple this time, with Siri on the iPhone 4S. And although Apple has screwed up before—witness the aforementioned Newton—if anyone has the motivation, the resources, and the smarts to get AI right, the iPhone dev team is it.

Continue reading “How Siri Works”

How to Get Your Game Idea Made into a Game

Joystick Schematic

NEWS FLASH: Check out House of Shadows, my latest game for iPhone, iPad, and iPod Touch.

I get dozens of emails each week from people wanting me to consider their game ideas. I hate to ignore any email, but I ignore this kind. If someone sends me an idea, it tells me that they got excited about the title of this page but didn’t read the post itself. If they had, they would know that there is really no point in sending me game ideas.

The only way you will ever see your game on a screen is if you make it yourself.

For a more complete explanation of why this is so, see my article on Why Won’t Developers Listen to Your Game Idea?

Now on to the main post….


You have a brilliant idea for a video game. It’s creative, original, intriguing, and fun. You can picture it vividly—the breathtaking visuals, the jaw-dropping action scenes. You can’t wait to play it, and when you tell your friends about it they can’t wait to play it either. Your only problem is, you don’t own a game development studio. How do you get your game idea made?

Continue reading “How to Get Your Game Idea Made into a Game”