Friday, April 14, 2006

Software Superheroes

If there is one great thing about developing software is that software is probably one of the very few professions out there where you can be an awe inspiring Superhero.

Imagine if you were digging holes, moving rocks or filling in papers. How much difference would your skill make? You could perform maybe twice, three times better than an average worker. That's wholesome and fine, but how does it compare to superheroic feats such as flipping cars, vaporising enemies and flying at mach3?

Well, in software you can be that kind of superhero. Every improvement that you make, every skill that you learn, allows you to write better software and to handle greater complexity. If you can handle complexity you can build intellectual augmentations that are like a small army of cybernetic agents working for you. You harness the power of your skill and your agents, you simplify and organize and you move towards even greater levels of complexity.. that you can handle using abstractions. Your relative effectiveness is moving along an exponential curve by leveraging the previous software layers.

If you are a hotshot ruby programmer with a mastery of metaprogramming and you do dynamic programming con gusto, then you can take on a small IT department. Compared to a dozen of mediocre ASP programmers that copy and paste queries inside html code you are like a small determined hitech army. They won't even have the time to react. You are too fast for them. You do things they don't even comprehend. Sometimes they don't even understand that you are doing anything at all!

It's fun to be a superhero in the software world

(image by Chip Kidd)

Comments: Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?