AP® Computer Science Principles is the newest AP course from the College Board, and becomes an official AP course in the 2016-17 school year. This course introduces students to the foundational concepts of computer science and explores the impact computing and technology have on our society.
With a unique focus on creative problem solving and real-world applications, the CodeHS AP Computer Science Principles course gives students the opportunity to explore several important topics of computing using their own ideas and creativity, use the power of computing to create artifacts of personal value, and develop an interest in computer science that will foster further endeavors in the field. The curriculum has been pre-approved by College Board's AP Course Audit as meeting or exceeding the curricular expectations colleges and universities have for this subject.
Quizzes:At the end of each unit, students take a summative multiple choice unit quiz in the style of the AP Exam that assesses their knowledge of the concepts covered in the unit. Included in each lesson is a formative short quiz of various question types, including multiple choice, free response, and matching.The course also provides an AP Test Practice unit with a cumulative AP Practice Multiple Choice Test.
One of the great things about taking a CodeHS course online as an individual is that you will get supported along the way from our community of CodeHS tutors. For exercises you submit, CodeHS tutors will grade the problem and provide feedback in addition to the automatic checker system. Also, if at any point you have a question, you can ask it through the site and a tutor will respond to help you get unstuck. Tutors normall answer questions very quickly, usually in a few hours.
The course is meant to be taken online as a self-paced course. We recommend setting a schedule to complete the course. Students complete the course in a wide range of time periods, but we would recommend 9 months to complete the course. You will have access to the course and tutor grading and help for a year.
This course is meant to be a first time introduction to computer science, and does not require students to come in with any computer programming experience. However, we recommend that students take our Introduction to Computer Science prior to our AP courses. Students who have completed our Intro to CS course will be able to apply knowledge of concepts covered in the Intro course to the more advanced setting of the AP courses.
The AP Performance Tasks:Students will gain the experience necessary to complete the AP Performance Tasks (PTs). Each unit comes with practice PTs in which students will research topics in computing, and create their own digital artifacts. Students will create and maintain a website that will hold each student creation throughout the course. This will serve as a running portfolio of each creative project the student completes.
The AP Exam:This course will prepare students for the multiple choice AP Computer Science Principles examination. Each lesson comes with quizzes to test essential knowledge for the AP Exam. Each unit includes a cumulative AP style multiple choice exam to test understanding of the concepts in the unit, and provide immediate feedback to the student.
As a Curriculum Engineer at CodeHS and former computer science TA at Stanford, Calvin has helped thousands of students learn the foundations of computer science.
|Web Development: Introduces HTML, CSS, and the processes involved in viewing web pages on the Internet. Students create several simple web pages using the CodeHS online editor, including their own website about themselves, hosted on their own custom codehs.me URL. This personal website will serve as a running portfolio of each creative project they create.|
|Introduction to Programming: Teaches what it means to "program" and allows students to focus on solving problems using code, rather than getting bogged down in syntax. Students solve problems by moving Karel the Dog around the grid.|
|Digital Information:Teaches the various ways we represent information digitally. Topics covered include number systems, encoding data, programmatically creating pixel images, comparing data encodings, compressing and encrypting data.|
|The Internet:Explores the structure and design of the internet, the reliability of network communication, the security of data, and personal privacy. Students will learn about the protocols and algorithms used in the internet, and the importance of cybersecurity.|
|Data:Introduces computational tools used to store massive amounts of data, manipulate and visualize data, find patterns in data, and pull conclusions from data. Students will consider how the modern wealth of data collection has impacted society in positive and negative ways.|
|Performance Tasks:Students create their AP Performance Tasks including a chance to review course content and practice the skills necessary to complete each performance task.|
|Review for the AP Exam:This unit gives students a review of the topics covered in the course and provides practice solving AP Exam style multiple choice questions.|
|Final Project:Students brainstorm a final project, discuss ideas with peers, scope and plan out milestones for incremental development, and build their own creative final product from scratch.|
This course is based directly off of the College Board AP Computer Science Principles Curriculum Framework. We recommend reading the curriculum framework for context. The main course objectives are summarized below in the six computational thinking practices and seven big ideas for the course.
Computational Thinking Practices:The six computational thinking practices represent important aspects of the work that computer scientists engage in, and are denoted here by P1 through P6:
Big Ideas:The seven big ideas of the course encompass foundational ideas of the field of computer science, and are denoted here by B1 through B7:
Students will learn and explore concepts around digital information, programming, data, the internet and more. See a few of the ways that students will learn about these concepts.
Students will learn the basics of programming with Karel the Dog. Karel is a dog who lives in a grid world and students will give commands to Karel to solve puzzles. Students can program in blocks or text.
Students will learn the basics of web development with HTML and CSS. Here you can see how students can design web pages using text or blocks.
Students will learn ideas around abstraction, digital information and encodings. Here you can see how students will explore black and white pixel images interactively.
Students will learn how digital information can be used to represent all types of data such as colors or text. Here students can create their own images with pixels.
Students will learn about how the internet works. This tool lets student explore the pathway that information takes through the internet.
Students will take formative assessments throughout the course in the style of the AP exam. Here you can see a sample question.
The Grading Plan