Session 1: Welcome to the BJC Curriculum: Student and Teacher Perspectives
In this session, you will be introduced to the MOOC-Ed and the BJCcurriculum through the perspectives of students and teachers. Videos of pairs of students working on different parts of a BJC programming lab and of expert teachers sharing their approaches to teaching BJC will provide insights into what BJC looks like in practice and how you can successfully guide your students' learning. Expert teacher panels discuss strategies for facilitating both the programming labs and teaching students about the global impact of computing through the social implications labs and Computing in the News activities.
Session 2: Introducing the Snap! Programming Language
In this session, you will explore coding concepts central to all programming languages and begin to learn about the Snap! programming language and environment, from learning how to set up an account to experimenting by revising or extending a starting script. As a self-directed learning experience, this session should be approached differently by those who are new to computer programming, those who have programming experience but are new to the Snap! language, and those who already know Snap!
Session 3: Getting Started: Creating the Click Alonzo Game
This session invites you to delve into a simple programming project and then to view examples of ways to extend the lab to give students opportunities to develop their own variations, learning more about programming as they do so. You will have an opportunity to observe videos of students, discuss your observations with other MOOC-Ed participants, and learn more about Snap! programming and specific computer science concepts in the process. A panel of expert teachers offer insights into pair programming and effectively managing it in your classroom.
Session 4: Programming with Text: Lists and List Processing
In this session, you will explore a lab in which students learn how to create lists of data, select data from those lists, and combine data in new ways. As in the previous session, you will observe pair programming through student videos and discuss your observations with other participants. You will also observe videos of students working on a more advanced lab using lists of data and list processing programming commands. A panel of expert teachers offers suggestions about teaching the first few labs to help your students establish a strong foundation for the rest of the BJC curriculum.
Session 5: Polygons and Patterns: Abstracting by Creating Blocks
In this session, you will explore a lab that is designed to help students understand important programming concepts such as variables, loops, and inputs while they explore creating shapes on the screen. They learn to create new blocks (e.g., for drawing a polygon with any number of sides) that can then be used within their programs, thereby learning about the concept and process of abstraction. As in previous sessions, you will observe pair programming through student videos and discuss your observations with other MOOC-Ed participants. A panel of expert teachers offers suggestions for helping students understand the difference between local and global variables, and the related Big Idea of abstraction and Computational Thinking Practice of abstracting.
Session 6: Multiple Sprites and Types of Variables: The Number Guessing Game
In this session, you will explore labs that expand students' understanding of local and global variables and engage them in more complex programming challenges. As in previous sessions, you will observe videos of students engaged in pair programming with both a simple and a more complex programming challenge, and discuss your observations with other participants. A panel of expert teachers offers suggestions for helping students debug programs and for engaging more advanced students in both their own projects and in helping their classmates.
Session 7: Wrapping Up
In the final session, you will look toward the Advanced Placement Computer Science Principles exam and its "Explore" and "Create" performance tasks. Additional resources are provided to help you prepare students for the AP exam. You will hear advice from both teachers and students about preparing students for the written exam and the performance tasks. A final online discussion with your peers focuses on how you can best prepare students for this assessment focused on application to ideas and the impact of computer innovations.