One of my favorite ways to explain how passionate I am about coding is to compare it to the world of Harry Potter. To me, learning to code is the closest I will ever get to boarding the train to Hogwarts, taking my O.W.Ls, and crushing my N.E.W.Ts. Picking out a new computer and configuring Vim (new obsession) are akin to selecting a wand at Olivander’s. I could continue with the comparisons, but I think you get it.
Except there is one part of my Harry Potter analogy that doesn’t fit: in the world of magic, only those born with it can do it. While being born in a first world nation with access to high speed Internet, English-language training materials, and swanky computers may predispose you to excel at hacking, ultimately anyone can do it. There is a difference between anyone being able to do something and being good at it, or even enjoying it enough to try and be good at it.
We can argue for days about what makes a good programmer. Some people value soft skills while others value programming ability and breadth of knowledge. Others still argue for educational background or time in the field. Regardless of the actual reason(s), I think being good at programming is magical.
Why magic? Why not super powers? Because bad ass wizards don’t have to wear spandex. But really, it’s the limited nature of being a super hero that bugs me.
How many heroines/heroes have more than 1 super power? Not many. Compare that to magic, with its many disciplines, spells, and realms of knowledge and it feels a bit more like programming. The diversity of magic practically begs for comparison to programming, which is populated by opinionated polyglots with a wide range of expertise.
Also, I’m not doing this to save the world. I’m doing it because something inside of me needs to do it. Sure, saving the world is a bonus, but it’s also awesome to do things for yourself every once in awhile.
Part of me also hopes that someday I’ll meet a real dragon in the literal sense rather than a crotchety old dev whose demeanor resembles the scaly beasts.