Ask Slashdot: Best Strategies For Teaching Kids CS Skills With Basic?
beaverdownunder writes We're currently working on developing a teaching platform based around our BASIC interpreter DiscoRunner, and we would love to hear from Slashdot readers as to what methods they've used in the past to teach kids computer science concepts — which worked, what didn't, and why? This will obviously be invaluable to us when it comes to working out the lessons that will be taught in our fight-to-save-the-world-from-evil learning environment, and we would be eternally grateful for any scraps of wisdom you could toss our way.
That, and give them a problem to solve. Better yet, let them find a problem to solve.
If there is no drive (i.e. "I just want to learn how to 'program'") they will learn nothing.
My kid is 7 and is getting pretty darn good with Java... Not because he wanted to learn to program, but because he wanted to mod minecraft. Programming was a side-effect to solving a problem. Now he loves it for what it is... He made the initiative on his own and he's much more appreciative on what he accomplishes.
GOTO is well-known as a beneficial logical statement. I suppose in this day and age, we're going to need something like this:
Thanks to the War on Drugs, it's easier to buy meth than it is to buy cold medicine!
My daughter took a programming class using Basic during her freshman year. I encouraged her to take it, so she could see that there are multiple ways of solving problems. Unfortunately the teacher was having none of this. He dictated to his students exactly how he wanted them to write the programs. This was very disappointing and incredibly discouraging for my daughter. Let the students struggle a little bit, and let them find ways to complete their assignments. When they're done present some of the students' solutions to the class, and talk about how they solved the assignment and discuss alternatives. You'll need to be respectful. People that are new to programming can be pretty sensitive about their code, so make sure you take that into account. You don't want to make somebody feel stupid, especially when they probably worked very hard on completing the assignment. Lastly, maybe you should consider a different language. Maybe you should consider Python or even C++.
Firstly, don't confuse the students by telling them it's Computer Science, if it's only simple programming.
Implement a turtle-based drawing API and build a curriculum that introduces programming concepts with turtle graphics.
I am becoming gerund, destroyer of verbs.
"If there is no drive (i.e. "I just want to learn how to 'program'") they will learn nothing."
One should not discount the motivations of others. "I want to learn how" can be just as effective as "I want to mod minecraft" (if not *more* so).
A.
...bringing you cynical quips since 1998
While your saving the world idea sounds exciting, it won't appeal to a large segment of your audience. Give them a choice of some other options, maybe something more social.
Perhaps - before you even attempt that:-
Fix those point and you'll have a product that stands head and shoulders against the competition. Which isn't hard - most of the edutainment market is utter crap (I work with a large number of schools that buy utter shit on the basis of "social-networking" merit points)
Until then it 'seems' like you (Melody and Anne?) are just spamming Slashdot to promote a 2 month old project.
Not that the idea isn't without merit - it's just that the "edutainment" market is overcrowded with "outsourced" get-rich-quick, all-froth-(and social marketing) and-no-beer closed-source schemes knocked-up-in-an-afternoon that leave a trail of broken promises in schools already hard pressed to do the bare minimum with their tiny budgets
Good luck
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration" ~ Edsger W. Dijkstra
And if your first computer is a z80 machine with nothing but basic in rom and 4-5 games on tapes then the incentive to code is really, really high. Which explains the coding choices of many in my generation, including myself: basic first, assembler next, then the world.