Lessons Learned – Teaching Kids Programming

**updated** check out the NEW sample SmallBasic program in the window at the bottom of this blog post

On Saturday, I worked with a group to teach more kids to program.  We had around 20 kids and 5 adults in our session.  QuickStart was kind enough to provide a training room and to preload SmallBasic and our extensions onto the computers for the kids.  Because this was our largest and longest session to date (5 hours of coding vs. a maximum of 2 hours sessions previously), we learned lots and want to share here.

Overall, based on written surveys, the event was rated 3.9 out of 4.0 and 100% of the participants said they would like to attend another session.  Also the event was held on Saturday, so kids enjoyed coding in our unClassroom-style even on their weekend.

Pair Programming

Not only did the kids have fun, but also they wrote code around the all of the following concepts on their first day of programming:

1) objects, methods, properties
2) variables
3) for loops
4) if statements
5) sub routines
6) arrays
7) events

We (again) validated many of the methods we’ve used previously, such as code first, pair programming, intentional coding, recipe translation, recipe variations, iterations, and constant visual feedback.

What worked (new or reinforced in this session)

Turtle graphics recipes and variations – the recipe, recap and variation method we’ve created fits well into one-hour blocks of learning.  We used 2 turtle graphics recipes (Simple Square and Pentagon Crazy)in a two-hour block and this flowed well.  

We also noted that the SmallBasic extensions we've written facilitated faster intuitive coding.  For more detail see CodePlex documentation on them.

unClassroom (unTeaching) – well, if you are going to teach kids then you should have / be:

1) Energetic – I did the limbo in the hall at second break with the kids
2) Fun – we raise our hands for quiet and yell to get attention (teachers and kids)
3) Unexpected – LLewellyn juggled* water bottles to demonstrate the concept of Arrays; we ‘mixed up’ the pairs after each recipe 
*he is a trained (juggling) professional
4) Action-oriented – coding starts 3 minutes into class, kids get up and move (switch between typing or directing [talking]) every 5 minutes (pair programming switches)
5) Helping – we were lucky enough to have 2 volunteer from DigiGirlz Fargo, ND (Beth and Billie) helping out as proctors.

Llewellyn and Lynn unTeaching

What we are still working on

1. refining / improving core recipes – make appropriate length and chunks (2 min verifications)

2. variations for game recipes

3. physical activities in between coding– for example, live spirograph, etc…

4. quizzes as checkpoints, preferably test-driven, that is write code and verify results in the IDE

5. setup verifier – check our example (If you can import and run the program id RZZ532-0) you have everything working with SmallBasic and our extensions – we will also create an install .msi and will post it on CodePlex

6. writing a small app to capture the state of each student’s work from the instructor computer so that can we better monitor how fast or slowly to teach

7. generating program results as certificates after passing quizzes

What’s next

Next Live Events 
DigiGirlz Denmark – mid Feb 2010,
Dare2BDigital SVC – Feb 27

Next Online Materials
Adding to our existing screencast library
Recording train-the-trainer screencasts for teachers & parents

The author of Small Basic, Vijaye Raji, has been making some improvements too.  Take a look at the new Silverlight viewer for published programs.

Read about our previous events here.

Happy Programming!

Comments (1)

  1. Thanks again Lynn et al for a very enjoyable and enlightening class.  My son learned a lot in a very short time and he appeared engaged the whole time.  I think I learned a lot too and I’ve been a professional software engineer for 20 years!

    Seeing how quickly the kids in the class grasped convepts, I found myself relating my professional experience with my son at a rather sophisticated and technocal level.  

    The best outcome of the class is that I could see, in all the kids’ eyes, the light going on…

Skip to main content