There are many programs that I have always been assigned when learning a new language that help you grasp the basics.
Odd that both examples you gave are usually the ones that programming books give to teach recursion. I wouldn't exactly call that a basic topic for most new-to-programming types. I always mention recursion and dance around it for a little while to expand a few brains in the audience. Then take those students who are prepared for it (aside) on an adventure through factorials, fibonacci, reversing strings/arrays (non-perl classes), and to cut the wheat from the chaff: Towers of Hanoi.

It's terribly useful when you need it, it's good that they're aware of it even to point out some uses (trees, etc...) but when they're busy grasping the concept of what a subroutine/function is, it can be a but much. Forget recursion for most, come back to it later when you can traverse directory structures or search b-trees or something.

PS: The other problem I've had with Fibonacci and factorials in particular is they're terribly easy to program, but they're not useful in everyday life. If I have to explain the math (which with those two to an average audience, I usually do) it's not worth the trip.


In reply to Re: Re: Can a non-programmer teach Perl? by clintp
in thread Can a non-programmer teach Perl? by Ovid

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.