Teaching coding from scratch is hard. You can show students some brief working code, but the coding context is strange, colorful, hard-to-manage, volatile. And the code's cause/effect can only be observed by overlaying this coding context with a highly instrumented, evanescent view of the runtime results.
What's a teacher to do?
For a handful of high schoolers, learning how and why to code computers is a fascinating obsession. These young folks will prepare for AP Java all by themselves. But most 9th graders, not-so-much. The problem is: learning to code computers is like learning to juggle or fold origami. It's a Zen thing.
Google "learning to juggle" or "learning to fold origami." You'll find terrific free introductions for the self-motivated. Google "learning computer coding." You'll find high-powered training companies you've never heard of--all lined up to take your money.
So what's a high school teacher to do? START HERE and KEEP GOING. More than most subjects, teaching computer coding is all about classroom management.
Teaching introductory computer coding is like teaching 9th grade elective art. The art teacher needs rigorous rules and routines to deal with colored pencils, watercolors, paint sprays, glues, glitter, tinsel, erasers, clay, foam goodies, sinks, special sharpeners, poster board knives, three kinds of scissors--stuff that can turn an art teacher's promising career into a search for some new line of work. Next a 9th grade art teacher must provide thoughtful assignments kids buy into--draw a tree that's good on one side and evil on the other--whatever. Then there must be rubrics for insight, inspiration, content and execution--not just whether the sink remains unclogged.
How does a computer science teacher get a roomful of 9th graders past "MINE'S BROKEN!" What do thoughtful beginning computer coding assignments look like? How do you appraise insightful coding when working programs must all produce the same result?
Answers to these questions lie in what follows, but classroom management remains the biggest question. Lessons For Teachers, Day Zero, describes machine setups to alleviate "MINE'S BROKEN." Lessons For Students, Unit One, describes rigorous patterns and resources for bellwork, daily instruction, and homework. Enjoy and prosper.
Contact firstname.lastname@example.org All rights reserved, 2016