Friday, 1 April 2011

Momma Don’t Let Your Babies Grow Up to be IT Guys

Momma Don’t Let Your Babies Grow Up to be IT Guys
Don’t let ‘em play with computers and install dual OSes
Make ‘em be doctors and lawyers and such…

I saw a report from the University of Alberta that showed the number of graduates in Computer Science have dropped from about 400 ten years ago to about 100 now.  This trend seems to be consistent across North America.  At the peak of dot com, it seems a ton of people flocked to the field.  They graduated about 2004.  And since then, youngsters just aren’t jumping to get in to Computer Science.

The noted Willie Nelson song is going through my head.  How many of us with Computer Science degrees who work in tech or software development would recommend our kids follow in our footsteps?  My six year old son recently said “Daddy, I want to do what you do when I grow up,” and without even thinking about it I said “No way.  Be a doctor or lawyer or something where you can use your brain.”

This thought has gone through my mind a few times since.  Somewhere along the way I have lost the passion I had for computer science.  Recently as part of my New Year’s Resolution I downloaded the development tools for Windows 7 Phone and made an app in short order.  I felt the surge of coolness and fun I once felt when building something new.  Then I looked at where I am in my career, and where my future is, and I became depressed.  I am a smart, knowledgeable fellow and my talents are completely irrelevant in my field.

The reason Computer Science is dying is because anyone can get into tech.  There is no bar, no standard, and no common ground.  The folks in tech are disposable.  As an undisciplined service industry, they are always screwing up.  So there isn’t much respect from other business folks for those in tech.  And I don’t blame those business folks.  It seems that many IT departments solely exist to be bottlenecks and are woefully misaligned with their business user's needs.  Vendors churn out crap that business users buy on the recommendation of their techies without much concern about quality or fit.  Tech zealots argue about tech-du-jour.  The Dunning-Kruger effect is everywhere.

Computer Science wasn’t supposed to be a path to a tech job.  It was a way to think.  Algorithms and data structures were cool.  Optimization and simulation were really cool.  But how often do folks apply the best-fit solution in their applications?  Or monitor performance after delivery?  Most times you just use a toolkit, or bang it out, because industry has come to expect crap that is just good-enough.  Version 1.0 is the last version.  And that guy with the 2 month programming course can churn out broken crap much faster and cheaper than someone who has a 4 year degree.   Then they're gone.  The direction from Project Managers, Business Analysts, and the like is the wrong direction, because those folks come from very diverse non-tech backgrounds.

So my recommendation to anyone who is considering tech as a career: don’t.  Go into environmental science, law, or dental hygiene…  anything but tech.  There is more job satisfaction saving the environment, standing up for people's rights, or making sure a person's teeth are clean and their gums healthy.