Sunday, April 12, 2009

CS theory, application, and education

I always knew that UC Berkeley has a great CS department, and it was theory heavy.  Apparently the latest US World News rankings agree.  So what does that say about the CS students that Berkeley unleashes into the wild?  I have heard certain knocks about Berkeley EECS grads.  I think mostly it has to do with the purpose of the EECS education.
As great and challenging as the engineering education I received at Berkeley, I feel there are two classes that should have been mandatory for all EECS students (the ones on the CS track anyway).
1.  CS169: Software engineering.  This class should be expanded and perhaps made into a 2 part series.  The real world requires working in project teams that's a part of an even larger group.  We needed to learn the entire software product cycle.  From requirements gathering to complexity and risk management to support and sustained engineering.  
2.  CS160: User interfaces.  No EECS student should be able to graduate without a course in HCI, plain and simple.
I think the Berkeley EECS program should take into consideration that a majority of the graduates will be going into industry rather than aiming for a professorship down the line.    

No comments: