Science & Tech

It does indeed compute

3 min read

CS 50 Fair spotlights students’ programming for the Web

More than 300 computer applications and Web sites that would delight both super-geeks and casual computer users were showcased in the second CS 50 Fair on Tuesday (Dec. 8) at the Northwest Science Labs, in a remarkable display of student ingenuity.

The ingenuity was all the more remarkable because a majority of the 380 students displaying the applications had no prior programming experience before taking Computer Science 50, “Introduction to Computer Science I,” taught by David J. Malan ’99, Ph.D. ’07, lecturer on computer science at Harvard’s School of Engineering and Applied Sciences.

Yet using skills gleaned from Malan’s intensive approach (“boot camp,” as one participant put it), students learned enough programming language to build applications that created jazz arrangements, showed areas of the world where major news was happening, produced marketplaces for trading services or selling textbooks, and highlighted the risk of swine flu infection by state.  The course’s final projects are displayed at the CS 50 Fair, which this year attracted more than 1,000 visitors.

Some projects reflected students’ own interests. Allison Rosenberg ’12, for example, created a “ResearchRover” that would find and send articles related to one’s own research. Members of Harvard’s debate team designed “Debase,” which stores post-debate information for high school and college teams. Some applications were Harvard-centric, such as how to find the shortest path between two campus locations or letting users receive text messages about the food being served in campus dining halls.

Other projects focused on social challenges. The team of Scott Crouch ’13 and Sophie Chang ’13 created an iPhone application for high school students to help guide them through the complicated field of physics.

At least two students created programs that analyzed “procrastination” to help users better organize their time.

Malan, who has taught the course for three years, was delighted with the breadth of the projects, noting an increased interest in designing applications for mobile devices and android applications using Google’s software development kit.

Computer Science 50 (also known as CS 50) aims to go beyond merely teaching programming languages like PHP and JavaScript, Malan said. Those languages “are a means to an end, and the end is to empower the student to actually approach some arbitrary problem — whether it’s in their research or other course work or within the computer science department — and solve that problem,” he said.

Malan’s course work, including problem sets, videos of his lectures, and other material, is posted on the class Web site, so that anyone with an Internet connection can “play along at home,” as Malan put it.