Balancing Coding and Theory in Computer Science

By Jaclyn Zubrzycki — February 17, 2016 2 min read
  • Save to favorites
  • Print

Late last month, President Obama announced a plan to help all students have access to computer science in school. The president’s 2017 budget proposal includes money for states and districts to expand access to computer science.

But just what should students be learning in those classes—practical coding skills, or the theory and principles behind computer science and coding?

NPR Education explored the debate about theory and practice in computer science in a recent piece.

On one side of the debate are professionals who say that traditional computer science courses spend too much time on the concepts and too little time teaching students how to code. One start-up employee, Gene Chorba, said that his company now recruits potential employees at hackathons rather than through traditional career fairs because the hackathons are where participants demonstrate real coding skills. Chorba said that students can graduate from college programs in computer science without having those skills.

On the other side are experts who say that students should at least be exposed to underlying ideas. NPR quotes Lisa Singh, an associate professor at Georgetown University, who says that students should learn the principles of thinking behind coding languages.

But Singh admits that, at the university level at least, programs often spend too little time on practice. (A fascinating recent story from Bloomberg describes how Howard University is making its computer science program more practical to help its students find jobs at big tech companies like Google. It also tackles the issue of diversity in tech.)

The College Board Advanced Placement program recently expanded its computer science offerings to make more space for theory: While its traditional test focuses on coding, a new course introduced this year includes more about problem-solving, data, and other issues in computing. The goal of the new test is to encourage more diverse students to study computer science.

It will be interesting to see how K-12 educators, school districts, and state departments go about constructing their computer science courses. Chicago, New York, and San Francisco have already committed to make computer science courses available to all, as my colleague Liana Heitin has reported. States are also considering having computer science count as a math or science credit. Will students come out of those classes learning to code, learning theory, or both?

Related stories:

Related Tags:

A version of this news article first appeared in the Curriculum Matters blog.