Our approach at Georgia Tech’s College of Computing focuses on the needs that Dr. William Aspray emphasized in his blog here, based on the recent ACM Globalization report: the need to prepare undergraduates to have “flexible knowledge,” and for curricula to take “an interdisciplinary approach.”
All Georgia Tech students, regardless of major, are required to take an introductory course in computing. Between Fall 1999 — when the requirement was put into effect — until Fall 2002, there was only one course that met that requirement: the one developed primarily for our majors. Why wouldn’t we just use that course? Doesn’t one size fit all?
Teaching a required course that was widely despised by students and which suffered high failure rates put us in an excellent position to think about reframing our curriculum, as many educators are doing today, in a desire to engage and sustain a diverse range of students.
We realized at Georgia Tech that context matters. Presenting computer science in contexts that make sense for students, that make computer science relevant, is absolutely critical. In Spring 2003, we introduced two new introductory courses. The one for engineering students uses MATLAB and draws on engineering problems for the programming projects. The one for architecture, management, and liberal arts majors uses creation and manipulation of media (e.g., image processing, manipulating sounds, generating HTML, implementing digital video special effects) as the source for examples and programming assignments. Both classes have had dramatically improved success rates and are much more popular with students.
We are now in the unusual position of having non-CS students intrigued with taking more computing courses. We created a second media computation course, which was 75 percent female in its first offering. We have established a computer science minor — which we never had before because there simply was no need for one. We have created a new degree, a BS in Computational Media, which is a joint effort between the College of Computing and the School of Literature, Communication, and Culture. We figured that a new degree with an unusual name would get maybe 10 students in the first year. We have over 100, and 25 percent of the students are female.
Having learned our lesson that context matters, we have now revised our own BS degree in computer science to reflect this understanding. We have defined the Threads™ curriculum as a way of structuring the degree so that students see the range of activities and foci that define what computer scientists do. We have identified eight threads: Computing and Foundations, Embodiment, Media, People, Information Internetworking, Computer Modeling, Platforms, and Intelligence. Within each of these Threads are a set of classes required for that Thread, including introductory courses, advanced courses, and courses outside of CS (e.g., Psychology for the People Thread.)
The definition of the BS in CS degree is now “Any two Threads.” A student might study Platforms and Media to learn about presenting video on cell phones, or might study Embodiment and People to focus on robots that interact in social situations. We now offer 28 different paths to an undergraduate degree. In this way, we make explicit that computing is about far more than programming in a cubicle — we’re about contexts that matter and about interaction with a variety of disciplines. Threads enable students to differentiate themselves in a globally competitive market. We have learned that when “The World is Flat,” we need contextualized, computing education.
Mark Guzdial is a Professor in the College of Computing at Georgia Institute of Technology. His current research focuses on facilitating student learning through student design, construction, and analysis of artifacts.