Defining Computer Science
Computer science moves beyond using technology tools towards an understanding of how they work and ultimately designing new solutions to enduring human problems. Despite common misperceptions, computer science is not simply programming. Like any scientific discipline there is a body of knowledge that informs how people understand and perceive the world around them, and practices for exploration, creation and experimentation. Programming, defined as giving computers instructions to follow, is a practice used in computer science. The field itself is much broader, much as biology is not simply conducting lab experiments.
The Association for Computing Machinery, in their 2003 report “A Model Curriculum for K--12 Computer Science: Final Report of the ACM K--12 Task Force Curriculum Committee” defined computer science as “the study of computers and algorithmic processes, including their principles, design, implementation, and impact on society” ( Tucker, 2006, p. 2
To simplify, we use the working definition: The study of how we use computing technology to solve human problems.
Computer Science in Context - Universal Human Questions
Across history, geography and culture there are core questions that all human societies have grappled with. These questions are universal and enduring, and people use the knowledge, systems and technology to tackle with them. As these questions are addressed new knowledge and technology is created. This cycle of discovery and application is at the core of the human experience.
Today humans have a vast array of tools and knowledge structures that drive this cycle. One primary example is the field of computer science. Whether through the application of programming to create and explore, or through the practice of computer science as a scientific endeavor, many of the drastic societal and technological changes humans have experienced in the new milleniea are driven by computer science.
So, what are these questions? In terms of elementary computer science this document focuses on core problems that influence what students learn in other core subjects.
- How can humans explore and understand the world around them? How can this knowledge be applied in new and creative ways?
- How can people express themselves?
- How do people stay safe?
- How can people communicate over distances? How can these communications be private? How do people know the message arrived correctly?
- How can people do calculations more accurately?
- How can people collect and preserve information over time?
Topics of Computer Science
* Nationally cybersecurity is included with the networking and the internet strand, in the Virginia standards create a separate strand for cybersecurity.