CountChocula wrote:
drogon wrote:
Here in the UK, in schools, the focus is on Scratch, a visual "language" followed by Python (in secondary/high school).
Ah, this brings back memories of my son trying to learn Scratch for his CS class in high school… he wasn't overly fond of it (and neither was I when he asked for help; we both kept fighting with the darn thing because it refused to let us do things the way we wanted). Considering how crazy it drove us, I doubt that a younger child would be able to use it without getting frustrated.
(My son loved Python though—as do I. It was harder for him to learn, but, once he did, its consistency meant not having to constantly deal with all kinds of bugs and strange behaviours.)
Well put. I heard one of my programming friends teach his 12 yo Scratch, don't know how far that really got.
I'm personally NOT a fan of drag-and-drop stuff (or turtles, sorry), very un-useful in the future. Simply teaching the "concepts" of programming is NOT going to get you doing anything (I'm looking at you, Raptor). Immediate results in something useful is more important (in my opinion) and then you can build out from there. Say like in math, when you add two numbers, that skill is useful... forever! Then we say "ah, but now let's put a minus sign there instead" and the concept is nearly identical but in reverse. Same with multiplying. Then simplifying, then solving for x, then derivatives, then integrals. If someone were to say, "Ok, I know you've been dragging and dropping for X years, but today's lesson cannot be done with that method, so now we forget all about that and start typing!" That will not be met well. If they were already typing, they know exactly what to expect.
So, typing is a limitation on younger folks. But my 4 yo is using the keyboard with her whole ONE finger, and it's ok. More will come later.
My point earlier is that I've heard from many folks who "grew up in the 80's" that they had a VIC-20 or C64 plopped down in front of them in at an early age, and they HAD to learn how to program else the machine wouldn't do anything. If 5 yo's in the 80's could program, so can 5 yo's in the 20's.
Thanks everyone.
Chad
EDIT:
Do you know what language was my first programming language? C++, back in 10th grade. It's sad it took that long though. We had these terrible "Turbo Borland" compilers, but gosh darnit I was already making games within the first month of the class. All kids need is the basics of how things work, and off they go! I use C++ DAILY, 30 years later.