3 ms·
Whenever this topic comes up, there are a huge number of replies to the effect of, "I learned on BASIC, and I found it satisfying. I don't think kids can deal w
by trjordan 17y ago
Whenever this topic comes up, there are a huge number of replies to the effect of, "I learned on BASIC, and I found it satisfying. I don't think kids can deal with more complexity."
This is a valid point, but there is a huge change that here that we seem to be missing. When a lot of us started out, computers were not ubiquitous. Getting a computer to print out "trjordan is the BEST!!!!" in a loop was insanely cool, because that's what computers did. The reason BASIC seemed so great was because you could make computers do what you thought was their primary use (text-based input/output, and decisions based on your input).
Today, kids have a totally different relationship with computers. I can't claim to understand it, but the sheer pervasiveness of graphics, color, and mouse-based interfaces changes how kids work with computers. When you think of it this way, BASIC, Python, and every other programming language falls short, because you basically can't create things that ape real programs (interface, no logic) in a few short lines. Sure, Python is great for some kids, but it's not hooking anybody whose mind isn't already "wired for programming", in some sense.
So what's the answer? I'm not sure. I do think that we need to provide something to get GUIs and graphics in front of them in a fast, easy, and intuitive way. LOGO's turtle is OK, but ultimately too limited. I remember _why's Shoes seemed like a step in the right direction. Kids love building things, and programming are only endeavor where you are only limited by your imagination. With the right set of tools, they could get start on a lifetime of building, but they need to be shown how powerful that keyboard and monitor are.
- ido 17y agoI am surprised nobody mentioned processing yet.
- teamonkey 17y ago> "When you think of it this way, BASIC, Python, and every other programming language falls short, because you basically can't create things that ape real programs (interface, no logic) in a few short lines." Sure you can, c.f. STOS/AMOS, GFABasic, BlitzBasic/BlitzMax, GameMaker, AGS and all the other BASIC-like systems that make it a breeze to program games and GUIs. With BlitzMax (which is relatively modern), you can get GPU-accelerated sprites flying around on screen in three or four lines. Easier than Flash by a long way. When starting out in programming it's important for it to be as least abstract as possible. It's basic usability. You want to do something and see the result immediately.