Tutorial 105: The Beauty and Joy Computing: CS Curricula That Scales from Middle School to UniversityIn-Person & Online
The Beauty and Joy of Computing (BJC) is a computer science curriculum supporting learning from middle school to university, co-developed by UC Berkeley, NCSU, and EDC. BJC CS Principles (CSP) was one of the pilot CSP courses in 2010 and has been taught by more than 1,000 teachers globally.
We recently developed and piloted a new course, “BJC Sparks”, for middle school that teaches a functional approach to programming. There was an opportunity to bring a reduced and simplified version of BJC CSP to this audience that emphasizes the flow of information through functions — rather than emphasizing iteration and commands — and including exciting projects in data science, encryption, computational media, robotics, and graphics through a lab-centric paradigm. Starting with functions teaches students the habit of solving problems functionally when possible, helping to avoid bugs in later programming experiences. BJC Sparks has been taught by more than 100 teachers globally.
BJC’s guiding philosophy is to meet students where they are, but not to leave them there. Through BJC, students learn to create beautiful images, and realize that code itself can be beautiful. Having fun is an explicit course goal.
In this tutorial, we will provide an overview of our no-cost BJC Sparks and CSP curriculum including course materials, teacher resources, and an introduction to Snap!, the chosen visual programming language of BJC. We will cover curriculum updates, Snap! updates, BJC for middle school, BJC in Spanish, and also dive into labs with hands-on programming.