Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Education Programming Software

Localized (Visual) Programming Language For Kids? 185

First time accepted submitter jimshatt writes "I want my kids to play around with programming languages. To teach them basic concepts like loops and subroutines and the likes. My 8-year-old daughter in particular. I've tried Scratch and some other visual languages, but I think she might be turned off by the English language. Having to learn English as well as a programming language at the same time might be just a little too much. I'd really like to have a programming language that is easy to learn, and localized or localizable. Preferably cross-platform, or browser-based, so she can show her work at school (Windows) as well as work on in at home (Debian Linux). By the way, she speaks Dutch and Danish, so preferably one of those languages (but if it's localizable I can translate it myself). Any suggestions?"
This discussion has been archived. No new comments can be posted.

Localized (Visual) Programming Language For Kids?

Comments Filter:
  • Scratch (Score:5, Informative)

    by dabadab ( 126782 ) on Saturday April 20, 2013 @04:36AM (#43502317)

    Scratch is localizable, it's actually running in Hungarian on my Debian desktop. Looking at /usr/share/scratch/locale, it's already translated to over 40 languages.

  • by V!NCENT ( 1105021 ) on Saturday April 20, 2013 @04:39AM (#43502335)

    Kay worked at just that, at Xerox PARC. It was not visual, but let's be honest here; Xerox fscking PARC.

    You should check this out:
    http://squeak.org/About/ [squeak.org]

    No... It is better.

    • by Melkman ( 82959 ) on Saturday April 20, 2013 @06:04AM (#43502567)

      And there is a visual programming environment for squeak especially geared towards kids with localization in many languages. It's called Etoys (http://www.squeakland.org/). You can also link it to an Arduino or Mindstorm for real world interaction with Physical Etoys (http://tecnodacta.com.ar/gira/projects/physical-etoys/). It's what my kids use ;-).

  • Logo (Score:5, Interesting)

    by isj ( 453011 ) on Saturday April 20, 2013 @04:41AM (#43502343) Homepage

    As far as I know most dialects of Logo are localized or localizable, both keywords and variables. But I don't know its domain (a drawing turtle) is interesting to your daughter.

    • by Anonymous Coward

      When I was 8 we used a localized version of Logo at school, and indeed it was interesting at that time. Today's standards might be higher, though.

  • by Spottywot ( 1910658 ) on Saturday April 20, 2013 @04:43AM (#43502349)
    Either translate it yourself from the source code, it's not a huge language, or just accept the fact that she will have to learn English along the way. She will be learning a new language anyway, so what does it matter what language she uses to label new concepts. Loop, string etc...can't be a huge problem for her as she is bilingual anyway.
  • by ThreeKelvin ( 2024342 ) on Saturday April 20, 2013 @04:44AM (#43502351)

    I don't know if it's localized, but Lego Mindstorm should do the trick. Rather expensive solution though.

  • by Anonymous Coward

    .. no programming language requires you to "learn English", they require you to know a handful of keywords.

    Also, at 8 years old, they should already know English or start learning it anyways, it's a language pretty much everyone on the planet will need and the earlier you start learning it the easier it will be for you to learn it properly.

    • by jez9999 ( 618189 )

      Yeah, I would expect kids who speak Dutch and Danish (particularly Danish) to speak English relatively well as a second language. Strange that it would "put her off".

    • Give that kid a break, she already speaks two languages and you want her to force to learn a third already? How many do you speak?
      • Re: (Score:2, Insightful)

        by Anonymous Coward

        Prob is, Dutch and Danish are cute "local" languages. She's gonna have to learn English, so better do it now while she's a kid and can handle it.

      • Perl FTW! (Score:5, Funny)

        by girlinatrainingbra ( 2738457 ) on Saturday April 20, 2013 @05:25AM (#43502467)
        Perl for the win! It doesn't matter what language you speak natively, the symbols used in Perl will be fully incomprehensible!!! The learning curve is just as steep whether you are a native English speaker or a native speaker of French, Urdu, Chinese, Klingon, Swahili, or Dansk!
        :>)
        The ability of Perl [wikipedia.org] to mystify, astound, and obfuscate is so reknowned that there is even a contest dedicated to the ability of Perl to render unintelligible code:
        the Obfuscated Perl Contest [wikipedia.org]

        Used properly, Perl can become a "write-only" programming language, such that no one else can decipher what you are attempting to do.
        ;>)
        Just kidding. I am actually a fan of Perl, Python, C, C++, BASIC, Lisp, and Scheme. I hear good things about Logo and the turtle languages all allow keywords to be in any language. Just because the token for printing in BASIC is usually the english word "PRINT", there is no reason for it to be constrained to that. In the TRS-80, "PRINT" is retokenized as the question-mark symbol "?" which can also be used as a short-cut for the "PRINT" statement. My first programming language was BASIC (Level 1 basic) on the TRS-80 with 4K (4 kilobytes!!!) of memory. I am sorry that your daughter is turned off by the english language. Get your hands on a BASIC interpreter and change the interpreter for the keywords which you'd prefer. Or stick with Scratch as recommended above.
        .
        Also, Lisp and Scheme are fairly cryptic and language agnostic, though parenthesis heavy: car, cdr, eval, print (damn, that last word is obviously english.) Good luck!

        • by KGIII ( 973947 )

          My first programming language was BASIC (Level 1 basic) on the TRS-80 with 4K (4 kilobytes!!!) of memory.

          Heh... The Trash 80!

          I learned BASIC on a PET, upgraded to a VIC 20, and then I spent a summer pounding away on a friend's TRS-80 II (or III maybe, we're talking 30 years ago so my brain is a bit fuzzy) and that made me decide to get a TRS-80 4. I remember regretting purchasing it and not waiting a while longer. If I'd waited I probably would have ended up with an Amiga (1000 or 2000, again, I can't really remember because it was a lot of years ago) which was a much nicer computer - you could even multitask.

      • English, Bad English , Canadian and American English.

        • by KGIII ( 973947 )

          Bad English! *wags finger* No participle for you!

          *sighs*

          I'm not even sorry for that.

      • by gbjbaanb ( 229885 ) on Saturday April 20, 2013 @09:38AM (#43503203)

        I'd rather learn a new language at 8 than at 48... just saying, its probably a very good thing to teach her English right now than have her struggle to learn it later (apparently kids are much more adaptable to language, starting off with nothing and having to learn 1 it kind of makes sense somehow)

        All my Danish friends say that they all speak English anyway, 5 million Danes on the planet and no-one else speaks Danish makes it almost mandatory for them to speak something else, and Danish is a close common ancestor of English anyway (ie I really don't speak Danish, but I can understand the meaning of danish text) having its roots in the settlement era of the dark ages when you guys came over in the longships.

        • You do have a good point about learning new languages when you're young. I'm not sure she's ready for the 2nd language in 2 years (Danish being the 1st). When she's having fun learning to program, I can always try switching the locale to english (to up the ante, so to speak :) ).

          Having just learned Danish myself, when I suddenly need to switch to English, a sort of Dutch-Danish version of English comes out of my mouth. And you can just see people thinking "what century did he just arrive from (riding his
    • For example, C has a moderate list of keywords, but if you want to use the language without substantial grief, you need to use a dozen standard libraries, each with a good number of English-like functions. Knowing English makes many programming languages easier.
  • by Anonymous Coward on Saturday April 20, 2013 @04:45AM (#43502357)

    I learned programming long before knowing english. It doesn't make any difference, keywords are just symbols you have to understand what they do. The fact that 'for' stands for an english word doesn't mean a non-programmer can look at the source code and see what 'for' does or the implications it has.

    • The fact that 'for' stands for an english word doesn't mean a non-programmer can look at the source code and see what 'for' does or the implications it has.

      A Dutch speaker shouldn't have too much trouble with the word "for" - it's spelled a little differently, but pronounced almost exactly the same as its Dutch equivalent "voor".

  • I started with GWBASIC on DOS 3 at about that age. A couple of books with example programs in my native tongue and I was set.
    • Similar experience here but I started out with a cheat sheet that someone gave me, that got me going for a while. I remember the joy of getting a copy of QBasic, and not have to prefix every line with a line number.

      • I remember that joy... then the next was QuickBASIC being able to compile to an EXE... it was a huge step to be able to run things without the QBASIC interface. At least for a young kid.

    • That's exactly how I started as well. The manuals I had were in english (plus DOS; that's how I picked up basic english) but we had books in our library that were in German. So not knowing english doesn't stop you, but I guess it would've been easier/nicer if I would've been able to start in my native tongue.
  • by cool_akshay ( 2902819 ) on Saturday April 20, 2013 @05:00AM (#43502413) Homepage
    Khan Academy's programming tutorials use some kind of visual programming platform. I think its worth checking out. It starts of with programming the movement of the ball. The language is English. But as it is intended to teach programming with fun, this might be the one. I had tried it with my 12 year old bother and it worked. Here is the link : https://www.khanacademy.org/cs/paddle-ball/830543654 [khanacademy.org]
  • by ernest.cunningham ( 972490 ) on Saturday April 20, 2013 @05:08AM (#43502431) Homepage

    GvR is a great platform to learn programming. It teaches loops and conditionals and problem solving. It is written in Python so will work cross platform. The only negative is that I think it is not localised.

    http://gvr.sourceforge.net/index.php [sourceforge.net]

  • Lego Mindstorm (Score:5, Interesting)

    by pieleric ( 917714 ) on Saturday April 20, 2013 @05:15AM (#43502447) Homepage

    Lego Mindstorm might be a nice approach. It's available both in Dutch and Danish, and uses a graphical language with a great graphical interface dedicated to kids. I use it to teach (Dutch) programing and robotics to kids and it's amazing easy for them to make and modify the software.

    The main drawbacks is that, although the software is free, you need to get a 200€ lego robot to make it useful. It also has only a Windows (and probably Mac) version. IMHO, the robot has the advantage to bring additional interest to the kids. It makes programming much less abstract.

    To try the software before buying, look for the lego mindstorm nxt 2 iso on the lego website (it's a bit hidden).

    • Oh, I didn't know it was available in Danish.

      I've used the NeXT (or nExt, NexT, or whatever their crazy capitalization is) for an introduction to control theory for engineering students at the university. It's a great way to quickly hobble together a prototype in Lego and some prototype software and watch it in action, and thereby get them motivated to learn a bit of theory.

  • How about Piet [dangermouse.net]?
  • by Shlomi Fish ( 3362 ) <shlomif@shlomifish.org> on Saturday April 20, 2013 @05:36AM (#43502495) Homepage

    Hi,

    I may be dismissed as an imperialistic pig for saying that, but I've written on why it is important to avoid localised programming languages [shlomifish.org] because it is becoming more and more important to learn English as soon as possible. Just for the record, English is not my mother language (I am Israeli and my mother language is Hebrew), and yet I think that learning English is an increasingly important skill, and also communicate primarily in English in my Internet interactions, and most of home-site [shlomifish.org] and blogs are written in English. Whether you like it or not, I believe English has been becoming what Aramaic was in the Near East [shlomifish.org] from the time of the Neo-Babylonian Empire [wikipedia.org] up to Arab times.

    I suggest you invest the time in teaching your daughter English first, which is of far greater utility than programming, and is also absolutely necessary for learning to program (or for most other fields of science, technology and endeavour).

    • "Lingua Franca" [wikipedia.org]

      No need to bring up Aramaic when we have a perfectly good term for the concept.

  • There are many localized version of Scratch available already, including Dutch.
    If the localization is incomplete, I understand that Scratch is easily localizable.
    http://scratchweb.nl/ [scratchweb.nl]
    http://scratch.mit.edu/forums/viewtopic.php?pid=81477 [mit.edu]

  • Play with them (Score:5, Interesting)

    by mrthoughtful ( 466814 ) on Saturday April 20, 2013 @06:11AM (#43502585) Journal

    If your kids are strongly visual, and want to work with graphics manipulation, then Scratch is ok. If they like robotics and want to work in the real world, then Lego mindstorms is alright (for simple projects) both choices the kids will be involved in as much non-programming as coding - as design (2d or 3d) will absorb their time.

    Logo is a pure programming language, which is going to encourage good application design, but it's really important to find a good guide for them - it's also nice (but not necessary by any means) if you can find a turtle. At education college we were encouraged to teach logo, and it was a position that I agree on. The only potential issue is that it is not 'C'-like but that's a syntax issue.

    There are also programming games which help develop Logo skills - not computer games - family games - such as you being a robot, and asking the kids to give you orders to do something - you can give them a starting lexicon of very few commands, and ask them to take you to the kitchen. Note that angles are often best addressed with quarter-turns: left, right, turn-around, etc. Then later on introduce something like 'bit-left' or 'little-left'. So a lexicon of forward,back,left,right,stop is often a good start. Then parameterising forward: eg forward 50..

    The primary advantages are that they get time to have fun with their Dad, (and you with them) and you can design the language fluidly according to their ability. Later on you can easily add function definitions using eg "to": eg. "Dad, to square, repeat 4 times forward 5 right"

    AFAIK none of them have very good debugging tools, and IMO debugging is where most early coders find out if they have enough stamina to want to code, so games like above help you to give suggestions. Likewise, with logo (turtle graphics) - at first anyway- you can act out the programme which can help.

    Logo isn't just graphics - it's a simplified form of lisp.

  • I have been have witnessed a positive reaction to Kudo, not only for my own 8 year old, but also at his school (where I gave the lunchtime computer club some games tutorials after the Raspberry Pi baffled them), the programming is visual, and more importantly delivers fun, rewarding visual results instantly, all in 3D which the kids can relate too. Within a few hours they were programming the AI for soccer teams and pitting them against each other in a tournament. I write this on a linux box, but credit wh
  • I would recommend teaching her x86 Assembly Language.
    The instructions are simple little things like MOV, PUSH, POP, CALL, and INT. She can and should comment heavily and that can be in any language.
    The mnemonics come from English, but are abstracted enough that they shouldn't turn her off for language's sake.
    The concepts are basic as well. What she learns now will always be relevant. Consider this:
    [...] a design architecture for an electronic digital computer with subdivisions of a processing unit consis

  • Not really a visual language, but basically, you can seamlessly define localized wrappers around every LISP function, macro, and special form to obtain a fully-localized programming language. And yes, kids can learn programming with LISP [landoflisp.com].
  • by MagicM ( 85041 )

    You might want to look at Kodu [microsoft.com]. There are plenty of reasons to hate on it, but it's a visual programming language aimed at making games.

  • Seriously. Most jobs in the programming industry (including offshore consulting) have customers and partners who use English for documentation, requirements, and code. While it may be "neat" to program in another language, if you try to do so in the real world, you're probably going to get spanked and told to use "comprehensible names in your code."

    I realize that might sound bigoted, saying you have to learn English to program, but it's a simple fact of the modern world. The user interface for applica

  • Now these aren't the best visual languages but they're two I learned. Logo and Turing:
    Logo: http://el.media.mit.edu/logo-foundation/logo/programming.html [mit.edu]
    Turing: http://compsci.ca/holtsoft/ [compsci.ca]

    I found them pretty good back in the day.
  • More than just Scratch, why not the full Sugar experience? You can put it in a usb stick [sugarlabs.org] or put it as an alternate desktop manager if you already use linux. Here in Uruguay (where the language is spanish) is what school kids get with the project Ceibal [wikipedia.org], and that includes, already localized, Logo (TurtleArt) and Scratch.

    And don't focus on programming, at least at the start. Trying to do animations in drawings will be enough motivation for them to understand the basics of programming while they have fun.

  • You should really check out Stencyl (www.stencyl.com [stencyl.com]). It sounds like it fits your needs perfectly.

    It uses a visual programming language that is based on Scratch (although not one-for-one). It's gained some attention from educators and has been used by all age ranges (and commercial developers as well). Better yet, you can use it completely for free (if you don't mind a preloader splash screen) to export to Flash - which means easy sharing and playing of the games over the internet. If you want, subscript
  • You need a localized description of things. This could be just a book, or it could be something in the editor. It would help to have tooltip-style explanations of keywords and library functions. It would help to have a localized menu showing things that make sense in the current context. Go beyond the supposed English. Explain the operators. For example, the '*' as a pointer reference is surely not English.

  • It'll seem a little counter-intuitive, but I strongly recommend JavaScript in the Unity game engine for a lotta reasons.

    The problem with most visual programming languages is that they don't transition well to written languages, which you start to pine for after getting sick of dragging the output of one module to the input of another for the 300th time. You want this just for laziness/productivity reasons, and it also happens to be a good way to get her motivated to learn English faster.

    So here's my thinki

  • Just be sure to be patient with your kids when you are teaching them logic. Humans (all humans) suck at logical naturally, but they REALLY suck when their brains are developing. Remember how learning basic math was challenging? It wasn't challenging simply because you hadn't seen math before. Your brain was not as equipped as it is in adulthood to deal with logic.

    You may find that your kid takes a long time to pick up certain concepts, fails completely to pick up other concepts, while they pick up still oth

  • Perhaps more basic than what you're looking for, but I've been having a lot of fun with my 5 & 6 year old with KTurtle. It's a Logo based drawing program where you have only a few basic commands to make the turtle draw stuff. It has variables, loops, functions and conditionals; not to mention graph coordinates, polygons, etc. It's also localisable... which is really cool.

    To start the kid out I basically would make little programs that make shapes or patterns, and he'd then mess around with them... mostl

BLISS is ignorance.

Working...