It's a few weeks old, but I liked Zach Beane's post to comp.lang.lisp about “Aha! moments.”
I always like to read specific accounts of this sort of thing, but his description of the themes and his advice are great:
A few themes:
- Despite conceptually understanding how tools like CLOS and
closures and conditions work, it took a tricky problem solved
neatly by the tool to really make an Aha! moment
- Aha! moments have made complicated tasks simpler and
unapproachable tasks approachable (given the right amount of time
and effort). They take the magic out of things. (Philip Greenspun
used to say that his course would teach undergrads how to build
Amazon in a semester; despite the hyperbole, it really did take
the mystery out of how useful web applications can be
constructed.)
Advice:
- Be actively curious about how interesting things work ("how can
cl-ppcre be faster than Perl?")
- Be broadly aware of the tools available, and don't worry about
immediate application
- Don't settle for tedium (it's hard to have a breakthrough if you
have resigned yourself to something that feels substandard)
- People who write one interesting thing usually keep it up; find
and watch interesting people (trickle-down Aha! effect?)
Posted by jjwiseman at November 08, 2006 03:21 PM