Introduction to Teacher Guide
Teacher Guide home
Welcome to the Teacher Guide (first version) for the Beauty and Joy of Computing (BJC) AP Computer Science Principles (CSP) course. This guide is designed to support high school CSP teachers with timing and activities for the BJC student materials to teach important ideas of programming and the social implications of computing and to prepare students for the AP CSP Exam that launches Spring 2017. Please offer feedback on these teacher and student materials; your feedback is vital to their improvement.
Equity and Inclusion
A primary goal of this course is to attract new students, especially those traditionally underrepresented in CS, to the joys and life opportunities that come with programming and computer science, and to make rigorous computer science accessible and enjoyable. Please note any ways this curriculum does not meet your students' needs and any ideas you have for meeting them better, and tell the research team by using the blue feedback button and/or research participant surveys.
AP CSP "Big Ideas"
Data and Information
AP CSP "Computational Thinking Practices"
Creating Computational Artifacts
Analyzing Problems and Artifacts
AP Computer Science Principles
Several curricula satisfy the framework for the new (starting 2016-17) AP CS Principles exam. BJC is one. Most AP courses have specific curricula, taught in similar ways at every high school where they are offered. CS Principles is different because it is equivalent to a college breadth course rather than a first course for CS majors, and there is no uniformity in how colleges teach such a course. In particular, the exam is meant to be "language agnostic," meaning that any programming language can be used in the course.
CSP's specific goal is to attract students in groups that are historically underrepresented in computer science. It's an AP course for tactical reasons: it's much easier to get high schools across the country to introduce an AP course than a non-AP course for which there is no national high school standard curriculum. But keep in mind that the goal is to attract students who don't see themselves as "computer geeks" and may not view themselves as "AP kids."
The College Board framework sets minimum standards for each of the "Big Ideas" and "Computational Thinking Practices" listed to the right, but each curriculum has its own emphasis. BJC puts a heavy emphasis on Programming and Global Impact. See also the College Board AP Computer Science Principles Curriculum Framework.
- Labs: BJC includes two kinds of labs:
The title "lab" is used for all sessions of this course to emphasize the laboratory style—experimentation, discussion, interaction—both in programming and in the analysis of social implications.
Both types of labs involve classroom discussion. Read more about Facilitating a Classroom Discussion.
- Laboratory work style: Most programming labs—especially the Getting Started pages (see below)—are designed to be done by students with minimal or no instruction from the teacher. Students are often not used to starting and puzzling things out on their own; they often expect that things will be explained first and they then just practice; they often expect that they are "supposed" to be able to do every problem that is assigned; and they often assume that they are expected to work alone. This course is different. Make sure students know that working together is an important part of the course, that they can figure out a lot on their own, but that they should not be surprised or feel bad if some problems do stump them. That's completely expectable and totally fine.
Getting Started: Many labs include a "Getting Started" page that let students experience and experiment with the ideas of the upcoming lab before formalizing them. Getting Started lessons are designed for two purposes:
Before students start their first "Getting Started" be sure that they understand that they may not be able to answer every question in their pairs. That's ok. Encourage them to figure out what they can, check with other pairs, and try other problems. Puzzles that remain unsolved will get solved later. You can use the unsolved problems as a way to launch the lab topics that follow.
- to give students a preview, in simple and transparent contexts, of upcoming ideas.
- to give teachers a sense of what prior knowledge students bring to the lab.
- Assignments: We recommend a minimum of 1 hour a week, ideally more, for programming and social implications work done outside of class. It's understood that school and home situations vary. In some situations even 1 hour a week may not be practical. Experiment to find the balance that works for your students. Outside-of-class work may include unit investigations, weekly assignment suggestions (reading, writing, and programming), or even lab materials (especially if done in pairs). Working outside of class provides more class time for discussion and support.
- Assessments: Some labs include multiple choice, formative, ungraded "Self Checks" (suggestions on effective student feedback messages appreciated). You do not have to collect and review these. Regular projects offer plenty of opportunity for formative feedback for teachers and students, and formal exams will provide summative information.
Write more specifically about the AP exam and BJC exam.
The BJC student materials have several design elements that are visually distinguished by color, each to serve a specific purpose:
Yellow boxes contain additional information for optional reading.
- Students should
As much as possible, every pair should complete all For You To Do problems.
- If some problems are too much for your students, please provide feedback to the developers using the blue feedback button in the lower right corner of every lab page.
- The teacher guide suggests places where, if time is tight, you can skip problems.
Alphie: These are scripts for short skits that model some aspect of computational thinking.
Betsy: They are designed for students to read aloud in class.
Students should act out the italic stage directions instead of reading them out loud. (Or an audience member can narrate as they act it out.)
Mix it up! Students can read these dialogues in small groups or in front of the class (maybe even have two groups read in turn to increase retention), or teachers can assign them as a homework assignment and have students record a video or podcast
of their reading.
Encourage participation, of course, but also be sensitive to students who, for one reason or another, are too anxious at first to present in front of others.
These orange boxes highlight important information and ways of thinking.
- These problems are valuable and encouraged, but students can proceed to next lessons without doing these. In that sense, they are optional.
- You can use them as differentiation for students who move faster.
- Or assign them for homework.
- Some of them can also become the basis for student projects.
Related Resources from External Sources: