escaping the ignorance loop

The situation: You’re a beginner game developer with a technical question on how to implement a specific gameplay mechanic. You turn to the internet for answers, knowing that your question has probably been asked before. After some searching, you realize you’ve found many answers, but no solutions; a deluge of information that is more intimidating than helpful.

How do you know who to listen to? How are you supposed to know, given your status as a beginner? In many ways, the very knowledge required to identify and implement someone else’s solution is the same knowledge required to implement your own. In other words, you’re trapped in an ignorance loop.

One of the great things about technology creators is how open they are; how they’re freely willing to share their knowledge and ideas to anyone and everyone. If you have a technical question related to game development, there’s a very good chance your exact question has already been asked, answered, and archived forever somewhere on the internet. All you have to do is find it.

Now, an endless source of answers to any question you could ever have may sound like an advantage. But information overload is real, and too many answers vying for your attention can lead to analysis paralyzation. This is an industry with an incredibly low barrier to entry and an incredibly high skill ceiling, meaning the disparity in talent (and resulting success) between the top developers and the bottom developers is enormous. Practically, this gap results in beginners stumbling across solutions provided by industry veterans; answers which, while technically flawless and syntactically sublime, are often much too complex and in-depth to be helpful to a beginner. “Einstein007” is explaining relativity on Stack Overflow, but all you really need is the formula for cross-multiplying vectors.

The issue is this: There are a thousand ways to do any one thing. To make a simple character controller, for example, can be done countless ways, each with a slightly different performance profile, each bound by a slightly different organizational principle. The nugget of information you need to progress in your project may be buried within a much more complex answer. As a beginner, or a relatively inexperienced developer, how do you know which one to pick?

How do you escape the ignorance loop?

One unorthodox answer is you pick the first one. If you truly can’t tell the difference, then quit wasting your time and start implementing the first solution you find. Search result indexing will ensure ensure the first solution is usually also the most popular solution, so there’s a good chance it’s worked for other people in your position. If it turns out it doesn’t work for your specific needs, you’ll have a much better idea of where to go from there. But at least you’ll have learned something. Which means you’re that much closer to escaping the ignorance loop. Eventually, as you transition away from beginner status, you’ll get a feel for the systems and languages that drive your work, and identifying relevant answers will be easy.

Picking literally the first answer may seem like a brutish and inaccurate approach to problem solving – and it is – but inertia is everything in game development, especially for beginners. Better to move sideways than not move at all.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s