It’s no secret that student enrollment in computer science has taken a sever downturn since the mid-90′s. Georgia Tech is hoping to address this problem by completely redoing the way in which computer science is taught at the university:
Fewer and fewer freshmen have been expressing interest in computer science. Some colleges have thrown up their hands, and pulled back on programs. Others have pushed to expand specialized fields — such as video gaming.
The Georgia Institute of Technology is today unveiling what some experts believe is a much broader approach to the problem. The institute has abolished the core curriculum for computer science undergraduates — a series of courses in hardware and software design, electrical engineering and mathematics. These courses, in various forms, have been the backbone of the computer science curriculum not just at Georgia Tech but at most institutions.
Instead, according to the article, a new curriculum called “Threads” is being introduced in which
- Students choose two of eight possible instruction “threads”, each thread correlating to an application of computer science such as modeling or artificial intelligence.
- Students will adopt a “role” — programmer, entrepreneur, communicator, etc. — and use the role to guide both curricular instruction and co-curricular experience.
Read the whole article here. Georgia Tech seems to believe that the main impediment to students studying computer science is the job market, specifically the outsourcing of computing jobs. The hope is that students who have a broader, less lock-step core education in the field will be more likely to hold a computing job that will not be outsourced. But from what I understand, computing jobs in the US aren’t outsourced because our programmers are too lock-step — it’s because there are people in the world around us who are better at programming and will work at a lower wage. Will removing a well-defined core curriculum really ameliorate that, or just make it worse? Certainly not having to take, for example, two semesters of calculus will appeal to those aspiring CS majors who want to do nothing but do video games (and who have next to nothing in terms of math and physics skills). But that’s hardly recouping lost enrollment for the right reasons.
[Update: I've had a chance to look at the Threads curriculum a little more closely, and there are a few technical requirements for any thread or role a student might choose -- in particular, every combination requires three semesters of calculus, a course in discrete math, and a course in probability. So it's not just anything-goes.]
Still, it’s a good idea to start thinking about what computer science really is from a curricular standpoint, and whether it’s best taught as a stand-alone academic major or whether — as conceived in the Threads program — it is really intended to be taken with something as a second major or even as a certification process. And leaving the hard-core study of computing as something more akin to a “computer engineering” major that deliberately focuses on the science and hardware side of things.