The class is primarily 6th-8th graders. I focus on this age group (upper elementary/middle school) because I'm trying to catch the students before they learn (from where?! grrr...) things like "computers are difficult to understand" and "programming is hard".
I'll be posting each week about the topics covered and I'll be including the materials that I create/use.
The first 6 or so weeks will mostly be a review of what we covered during the 16 weeks of classes last year:
- Number systems (binary, hexadecimal)
- Boolean Logic (and, or, xor, not)
- Data encoding (ASCII, hex editors)
- Electronics (electricity, LEDs, resistors + using solderless breadboards)
- + some other stuff I can't recall at the moment...
And throughout this school year, I'll be covering:
- Electronics (more LEDs with Arduino microcontrollers)
- Transistors (and how to build basic logic gates from them)
- Web pages (HTML5 + CSS + canvas)
- Programming (Arduino, GameBoy/Nintendo DS)
and whatever else comes to mind that matches the students' interests. I'll probably also spend a day talking about ActionReplay codes and hacking DS games, but we'll see how much time there is for that.
The goal of this class is to teach the fundamentals of computers and programming so that the students actually understand what is going on under-the-covers. I could skip all the details and just focus on the programming bits, but that's not nearly as interesting (for me nor the students).