News
HMS Is Facing a Deficit. Under Trump, Some Fear It May Get Worse.
News
Cambridge Police Respond to Three Armed Robberies Over Holiday Weekend
News
What’s Next for Harvard’s Legacy of Slavery Initiative?
News
MassDOT Adds Unpopular Train Layover to Allston I-90 Project in Sudden Reversal
News
Denied Winter Campus Housing, International Students Scramble to Find Alternative Options
In any field of study, professors and students must struggle to keep up-to-date with changing concepts and applications.
In computer science (CS), however, where today's technology is tomorrow's trash, and the job market has been transforming for several years, Harvard has been careful to remain grounded in theory.
The theoretical approach fits well within Harvard's philosophy of being a liberal arts school, rather than a vocational institute: The department doesn't train students for jobs, it teaches them to think.
But while the curriculum has remained relatively static in most classes, some professors now say they are recognizing the growing impact of new fields on the subjects they teach--and adapting the department to meet those changes.
An Evolving Focus
"[Harvard computer science graduates] are very well liked by people on the outside, be it in industry or in graduate schools, but that doesn't mean we can't do better in terms of the breadth of our course offerings," says Dean of the Division of Engineering and Applied Sciences (DEAS) Venkatesh "Venky" Narayanamurti.
According to Narayanamurti, the computer science program plans to double its number of faculty members over the next several years. The increase is needed not only to provide a wider variety of course offerings, but also to meet the demands of a growing number of concentrators.
Nevertheless, McKay Professor of Computer Science Harry R. Lewis says, "we have never aspired to shift annually on what languages and packages we teach in response to rapidly changing practices in the field."
While some students interpreted last year's addition of a short unit on the Java programming language--which is commonly used in Internet applications--to the curriculum of Computer Science 51, "Introduction to Computer Science II," as a concession to the changing market, says McKay Professor of Computer Science Stuart M. Shieber.
He says that the move was motivated by other concerns.
According to Shieber, the fact that the assembly language known as MIPS was removed from the curriculum of CS 51 reflects the reality that assembly language programming is now covered in Computer Science 50, "Introduction to Computer Science I."
Java, which replaced MIPS, is now taught due to its elegant presentation of object-oriented programming, he says.
But, according to Narayanamurti, the department is starting to change its focus from the theoretical topics that have always been its staple.
"More recently we have built strengths in artificial intelligence and systems," he says. "We hope to build up in other areas such as in very large information systems and in areas of CS which impact electronic commerce."
Students say they've already seen some of the results of this shift in emphasis.
"There are courses and professors that constantly change their focus to be up to date with the world," says Lee D. Feigenbaum, a computer science concentrator.
"CS 144 ["Networks Design Projects"] is practically like a business course in the computer science department," adds Benjamin B. Wilken '01, referring to a new course offered this year.
Several professors at Harvard Business School give guest lectures in the class to teach students about the business side of technology ventures.
Next fall, DEAS will also begin operating a new technology institute, tentatively called the Technology and Entrepreneurship Center at Harvard (TECH).
The program will ultimately help students looking to become involved in the high-tech world through a variety of programs--for example, providing mentors, bringing speakers to campus, and helping students obtain start-up capital for their projects.
This program, championed by Narayanamurti, represents a change in policy for the College, which has previously discouraged students from running businesses from their dorm rooms.
Theoretically Speaking
However, while the department does have a heavy focus on theory, it nevertheless makes sure to instill a practical knowledge in students.
For example, introductory classes in the department teach students how to use programming languages, such as C++, that are commonly used in the computer industry.
"The Harvard CS curriculum has actually always been pragmatically oriented, designed in part to prepare students for the realities of industrial practice in computer science," writes Lewis, who is also dean of the College, in an e-mail message.
"In the world of CS departments, we are considered somewhat anomalous, because our senior faculty strength is heavy on theory, but we provide a superior education in the practice of computer science," Lewis adds.
According to Shieber, though, the department cannot possibly teach students everything they'll need to know--and is therefore responsible for providing students with a sound fundamental background.
Students in the computer science department say that they've been able to apply this theoretical education to practical computing problems.
Undergraduate Council member Paul A. Gusmorino III '02, who coded the council's UC Books web-based service, says that Harvard's theoretical approach helped prepare him to write the scripts that run the site.
"I do value the theoretical teachings of the department and [those] teachings do impact the real world applications we create," says Gusmorino, who is a computer science concentrator.
In order to find the best possible combination of booksellers from which to buy books, Gusmorino relied on techniques he learned in Computer Science 182, "Intelligent Machines: Reasoning, Actions, and Plans."
Michael S. Vernal '01 also defends the program's theory-heavy curriculum as more interesting than an approach that is focused on many specific applications.
"I'd rather be thinking about big problems that affect a large number of people, rather than sitting behind a desk writing code for some boring software package."
The Job Hunt
"You'd have to be brain-dead not to recruit at Harvard," Shieber says.
In fact, despite the growth of Harvard's computer science program, there are usually not enough graduates to meet the demand of recruiting companies.
According to Wilson L. Hunt Jr. '65, assistant director of the Office of Career Services, although around 100 technology firms recruit on campus, there are only about 60 to 90 students available each year.
"There may be lots of Internet start-ups, but Sun Microsystems is still one of the best companies to work for," Hunt says.
According to professors, the companies that hire Harvard graduates have been more than satisfied with the results.
"Once companies get Harvard students, they tend to come back for more," say Assistant Professor of Computer Science Steven J. Gortler.
"If you talk to Microsoft recruiters, you will find that they think many other programs have gone 'soft' while our curriculum remains pretty hardnosed," Lewis adds.
In fact, more students are going directly into the job market than before, joining the start-up economy rather than going on to graduate school.
According to Shieber, "Harvard computer science majors have been a sought after commodity not only in industry, but also in graduate programs."
A Common Crossroads
Tomas Lozano-Perez, associate head of the electrical engineering and computer science department at MIT, says that his department has answered these questions in a way similar to Harvard.
"We believe that people need to be grounded in the fundamentals, but they get plenty of opportunity to see the practical side in summer jobs," Lozano-Perez says.
"Our focus is in training people for their whole career," he adds. "We're not going to teach you how to be a website designer or an NT system administrator, which may increase your chances of getting a job on day one, but you would regret it for the rest of your life."
At Stanford, which has long offered student entrepreneurs the opportunity to be advised by professors, the department recently added more electives to its program in such areas as computer graphics.
Jean-Claude Latombe, chair of the computer science department at Stanford, says, "technology moves very fast, so the idea is to try to anticipate what is going to be important in five years and develop the theory around that."
Still, the department there has a firm basis in theory.
"We don't want to separate theory and application," Latombe says. "We changed the curriculum last year, but not in regard to the change in the market."
Want to keep up with breaking news? Subscribe to our email newsletter.