ignore your environs, i.e.: dreaming big and forgetting “realistic”
Posted in Anecdotes, The Opiner on April 14th, 2010 by addie – Be the first to commentThis post is intended as a one-off that ties up some of the things I’ve been thinking about over the past week semi-nicely (although certainly not conclusively or totally coherently!). I thought I’d think it out loud for a few paragraphs.
My weekly catharsis for over a year now has been Baby Ketten Karaoke, which presently hosts a karaoke evening on Tuesdays at Mississippi Pizza and Wednesdays at The Woods (both in Portland, Oregon). This week I had the privilege to sing the KJ’s (Karaoke Jockey’s) daughter’s debut track, for Fever Ray’s “Triangle Walks”. The girl who put together this track is only eight, and already cooler than most people I know. Post-singing, I was talking to her dad about the cute visual effects she’d added to the track, and he mentioned how she’d suggest something crazy to him for it, he’d say “No, that’s not realistic”, and then after a few moments realize it was doable. And what a refreshing take to have on the process, to have a kid with no sense of the boundaries to stop her creatively.
It reminded me of a conversation I had quite often in the year or so surrounding my graduation from college and entry into the workforce, specifically with recruiter-types from Google. The idea in hiring good developers is that you want to hire for talent over experience (and I agree with this premise; Code Anthem’s recent post How to Find Crappy Programmers really drove that home just this weekend). I was really good at injecting my insecurity into a lot of my discussions about future jobs back then, to the degree where I got used to the “we value talent over experience” sound bite as a response. The touted perks of the talented but inexperienced developer were similar to that of my KJ’s daughter - that they (although I hate the term) “think outside the box” and will be creative in certain ways simply because, by being inexperienced, they can’t conceive of the limitations in any given project, and in that occasionally blooms magic.
I’d hear this explanation of the value of the talented and inexperienced, which I knew to some degree was being provided as a reassurance of my own potential as a developer, and yet I knew this was firmly not the case for me. I prematurely plunged myself into the world of adult realism and all the depressing limitations that come with it as a high schooler, most likely as a result of a teenaged romance with someone far more disciplined and achievement-oriented than myself (and that was saying something - as a couple, we were old and boring before our time). That romance, and my observations of the world tending to end up on the cynical side of things more often than not, quickly sucked the room for play out of my life, with regards to all of my creative interests - not just programming. (Many adults who knew me as a child would have said back then that my future was in creative writing. Since age fifteen the idea of writing fiction for fun hits an immediate mental block. It’s laughable! Classic creativity sap of adulthood!) I was aware of how quickly and suddenly it disappeared for me (adolescence is good for that), and have spent the last ten years or so trying to reclaim bits of that ambition towards creativity that flies in the face of the boundaries of reality. (It should be mentioned that karaoke nights have been great for this too - I’m surrounded by dreamers and creative types who may be poorer and less gainfully employed than me but provide a world of inspiration and insight.)
I speak of this in terms of creativity because programming - especially on one’s own time - is such a creative outlet. I could tell that I lost that “spark” for creative work long before I became a self-identified programmer, but the lack of that push to create simply for the sake of creating has been most glaringly obvious in my programming work. For years I haven’t bothered to jump into a project because “surely someone’s already done it, and better than I could.” I quickly learned that such timidity doesn’t just hurt me creatively, but it also hurts me professionally, because being firmly oriented in the reality of one’s abilities (”someone else could easily do this far better than me”) has a paralyzing effect that impacts overall productivity far worse than “reinventing the wheel”. I’ve had many programmer friends who I have admired for not facing this mental boundary, and I’ve tried to tap into their minds to understand why they aren’t held back in the same way I am.
I think I’m making progress. My mental queue of personal projects is growing, and I’m happy to feed it, even when I know that half of what I’m doing has been the personal project of countless others. I can find justification for “re-inventing the wheel” on these projects lately because (1) the project will help me develop my skills far more than extending a pre-existing product and (2) a product written by me molds perfectly to my own functional requirements. I also think I’ll have less reticence about sharing these projects with the public: although the Internet can be the source of incredibly toxic feedback, I’ve actually been surprised at the niches one can inadverently fill (like finding one of my own posts when doing a Google query on Virtualbox recently).
I’m a far cry from the sense of infinite magic that programming presented itself as when I first ran into it at around age 12, though. I became aware of the learning curve ahead of me pretty quickly, which fizzled out the sense of potential almost as soon as it had appeared. Being keenly aware of the world around me has been an incredibly helpful personal strength, but in terms of jumping into new things with abandon, my sense of the big picture has been paralyzing. Tonight’s conversation with the KJ reinforced the need to reacquaint myself with that sense of magic. Even if most of what I do is a repeat, niche knowledge introduces itself in the most unpredictable of places.
I write this mostly with the people like me in mind; those of us who feel paralyzed by a network of self-constructed boundaries. Sure, many of these boundaries have a basis in reality, and the viciousness of the Internet does a good job of reinforcing, and then skewing, our doubts. But paralysis only hurts us. As my KJ’s daughter reminded him, our perceptions of what is realistic are really just that - our perceptions - and not fact. For those of us held back by our own restraints, may we continue to challenge those self-imposed boundaries and discover the true scope of our potential.
/end ramble!
Funny: I mention a post from Code Anthem in this entry; after writing, I went to said blog and discovered today’s entry: Old Programmers vs Young Programmers. Very ironic given that this post was about how I lack the supposed key trait of a young programmer