I've done this for several years. Here's what I've learned.
TLDR: Focus on getting them to have fun & enjoy learning about 'code'. Don't care so much on how well they learn it.
Every kid is unique & will respond to different things.
Social & mentors are awesome. It's usually more fun to build with others if possible. Also they will want to easily share & show off their creations with others.
Show them how to "hack" Google with the browser's dev inspector tools. Wins them over every time.
Give them simple partially completed programs that they can modify. I've had a lot of success with a simple trivia game that lets them start by modifying the questions/answers & the replies it gives. A great first lesson in how to use strings & gets them looking at the code. They can then share what they created with others (social aspect) & have them play their game.
Do NOT lecture to them or try to do long demos. They often listen to teachers lecture all day long. They want to have fun & explore. They also don't care about types or any other computer science terms until they've created a lot of things & are trying to figure out why they don't work.
I've had decent results with Scratch. For pure beginners though, still start them off with a semi-completed program.
TLDR: Focus on getting them to have fun & enjoy learning about 'code'. Don't care so much on how well they learn it.
Every kid is unique & will respond to different things.
Social & mentors are awesome. It's usually more fun to build with others if possible. Also they will want to easily share & show off their creations with others.
Show them how to "hack" Google with the browser's dev inspector tools. Wins them over every time.
Give them simple partially completed programs that they can modify. I've had a lot of success with a simple trivia game that lets them start by modifying the questions/answers & the replies it gives. A great first lesson in how to use strings & gets them looking at the code. They can then share what they created with others (social aspect) & have them play their game.
Do NOT lecture to them or try to do long demos. They often listen to teachers lecture all day long. They want to have fun & explore. They also don't care about types or any other computer science terms until they've created a lot of things & are trying to figure out why they don't work.
I've had decent results with Scratch. For pure beginners though, still start them off with a semi-completed program.