Programming for Grade 8
henrikwarne.com
henrikwarne.com
Most people in my grade I think would be able to make it through making a calculator, but maybe with some trouble. I'm also not sure if many of them have the attention span either.
I think my favorite thing about this is how it's all text based. My school currently does an event every year called "hour of code" where you do some visual programming for about 40 minutes (class period cuts it off). It's usually the same thing every year, and it seems like people don't learn anything new at them.
I hope your students keep on learning, and you keep on teaching!
I feel like someone needs to make some sane Hour of Code activities for high school students and do things like presenting on it at conferences and podcasts. From what I can tell from multiple years of presenting similar things, those are some of the best ways to get an idea to public school technology administration.
Hour of Code Activities | https://code.org/learn
However, my second semester as a freshman high school (technical school) we did programming theory followed by quick labs (coding exercises in C, same "no-magic" principle) and then it all made sense. However, we first had like a month without any code where we were taught different data structures, functions, differences between declaring/defining, etc. That knowledge is still in use today.
We were introduced to Logo briefly in second grade (admittedly, I don't think the programming concepts really stuck at that point).
Then we were introduced to BASIC briefly in fifth grade. For some of us at least, concepts like conditionals and loops did stick. I remember going home and insisting my dad install a BASIC interpreter on his computer so I could write more programs.
BASIC doesn't really have the concept of a function, but we were already being taught about abstractions like "f(x) = x + 1" in seventh grade algebra, so I don't see why programming would be too abstract for an eighth grader.
You might not want to try to teach them Java or Erlang, but procedural or imperative Python like the article describes should be well within the abilities of a significant subset of kids that age.
* Hello, World!
* Calculator
* Guess the number
* Control the robot.
They got a handful of nodemcu devboards, wired in a screen, some motors and IR lights/detectors, and the student got to go wild.