It’s a Computing Revolution in the Liberal Arts

Adam Cannon teaching his Intro to CS and Programming in Java course; Cannon hopes to soon add biology and business tracks to his new course, Computing in Context. (Photo by Timothy Lee Photographers)

Liberal arts majors are increasingly skipping cursory computer science classes for the more rigorous ones meant for computer science majors. And for good reason. New methods in machine learning and text mining are turning texts into data that can be analyzed computationally—giving English majors studying literary works, history majors analyzing past records, and economics majors examining financial trends powerful new ways to change how their fields are studied.

In response, Columbia’s Department of Computer Science last year introduced a new class, Computing in Context, to teach computer science in a way that is both rigorous and relevant to specific liberal arts disciplines. Aimed at students who may not otherwise take computer science, Computing in Context is a hybrid course taught by a team of Columbia professors and is the first of its kind to combine lectures in basic computer science with lectures and projects applying those methods to multiple disciplines within the humanities and social sciences.

The class is the brainchild of Adam Cannon, who during 15 years of teaching introductory computer science at the Engineering School has seen the number of liberal arts students in his classes climb. “These students don’t want an appreciation of computer science; they want to apply computing techniques in their own fields. And they’re going to change those fields because they can think about them differently. This is the beginning of a revolution in liberal arts,” says Cannon.

First they have to think like computer scientists. At its core, computer science is about structuring a problem into individual component parts that can be solved by computer. It entails critical and abstract thinking that is by itself a powerful method of organizing and analyzing information. Computational thinking can be learned and is part of all computer science classes, but most focus on numeric, not text, processing, and projects may not be relevant to liberal arts students.

Cannon’s class introduces context. While teaching basic concepts—functions, objects, arrays—and programming in Python, it inserts modules, or tracks, each created by a humanities or social sciences professor to show how computing concepts apply to a specific discipline.

A track is taught live once, with the material digitized for future classes that adopt the flipped classroom approach: students digest the context-specific material online, aided by teaching assistants who lead discussions and active learning tasks.

Three tracks have been offered since the class was introduced—digital humanities (Dennis Tenen), social science (Matthew Jones), and economics and finance (Karl Sigman). This fall, Cannon is offering a new track for students within the School of International and Public Affairs. Taught by Gregory Falco, a Columbia adjunct professor with expertise in sustainability, the track covers computational concepts and coding in the context of solving policy problems.

The class debuted in spring 2015 with all 150 slots filled. The gender split was 50/50, unusual for a computer science class; 100 percent were liberal arts students. Reasons to enroll differed. “Even if you don’t do computer science, you will probably interact with people who are techy, so it’s important to communicate with programmers on their own level,” says student Christina Cheung, a recent School of General Studies alumna who studied economics-statistics and transatlantic relations.

Suzen Fylke had enrolled for computer science before but never followed through. “I didn’t feel programming was for me, so the regular class was a little intimidating. Computing in Context offered an easier entry point since half the class was analysis on topics I was familiar with. Maybe I wouldn’t be good at the computer science part, but I knew I could do the analysis part.” For her, the class has been life-changing. Fylke took it in spring 2015, just before graduating with a degree in American studies, and has since enrolled in Hunter College to study computational linguistics.

Demand for the class is expected to grow. Cannon hopes someday 90 percent of all Columbia undergraduates enroll in a computer science class. Says Cannon: “It’s exciting to think some students coming out of this course are going to be faculty in 10 years. And they are going to have the computational skills to change their disciplines. That’s when I’ll feel this class is really successful.”

—by Linda Crane