- Creativity is central to computing. In this course, you will use the tools and techniques of computer science to create interesting and relevant digital artifacts (e.g. a video, animation, infographic, audio recording, or program) with characteristics that are enhanced by computation.
- Abstraction is a central problem-solving technique in computer science. In this course, you’ll use abstraction to model the world and communicate with people and machines.
- Data and Information lead to the acquisition of knowledge. Managing and interpreting a large volume of raw data is part of the foundation of our informational society and technology. In this course, you will work with data to better understand the many ways in which data is transformed into information and knowledge.
- Algorithms are used to develop and express solutions to computational problems. In this course, you will work with algorithms in many ways: you will develop and express original algorithms, implement algorithms in a language, and analyze algorithms analytically and empirically.
- Programming enables problem solving, human expression, and creation of knowledge. It results in the creation of software and facilitates the creation of computational artifacts. In this course, you’ll learn the fundamental concepts of programming that can be applied across a variety of projects and languages.
- The Internet and systems built on it have a profound impact on society. It pervades modern computing. In this course, you will gain insight into how the Internet operates, study characteristics of the Internet and systems built on it, and analyze important concerns, such as cybersecurity.
- The Global Impact of how computation has changed the way people think, work, live, and play. In this course, you’ll become familiar with many ways in which computing enables innovation. You will analyze the potential benefits and harmful effects of computing in many contexts.
- Connecting Computing. You should be able to identify the impacts of computing, describe connections between people and computing, and explain connections between computing concepts.
- Creating Computational Artifacts. You should be able create a computational artifact with a practical, personal, or societal intent. You should be able to select appropriate techniques to develop a computational artifact, and use appropriate algorithmic and information management principles.
- Abstracting. You should be able to explain how data, information, or knowledge is represented for computational use, and how abstractions are used in computation or modeling. You should also be able to identify abstractions and describe modeling in a computational context.
- Analyzing Problems and Artifacts. You should be able to evaluate a proposed solution to a problem, locate and correct errors, explain how an artifact functions, and justify appropriateness of a solution, model, or artifact.
- Communicating. You should be able to explain the meaning of a result in context, describe computation with accurate and precise language, and summarize the purpose of a computational artifact.
- Collaborating. You should be able to collaborate with another student in solving a computational problem and producing an artifact. You should also be able to share the workload, resolve conflicts, exchange knowledge and feedback with a partner or team member, and review and revise your work as needed to create a high-quality artifact.
Introduction to the New AP Computer Science Principles Course
The Advanced Placement (AP) curriculum is administered by the College Board and serves as a standardized set of year-long high school classes that are roughly equivalent to a college-level class. Although most students enroll in an actual course to prepare for their AP exams, many others will self-study for the exams without enrolling in the actual AP class.
The AP Computer Science Principles course is a new class, introduced in fall 2016. The 2017 exam administration will be its first. This course signals a change in direction for AP courses, as its primary emphasis builds on the students’ own backgrounds and strengths and emphasizes the importance of collaboration. Many who are used to a more rigid structure of AP course will be surprised by this class’s innovative, flexible curriculum that uses the experiences, interests, and strengths of students to shape its path.
Since this is a new class in 2016, there is currently a big push underway to increase interest and enrollment in this course. The AP Computer Science Principles’ inaugural year coincides with an initiative from President Obama entitled “Computer Science for All”. This initiative underlines the importance of a broad and inclusive approach to foundational computer science instruction in a digital economy and backs it with $4 billion in funding to states to be used for training teachers, expanding access to high-quality instructional materials, and building effective regional partnerships. The College Board has even released a promotional video to encourage students and teachers from all backgrounds to pursue computer science education through this course.
Curious if this is the right course for you? Interested in learning more about this fun, new approach to learning? Read on to learn more about this new AP Computer Science Principles course.
About the Course
The AP Computer Science Principles course develops computational thinking skills in the context of creative problem solving. The primary goal of the course is to “introduce students to the foundational concepts of computer science and challenge them to explore how computing and technology can impact the world.” The course seeks to broaden participation in computer science by attracting a diverse student body. You will learn about ways to analyze and study data, work with large data sets, and draw conclusions from trends. Although the skill set you develop in this class is prescribed by the course’s core curriculum, the exact ways in which you apply your knowledge will be up to you. The College Board encourages teachers to foster student creativity in problem solving and allow students to select the specific real world applications for their work.
The AP Computer Science Principles course seeks to increase participation in coding and STEM-related activities. Unlike the AP Computer Science A course, which specifies instruction in Java programming, the Computer Science Principles course allows the programming language to be selected by the teacher based on what is most appropriate for the specific class of students. A list of possible programming languages is available here. Additionally, the AP Computer Science A course dictates how students should apply their knowledge by specifying the tasks for which code should be written. In contrast, the AP Computer Science Principles course puts emphasis on the student’s creation of the context for their own work. You will come up with your own real world problems or issues to tackle.
Before committing to the AP Computer Science Principles course, you should be aware that unlike other AP exams, it is logistically quite difficult to self-study for this one. Due to the exam format, which relies on prolonged in-class, collaborative work to produce 40% of its score, you will need a teacher to facilitate the submission of your work. Your teacher will need to create an AP CSP class in the AP Digital Portfolio so that your work can be submitted for evaluation. If the class is not offered at your school and the AP coordinator is not willing to facilitate the work for you, you may enroll in an online course, or seek to enroll in the class at a nearby high school. Additionally, you will need to have one year of algebra classes already under your belt, and you should have a strong foundation in basic linear functions and composition of functions, along with problem solving strategies. You should also be able to use a Cartesian (x, y) coordinate system to represent points on a plane.
The big ideas of the AP Computer Science Principles course are as follows:
You will also need to master six computational thinking practices. These are the practical skills used by computer scientists on a daily basis. They include:
About the Evaluation Process
The evaluation format for AP Computer Science Principles reflects its commitment to individual student interests and strengths. There are two components. One component is the end-of-course exam. This exam is administered like a traditional AP exam and lasts two hours, accounting for 60% of your total score. This is a multiple-choice test consisting of 74 questions, some of which will have single-select answers (only one correct answer) and others which will have multiple-select answers. In 2017, the end-of-course AP Computer Science Principles exam will be administered on Friday, May 5 at 12 PM.
The other component of the evaluation is a through-course assessment in which students use classroom time to complete two prolonged performance tasks. This portion of the evaluation is innovative in that it signals the College Board’s acknowledgement that such performance tasks “assess student achievement in more robust ways than are available on a timed exam,” and there are learning objectives that are “more effectively measured in an authentic, real-world performance task.” This is the first AP course outside of the studio arts and research/seminar programs in which through-course assessments are included in the evaluation and final AP score. To learn more about these assessments, read our Ultimate Guide to the AP Computer Science Principles Exam and Performance Tasks.
Keep in mind that credit and advanced standing based on AP scores varies widely from school to school. You can find regulations regarding which APs qualify for course credits or advanced placement at specific colleges and universities here.
A full course description that can help to guide your studying and understanding of the knowledge required for the test is available in the College Board course description.
For more about the AP Computer Science Principles exam and through-course assessment, check out CollegeVine’s Ultimate Guide to the AP Computer Science Principles Exam and Assessment. [will insert link when we have one]
If you need more help on the AP Computer Science Principles exam, or you are not sure that you can do it on your own, look no further. For personalized AP tutoring, check out the CollegeVine Academic Tutoring Program, where we make it our job to ensure that you go into your exam feeling comfortable and confident about the test in front of you.