<rdf:RDF
    xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'
    xmlns:s='http://snipsnap.org/rdf/snip-schema#'
    xml:base='http://www.peerbox.com:8668/rdf'>
    <s:Snip rdf:about='http://www.peerbox.com:8668/rdf#start/2006-09-14/1'
         s:name='start/2006-09-14/1'
         s:cUser='kgr'
         s:oUser='kgr'
         s:mUser='kgr'>
        <s:content>1 Easy Programming for Children (w. pics) {anchor:Easy Programming for Children (w. pics)}&#xD;&#xA;A recent {link:article on Salon|http://www.salon.com/tech/feature/2006/09/14/basic/}, which was commented on at {link:Slashdot|http://developers.slashdot.org/article.pl?sid=06/09/14/0320238},   bemoanes the lack of easy beginner programming environments on modern computers.&#xD;&#xA;Back in the early 80&apos;s, most computers started up directly into a BASIC interpreter so getting with programming was relatively easy.  Today it is much harder.  Java is much simpler than something like C++ and MFC but it&apos;s still a large language with a huge API.  Hardly the ideal candidate for an entry-level programming language.&#xD;&#xA;&#xD;&#xA;It&apos;s important that we still have easy and compelling entry-level programming environments if we want to compel people to enter into programming.  If they don&apos;t then there won&apos;t be any more programmers, programming, or programs.&#xD;&#xA;&#xD;&#xA;Two environments that I&apos;ve tried with my kids are Logo and Squeak.  I bought the following two books to help:&#xD;&#xA;&#xD;&#xA;{image:logo.jpg}\\&#xD;&#xA;{link:The Great Logo Adventure|http://www.amazon.com/exec/obidos/tg/detail/-/0965193462?v=glance}&#xD;&#xA;This is a really great book.&#xD;&#xA;&#xD;&#xA;You can also find a link to a downloadable version of this book and the Logo interpreter that they use {link:here|Logo Links|http://www.softronix.com/logo.html} (along with some other good logo links).&#xD;&#xA;&#xD;&#xA;You can try out Logo without installing any software by using either the {link:LogoWiki|http://www.logowiki.net/} or one of many &#xD;&#xA;{link:Logo Applets|http://www.mathsnet.net/logo/turtlelogo/}.&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;{image:squeak.jpg}\\&#xD;&#xA;{link:Squeak: Learn Programming with Robots|http://www.amazon.com/Squeak-Programming-Robots-Technology-Action/dp/1590594916/ref=sr_11_1/103-5756772-5797404?ie=UTF8}&#xD;&#xA;&#xD;&#xA;I was disappointed with this book as it doesn&apos;t cover very much material and isn&apos;t nearly as interesting as the logo book.&#xD;&#xA;&#xD;&#xA;There&apos;s also the very BASIC-like {link:Kid&apos;s Programming Language|http://msdn.microsoft.com/coding4fun/coolapplications/kpl/default.aspx}.&#xD;&#xA;&#xD;&#xA;One of the problems that I&apos;ve noticed with teaching my children programming is that a lot of the difficulty comes from just remembering the keywords and syntax.  The following two systems: {link:Star Logo TNG|http://education.mit.edu/starlogo-tng/} and {link:Scratch|http://weblogs.media.mit.edu/llk/scratch/} take a different approach which helps to overcome that problem.  They both use graphical rather than text-based syntax.  The advantage is that the programmer is always graphically presented with the meaningful options.  No keywords to remember and no syntax errors (if it isn&apos;t correct, the GUI just doesn&apos;t let you build it).  I haven&apos;t tried either of these systems yet but I look forward to it.&#xD;&#xA;&#xD;&#xA;{image:starlogo.jpg}\\&#xD;&#xA;Star Logo TNG&#xD;&#xA;&#xD;&#xA;{image:scratch}\\&#xD;&#xA;Scratch&#xD;&#xA;&#xD;&#xA;So while computers don&apos;t boot directly into BASIC anymore, I still think that there are plenty of great(er than BASIC) introductory programming environments out there.&#xD;&#xA;&#xD;&#xA;P.S. Other languages with structured editors inlude {link:Alice|http://www.alice.org/} and  {link:Boxer|http://dewey.soe.berkeley.edu/boxer/}.&#xD;&#xA;</s:content>
        <s:mTime>2006-10-05 14:38:09.795</s:mTime>
        <s:cTime>2006-09-14 12:01:46.008</s:cTime>
        <s:comments
             rdf:type='http://www.w3.org/1999/02/22-rdf-syntax-ns#Bag'/>
        <s:snipLinks>
            <rdf:Bag>
                <rdf:li rdf:resource='http://www.peerbox.com:8668/rdf#2006'/>
                <rdf:li rdf:resource='#snipsnap-search'/>
                <rdf:li rdf:resource='http://www.peerbox.com:8668/rdf#start/2006-03-31/1'/>
                <rdf:li rdf:resource='#kgr'/>
                <rdf:li rdf:resource='#snipsnap-notfound'/>
            </rdf:Bag>
        </s:snipLinks>
        <s:attachments>
            <rdf:Bag>
                <rdf:li>
                    <s:Attachment rdf:about='http://www.peerbox.com:8668/space/start/2006-09-14/1/logo.jpg'
                         s:fileName='logo.jpg'
                         s:contentType='image/jpeg'
                         s:size='19849'>
                        <s:date>Thu Sep 14 12:02:58 EDT 2006</s:date>
                    </s:Attachment>
                </rdf:li>
                <rdf:li>
                    <s:Attachment rdf:about='http://www.peerbox.com:8668/space/start/2006-09-14/1/scratch.png'
                         s:fileName='scratch.png'
                         s:contentType='image/png'
                         s:size='413664'>
                        <s:date>Thu Sep 14 12:02:17 EDT 2006</s:date>
                    </s:Attachment>
                </rdf:li>
                <rdf:li>
                    <s:Attachment rdf:about='http://www.peerbox.com:8668/space/start/2006-09-14/1/squeak.jpg'
                         s:fileName='squeak.jpg'
                         s:contentType='image/jpeg'
                         s:size='11810'>
                        <s:date>Thu Sep 14 12:02:26 EDT 2006</s:date>
                    </s:Attachment>
                </rdf:li>
                <rdf:li>
                    <s:Attachment rdf:about='http://www.peerbox.com:8668/space/start/2006-09-14/1/starlogo.jpg'
                         s:fileName='starlogo.jpg'
                         s:contentType='image/jpeg'
                         s:size='91606'>
                        <s:date>Thu Sep 14 12:02:38 EDT 2006</s:date>
                    </s:Attachment>
                </rdf:li>
            </rdf:Bag>
        </s:attachments>
    </s:Snip>
</rdf:RDF>
