Introducing Computer Science to the Public


Seven Big Ideas of Computer Science

In accordance with the process employed by College Boards for redesign of all of the science exams, a commission was formed to identify the fundamental content of the field that could be the basis for a curriculum of broad interest to high school students


Executive Summary
Endorse CS Principles
The Process
Content: 7 Big Ideas
6  CT  Practices
2010/11 APCSP PIlots
Become A Pilot Site

Any field with the word "science" in its name probably isn't a science.
-- Conventional wisdom among many "real" scientists
in the early years of field.

Computer Science is no more about computers than astronomy is about telescopes.
-- Edsger Dijkstra

Did You Know?

CS in HS In most US high schools, classes with the name "computer science" are not considered science classes, but are part of the vocational educational track.
Not For NCAA The general level of high school "CS" classes is so academically weak that several years ago, the NCAA announced it would stop accepting such classes to meet eligibility requirements

The goal of the Computer Science: Principles course will be to teach high school student's core computer science knowledge and capabilities. Because computer science is not taught in most high schools (except for the CS A-Test in Java Programming), the first task for the development team was to determine what that content should be. In concept it should be information most important for an educated citizen to know and understand. CS experts were queried to identify the relevant topics, and after multiple iterations, the development team created a list known as the Seven Big Ideas. The course's content and the exam questions will derive from these organizing principles.

  1. Computing is a creative human activity that engenders innovation and promotes exploration

    Creativity and computing are prominent forces in innovation; the innovations enabled by computing have had and will continue to have far-reaching impact. At the same time, computing and computer science facilitate exploration and the creation of knowledge. This course will emphasize the creative aspects of computing. Students in this course will create interesting and relevant artifacts with the tools and techniques of computing and computer science.
  2. Abstraction reduces information and detail to focus on concepts relevant to understanding and solving problems

    People use abstraction every day, but it is a central problem-solving technique in computer science. Traditional examples of abstraction in computer science include control and data abstraction in programming languages as well as analyzing and understanding hardware and software systems. This course will include examples of abstractions used in modeling the world, in managing complexity, and in communicating with people as well as with machines. Students in this course will learn to work with multiple levels of abstraction while engaging with computational problems and systems.
  3. Data and information facilitate the creation of knowledge

    Computing enables and empowers new methods of information processing that have led to monumental change across disciplines, from art to business to science. A staggeringly large amount of raw data provides part of the foundation of our information society and economy. People use computers and computation to translate, process, and visualize raw data, creating information. Computation and computer science facilitate and enable a new understanding of data and information that contributes knowledge to the world. Students in this course will work with data using a variety of tools and techniques to better understand the many ways in which data is transformed into information and knowledge.
  4. Algorithms are tools for developing and expressing solutions to computational problems.

    Algorithms help elementary school students learn to multiply, but algorithms realized in software have affected the world in profound and lasting ways. The development, use, and analysis of algorithms is one of the most fundamental aspects of computing. Students in this course will work with algorithms in many ways: they will develop and express original algorithms, they will implement algorithms in some language, and they will analyze algorithms both analytically and empirically
  5. Programming is a creative process that produces computational artifacts

    Programming and the creation of software have changed our lives. Programming results in the creation of software, but it facilitates the creation of more general computational artifacts including music, images, visualizations, and more. In this course programming will enable exploration and study as well as being the object of study. This course will introduce students to the concepts and techniques used in writing programs and to the ways in which programs are developed and used by people; the focus of the course is not programming per se, but on all aspects of computation. Students in this course will create programs, translating human intention into computational artifacts.
  6. Digital devices, systems, and the networks that interconnect them enable and foster computational approaches to solving problems

    Digital devices and the Internet have had a profound impact on society. The principles of systems and networks that helped enable the Internet are also critical in the implementation of computational solutions. Computer networks support communication and collaboration. Students in this course will gain insight into how systems and networks operate, to the principles that facilitate their design, and will analyze the effects of systems and networks on people and society.
  7. Computing enables innovation in other fields including science, social science, humanities, arts, medicine, engineering business

    Computation has changed the way people think, work, live, and play. Our methods for communicating, collaborating, and problem-solving, and doing business have changed and are changing due to innovations enabled by computing. Many innovations in other fields are fostered by advances in computing. Computational approaches lead to new understandings, new discoveries, and new disciplines. Students in this course will become familiar with the many ways in which computing enables innovation in other fields.

These big ideas form the intellectual foundation for the new course.

Though the Seven Big Ideas embody many computing concepts, they are not themselves "the content".

     Contact: snyder at cs dot washington dot edu