August 2, 2010

I'm a Shakespeare of Software

I wear funny clothes and people will remember me for centuries to come.

OK, maybe not for those reasons. But still, I find the best comparison to my programming style is the great bard himself. Some of you may not know this, with all the programming stuff I do, but I'm actually an English/Adolescent Education dual-major. No, no Computer Science degree. Yes, I spend my time reading literature. Yes, I will be teaching your kids.

As any English major must, I've spent some time with the bard (or his work, at least). One of the most striking things, and one of the things discussed in classrooms ad-nauseum, is the bard's remarkable lack of originality. King Lear, for example, is little more than an amalgamation of three similar stories, told and retold throughout cultures and time periods. In essence, William Shakespeare was the Disney of his day. Which is not to say that the bard never created something; he simply grounded his creation in the creations of others, standing on the shoulders of giants.

Which is all well and good, but software has no cultural history. Does it? Well, yes and no. There are certain problems that are solved and re-solved almost continuously. things like user authentication. These solutions grow to be abstracted out, and suddenly we wind up with things like OAuth and OpenID. We wind up with open source platforms that can solve these problems. These platforms, I would argue, are the cultural history of the craft.

And I, like Shakespeare, simply weave them together.

android2cloud, one of the most successful pieces of software I've written, was built by simply tying together four of these platforms. I stood on the shoulders of Google and OAuth, and in a month I pumped out an application that is used by over 300 people. The amount of code I actually wrote for that project is laughably small. Minuscule. And that is how I do programming; weaving together what others have built, until it fits what I need it to do. With the amount of cultural history available in programming, there's very little I can't do.

My suspicion is there are a lot of Shakespeares running around right now, weaving software together into a sum that's bigger than its component parts. We all owe a debt to the creators around us, who pioneer the new technologies we stand on, but they owe us a debt as well, for making that technology more than they dreamed it could be.

No comments:

Post a Comment