5 ms·
It depends on the kids' age. Older kids could probably handle Python though setting up + computer availability might an obstacle. If they have access to shared
by ivan_ah 10y ago
It depends on the kids' age. Older kids could probably handle Python though setting up + computer availability might an obstacle. If they have access to shared computers maybe javascript could be good since they can test things out in the browser.
For younger kids maybe a block-programming interface would be good: https://developers.google.com/blockly/ https://developers.google.com/blockly/ || https://snap.berkeley.edu/ https://snap.berkeley.edu/ || https://scratch.mit.edu/ https://scratch.mit.edu/
For a less high-tech approach, you should look at http://csunplugged.org/ http://csunplugged.org/ , e.g., http://csunplugged.org/binary-numbers/ http://csunplugged.org/binary-numbers/
In all cases I think the instruction/teaching is going to be key—through the physical presence and support. It will be comparatively more difficult to bootstrap and get them to learn by themselves. Peer tutoring is very promising though: See: https://www.youtube.com/watch?v=dk60sYrU2RU https://www.youtube.com/watch?v=dk60sYrU2RU and https://www.youtube.com/watch?v=y3jYVe1RGaU https://www.youtube.com/watch?v=y3jYVe1RGaU
It would be great if you write a blog post about this and what worked so people can follow in your footsteps. Good luck!
- adamaflynn 10y ago+1 for block-programming, even for older kids/teenagers. I taught a high school CS class using Snap. At first, I thought it was silly to teach "drag & drop" programming and would have preferred a high-level scripting language. But, after teaching 2 semesters of Snap and observing classes in Java, I'm a huge fan. 2 main reasons: 1. Time-to-cool-result is really low. The first project was a Mario-like game. Less than 10 hours from "never programmed" to "built Mario game" is a really powerful first experience. (Demo: http://snap.berkeley.edu/snapsource/snap.html#present:Username=adamaflynn&ProjectName=Mario http://snap.berkeley.edu/snapsource/snap.html#present:Userna...) 2. Syntax and compiler errors are really confusing. When I walked around the Java class, most kids were asking questions about how to fix their syntax errors. In my class, most of the questions were conceptual. It's easier to go back and learn a "real" language after you understand the high-level concepts and have seen how cool programming is. If you want the resources I used, feel free to ping me (adamaflynn@gmail.com).