Computer Science: Principles: Course Annotations
Computer Science: Principles: Course Annotations
2011 The College Board. All rights reserved. Computer Science: Principles is a pilot course under development. It is not an official Advanced Placement course currently being offered by the College Board.
This document is based upon work supported by the National Science Foundation, grant CNS-0938336. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.
will not focus on nor be organized around a specific language. The instructor of the course will select one or more languages, based on appropriateness for a specific project or problem and according to guidelines provided as part of the course specification. Language specifics will be taught only to the extent that students need them to produce their programs. Similarly, students in this course will work with "bigdata"to analyze it, to visualize it, to draw conclusions from trends in itbut the course itself does not specify particular tools for these explorations. A third theme that will help the course appeal to a broad audience is the courses focus on people and society, not just on machines and systems. Students will explore computer sciences relevance to and impact on the world today. They will investigate the innovations in other fields that computing and computer science have made possible. They will examine the ethical implications of new computing technologies. They will perform activities that develop their communication and teamwork skills. Students in this course will work individually and in teams to solve problems. They will talk and write about their solutions, the importance of these problems and their impact on the world. The success of this course hinges on both a compelling curriculum and an engaging pedagogy. The following Practices and Big Ideas specify the course curriculum: the content, practices, thinking, and skills central to the discipline of computing and computer science. Course instructors will be key players in developing pedagogy that brings these to life. Of course we must do more than provide a curriculum framework on which a course can be built, we must ultimately provide the professional development and teacher education necessary to ensure the success of the course on a large scale. As this course develops, pilot instructors will create resources including reading materials, assignments, and lecture materials necessary to ensure the courses success. Instructor training sessions will help new instructors gain the knowledge they need to confidently teach the course. Through this novel content and engaging pedagogy, we hope that students will experience the joy and beauty that permeates computing and computer science: the sense of community from connecting with friends on social networks, the ah ha! moment when an algorithm finally makes sense, the thrill of constructing a program and seeing it work, the pride of creating something for oneself, ones family or friends, or for the world.
5. Communicating Students in this course will describe computation and the impact of technology and computation, will explain and justify the design and appropriateness of their computational choices, and will analyze and describe both computational artifacts and the results or behaviors of such artifacts. Communication will include written and oral descriptions supported by graphs, visualizations, and computational analysis. 6. Working effectively in teams Innovation occurs through the work of individuals and teams. Individuals working effectively in teams can sometimes achieve more than individuals working independently. Students in this course will learn about effective teamwork and collaborate in the production of computational artifacts, by applying effective team practices, and by working to understand the different roles that are important in designing, building, and improving computational artifacts.
ways: they will develop and express original algorithms, they will implement algorithms in some language, and they will analyze algorithms both analytically and empirically. V. Programming enables problem solving, human expression, and creation of knowledge. 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 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. VI. The Internet pervades modern computing. The Internet and the systems built on it have had a profound impact on society. Computer networks support communication and collaboration. The principles of systems and networks that helped enable the Internet are also critical in the implementation of computational solutions. Students in this course will gain insight into how the Internet operates, will study characteristics of the Internet and systems built upon it, and will analyze important concerns such as cybersecurity. VII. Computing has global impacts. Computation has changed the way people think, work, live, and play. Our methods for communicating, collaborating, 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 many ways in which computing enables innovation, and will analyze the potential benefits and harmful effects of computing in a number of contexts.