BJC Sparks Curriculum Design Principles

Engaging

Our top priority is to create a fun curriculum in which students develop programming projects and explore social implications of computing related to their own interests. We believe it’s important for students to have agency in what they create and in developing their ethical approaches to challenging issues. We want to build a curriculum with ample opportunity for creativity so that students are so passionate about their work that they naturally want to share it with their friends!

Inclusive

We seek to support all students by providing open-ended creative projects that allow individuals to bring their own interests, cultures, and life experiences into the classroom. We aim to provide a structure through the selected CS content that allows students to discover how taking an active role in technology is relevant to their lives.

Supportive of Teachers

Teachers are critical to implementation, and our curriculum will provide a companion teacher guide for each unit of study. This will include an overview of the student content, teaching tips, pacing suggestions, formative and summative assessment items, example solutions, and correlations to the CSTA standards. Throughout our multi-year development process, we will seek early and frequent feedback from teachers on the student-facing materials, the teacher guide, and what more is needed to best support classroom activities.

Computational Problem Solving

Through our open-ended programming activities and meaningful investigations of the social implications of computing innovations, we encourage students to see that there are multiple ways to solve a problem and to develop the habit of evaluating potential solutions by considering aspects such as code-readability and impacts across social groups, and to society. We support students in developing a range of debugging skills as they learn to see programming as both a technical and a creative act, and we encourage them to seek ideas and feedback directly from intended users of their technology.

Powerful CS Ideas

Lastly, we believe in a functional-programming-first approach to teaching computer science and so begin the curriculum with a focus on functions and immutable data. Once this foundation has been established, students are introduced to iteration, variables, events, and hardware. Our curriculum is being developed to meet the CSTA standards for middle school and some of the early high school standards. We believe kids are capable of mastering (traditionally) difficult concepts if the scaffolding and context is done right; Seymour Papert's idea of "Hard Fun"!