Ben’s Blog

January 6, 2008

The truth about computer science and programming for a living

Filed under: programming — ben @ 12:04 pm

I was cleaning up our home office this weekend and happened upon three homeworks I’d saved from my freshman year in college. I saved them because they are significant to me because I consider it the point of my great awakening. During my data structures course I realized that Computer Science wasn’t about putting buttons on a screen or making something flash on a screen. It turns out it was about elegance, abstraction, efficiency and so much more.

People who have this awakening will take one of several paths. The first will decide that it’s not for them. The second will still continue because they can do the work and just go through the motions. The third group embraces what they’ve found as one of the most enlightening discoveries of their lives.

Of course the last two groups will succeed at their degrees and most will go into the software engineering field. The second group will be very successful and happy because they derive joy from moving things around on the screen and making things flash. The third group will also be just as successful, but they will be miserable their entire career. That is because they are not content moving things around the screen or integrating software. They consider buttons a trivial case. A small amount of the third group will find happiness in their work because they are the lucky few who end up in research or in jobs that have not been taken over by mindless tasks.

Ever since 2000 the number of Computer Science degree seeking students has been in decline. Departments across the country have been forced to downsize. This topic is at the forefront of a lot of professional publications. Nobody knows what to do. Many authors have tried to explain the causes. They range from outsourcing to lack of application.

While outsourcing exists, in the grander scheme of things it is not a problem. There are still more programming jobs than there are developers. That will not change. The lack of application is an interesting one. Many universities have begun offering programming degrees mingled with business instead of the traditional computer science. They throw out the stringent math and science requirements and remove all but the most essential computer science theory. Why do this? Because industry has asked for it. These days computer programmers are no different from assembly line workers at Toyota.

In fact, it would probably be more beneficial to be an assembly line worker. Computer programmers are salaried and exempt from any type of overtime pay unless the company makes a decision to compensate you. Programming is one of those fields that as you get older you are no more valuable than a young programmer. In fact, you are less valuable because you don’t know the latest technologies and you’re more expensive. Something happens to programmers as they get older… They disappear. Where do they go? Nobody knows. Some have been known to drive semi trucks and some have been known to be house painters.

Computer science as a field is shrinking. It probably won’t outright die, but the number of computers scientists will continue to decrease. Hopefully I’ll survive and continue to practice my craft. Maybe some day there will be so few computer scientists that I’ll actually be worth a lot. I don’t count on it. I’m putting most of our money in savings in anticipation of the day that I’m unemployable.

2 Comments »

  1. [...] Abernathy writes a poignant observation about computer science and the kinds of people that come (or don’t come) out of college [...]

    Pingback by On Craft — January 7, 2008 @ 12:05 pm

  2. I found your thoughts to be very enlightening because I am a Computer Science junior in college right now and you have definitely made me think about my future.

    Comment by cslife — February 9, 2008 @ 2:42 pm

RSS feed for comments on this post. TrackBack URI

Leave a comment

Blog at WordPress.com.