Saturday, January 3, 2009

When Did Ignorance Become A Good Thing?

I came across another blog today where a fellow software profession confessed that they don't have a degree in computer science.

I'll follow suit and confess that I don't, either. I do have degrees in mechanical engineering, two of them graduate work. I was working full-time as a professional the entire time after I earned my BSME degree. I completed nine out of twelve courses towards an MS degree in computer science from Rensselaer. I was sitting in a large lecture hall at the beginning of that last fall semester, listening to the requirements for a one-credit, year-long capstone course that would have had me pick a topic, write a paper, and present it in public at the end of the spring.

On that day I had been going to school every semester since I was five years old, but by the end of that class I felt as if my pilot light had been blown out. I didn't need to prove to myself that I could write a paper. Been there, done that. The motivation and energy needed to finish off the degree was gone. I withdrew from the class and didn't go back.

While we're in the confessional, I'll also admit that my mechanical engineering degree does not make me the best man for fixing what's wrong with your 2006 Toyota Tercel or your furnace. I take my car to others to be repaired, like lots of other people, because I have more discretionary income than time, tools, and mechanical talent. Mea maxima culpa!

Like my fellow developer and blogger, I've continued to learn since then. I have a home technical library that inspires awe ("Wow, you've got a lot of books!") or derision ("What a nerd! Look at all the money you've wasted on books!"), depending on your viewpoint. I've continued to drink from the fire hose of knowledge as deeply as I can.

The gist of his argument is certainly true: knowledge can be acquired by many avenues, formal and informal. Everyone can cite self-taught successes and clueless academics. "Did you know that Bill Gates flunked out of Harvard? What a bunch of losers they are!"

But the tone of his blog was disturbingly dismissive:
  1. "...the purported merits of having a degree is…just crap"
  2. "...This leads me to conclude that classroom learning is not particularly time-efficient."
  3. "...I think the primary benefit of learning in a college/university classroom setting is the fact that most people do not have the motivation or, in some cases, the ability to educate themselves."
  4. "...I would venture that the majority of these people 'perceive' that having a degree is better than not having one (the example set by Bill Gates notwithstanding)."
The blog ends with a prototypical story about an interview with someone looking for a developer's position: "...This person had an MBA...." (italics are mine). You can feel the indignation rising to the crescendo as the candidate's ignorance became more apparent: "...I eventually realized that this person could not tell me what a 'string' was. Yikes!"

Yikes, indeed.

I certainly agree that this candidate doesn't sound like a good fit for a developer job. But that single incident should hardly be used as a blanket condemnation of formal learning.

Having experienced both sides of it, I can say from personal experience that degrees are not crap. There are some topics that require a certain depth, rigor, structure, metered effort that can't be duplicated easily by one's own efforts. General math is one thing; tensor calculus is quite another. The learning that I do nowadays is different from what I did during my academic years. Perhaps it's age or the onset of adult ADD in this Internet, Twitter, YouTube world, but the quiet, sustained contemplation and concentration required to absorb truly complex material seems harder for me to come by.

I think it says something about computer science that the field can be penetrated so easily without any background. The talented amateur has become rare or extinct in medicine, physics, and engineering.

In his "Teach Yourself Programming In Ten Years", Peter Norvig says "...One of the best programmers I ever hired had only a High School degree; he's produced a lot of great software, has his own news group, and made enough in stock options to buy his own nightclub." His essay strikes the right balance, in my opinion. It cautions against 21 day experts while acknowledging different aspects of learning the field.

Could Larry Page and Sergey Brin have come up with Google without knowing about linear algebra, eigenvalues, and numerical methods? Could someone else who didn't go to Stanford have done the same thing? We'll never know, because they were enrolled in the computer science program at Palo Alto, and they invented Page Rank first.

But I don't think I'm going too far out on the limb when I say that it's unlikely that a self-taught, "Learn C# In 21 Days" programmer could manage it, even with the benefit of hindsight.

The anti-intellectualism tone of the blog disturbed me greatly.


Daniel Pratt said...

Firstly, thanks for taking the time to respond to my post.

I feel that you've taken me out of context to one degree or another, particularly your first quote. What I actually said was "a lot of what I read about the purported merits of having a degree is…just crap".

Also, this has to be the first time someone has accused me of striking an anti-intellectual tone ;-)

Michael Duffy said...

Hi Daniel,

Thank YOU for responding. You're my first comment ever. It's been crickets since I began.

Out of context? It's a direct cut & paste from your blog.

I stand by the statement. Just my opinion, of course.

You present degrees as if they're an either/or proposition: clueless people have degrees; motivated, practical people don't. You fail to mention any possibility that a person can have a degree AND be practical. I've known people who were both.

I could be wrong. It's not meant as a personal attack on you. You might be a fine developer that I'd be happy to work with. But the tone of the blog left a bad taste in my mouth. If those aren't your feelings, or if I've misrepresented you, follow it up with a correction.