need help selecting a starter programming language for my kids age 10 and 8

This is a discussion on need help selecting a starter programming language for my kids age 10 and 8 within the Tech Board forums, part of the Community Boards category; Hello,
I'm a mom whose first and last programming experience were a Pascal class in high school and a C ...

need help selecting a starter programming language for my kids age 10 and 8

Hello,

I'm a mom whose first and last programming experience were a Pascal class in high school and a C class in college more than 20 years ago. To be perfectly honest, I don't remember much about either other than general principles.

I'd like to give my two daughters a shot at learning programming principles with some of the more fun stuff that's been developed since I was learning before they run into the dry syntax of an advanced language and get turned off.

I was thinking of starting with either Scratch, Python or Alice but don't know which one to choose. My understanding is that Scratch is more procedural and Alice is OO? And I don't have a clue yet about Python. I think Alice had an offshoot designed to be more appealing to girls called Storytelling Alice that was the outgrowth of a PhD thesis at Carnegie Mellon, but I don't know if it is available to the public.
I really could use some advice.

Manasij Mukherjee | gcc-4.9.2 @Arch Linux Slow and Steady wins the race... if and only if :1.None of the other participants are fast and steady.
2.The fast and unsteady suddenly falls asleep while running !

Manasij Mukherjee | gcc-4.9.2 @Arch Linux Slow and Steady wins the race... if and only if :1.None of the other participants are fast and steady.
2.The fast and unsteady suddenly falls asleep while running !

I learned ruby a while back for a project. I don't really know much python as I'm a perl user, but based on what I've seen, I'd say ruby is considerably easier to learn than either python or perl, and has a lot going for it. Also, I think the ruby nomenclature (modules are gems, etc) might be appealing to children. I believe there was even some intention with that; one of the original books on ruby, why’s (poignant) guide to ruby, is in the form of a comic strip, and I am sure I read somewhere one of the original purposes was for use in elementary level education.

The first programming I ever did was at 10 or 11, in BASIC on a VIC 20, when we also had PETS at school. Unfortunately I gave it up a few years later, but for a while BASIC and lego were my fav things. The parents wouldn't let us have a video game machine in the house, btw. You might want to look at this thread:

By an old regular who was contemplating the same thing; hopefully, he's still an electronic engineer trying to make his little girl understand C++. Or BASIC, which is apparently still used by grown-ups in chip design.

I'd like to give my two daughters a shot at learning programming principles

First question ... how old are they?

While there are 10 year olds out there who do write programs, these kids are vanishingly few and very far between.

Second question ... has either of them expressed any interest in programming?

One of the best ways to turn someone off of something, is to try and foce them to learn it.

Depending on age, interest and other factors, you may not want to teach them programming at all. Instead get them started on logical and deductive reasoning. As I'm sure you know, Programming and puzzle solving are not that far apart. Pounding code is only a small part of the needed skillset.

So what I'm suggesting is that unless they're asking "how would I program this"... you could start them off nice and easy with a "family game" of puzzle solving, riddles, toys, projects etc. Challenge them to think rationally, and lead them into the programming mindset. (It will help them in other areas as well...)

If you do, Mindstorm Lego is about as perfect as you can get. They get to see real world cause and effect, Mindstorm has a "for kids" programming interface, but then later has a C api as well. It's about the perfect introduction to programming for kids ( and it's damned cool ).

While there are 10 year olds out there who do write programs, these kids are vanishingly few and very far between.

I think you believe this because when you were 10, there were no kids using computers, so it seems like a fantastic concept to you.

Programming is not as hard at an elementary level as playing the piano, and yet, because it is traditional, no one would think it odd to start your 8 or 10 year old on piano.

My memory of using BASIC is very hazy, but for a fact, no one pushed me into it. Altho my dad was an engineer and bought the computer, he had no knowledge or interest in programming nor showed any with regard to mine. Still, I would do it obsessively for hours -- mostly creating sprites and making them move around. IMO, a very high (like easily into the double digits) percentage of programmers I've met close to my own generation (1973) report similar experiences (using BASIC on amiga machines at a young age). It even seems to beat role playing games as a pre-cursor activity, lol. Like I said, I gave it up during puberty and never took it too seriously, but a lot of those other people did some pretty bewildering things before they were old enough to drive. By the time I was in high school and BBS'ing was common, I knew kids who were so serious they got busted for software piracy. Rare, but not that rare. And this was the late eighties. Remember that movie War Games (1983)? It was a totally mainstream Hollywood film that did well. I think it reflected some kind of phenomenon of the time -- all these middle class suburban families where 12 year old kids were like, doing things with computers that the parents had no clue or understanding of, they were just aware of it and thought it was cool. Slightly freakish, but again, not about some "vanishingly few" group, as you say.

I have a niece who's 7, she's bright, reads very well, uses computers all the time. Given the right introduction (and presuming an interest), I have no doubt she could take to stuff like BASIC. In a few years, I assume this will be even more obviously true.

So I gotta strongly disagree that the kids are too young. They've learned to read and write and do arithmetic. They can do simple programming no problem -- if they want to.

Depending on age, interest and other factors, you may not want to teach them programming at all. Instead get them started on logical and deductive reasoning.

I didn't use terms like "logic" and "deductive reasoning" when I was 11, but I could think that way, and using BASIC seemed very natural (this is one of the things I love now about programming -- it is not about yer hyperbole or absurdist rhetoric -- it is mostly straight logic and reality, deductive/inductive reasoning. Bull........ gets an ejector seat).

But puzzles are good too.

Second question ... has either of them expressed any interest in programming?

That's the crux of the issue right there. One thing that's different between now and 1985 is that computers and programming are so ubiquitous and highly glorified, which I think adds a psychological element that might, you know, give kids crazy ideas because while they can be logical at that age, they are often not.

Also, there was not much else to do with a VIC 20. It booted into a text interface (the BASIC shell). I imagine a text interface might look beyond boring to kids today. Like black and white movies or something -- archaic and dull. But, for better or worse, we still don't program with icons (altho there probably are some things like that around or in the works -- one day people may think learning to program at 10 is late ). Another consequence of this is that making your own sprites and having them bounce around actually seemed impressive on an machine with 5KB of RAM. Right now, the kids could easily become discouraged because anything they do is gonna seem really gimpy, lol. OTOH, so are the books they read, but that doesn't stop them, necessarily.