Teaching a Processing Classteaching
The Processing tutorials are designed to be used in a course that teaches basic programming.
The best (only?) way to learn how to program is by programming, so I’d give the students as much lab time as possible. I’d split each week into three sections:
- Lecture: This is where you actually cover the topics, introduce new syntax, etc. You should probably spend the least time in this section!
- Examples: After introducing a new topic, I’d work through an example program together. Take suggestions from the students, and show them that making mistakes is part of the process of programming.
- Lab: After working through a few examples together, give students some assignments to work on themselves. Let them add their own creativity, but the goal is to have them work through the process of programming, which is a lot more than just reciting code. You should spend the most time on this. Any work not finished in the lab becomes homework.
How you split this up depends on your class schedule. If you have three classes per week you could do one section per day. If you only have one class per week then you might do half lecture/examples and half lab time.
Here’s how I would break down the semester:
- Week One
- Week Two
- Lecture: Using Variables and Creating Variables
- Examples: Make the smiley face scale with the window size. Procedurally generate random smiley faces.
- Lab: Make a program that shows the current time. Hint: check the reference for useful functions! Get creative: make the clock change color throughout the day, or show the time in dog years.
- Week Three
- Lecture: Creating Functions, Animation, and If Statements
- Examples: Add random smiley faces to the window. Create a garden of random flowers. Show a bouncing ball on the screen.
- Lab: Add a rectangle to the bouncing ball program. The ball should bounce off the rectangle as well as the edges of the window.
- Note: If you have extra time in the semester, it might be better to split Creating Functions into its own lecture. This is a pretty big paradigm shift, so it deserves some extra time. But it leads pretty naturally to Animation and If Statements, so they’re a logical grouping.
- Week Four
- Lecture: User Input
- Examples: Create a simple drawing program.
- Lab: Expand on the simple drawing program (make it creative: click to draw flowers, drag to draw grass, etc.) Show a character that chases the mouse cursor.
- Week Five
- Week Six
- Week Seven
- Week Eight
- Week Nine
- Week Ten
- Final Projects
- With any remaining time, I would have students work on a final project. Start with a few ideas, but let them get as creative as they want.
- Last Week
- Spend the last week having students demonstrate their final projects. Conclude with a Now what? lecture that points students to resources (like this website) for continuing their own programming education. Talk about bigger and more impactful projects they might take on.