A place to discuss Development techniques, .NET, XNA, NHibernate or anything else that tickles your fancy

Monday, March 2, 2009

Best Guess Theory

I've read many blogs in the last 10 or so years. I don't think I've ever read a single one of their first posts. This is one of those. Best Guess Theory stemmed out of the concepts discussed in an article from the New Yorker, and some comments from Robert Dusek, a good friend/co-worker about naming a blog something like "We're guessing at this" (he'll blog with me at some point here soon I'd expect).

Back to the New Yorker article. Basically, your nervous system doesn't actually send a complex "packet" of pain to your brain, serialized with all of the intricacies that you're feeling, how much pain, where, burning versus smashing versus cutting versus freezing. It sends a much simpler signal, with minimal amount of info, shooting to your cortex. Your brain essentially makes a best guess at what to tell you you're feeling based on the small amount of information it's given. Smooth rock. Wet pond. Sticky syrup. Warm blanket. Hot fire.

More importantly than that, it's estimated that 90% of your perception of the world around you, is actually based on your memory of how something *should* look, how something *should* feel. Only 10% is actually interpreted by your brain from the signals received from your nerves.If you put that in the context of children, it makes so much sense why the first few years of a child's life has such a large impact on how they interact with the world. Because after those holes are filled, and the memory of the cortex is relatively complete, they're working off of previous experiences more so than current. That's the way we're trained to develop. It takes a real push to change your development style from what you learned when you first started down this path. You've got to stay on the edge, keep pushing that 10% margin and feeding your brain new sensory signals reinforcing and correcting it's associations. When you encounter a problem, your first question when solving it is probably something like: "Have I solved this problem before?". If yes, then your inclination is to attempt to apply your prior solution to the problem at hand, in some capacity. You solidify mappings between a problem and the approach you use to solve that problem in your memory.

It's extremely important to keep a critical thought process during, and after your implementation of the solution. The only way to evolve your ability to solve problems, is to association better solutions to those problems. Obviously, this is what Design Patterns are for. It's even more important to attempt to apply those patterns to your problem so you have a meaningful link between the pattern and the problem in your head. Remember, it's all in your head .

0 comments:

Post a Comment