I'm James Hague, a recovering programmer who has been designing video games since the 1980s. Programming Without Being Obsessed With Programming and Organizational Skills Beat Algorithmic Wizardry are good starting points. For the older stuff, try the 2012 Retrospective.
Where are the comments?
The Pure Tech Side is the Dark Side
When I was writing 8-bit games, I was thrilled to receive each issue of the home computer magazines I subscribed to (especially this one). I spent my time designing games in my head and learning how to make the hardware turn them into reality. Then each month here come these magazines filled with tutorials and ideas and, most importantly, full source code for working games. Sure, most of the games were simple, but I pored over the code line by line--especially the assembly language listings--and that was much of my early programming education. Just seeing games designed by other people was inspiring in a way that's difficult to get across.
Years later, with those 8-bit days behind me, I would regularly pick-up Dr. Dobb's Journal at the local B. Dalton bookstore (now part of Barnes and Noble). Reading it was mildly interesting, but I didn't get much from it. Eventually I realized it was because I wasn't immersed in the subject matter. My PC programming projects were spotty at best, so I read the articles but there wasn't any kind of active learning going on. And there was an overall dryness to it. It wasn't about creativity and wonder, it was about programming.
Those two realizations do a good job of summarizing my opinions about most online discussions and forums.
The ideal forum is when a bunch of people who are individually working away on their own personal projects--whether songwriting or photography or any other endeavor--get together to share knowledge. Each participant has a vested interest, because he or she needs to deliver results first, and is discussing it with others only second. It's easy to tell when people in online discussions aren't result oriented. There's discussion about minute differences between brands and there's an obsession with having the latest and greatest model. Feels like a lot of talking and expounding of personal theories, but not much doing.
And then there's the creative angle. Raw discussions about programming languages or camera models or upcoming CPUs...they don't do anything for me. There's a difference between making a goal of having the newest, most powerful MacBook Pro, and someone who has pushed their existing notebook computer to the limits while mixing 48 tracks of stereo audio and could really use some of the improvements in the latest hardware.
The pure tech side is the dark side, at least for me.
permalink August 8, 2009
previouslyA Personal History of Compilation Speed, Part 1
Want People to Use Your Language Under Windows? Do This.
How to Crash Erlang
Digging Deeper into Sufficiently Smartness
Let's Take a Trivial Problem and Make it Hard