Computer Science Should Supplement, not Supplant Science Education

Text-based header reading "No one argues that American students need more computational skills.  Yet computer science should not be used to take the place of science graduation requirements that, in many states, now only require 2 to 3 science related classes across an entire four year high school program."

Computer science (CS) aficionados have a lot to celebrate recently.

Just today, new Frameworks for Computer Science were released. A few weeks ago, a new law (AB2329) signed by California Governor Jerry Brown will bring computer science to every grade in the state’s public schools. Federal legislation introduced in September—the Computer Science for All Act—would authorize $250 million for competitive grants to states and local education agencies solely for computer science education.

These efforts are largely due to the CS for All initiative, a national campaign fueled by the White House and lead by the Office of Science and Technology Policy, the National Science Foundation, and the U.S. Department of Education to expand federal investments in CS education and support teacher professional development.  On Sept. 16 NSF Science Foundation awarded more than $25 million in grants to support of CS for All.

Earlier this fall the Education Commission on the States issued a report that says 20 states are allowing high school students to count a computer science course as a math or science credit toward graduation. This is up from 14 states when the same report first was issued last year.  While the requirements vary from state to state, the report also notes that has identified eight states that have authorized computer science to fulfill a math or science credit through “non-policy means,” such as board resolutions or public announcements.  Change the Equation called the state policies to make computer science count towards graduation “a decisive step in the right direction.”  

We disagree.

No one argues that American students need more computational skills.  Yet computer science should not be used to take the place of science graduation requirements that, in many states, now only require 2 to 3 science related classes across an entire four year high school program.

There is a lot of conversation about STEM and what it means to offer a world class STEM education. Computer science is part of STEM but we need to better understand the differences and distinctions between content areas as they relate to STEM and computer science in our schools. What is not being discussed by many of these decision makers in this rush to embrace computer science is how CS fits within the context of a quality STEM education.

Right now many states are working toward the Next Generation Science Standards (NGSS) vision of STEM teaching and learning (and many more embracing the NGSS foundational practices outlined in the Framework for K–12 Science Education).  Computer Science principles can be found in the NGSS. Science and Engineering Practices include developing and using models, and using mathematics and computational thinking.  In the integrated STEM classroom, using the principles of NGSS, educators are working to seek out real-world, relevant, authentic problems that would be of interest to students and ask them to apply computational thinking to solve the problem using data analysis, visualization, seeking patterns, and computation.

And as everyone knows, time in the school schedule is VERY limited and providing computer science as on a separate track cuts the instructional time pie even more, and sets up another silo in high schools.  Instead of competing with the limited time now dedicated across the K12 curriculum for teaching science, we need to work together toward a solution that incorporates all the STEM disciplines.

One solution? Schools and educators should be encouraged to teach the basics of CS through regular K–8 math and science classes (perhaps using Project GUTS and Bootstrap as models of how to do so), then promote the Exploring Computer Science course for all kids (but calling it ‘Problem Solving and Computational Thinking’) so math and science (and CTE) teachers can teach it.  AP and programming should be offered as electives in high school for those kids who want to study more.

US students are doing so poorly in science (and math) on international tests such as PISA and TIMSS, it is hard to believe that anyone would advocate for reducing the amount of class time spent on teaching and learning these subjects. We suppose that permitting students to take another science course in place of a math course for graduation credit might help those scores, but even the strongest science advocates would not make that proposal. Replacing science with computer science is just as shortsighted.

NSTA supports computer science instruction and believes that educators should integrate computer science across the existing standards and disciplines. This visible and growing national priority solely devoted to computer science and the rush to replace graduation credits at the expense of the science education is problematic.  We need all students to develop skills and competencies in problem-solving, critical thinking, creativity and collaboration, and this can be done in STEM classrooms nationwide that embrace and integrate computer science.  State policy makers should look for ways to supplement, not supplant, computer science credits in high school graduation requirements so that science education credits are not compromised.

Dr. David L. Evans is the Executive Director of the National Science Teachers Association (NSTA). Reach him at or via Twitter @devans_NSTA.

The mission of NSTA is to promote excellence and innovation in science teaching and learning for all.

Follow NSTA

Facebook icon Twitter icon LinkedIn icon Pinterest icon G+ icon YouTube icon Instagram icon
This entry was posted in NSTA Reports and tagged , , . Bookmark the permalink. Trackbacks are closed, but you can post a comment.

Post a Comment

Your email is never published nor shared. Required fields are marked *

You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>