1. Kodable, along with many of the other programming apps for kids, seems so game based. Is it really laying the proper foundation? Will these games *really* work? Assure me it's not just "edutainment." Wink
A common misconception is that programming is all about learning "syntax" or how to "write code." Programming is a thought process more than anything else. The most important thing to learn is how to *think* like a programmer. This is why experienced programmers have no problems learning new programming languages, because they know how to think like a programmer, and then all that matters learning a few new commands.
Kodable sets this basis, you have to use logical thinking to solve problems. You can actually map various commands in Kodable to essential programming concepts, such as loops and functions. They're simplified from a traditional programming function, but the important thing is learning how to think through how a function works, which is what you have to do in Kodable.
2. How long does it take to progress to "real" programming?
I started programming when I was 6, making a very simple password program on an old Windows 3.1 computer that didn't even have a mouse! So the potential is there to start really young. Once you have a good command of written language and typing skills you could definitely progress to "real" programming.
3. What is the next step after completing the Kodable app (please simplify it for us non-techy people!)
Our goal with Kodable is to build everything a kid needs to go from thinking like a programmer with Kodable to being able to pick up a real programming language like Javascript. We'll build on Kodable with a "Kodable 2" soon that introduces kids to more advanced concepts like variables and object-oriented programming. In the meantime, Scratch is a good option
http://scratch.mit.edu, although it isn't guided like Kodable, so be sure to give your kids a task to accomplish so they don't get bored. For older kids, CodeHS is a good option as well.
http://www.codehs.com4. How do you continue teaching your child if you have a non-programming background? Is it best to find a local mentor?
We wrote the Learning Guides especially for this reason, because there are so many people that don't understand programming but still want to teach it. My best advice would be to learn yourself! I'm actually completely self-taught. I graduated from college with a business degree. You don't have to outsource your child's learning, programming
really isn't that hard to get a basic understanding of. Most of it is simply logical thinking (if this is true, do that, otherwise do that other thing).
Finding a local mentor is an option, but there are so many good resources online that it really isn't that hard to do yourself. Also, don't underestimate your children, especially these days. If they have a true interest, they'll probably be able to find stuff to help learn really easily.
5. How long does it normally take a child to get through the Kodable curriculum?
It depends greatly on the child and how they are using Kodable. Younger kids typically don't have a huge attention span, so they'll play 5-10 levels in a sitting over 15-20 minutes. In school, Kodable tends to last a few months to a semester. It also depends on the problems you're solving (which also mirrors programming) If you're on a difficult level, it might take 10-15 minutes to complete a level, and you won't feel like playing anymore. THAT'S OKAY! The same thing happens in programming, it's perfectly ok to step away and come back later.
6. What is the difference between Kodable Lite and Kodable Pro? I noticed when we upgraded my kids lost all of their progress, so for parents considering this app, I recommend buying the full version from the get-go to avoid this.
There is actually a feature in Kodable Pro that lets you transfer progress from Kodable if you have it installed. You can access it in Adult Mode > Settings.
The free version of Kodable includes 45 levels as well as the Smeeborg Learning Guide. You can purchase additional content via in-app purchases, and can "upgrade to pro" which unlocks all content for the same price as Kodable Pro.
Kodable Pro offers all content for one upfront price. This is mostly for schools, who cannot make in-app purchases, and parents who would rather not have in-app purchases in their kid's apps. This includes 105 levels, including Function Junction and Bugs Below. Function Junction teaches kids about functions, one of the most important concepts in programming. Bugs Below teaches kids how to "debug" their code by giving them a problem that they must solve using concepts they have learned in previous lessons. You also get Learning Guides for each of these worlds.
7. How do you feel about children's computer programs that restrict their abilities to interact with the "true" computer interface? These programs limit their ability to "break" the computer, get into files they shouldn't, or go to inappropriate websites (or in the case of my son, watch Angry Birds youtube videos all day) My husband and I go back and forth on this....between giving our kids "real" computer experience (with real risks) or limiting their access to a child-friendly, contrived but safe computer experience (i.e. Peanut Butter PC and the like). What do you recommend? My kids have their own (dinosaur Frankenstein) laptops...do you recommend loading them with Windows or Linux or something else? We formerly had Linux on one of them but I would get frustrated because if they got "stuck" we would have to wait until my husband got home to help them because I am not great with it. Is Linux worth the trouble to indoctrinate them young?
I think giving a kid a laptop with Linux might be a bit on the extreme end, but I do think there's a lot of benefit to knowing how computers work. Im lucky to have been born in a time where you had to understand computers between the times computers were too complicated to be accessible (60s-early 80s) and now, when they core workings of the computer have started to be abstracted out, which I don't think is a good thing. We're getting a generation of kids growing up with the most advanced machines we've ever built, but have absolutely no idea how they work. Even a secretary or mechanic in the 90s had to understand the Windows filesystem. There is no filesystem on the iPad. I don't think that's good.
8. Do you have any other tips for families on this journey? If you have small children yourself, how did you teach them?
Don't give up! Programming can be hard, but not impossible! You're teaching your brain to think in a different way, and that can be difficult at first. You don't have to know how to build a computer from tin foil and program in binary to understand simple programming concepts, so don't feel discouraged. There's so many more resources out there now than there have ever been before, so take advantage of them!
Please let me know if you have any more questions, or if they're something private you can send me a PM!