Sunday, November 04, 2007

What Can Shakespeare Teach Me About IT?

If there's a pet peeve I have about Shakespeare, it's that connection between "Shakespeare is hard and useless, therefore why learn it?"  This morning out on a coffee run for the wife I heard a radio commercial for some sort of vocational school that used that exact line, presumably in reference to not wanting to get a real education at a real school:  "What can Shakespeare teach me about IT?"  (IT, for those not familiar, is information technology.  In other words, computer stuff.)

Well.  As a lifelong computer geek (been coding for 28 out of 38 years, thankyouverymuch) with a love a Shakespeare, I think I'd like to comment on that.  Let's talk about what Shakespeare can teach you about IT.

  1. Shakespeare appreciation is self-directed.  If all you know about Shakespeare is what the teacher makes you memorize for the test, you will fall very very short of what you can accomplish.  At best, school provides that glimmer of something that makes you say "Wow, I love this" and then do whatever you can to seek out more information. 
    Computer science is the same way.  If you love it, then you will go over and above what school teaches you.  If all you're doing is walking through classes in order to get the grade and the diploma, then you're not getting much out of life.
  2. Shakespeare wrote in a different language, with its own tokens and syntax.  Computer software is very much a game of speaking new languages (Java, Ruby, Erlang, take your pick).  You have to understand the context.  You have to know when you've seen an old word in a new context, and be able to make the leap of understanding about what that means.  Reading Shakespeare offers similar challenges. Most of the words he used as still in use today (as a matter of fact he invented many of them).  But he often used them in different ways than we do.  There's a certain amount of deciphering that has to go on.
  3. "Reverse engineering", for the non-IT crowd, refers to taking an existing piece of technology and taking it apart in an effort to figure out what the creator meant when he did certain things.  There's almost so much parallel to Shakespeare there that it's not worth mentioning.  Was he Catholic or Protestant?  Did he even write the plays?  Reverse engineering Shakespeare's works has kept scholars busy for hundreds of years.
  4. Shakespeare is a memorization game.  I'm convinced that Google kills memory cells.  Most programmers I interview these days will say that they don't need books anymore, they just google for the answer.  I think the better response is that they have the memory capacity to remember the answer in the first place!  No, of course not everything, but surely there are things you run into so frequently that you shouldn't be running for your search engine every day.  Same goes for Shakespeare.  When I'm speaking to someone on the subject and trying to make a point, if I have to stop and go "Oh, hell, what's that thing that Antony said in Julius Caesar about when people die?  Damnit, oh hang on a second let me google it...."  I'd look pretty weak and foolish.
  5. Shakespeare is Open Source.  Like the source material?  Take it.  Use it.  Put your own twist on it.  He did the same thing, after all.  What is "Romeo and Juliet" but a specific implementation of the "unrequited love" idea that already existed before Shakespeare got hold of it?

I'm tempted to do more, but I've got some code to write.

1 comment:

Bill said...

What can Shakespeare teach me about IT?

That the world is bigger than just IT.