A lot of people in the homeschooling group pushed me to teach a class on "computers." They have no idea what that means but they know their children will need it. The kids are mostly around 12 years old. I want to give them a good foundation is what are logic circuits, what are analog circuits, how to do procedural as well as event driven code.
One of my goals in the class is to get the kids to learn the math involved. That is a major aspect of my goals. When a person is young they do mostly very boring work sheets in math class. I want to show them that it actually has uses in the real world. I thought doing arduino would be a good place to do that.
The first book I bought is "Getting Started with Arduino" by Massimo Manzi. I also found a lot of stuff online, especially on youtube, that give good examples.
I bought the very expensive kit only to find that I had to teach my son to use that crappy picture programming environment that legos provided
Just my two cents here: when I was around 12 I was in a BASIC club using HKC 8800 machines (possibly apple II clones). I made a program that draws lines and circles and produces da-da-da sound (a function call). I then drew a helicopter with it and the sound and drew some background mountains (a few lines as mountain tops) and made the helicopter rescue a person (person slowly ascending a rope). That was the most popular code in the club, copied on many tapes and played many times on those machines. So many years passed I don't remember what we were taught by the club director, our school computer programming teacher, but I still remember that program. So if I try to teach 12 year old I will try to teach programming by examples, not starting from data types and logic operations. Their little brains are not up for logic yet. I learned my programming and computer science all by myself, mostly reading books but I could remember not being able to understand certain concepts until certain grades/ages. Human brains don't grow mature one night.This following is newly brewed in my head so don't laugh if you think it's funny or silly: I would try, if I had a chance, to teach programming like what English profs. teach English 101, a lot of readings of nicely written (no tricks just nicely written) codes that do something. You didn't learn your English from ground up (grammar first), you did it by reading lots of classic pieces and learned from others about how to write a nice paragraph and on to articles. If you learn a computer language, you should start from reading good codes and enough reading and you can start dicing codes and mimicking with the help of teachers, teaching some basics so now all those things start to make sense, like what there is always a "int a=0;". That means a variable a is defined and it is given value of 0. I'm sure if I just said that to a bunch of 12yr old they'll look at me with strange facial expressions.Oh, DO make them type entire programs to the IDE over and over. You can't learn syntax with ctrl+C and ctrl+V.Other things I remember fondly from childhood would be typing in codes from 4 books of BASIC programs (fun and useful codes), trying to correct mistakes (some very obvious) with my brother. Oh, those apple games we played:)
QuoteI bought the very expensive kit only to find that I had to teach my son to use that crappy picture programming environment that legos providedGoogle NQC