|Students learn the basic ideas behind programming by|
working with Scratch, which allows users to program
theirown interactive stories, games and animations.
Students in Grade 11 computer science first learn the basic ideas behind programming using Scratch (view some of the projects here) and then move onto more formal programming using Python.
The challenge isn’t working with students of varying skill - this is surprisingly easy to manage. The challenge as the classroom teacher is to avoid guiding students towards how I would write a program. Instead, I work with the students on their own ideas and help them to develop a solution based on those ideas.
In class, students learn the fundamental skills through videos and class discussions. Students are also encouraged to work with each other and possibly find other resources. It's not uncommon for students to find their own websites and discussion forums to help with the ideas they're working on. This often leads to great discussion between students and helps them to develop their own programming style.
Computer science is always evolving - new programming languages, new environments to work in, and new advances in technology all contribute to this evolution. Because of this, it's important that students learn how to seek solutions and how to approach problems. Developing these skills in an individualized manner is an important part of learning how to effectively navigate a new language within the computer science classroom.