Coffeehouse Thread

16 posts

A Beginner's Programming Language

Back to Forum: Coffeehouse
  • User profile image
    DarthVista

    I was just reading the "Why Johnny Can't Code" thread over on Slashdot (I have to be aware of what the enemy is saying over there ya know). And I was thinking...should Microsoft include a simple programming language with Vista? Just for kids/learning purposes? It might be like GW-BASIC, or other versions of BASIC in the "olden days". Or have kids' expectations of what a language should do evolved too much? Sure, I know, we can all download the "Express versions". I wouldn't call C# Express a starter language, though, and I'm wondering if starting off building "Windows" applications tends to skip a lot of important fundamental steps for a person just starting out.

  • User profile image
    Blackheart

    Kid's Programming Language

    From the site:
    "KPL is available as a freeware download from http://www.ms-inc.net/kpl.aspx. The default KPL download is English-language, but a Polish-language download is available now, and Spanish, Swedish, Hebrew, Norwegian, German and Romanian translations are under way."

  • User profile image
    Antitorgo

    I miss my LOGO turtle.

    I'm sure there is a version around somewhere.

  • User profile image
    Adrian​JMartin





    Theres loads of Logo!

    http://en.wikipedia.org/wiki/Logo_programming_language


    I thought there was a Logo.net arround too --


    I liked logo as a kid because it did something straight away.

  • User profile image
    WillemM

    Blackheart wrote:
    Kid's Programming Language

    From the site:
    "KPL is available as a freeware download from http://www.ms-inc.net/kpl.aspx. The default KPL download is English-language, but a Polish-language download is available now, and Spanish, Swedish, Hebrew, Norwegian, German and Romanian translations are under way."


    Sure looks fun, going to recommend it to the kids at my dads school. Its perfect to get some hands-on experience with programming.

  • User profile image
    Blackheart

    WillemM wrote:
    Sure looks fun, going to recommend it to the kids at my dads school. Its perfect to get some hands-on experience with programming.


    Be sure to poke around the site some, too (if you haven't already). There are several tutorials for writing games - what better way to learn? Classics such as Pong and Missile Command.

  • User profile image
    Angus

    I think that if one is to learn using a non visual language then one has fewer distractions such as which controls to use, therefore one can concentrate on the more elemental factors of programming.

    I mainly learned my limited knowledge of programming on Visual C# and therefore I feel that I have a rather limited knowledge of the elementary programming topics, it would be nice to have learned these first instead of having to learn about them later on when I have created applications that are rather slow, and less useful because of the less strong knowledge.

    Angus Higgins

  • User profile image
    TheSchwartz

    Full disclosure - one of the KPL guys here.  Smiley

    Lots of links, in case you're interested, including feedback from David Brin directly on my blog.  Here's that post to/from Brin, on the topic of his essay Why Johnny Can't Code:

    http://theschwartz.wordpress.com/2006/09/26/david-brin-proves-blogs-work/

    The Kid's Programming Language site itself is at

    http://www.k-p-l.org

    The NEW version of KPL is available now, renamed Phrogram, cause it's no longer just for kids:

    http://www.phrogram.com

    Highlights and improvements in the new version include:

    • Production of .NET executables (Mandelbrot went from a 120 second render in interpreted KPL to ONE second in compiled phrogram)
    • Support for simple DirectX-based 3D programming (35 lines of code to fly a spaceship around from your keyboard)
    • Interactive debugging
    • File I/O

    Channel 9's own Charles did a 45 minute video of us demoing and discussing KPL and its new version:

    http://channel9.msdn.com/Showpost.aspx?postid=166995

    KPL was actually presented at SIGGRAPH 2006, and the SIGGRAPH paper is available here:

    http://www.k-p-l.org/Files/KPLpaperSIGGRAPH2006.pdf

  • User profile image
    Ion Todirel

    I think Pascal is one of the best for beginners

  • User profile image
    Rossj

    I'd rather neither of my kids became programmers*, although I want them both to be able to write basic code that helps them solve problems.  I'll probably be starting to teach my daughter Ruby in the coming months.

    * I think my daughter is getting engrossed in Science and our frequent Chemistry experiments have got her caught, and the youngest (nearly 2) seems to be able to fix things by looking at them - engineer.

  • User profile image
    TheSchwartz

    Ion, I have fond memories of Pascal, too, especially Turbo Pascal - ah, it rocked!  Even when we had to work around compiler bugs!

    We all have favorites, I'm sure, but I think I should post Brin's update directly here, cause it is so relevant to the discussion and the point.  He's not so much arguing for BASIC - as everyone seemed to interpret him - he's more making the point that there should be SOMETHING, ANYTHING, which is available for kids to learn programming, on ANY COMPUTER they sit down in front of.  It's a pretty good point.  Here's the quote from Brin:

    As for my essay on Salon, “Why Johnny Can’t Code”… alas, It was NOT about BASIC per se. Only a small minority seemed at all interested in even looking at my core idea, which was how to create a nice, comfortable starting point for millions of kids, so they could use their computers to do a little COMPUTING for mild classroom assignments, and so get a taste of this way of looking at the world.
    Indeed, the tiniest fraction seemed to grasp how valuable it once was (but no longer) for ALL kids to be able to easily type in little illustrative examples at the end of each math or physics chapters. Everyone seemed to think it could still be done. But it cannot. I repeat that. It cannot AND it simply, simply cannot be done.
    It does no good to preach what languages kids SHOULD have. Most don’t. Period.
    People who praise their specific beloved language, without noticing that millions of kids have no easy, quick, turnkey pedagogical access to ANY common computer language, are missing the whole point.
    He has a good point, doesn't he?  In an email exchange after that, he mentioned the Web, aka the Browser, as an ideal on-every-kids-computer place where something like this could be done.  Ruby and Python offer some of that now, but I think it's fairly crude, and I don't yet know of other web-based programming environments.  Note I'm actually talking about using the Web browser as an IDE - including with things kids want, like colors and sounds and sprites and 3D model.  Definitely a cool thought, eh?

  • User profile image
    jsampsonPC

    I taught a course last year to a bunch of children (ages ranging from 11 - 16). Many of them had never done any web-development/programming, and so I started them on JavaScript.

    I found it was a great first-language for them, and they got to see immediate results. During that class we covered CSS, and HTML...so we got to tie all sorts of ends together.

  • User profile image
    josh_harris

    I have tought kids from 8+ how to programm in robolab, mind you that was robotics, teaching kids to program robots is todays logo

  • User profile image
    Oberon

    josh_harris wrote:
    teaching kids to program robots is todays logo

    That is a good idea. How hard is it to program Lego Mindstorm robots? It wouldn't be very practical, but I'm sure kids would have a blast.

  • User profile image
    josh_harris

    Oberon wrote:
    
    josh_harris wrote:teaching kids to program robots is todays logo

    That is a good idea. How hard is it to program Lego Mindstorm robots? It wouldn't be very practical, but I'm sure kids would have a blast.


    Its not that hard at all, and quite fun

  • User profile image
    TheSchwartz

    Lego Mindstorms is pretty cool, yep, and I've heard a lot about Karel.  We have put together a wrapper for KPL which allows KPL-easy programming of Lego Mindstorms - wrapping their API like we did the DirectX api, to make them easier to use.  We haven't released it yet, but we may get to that next what with KPL v 2 now going out the door.  Another reason we've hesitated on that one is that we thought we might be better off doing the same thing with the new Lego Mindstorms NXT robots.  Does anyone have feedback or experience with NXT yet?

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.