Over the last few years, I've spent time each week in a local middle-school classroom. (See article here) I've also mentored high- and engineering-school kids in various ways. My experience has been that kids today don't get much exposure to computers except that involving waving a mouse. They get to be quite good at creating PowerPoint presentations, but they're clueless about how the computer gets there. <RANT>This has a lot to do with the sad state of teaching as well as the overarching goal of schools to turn out nicely conforming cattle.</RANT>

But, to your question. Perl has an easy entry curve, even though a steep back-end learning curve. As an interpreted language, it's easier to grasp than C or C++. It's also a heckofalot easier to set up Perl on a BSD/Linux machine than it is to set up Java.

I'd suggest something a bit different. Start with shell scripting! Teach kids to control their machine and their environment first, like how to insert cron jobs and .profile customizations. I'd also look into one of the little programmable microcontroller development kits. When I was a high school kid, the thing that fired my imagination was a class that used a little interpreted "assembly language" that was implemented on an IBM 360. We had to punch card decks to get at it, but the concepts of how to work the hardware directly really fired me up.

Next, load up Blender3D. Understanding graphics and the embedded Python language that drives its animation will allow the boy to get a feel for what's involved in gaming. It's the only thing I've ever used Python for, and I have to admit it's waaaay cooool.

"The right path" is to get him started. The key then is not to lead, but to get him to become self-starting. That's the critical issue in all of education, and it's the one thing schools (and television) are destroying.

In reply to Re: Perl Advocacy w.r.t Teaching by samizdat
in thread Perl Advocacy w.r.t Teaching by moot

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.