5 ms·
I've always been suspicious of the looks-like-an-animal-with-a-name-and-a-smiley-face-I'm-a-grown-up-and-this-is-what-kids-like approach. I remember one of the
by methehack 10y ago
I've always been suspicious of the looks-like-an-animal-with-a-name-and-a-smiley-face-I'm-a-grown-up-and-this-is-what-kids-like approach. I remember one of the coolest things about the apple II was that you could 'poke' the right memory address and get the speaker to click. That was magic when I was 12 and it didn't need a friendly name and a stupid grin. Until they're old enough for K&R (12?, 13?, 14?), maybe they should do something else... or maybe anything else...
- jerluc 10y agoI was certainly in a similar boat (though a later generation of computers) whereby I found around age 9 that "poking" at a computer (either plugging random things in, or clicking random buttons or keys) enough yielded some interesting/mildly entertaining results. Of course, many times, these results ended with being grounded for breaking something, but nonetheless, the endless possibilities of random keystrokes and mouse clicks seemed to exude some kind of strange primitive allure. Also, K&R for kids ages 12-14?!
- methehack 10y agoI agree it might be hyperbole (my downfall!) with the K&R bit, but I really don't think so. I think by going through chapter 1 of K&R in slow motion you'd learn more than a year with mr turtle.
- snerbles 10y agoAt 14 my first programming class was in C at a local community college. One of the texts was K&R 2nd edition. So, if unusual, it's not totally unprecedented.
- angersock 10y agoI started hacking C around 14/15. It's amazing what you can accomplish when you don't know what is hard.
- pjmlp 10y agoI started using Z80 Assembly around 12, already knew ZX Basic and Timex Basic before it. But was already aware of Assembly with age of 10, when I started reading the Input magazine series with their hexdumps of microcode listings.
- twic 10y ago> Until they're old enough for K&R (12?, 13?, 14?) "If their age is on the clock, they're too young for malloc"?
- ghrifter 10y ago"Old enough to see, better start teaching them some C"
- deleted 10y ago[deleted]
- Lerc 10y agoI think they have their place, and they probably have a lot of evolving left to do, but I think they shouldn't be the sole focus of programming for kids. I have taught kids as young as eight JavaScript. They really take to it. JavaScript is not an ideal language for teaching beginners, but the availability means you can do it anywhere. I made a little library to provide easy to use functions and start with programs of the sort I would have written in basic when I was young. This is the program I start kids off with http://fingswotidun.com/code/index.php/TinyDraw http://fingswotidun.com/code/index.php/TinyDraw (You can edit and run the code from within the wiki) The etch-a-sketch program is a program kids like playing with and it is small enough that they can look at it and understand how it works.
- elliotec 10y agoI strongly agree. Kids are smarter and much more adaptable than the people developing this stuff seem to think. I don't understand why we aren't just exposing them to real programming languages from a very young age, like their native tongue.
- fsloth 10y agoVisual programming system such as Scratch eliminates spelling as a source of frustration for younger kids and especially those whose native tongue is not english (on which the syntax of most programming languages is based on). The logic of programming however, exposes the developer to exactly the same mental processes as programming with a typed language would. I've watched my son programming Scratch and I can guarantee even the typical the bugs are there in same form as in C++. "Why is this not working - oh, I need to initialize this variable not here but inside this loop" and so on.
- MichaelMoser123 10y agospelling as a problem is eliminated, but sticking together blocks also has its limits - with scratch the code gets complicated, when it does it becomes quite hard to drag and drop out of this mess - i found it hard to manipulate a structure of blocks with more than two levels of nesting.
- zachlatta 10y ago100% agree. I think the best way to learn to code is to... write a lot of code. I'd bet that's how most of the self-taught people here learned. Shameless plug: in Hack Club (https://github.com/hackclub/hackclub https://github.com/hackclub/hackclub), our approach to teaching is to not actually "teach". Instead, we have a bunch of open-source workshops (https://workshops.hackclub.com https://workshops.hackclub.com) that walk high schoolers through the process of building a real thing (using real code), like a website or game. We don't expect them to understand everything that's happening. In fact, we expect learners to not understand 90% of what's happening -- our goal is to get people excited about hacking and have most of the learning happen when they're googling to build their own projects.
- asimuvPR 10y agoFantastic project! The resources are very nice. Thanks for posting them.
- ef4 10y agoYou're conflating different audiences. Sure, cutesy stuff is counter-productive for a 12 year old, and probably even most 9 year olds. But at 4 years old my kid was already applying loops and subroutines in LightBot (and later Robot Turtles). At that age kids can already get the thrill of command and begin to play with abstractions, if you give them a domain of discourse that's non-textual.
- fsloth 10y agoI don't think when discussing young kids the main motivator should be to teach them to program. Rather, as a parent I like to expose my kids to as many different ways of thinking and expressing one self as possible. "I remember one of the coolest things about the apple II was that you could 'poke' the right memory address and get the speaker to click. " My 8 year old enjoys drawing characters in Scratch and then programming game and movement logic for them. Personally, I fail to see which experience has more objective value. Personal experiences such as you describe are mystical in the way that there is no rational way to share them with anyone else or make them understand it unless they've felt it themselves. I don't really think there is a "wrong way" to have fun with a computer. I think it's incorrect to view kids programming environments as a part of vocational programming curriculum. Rather, they are yet one more platform where kids can be creative and enjoy building things for themselves, like with Legos.
- kriro 10y agoThat is also a very decent approach in my opinion. I'm not aware of any studies on ideal age for programming or other skills that correlate to learning it better but I suspect it can't hurt to wait a bit and not rush it (it's very likely to be a hugely individual thing). Since I have recently ventured into learning how to draw (I am pretty horrible at it) my mind is kind of blown at how much that influences my general thinking and thought modes. Maybe identify these general activities and nurture them first before jumping into the actual programming (logic, drawing, thinking in processes and parallel etc.).
- kazagistar 10y ago> Until they are old enough Agreed. There is evidence that capability for true abstract reasoning does not properly develop until 12 or so, and that students who are taught basically no math before then catch up to their peers in a matter of years anyways. Before a certain point it is just wasted, probably.