Monday, December 14, 2015
codeSpark:Teaching Kids Software Coding Without Words
Story by Benjamin F. Kuo
Why teach your kids how to code, and what's the benefit of learning computer programming concepts--even before you've learned to read? It turns out, there are lots of benefits to learning the logical thinking behind software coding, according to Grant Hosford, the founder of Pasadena-based codeSpark (www.codespark.org). codeSpark develops the kids' game The Foos, which teaches kids the principles behind software programming, all without words, even for those who can't read or don't speak English. We caught up with Grant to learn more about The Foos and his quest to use the principles of software programming to help kids learn.
What's the story behind Codespark?
Grant Hosford: I was working at Idealab, for Bill Gross, when I had the idea. The original spark came, because my daughter, Naomi, who is nine now but was in first grade at the time, took a Lego Robotics class. When I came to check it out, I found out she was the only girl, and was the youngest by two or three grades. Being a dad who wanted to help his daughter. I looked around for what I assumed already existed, a kind of A-B-C of computer science. I was surprised to find there wasn’t such a thing. For the most part, there wasn't anything at the elementary school level for computer science. That was the beginning of it. I ended up doing some research on how young is too young for computer science, and found at there was already great research out there that you could start as young as five years old, as long as you removed the keyboard, mouse, and got the syntax out of the way. That was encouraging. The study of computer science brings broad based benefits, beyond the subject. When you improve your sequencing skills, your reading comprehension skills go up. It's not just for kids becoming programmers, it's them learning the logical way of thinking, which can be useful in a variety of different contexts.
I needed a partner to build the game I wanted to build. I was interviewing co-founders for three or four months, and met my co-founder, Joe Shochet. Like me, he was a dad, has three kids, and was a Lego Robotics coach for 7 years. He also had worked on the first version of a teaching tool called Alice, which was a pre-cursor to Scratch, the visual programming tool for college kids. Most importantly, he is a rockstar game designer, and had been at Disney for 13 years, working on things like Toontown Online, Pirates of the Carribean Online, and Pixie Hollow, among others. Right away, we hit it off. Within six weeks, we had founded the company.
Tells us a bit more about your approach to the game?
Grant Hosford: Our philosophy is, we want to specifically teach elementary school kids. Part of the way we make that approach work, is we don't use words in the game. That allows pre-readers to play, and also any kid in any part of the world can play the game, because there are no language issues. We use triple-A style game art and mechanics, but with the added twist of programming. You start out doing puzzles that teach them initial concepts, and then they put those concepts to work in an area called Foos Studio, where they can make and share their own videogames.
What was the most important consideration to make this accessible to kids?
Grant Hosford: It seems that there are two secrets to our success so far. One, is there has been a total dedication to building the game without words. What that forces you to do is, one, we had to invent an icon-based programming language for kids, which uses animated characters and very clear iconography to present the ideas. So, for example, to make your character jump, there's a jumping character. That's very obvious to the kids. The other thing it forces you to do, is you can't rely on written instructions. The game must be super intuitive at every step. That forces us to test, retest, and test again every time we come out with a new section of the game, with features for our target age group. We test relentlessly, every week. That philosophy has led to a game which is very approachable by all ages, and frankly, lots of fun to play.
Is it important to learn how to code, if you have no idea if a kid is going to become a software programmer?
Grant Hosford: That's a great question. Our philosophy is that learning to code is not really about creating an army of programmers. We believe the vast majority of kids playing our game will not be programmers. But, computer science is now part of every company and every job. There is no such thing as a technology company now, because we use technology everywhere in our everyday existence. We want kids to be comfortable manipulating technology for any purpose. Whether they want to be a ballerina, or an artist, or a mathematician, it doesn't matter. You are going to be using computers and technology. We want to increase your comfort level, so that you see technology as a tool, not just something you consume content from. We want to build confidence and their ability to do that. There are two other, very real benefits. First, there is the logical thinking that comes with the study of programming, which very useful for problem solving activities that people face in everyday life. There are also sequencing skills, which we don't think about a lot, but we use every day. Skills such as making a sandwich involve logical sequencing. We do this as a high level activity, which is very valuable outside of computer science. The other benefit we've learned about lately, is executive function skills. These are skills that are being talked about by educators, things such as impulse control, mindfulness, and executive functions in general. When you think about programming, what is happening, at the cognitive level, is you are looking at a problem, identifying the problem, thinking about the solution, and you are putting a possible solution in place. You then can sit back and watch the result of testing your possible solutions. That's a pretty deliberate process, and it forces kids to be thoughtful in the way that typical video games and activities don't. In most video games, you're used to getting an immediate reaction in the game to what you do. In our game, they have to input the solution, and see if it plays out, and whether or not it did or didn't work.
Have you ever thought of applying this to something for adults?
Grant Hosford: First of all, our game is from kids to 105. The very first questions I get from over fifty percent of parents, is do you have a version of this for me? What I say to them, is that this is for you too. The logic we've mapped this to, is based on the CSTA- Computer Science Teaching Association here in the U.S. recommended curriculum. It's a very sophisticated curriculum, and we've taken off all of the sharp edges, and worked it into a fun and vibrant game. We may later make a version with art that is more adult oriented. But, adults can learn all of the same concepts, and play our game, and get as much out of it as the kids.
It's interesting to see you've used a computer game to teach a skill?
Grant Hosford: I think games are often misunderstood. Games are something that adults thank are not serious, and something you do when you're relaxing or resting. But in reality, games are more than often quite challenging, both mentally and physically. They're pretty demanding on the player. What is cool about having kids make games, is, in particular, it forces them to think about the player, and forces them into a role of having real empathy for the person who is playing that game. That's an unusual exercise for most kids, as they tend to be pretty egocentric, and think only about themselves. If they are making a game for others to play, they have to be thoughtful about if the game is too difficult and make sure it's not too hard. Teachers can use games to bring other subjects to life too. It's a great way to help kids engage in a way that is comfortable.
What's next for you now?
Grant Hosford: We're now 18 months old. We rolled out a small version of the puzzles last year for the Hour of Code, and the next step over the summer was to put out a new release of the puzzles, and convince ourselves and our players that we could teach sophisticated concepts with our approach. We now know we can teach things like loops and conditional statements, and have multiple event types and objects, all in a no-words environment. Just last week, we released Foo Studio, which creates a global community of kid creators, and allows them to make games, and share those with the community. They can find games they like that other kids have made, and they can remix those games as they like. On Foo Studio, we already have games created by kids, which have been played by over 5,000 other players. There have been a few which have spawned off as many as a hundred other games, where kids have taken an original concept which had been published to the community, and they have created their own spinoffs. That kind of user generated content is super exciting for us, and opens up a whole new world of creativity. With Foo Studio, we'll continue to release templates for games, but also we're releasing templates for animated storytelling, for digital art, for making interactive greeting cards for mom and dad, and even things like choreography. That's the thing we're most excited about, kids putting concepts to work in this creative environment.
Thanks, and good luck!