Teach With... Processing
Processing is an extremely cool programming language that gets students working with graphics on the first day. I now use it as my introductory language. It is based on Java so it uses a syntax that is transferable to my higher level courses and yet engages students in a far more meaningful way than Java, and even Python. Disclaimer: I have not taught with Python.
For Complete Lesson Plans that include my Processing units: Go to the Lesson Plans Tab... Computer Science 10
Intro to Programming 1 (Alberta CTS Credit: CSE1110 Structured Programming 1)
This portion of the course focuses mostly on learning the Processing drawing canvas and simple mouse and keyboard input. I also introduced IF statements at a simple level.
- Processing Assign 0 - Drawing Practice
- Processing Assign 1 - Basic Scene Drawing
- Processing Assign 2 - Data Types - This is a teaching activity rather than an assignment and I am not entirely happy with it. I my remove it or just do parts of it moving forward.
- Processing Assign 3 - Collector Card
- Processing Assign 4 - Using Variables
- Processing Assign 5 - League Points (calculating with variables)
- Processing Assign 6 - Pythagoras Advanced Variables
- Processing Assign 7 - Drawing Program
- Processing Unit 1 Wrap Up Project - I actually do not do this anymore. I decided to wait until Unit 2 before I give them a completely open ended project.
Intro to Programming 2 (Alberta CTS Credit: CSE1120 Structured Programming 2)
This portion of the course focuses on IF statements with advanced boolean logic. Technically the WHILE loop and the FOR loop are also part of the curriculum but they are not really necessary in Processing as the DRAW function is a looping function itself. I cover while and for loops at a simple level in grade 10 and then will do an extensive review in grade 11 when we switch to Java.
- Processing Assign 2.1- Review Assignment - This assignment is only used when necessary. If this unit is done soon after unit 1, then it is probably not needed.
- Processing Assign 2.2 - Number Guess Game
- Processing - Return to Sun/Moon - Note, this is an expansion on an in-class activity we do in Unit 1. I do not do this assignment anymore but see my lesson plan docs for details
- Processing - Square Move
- Processing - Slide Show (Mouse event and If statements)
- Processing - If Statement Practice Quiz - This is not so much a true quiz but rather a focused formative assessment.
- Processing Assign 2.3 - Game Show or Dice Game Assignment - This give students two options allowing for differentiation of students.
- Processing Assign 2.4 - Boolean Logic Game - Included assignment options such as Rock, Paper, Scissors & simple TicTacToe
- Processing - Advanced Boolean Logic Practice Quiz - This is not so much a true quiz but rather a focused formative assessment.
- Processing Assign 2.5 - Final Project
- Processing - Adventure Game Assignment - I have removed this as a separate assignment. It is now one of the options in the Final Project
- Processing Animation Challenge - Frogger Animation - Used to challenge students when needed
Full Credit Projects
The last 10-12 classes of my CS10 course is dedicated to an individualized project. About half of my students have been choosing a Processing Project. About half choose Game Maker. A few choose webdesign. Below are some documents I use with those students. Some have pages dedicated to each type of projects so you may need to scroll down to find Processing resources.
Processing Resources
Processing.org - The main page for the language has some very easy to understand tutorials
LearningProcessing.com - This is a companion site for a book but the site itself is the first I used to really dig into how Processing works. I have since picked up the book.
Getting Started with Processing - This ebook was recently recommended to me but I have not yet had a chance to check it out.