While they certainly aren't ready for it yet, I look forward to one day helping my children learn about programming. I think that, with a good set of exercises, a lot of different analytical tools could be taught in a very interactive, "let me see results," non-theoretical way that would be great at stimulating and maintaining interest. Turtle Tracks is out there, so Logo is still an option (no perl implementations?!) Anyway, it got me thinking...

Instead of another interpreter, it would be neat to see some pragmas for perl created specifically for teaching programming concepts. It would help guide the student's progress by encouraging and allowing different usages, much as strict does now, but slightly more B&D. Like training wheels, however, the restrictions could be progressively loosened lesson by lesson, or piece by piece. Like diagnostics, more informative (to the novice) error messages could be provided. Bundle it with some Tk and custom lesson modules, accompanied with a good e-book, and it could easily be adopted by schools at low cost (while providing plenty of market for an instructors manual or two...)

Best of all, when they finish the course and all the restricitons are off, you have a class full of perl hacklings!
OK, there's my hairbrained idea for the day, off to work...

I'll try to maintain a list of related links below:

Previous similar perlmonks discussions
How to introduce 8 year olds to (Perl) programming?
Teaching Perl to children
Where and how to start learning Perl (not child specific but extensive)

Related Links
Logo in Java: Turtle Tracks
Smalltalk via Squeak!

"One is enough. If you are acquainted with the principle, what do you care for the myriad instances and applications?"
- Henry David Thoreau, Walden


In reply to Teaching aid pragmas (perlite?) by blogical

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.