Learning How to Program at Seattle CoderDojo

Meilee during her first Seattle CoderDojo class. Sept. 20, 2014

Meilee began learning how to use Scratch a year ago in July (read the original post). Her first published project was called The Unicorn Ghost and its premise was rudimentary: click on the button to make the unicorn move. She played around a little and started projects, but didn’t progress beyond one-trick ponies, so to speak. Recently, I saw an in article in Geewire.com about CoderDojo, a free weekly programming club for kids ages 8-18 that was founded in Seattle but now has local clubs across the country. And the Seattle CoderDojo club meets on the Amazon campus – which is across the street from my office. After we checked in at security, the kids were each given a souvenir CoderDojo badge, which was a great touch that made them feel official.

Seattle CoderDojo badge
Seattle CoderDojo badge.

The kids who attend are divided up according to programming interest: Scratch, HTML/JavaScript, PHP, C# and Java. We found our way to the Scratch room and settled in, Meilee with my laptop and Shen with the iPad to keep him entertained. While Shen isn’t ready for Scratch, I wanted him to tag along so that he gets exposure to the club. The first 15 minutes or so of the session is spent listening to the lead mentor describe some basics of how to get started on the day’s assignment. CoderDojo has a set of projects that will help kids learn basic commands in Scratch. After the introduction, each participant can work at his/her own pace and seek help as needed from one of the volunteer mentors.

A Seattle CoderDojo mentor helps Meilee with a series of commands.
A Seattle CoderDojo mentor helps Meilee with a series of commands.

Meilee’s first challenge was to use repeat loops to draw patterns with an arrow. Doing so required some thought as to what commands to use and some basic geometry. While the math was beyond Meilee’s experience, she was lucky that one of the volunteers happened to be a math teacher.

A Seattle CoderDojo volunteer who happened to be a math teacher helped Meilee with some geometry.
A Seattle CoderDojo volunteer who happened to be a math teacher helped Meilee with some geometry.

What appeals to me about CoderDojo is that it provides a place to go where Meilee can be around other kids who are interested in Scratch and where she can get expert help from mentors. Best of all, the club is FREE (the magic word for DIY Tiger Mom) to attend. During a quick break, I ran into a woman in the restroom who said that the CoderDojo in New York had a waiting list of 500 kids. (500!) Luckily, that isn’t the case in Seattle. I had to ask my husband to take Meilee to the second session, because I had another appointment. Later in the day, she asked if she could show me what she learned at CoderDojo. It was so thrilling to hear her describe her thought process. As I mentioned in the post I wrote last year, I don’t necessarily want Meilee to become a software engineer. I just want her to learn how to analyze a challenge – regardless of what it is – and engineer a solution. I think she’s on her way.

[END OF POST]

NYT’s Science Education Special Section

In case you missed it…

It’s worth checking out the Sept. 3 special section on science education in The New York Times. Of note, the report on the Institute of Education Sciences, which is:

“…a little-known office in the Education Department (that) is starting to get some real data, using a method that has transformed medicine: the randomized clinical trial, in which groups of subjects are randomly assigned to get either an experimental therapy, the standard therapy, a placebo or nothing.

“The findings could be transformative, researchers say. For example, one conclusion from the new research is that the choice of instructional materials — textbooks, curriculum guides, homework, quizzes — can affect achievement as profoundly as teachers themselves; a poor choice of materials is at least as bad as a terrible teacher, and a good choice can help offset a bad teacher’s deficiencies.” Read the full story here.

There’s also a story about a new version of Scratch, the programming language for kids that was created by the MIT Media Lab, that will be geared toward the younger set. Scratch Jr. is being tested in kindergartens and is expected to be available to the public sometime in 2014. Read that story here.

I also enjoyed reading comments from various leaders in tech, science and education on their thoughts about the state of education. Check out the section online: http://www.nytimes.com/indexes/2013/09/02/science/index.html

Learning to Code: Meilee’s First Scratch Project

The Unicorn Ghost
Screen shot of Meilee’s “The Unicorn Ghost” coding project.

Meilee has shared her first coding project from Scratch: “The Unicorn Ghost.” When you share a project it appears on the home page of the Scratch site under “recently shared” and Meilee was more excited about being listed (briefly) on the home page and wanting to see the stats (how many views) than actually completing the project. I guess that’s all right. I like looking at site stats, too. It took much prodding/nagging to get Meilee to complete this project. She was easily frustrated and gave up, in my opinion, far too easily. I kept telling her that nothing worthwhile was easy. She responded by whining and sulking. To push through the last few steps, I even had to dangle bacon: You can have some bacon IF you finish this project. (It was breakfast time.) My hope is to get Meilee more familiar with the Scratch interface by having her create some simple projects. And then we can graduate to animating some of her drawings. Check out her project: The Unicorn Ghost Read previous post about MIT’s Scratch coding site for kids.

Learning to Code: Kids Explore MIT’s Scratch Programming Language

Coding1
Meilee and Shen react with pure delight after seeing the result of code they programmed, using MIT’s Scratch language.

For a child today, learning to program can be just as useful, if not more, than learning to speak a foreign language like Spanish or Mandarin. In a way, computer code is a foreign language. If you live in a place like Seattle, speaking code is “geek rigueur.” Considering our children are so-called ‘net natives or digital natives who were born in the age of iPhones, tablets and apps, it makes sense for them to have at least a basic understanding of programming. Their vocabulary is utterly different from what my husband and I knew when we were their age. Given the high demand for a STEM (science, technology, engineering, math) workforce, I believe that I would be doing my children a disservice if I didn’t expose them to computer programming. Even if they never enter a related field, the thought processes involved with programming can help my kids hone their analytical skills.

Hector Rovira, a co-worker of mine at Institute for Systems Biology who’s a software architect, suggested that I check out Scratch. It’s a programming language developed by MIT’s Lifelong Kindergarten Group. First of all, how cool is it that there’s a Lifelong Kindergarten Group? I love this description of the program:

In school, they learn specific facts and skills, but rarely get the opportunity to design things — or to learn about the process of designing things. Outside school, they interact with electronic toys and games, but they don’t learn how to invent new ones. In the Lifelong Kindergarten group, we’re trying to change that. We believe that it is critically important for all children, from all backgrounds, to grow up knowing how to design, create, and express themselves.

Hector explained that the programming club at his daughter’s elementary school uses Scratch to teach kids about coding and assured me that it would be suitable even for Meilee, who’s 6. So we gave it a try.

The Scratch interface.
The Scratch interface.

Scratch is designed for kids aged 8-16, but anyone interested in learning programming can use the site. You can create any number of projects from simple animations to video games. You also can share your projects with the Scratch community. There’s a helpful tutorial that explains the essentials. When you create a new project, you can choose a character – what’s called a sprite – and then you can program movement, background, sounds, costumes and such. You also can upload original images with which to work. I helped Meilee start the tutorial and then sat back to see what she could do. Basic command scripts are found in color-coded blocks that can be dragged from the master list (above left) to the adjacent scripts pane (above center).

Coding3

It wasn’t all fun, as you can see above. But the first time Meilee and Shen saw their character move and change color as the result of scripts that Meilee programmed, they experienced the purest joy (as in the lead photo above). The look in Meilee’s eyes showed a great sense of accomplishment – and that was just from the tutorial.

Coding4

An additional point of joy for me is that Scratch is FREE. You have to sign up for an account on behalf of your child, but there’s no cost to join the community or use the site. This is worthwhile computer time. I fully anticipate being able to say to my children, “You can’t play video games unless it’s one you create.” Maybe that’s wishful thinking, but maybe it’s not.

Try Scratch or learn more about the Lifelong Kindergarten Group at MIT.

Watch professor Mitch Resnick, Director of the Lifelong Kindergarten Group and LEGO Papert Professor of Learning Research at MIT Media Lab, in his TED Talk explaining why we need to teach kids to code.