Network News

X My Profile
View More Activity
Posted at 4:05 PM ET, 03/ 7/2011

Why so few computer science majors?

By Jenna Johnson
Washington Post Editor

The lives of college students revolve around technology -- yet not enough are studying computer science to keep up with industry demand.

Computer science programs across the country are scrambling to change this, often by trying to make coursework more relevant to the lives of students. One example, which I wrote about in today's paper, is a professor at Virginia Tech who helped his students create a mobile application that tracks city buses.

But why the lack of interest in CS in the first place?

Here are just a few reasons, according to several professors and others I interviewed for the piece. (I know there are additional reasons, so please share them with me in the comments section.)

Many don't realize the world-changing potential of CS.

Thanks to comic strips, sitcoms and general popular culture, computer engineers have been stereotyped as the ultimate anti-social dorks -- an image that many in the field are working to end. And for a generation of service-minded students who are searching for a way to change the world (and not just make money), computer science can seem less exciting and relevant than the other sciences. Several professors pointed to this as a key reason that so few women and under-represented minorities study computer science.

"It's very important for those of us who are educators to convey how relevant to everyday life computing is. This discipline is really a way to make life better for people in many ways," said Barbara G. Ryder, head of Virginia Tech's computer science department. "This is really a way to change the world."

Dot Diva is a campaign to encourage young women to become passionate about the "potential of computing to build a better world." The Web site lists cool computing projects girls might be interested in: creating devices to track endangered dolphins, GPS systems for people who are blind, software to decode ancient languages, mobile forensic labs and "smart phones that are smarter."

The same sentiment is reiterated in a video called "Power to Change the World," which was produced by the University of Washington and stars students, faculty and alums. Check it out:

Many high schools don't know how to teach CS.

Sign up for a high school computer science class, and there's really no telling what you will get. It might be an out-of-touch lesson in typing. Or an intense crash course in cumbersome Java programming. Or an intriguing seminar about interpreting data, learning the building blocks of solving problems and creating cool technology.

Because of that wide range of curriculums, the NCAA doesn't recognize computer science as a core course when determining the academic eligibility of student athletes. And computer science is one of the least-taken Advanced Placement tests, although a new course is under development.

It's not because kids aren't interested.

Jan Cuny of the National Science Foundation told me story after story of K-12 students being exposed to computer science and loving it. Many universities send their faculty members and students on road trips to local schools, or organize workshops and campus visits for students and teachers.

Cuny pulled up a photo on her laptop of a group of African American girls at a computer science workshop featuring little robots that play soccer. "They loved it," Cuny said. "Afterwards they were holding these robots and would not let them go."

A big part of the problem is getting qualified computer science teachers, keeping them up to date on the latest curriculum and paying for computing equipment. But it's easier and cheaper than it used to be, especially with the widespread availability of smartphones, wireless Internet and programs to help kids build blogs, videos and apps. "I think we're back in the age where we can show kids the power of computing," Cuny said.

Introductory CS classes can be boring.

Even if a student happens to become interested in computer science in high school, there's a chance that he or she will have a change of heart in college. And some introductory computer sciences classes can be, well, boring.

Many faculty members are trying to find ways to make these classes more intriguing for a generation of students who don't really know what life is like without the Internet -- without straying from the mission of teaching the fundamental principles of the discipline.

This semester at Virginia Tech, assistant professor Eli Tilevich gave undergraduates in his introductory software engineering class choice of two assignments: Write a computer program that operates like the paint palette already installed on nearly every computer. Or create a mobile application that mashes GPS data from city buses with cafeteria schedules, happy hour specials or anything else students can think up.

"Why should we wait until advanced classes to teach them something cool and interesting?" said Tilevich, who teaches 120 students in four sections of the course. "There are a lot of freshmen or sophomores shopping around for a major. ... It's very important that the entry-level courses catch their attention."

CS is still a new, young discipline.

When Ryder, the head of Virginia Tech's computer science department, was an undergraduate at Brown University, computer science was not offered as a major. She happened to taken an early computing class and found it "intellectually exciting." Other professors told me about discovering computer science not long after its birth and watching it grow as an academic field.

But computer science is often overshadowed by the other sciences, such as biology, chemistry, physics and engineering. And educators are still trying to find the best ways to teach computational thinking -- not just to computer science majors, but to all U.S. students.

"These are substantial concepts that everyone needs to know in the 21st century," said Ed Lazowska, who holds the Bill and Melinda Gates chair in computer science and engineering at the University of Washington."This is a degree that's useful for anything. Every year we send someone to medical school, someone to law school."

Okay -- what are some of the other reasons students aren't majoring in computer science at higher rates? I would love to hear your thoughts in the comments section below.

By Jenna Johnson  | March 7, 2011; 4:05 PM ET
Categories:  News Overload  | Tags:  Brown, University of Washington, Virginia Tech  
Save & Share:  Send E-mail   Facebook   Twitter   Digg   Yahoo Buzz   StumbleUpon   Technorati   Google Buzz   Previous: Spring break 2011! Need some help planning?
Next: Charlie Sheen wants an intern with #TigerBlood


Here are some real reasons why CS student numbers are down:

Curious potential CS students realize the H-1B visa -and other methods- enables U.S. employers to import foreign engineers. This results in MAJOR problems when seeking employment and when trying to grow and maintain a career.

See Norm Matloff's writings on this subject at

Other jobs are sent off shore to even cheaper venues. This is known as forum shopping.

See "Globalization and the American IT Worker" at

And "The Best Job in Town" By Katherine Boo at




(3) The New Yorker Audio Slide Show "The Company Town" wherein Katherine Boo talks about Harish Kumar, a worker in the Indian city of Chennai who is coping with the promises, and the problems, of American outsourcing.

As a former high tech worker, I actively counsel prospective CS majors to run from the degree and instead pursue careers that cannot be outsourced.

In the end, if you want to responsibly understand the symptom of reduced CS majors, you must examine the root financial causes that have created the dearth of students. To do otherwise is to ignore reality.

Posted by: cboynick | March 8, 2011 9:02 AM | Report abuse

It's definitely important to teach CS, but we don't need millions of computer programmers out there. What will happen is a repeat of 1999 when everyone got into tech then the market crashed and all those guys were out of work. The economy and life in general needs balance.
I built because I saw a need for it, but I got someone else to do the programming and I stuck to the ideas. We need to develop ideas because this is more important than anything else on the planet.

Posted by: spellett1 | March 8, 2011 4:21 PM | Report abuse

I believe the posts by cboynick and spellett1 are perfect examples of what popular opinion believes about CS, and these opinions are what's wrong. Computer Science is already a well established field and there are millions of stable, American jobs available in this field.

We are already living in the age of the internet, cloud computing, and video games. These jobs are not going to go away like the dot coms of '99. Additionally, the idea that you should not even compete for these jobs because some companies may outsource is rediculous. Where is the American spirit in that argument?

Computer programs can be extremely complex, there's no getting around this. Outsourcing is not a valid solution lots of the time when you need to get the job done the right way. It is still a new field which hasn't matured like the engineering fields. But with the popularity of smart phones and tablets, and html5 it's a lot easier to get your programs out in the mainstream these days. Popular opinion just needs to adjust to the new reality.

Posted by: mleak | March 10, 2011 8:15 AM | Report abuse

Intro level CS students don't realize that there ia a difference between CS and programming. You can learn how to program in a few hours. Computer scientists use computer tools (including languages) to study and solve real world problems, some of which have widespread general use applications. This takes years of disciplined study to become good at and before you can get there you have to study a lot of math and algorithms. I promise you, this is a lot less fun than throwing together a small project for a teacher in an hour before class. And it is an "all the time" subject. I write algorithms on my drive to school., debug while playing frisbee, and practice elevator pitches over dinner. A liberal arts major can write a paper, run out of time, get frustrated, and say "good enough" if they have other responsibilities. In CS we know when things don't work, so we keep pushing until they do. I spend about 30 hours a week at my computer and white-board just doing homework. That doesnt count all the extra time that goes into learning new tool and marketable skills. Then I still have to work, keep up my home, and everything else.

It's long, hard, and tiring. But when everything finally works it's extremely rewarding.

Posted by: dpfannen | March 10, 2011 9:36 AM | Report abuse

wow, so not the case re: the 'importing' of engineers...not what I've found AT ALL.
Right now, companies DO NOT want to have to sponsor anyone. It costs too much for them.
The first question I *ever* get asked is if I need sponsorship/if I'm a US citizen...
So, really, I have a degree that few people have, and most of my competition is from people who are *not* us citizens *or* have a green card. So they are eliminated from the search...competition - gone. Easier for me to find a job.

Posted by: atlmom1234 | March 10, 2011 1:44 PM | Report abuse

Post a Comment

We encourage users to analyze, comment on and even challenge's articles, blogs, reviews and multimedia features.

User reviews and comments that include profanity or personal attacks or other inappropriate comments or material will be removed from the site. Additionally, entries that are unsigned or contain "signatures" by someone other than the actual author will be removed. Finally, we will take steps to block users who violate any of our posting standards, terms of use or privacy policies or any other policies governing this site. Please review the full rules governing commentaries and discussions.

characters remaining

RSS Feed
Subscribe to The Post

© 2011 The Washington Post Company