I started teaching my year 7 kids how to program today. They don’t know they’re learning how to program, but they are. We’re not writing Java or Basic or anything like that, we’re starting right from the basics of programming; the core stuff you need to understand before anything else makes sense:
- Computers follow instructions
- Instructions go in an order
- Sometimes there are decisions
We did this using the flowcharting language Flowol, which uses ye olde flowcharts to make lights flash, motors spin and the like. Yeah, flowcharts – those quaint funny things we modern programmers stick our noses up at. Nobody makes flowcharts these days.
They’re good as a teaching tool though, they’re visual. And the more visual things you can use when explaining programming, the better. After all, I bet you do use flowcharts still, you just probably call them “structure diagrams” or “little doodlings I do on a scrap of paper first”.
Once we’ve mastered the art of making traffic lights work, we’ll move onto the other favourite learning language – LOGO. Never tried this before, but I’ll get them drawing geometric patterns by Easter.
It’s pretty cool doing this stuff with kids. They sit there looking confused, and then suddenly it makes a bit of sense, then a bit more, then they do it wrong. And at this point something even stranger happens – they go “uh? … ah!” and fix the problem. They rarely go “uh? Oh this is crap I can’t do it!”. “…ah!” is the sound a kid makes when it understands something, it’s not just blindly copying you and repeating back stored knowledge, something has connected in its brain and new information has been made.
You can then instill a bit of the hacker mindset in them – “OK you made the light flash on and off. Now make it flash a pattern for me”, “what happens if you forget to turn the lights off?”. These kinds of questions will always be replied with “dunno”, so I reply with “try it… see what happens”. Soon they get the idea and start showing me things they’ve made up by themselves.
You should see a kid’s flowchart though, it adds a whole new meaning to the phrase “spaghetti coding”


Pingback: REPEAT 4 [FD 1 RT 1] - More stealth programming for kids : Error_Success