Slashdot Mirror


The Little Coder's Predicament

An anonymous reader writes "There's an interesting article on Advogato about the world of computing that kids today find themselves in compared to the world that kids in the 80's found themselves in. Learning to program in the 80's was simpler because the machines were more limited, and generally came with BASIC. Now we have Windows, which typically comes with no built-in programming language. What can be done to improve the situation?"

6 of 1,073 comments (clear)

  1. Re:A couple places to start by Anonymous Coward · · Score: 5, Insightful

    Kids don't want a "how to program" book. They want to write small, simple programs that do cool things. Gcc/gc++ and friends? For a 10-year-old? I don't think so.
    What is required is a very simple interface with simple commands. Programming is about Problem Solving (I resisted the urge to put that in caps). It is not about coding style or compilers or interfaces, any more than a sports car is about the CD changer in the trunk.
    Logic is logic. What we need *is* a return to a simple environment for kids. The smart ones will run into restrictions of the environment and branch out into other environments on their own.

  2. Except... by rblancarte · · Score: 5, Insightful

    IMHO, I think that kids who want to program will learn to program. I mean, the kids who learned everything about their computer 10 years ago didn't do it because the tools were there. The computer was something that interested them and they soaked up all they could when they could. The same is still true.

    That all said - I agree, some of the beginning tools are not there in the sense that you no longer have DOS with BASIC. But in another way, you have so much more. Now these kids have the internet to get all their tools. This is where I think the author or the article is missing something - free SDKs are being DLed, and the real wiz kids are learning how to program in much more robust languages than BASIC. Because of such, I really don't see a need for Toy Languages.

    RonB

    --
    It is human nature to take shortcuts in thinking.
    1. Re:Except... by John_Booty · · Score: 5, Insightful

      IMHO, I think that kids who want to program will learn to program. I mean, the kids who learned everything about their computer 10 years ago didn't do it because the tools were there. The computer was something that interested them and they soaked up all they could when they could. The same is still true.

      But how do kids get their interest sparked in the first place? Nothing beats booting up a computer and having a BASIC prompt staring you in the face, daring you to type in your first "10 PRINT 'I AM COOL' / 20 GOTO 10"-type program.

      I always loved computers but who knows if my interest in coding ever would have been sparked if it hadn't been that easy to get started by farting around and making funny little programs like that.

      Why the heck should a kid who's never coded before download a bunch of incredibly obscure (to THEM, not US) crap like Cygwin, etc just to pursue some totally unknown hobby? Some kids will still make this leap of course, but it's going to be LESS people than it would have been had there been a fun, built-in-to-the-OS, totally obvious, free way for kids to get started like you had in the 80's.

      --

      OtakuBooty.com: Smart, funny, sexy nerds.
    2. Re:Except... by kisrael · · Score: 5, Insightful

      That's a pretty cool idea, and probably one of the few workable ones. I don't see MS doing that, but we can hope.

      It's interesting to think of the history of it:

      Booting into BASIC was a godsend for budding programmers. I really wonder what the lack of that will lead to. (And blah blah blah "BASIC considered harmful"...I think the non-line-numbered versions are fine.)

      I never got to use 'em but I suspect it's too bad HyperCard fell by the wayside. I think that's the closest WIMP-based computers have come to a useful languge that beginners were exposed to and could do useful stuff in.

      These days, most kids will be exposed to the web, and the smart ones will realize "hey--this is pretty easy" and do interesting stuff. That tends to be more design than programming...and server side programming (from a kids point of view) is hampered by the lack of a screen to draw on. I think kids like to make THINGS on a screen, sprites, or 3D if it was easier.

      I think DarkBasic or GameMaker or something like that might be a good bet for grownups who wanted to get a kid started who seems to have potential for this kind of thing.

      --
      SO YOU'RE GOING TO DIE: The Comic for Dealing with Death
  3. C? C++? Java? Get real! by Cereal+Box · · Score: 5, Insightful

    I can't believe some of you are suggesting that an 8-10 year old child should be introduced to programming by way of C, C++, or Java. Are you kidding? Perhaps you've forgotten what it meant to be NEW to programming and don't realize that children are going to approach programming in a different way than a veteran will.

    You've got to think about what's going to make sense for a kid. When I was a kid, if I wanted to print "Hello, world!" to the screen I typed in 'print "Hello, world!"'. That makes sense. Do you honestly think a kid just starting out is going to know what all the extra crap he has to declare just to print something in Java means? What the hell do you think "public static void main" means to a kid? How is he supposed to understand that if he wants to "print" he has to use System.out.println? Furthermore, is a kid just starting out supposed to know what static typing is? Give them a language where they can just declare variables. At least that way they can draw a simple parallel to pre-algebra (children understand "x = 5" in math class... they don't have to say "int x = 5" in a math problem, so why would it make sense right off the bat to do so in a computer program)? Do you think children are going to understand even the basic concepts of OO programming? There are undergrads in colleges across the world who are having a tough enough time with that.

    I'm going to recommend Python. It's the modern-day QBasic (not meant in a bad way... Python is very powerful, I mean that it can boil programming down the essentials for novices in much the same way that QBasic did). No static typing, simple syntax, and you can program interactively. It's definitely the best thing going for introducting children to programming today.

  4. From little Acorns... by chiller2 · · Score: 5, Insightful

    My experience - early 80s home computing in the UK
    ---
    Back in '83 my father bought the family a BBC B [1], and not long after playing the bundled games thoroughly I found the User Guide, tried out the teletext examples to do double height text, the moving man vdu23 example, and didn't stop until I got to the end. It was a wonderful learning experience..

    Switch the Beeb on...
    *blur*beep*
    BBC Computer 32k

    Basic

    > 10 PRINT "Ooh look a programming language"
    > 20 PRINT "that is right there at power up"
    > 30 PRINT "and easy enough for a preteen"
    > 40 GOTO 10
    > RUN

    From that prompt BBC BASIC was right there available to you from power up. Want to draw a triangle - plot 85.. play a middle C note - SOUND 1,-15,53,5. Now is that or talking to DirectX via C/C++/VB/Delphi/etc easier for a child?

    Along with the Beeb, plenty other 8 bit machines also provided a simple to use programming environment right there by default at power up. No extras to have to buy, no alternative OS's to install, and what plenty of people who've posted here seem to be completely forgetting - a learning curve suitable for a pre-teen.

    Nowadays
    ---
    I think the article is spot on. A child who sits down at an out of the box Windows PC can do nothing more than play Solitaire. Sure there is plenty that can be done if you know about it. This requires purchase of $50+ books, programming languages, or knowledge to wipe the system and install some Unix variant with an oss compiler, etc. These are out of reach for a child. Even if a knowing parent had sorted out one of these solutions, it is still have a steeper learning curve.

    It's all about accessibility, and nowadays programming really is less accessible to young children. Anyone who can't see that either wasn't there in the 80s or lives in an alternative reality.

    [1] Huge UK success. Never cracked US market. See here for some background history on it.
    [2] For the BBC, Electron, etc there was Micro User, A&B Computing, Acorn User, Electron World, and others besides. The C64/128 had Crash, Zzap, etc, and for the Speccy there was Your Sinclair, and lots of others I've forgotten.

    --
    --- Commission free trading & free stock up to $500 - use http://share.robinhood.com/kelvinp6 :)