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?
Don't Fall in Love With Your Technology
In the 1990s I followed the Usenet group comp.lang.forth. Forth has great personal appeal. It's minimalist to the point of being subversive, and Forth literature once crackled with rightness.
Slowly, not in a grand epiphany, I realized that there was something missing from the discussions in that group. There was talk of tiny Forths, of redesigning control structures, of ways of getting by with fewer features, and of course endless philosophical debates, but no one was actually doing anything with the language, at least nothing that was in line with all the excitement about the language itself. There were no revolutions waiting to happen.
I realized comp.lang.forth wasn't for me.
A decade later, I stuck my head back in and started reading. It was the same. The same tinkering with the language, the same debates, and the same peculiar lack of interest in using Forth to build incredible things.
Free Your Technical Aesthetic from the 1970s is one of the more misunderstood pieces I've written. Some people think I was bashing on Linux/Unix as useless, but that was never my intent. What I was trying to get across is that if you romanticize Unix, if you view it as a thing of perfection, then you lose your ability to imagine better alternatives and become blind to potentially dramatic shifts in thinking.
It's bizarre to realize that in 2007 there were still people fervently arguing Emacs versus vi and defending the quirks of makefiles. That's the same year that multi-touch interfaces exploded, low power consumption became key, and the tired, old trappings of faux-desktops were finally set aside for something completely new.
Don't fall in love with your technology the way some Forth and Linux advocates have. If it gives you an edge, if it lets you get things done faster, then by all means use it. Use it to build what you've always wanted to build, then fall in love with that.
(If you liked this, you might enjoy Follow the Vibrancy.)
permalink February 15, 2012
previouslyA Peek Inside the Erlang Compiler
Four Levels of Idea Theft
Pretend This Optimization Doesn't Exist
Virtual Joysticks and Other Comfortably Poor Solutions
Recovering From a Computer Science Education