Thursday, March 25, 2010

Academia Vs The Real World

The university lecturer who twice a year invites me to guest lecture for her class today e-mailed me a link to this blog post from (coincidentally) back around the time that I was quitting the full-time software scene. In it, blogger/coder Alan Skorkin lists 3 things that he wishes his Computer Science degree had prepared him for:
  1. Open source development
  2. An Agile process
  3. Office politics
It's a good read (other than a few distracting typos) and I agree with much of what he says. I'd hazard a guess that prepping someone for the corporate landscape as far as politics are concerned is probably a much bigger challenge than either of the other two, though, as my experience has been that every company - and sometimes, each department within a company - has its own unique set of hidden agendas, power struggles, misaligned value statements, unspoken expectations and everything else that makes up its culture... meaning that preparing for it would be quite difficult. I suppose that, at a minimum, students could be taught that those things exist, and perhaps could be lead through some role-playing for a few of the more common instantiations of each political element. That wouldn't be a bad thing.

Naturally, I'd like to see Agile added to the Computer Science curriculum, including for the reason that Mr Skorkin mentions: so that graduates would be more likely to bring that approach into an "old school" company that might otherwise never adopt it. I've even thought along those lines where our own local university is concerned, and have had some brief conversations with the aforementioned CS lecturer about it. So far, nothing concrete has come of it; but maybe someday...

No comments: