http://qs1969.pair.com?node_id=249088

MrCromeDome has asked for the wisdom of the Perl Monks concerning the following question:

I'm in the middle of teaching the first Perl class ever offered at Kishwaukee College, my local community college (coincidentally, this is also my first semester actually teaching Perl). The college's business and tech advisory committee originally chose Programming Perl as the textbook of choice. I am now being asked for my recommendation of a textbook for future semesters of the class.

I love the book Programming Perl. But. . . it's thick, especially if you have never used Perl before. While I think Learning Perl is an excellent book for teaching (*shamelessly plugs merlyn*), I can't stretch the book over a 16 week semester. I'd love to stick with Programming Perl, but my class (who has some college programming background) is having trouble keeping up with it.

What other books are available that fellow Monks would recommend? I am only familiar with the O'Reilly series of books personally. Or can anyone offer creative ways that I might make Programming Perl more palatable for first time Perl programmers, or ways that I can get a 16-week semester full of material from Learning Perl. I'd be especially interested in hearing from the author (*nudge nudge merlyn*) on this one ;)

Thanks everyone :)
MrCromeDome

Replies are listed 'Best First'.
(jeffa) Re: Good Textbook for Teaching Perl?
by jeffa (Bishop) on Apr 08, 2003 at 21:55 UTC
    How about davorg's Data Mungining with Perl? It is less than 300 pages and contains tons of useful, practical ideas. I like the Camel too, but i feel it is just too much for newbies. Maybe you could use the Llama for the first half and Munging for the second ...

    Damn ... i want to teach Perl ... now i'm jealous! ;) Seriously, congradulations!

    jeffa

    L-LL-L--L-LL-L--L-LL-L--
    -R--R-RR-R--R-RR-R--R-RR
    B--B--B--B--B--B--B--B--
    H---H---H---H---H---H---
    (the triplet paradiddle with high-hat)
    
      Some days, it's a joy, other days, I fear dreadfully underqualified to do so :) You should have seen me trembling the day I dropped regex on them. . . ;)

      Thanks for the suggestion :)

      MrCromeDome

•Re: Good Textbook for Teaching Perl?
by merlyn (Sage) on Apr 08, 2003 at 22:04 UTC
      I thought I remember you mentioning in the Llama that the lessons were about 45 minutes each. The college has us meeting 3.5 hours per night once a week for 16 weeks (15 classes + final). Even if I slow the lessons down to 1.5 hours (which I would have to do for my own sake), I'm not so fluent as to be able to pack the rest of each 3.5 hour class. Do you have suggestions as to what I can do to fill the rest of that time?

      Thanks!
      MrCromeDome

      UPDATE: You seem to answer this exact thing below. Next time I'll read the whole thread before replying...

      Thanks, merlyn and allolex!

        I am (clearly!) not merlyn, but what I like to do in a situation like that is to go over one or two sample programs during the longer time; then I have the class work as a group (or in small groups) to write a program using the lesson's techniques.

        --traveler

      I can't think of a better book for teaching Perl than "Learning Perl". It touches on all the major concepts, without overwhelming beginners with complete in-depth details (like "Programming Perl", which BTW is what it's for). I think "Learning Perl" is an excellent book to teach first time Perl learners - the pace will be comfortable and will allow you to spend time on some of the more confusing concepts(like regex's), and very importantly will not overwhelm beginners :-)) If you need a supplement, I would recommend "Effective Perl Programming" (also recommended below), *AND* give some thought to the "Perl Cookbook" which is an amazingly excellent reference book based on *what* you want to accomplish. HTH.
Re: Good Textbook for Teaching Perl?
by allolex (Curate) on Apr 08, 2003 at 22:20 UTC

    You might want to have a look at Effective Perl Programming (Joseph N. Hall and Randal L. Schwartz) for material to supplement Learning Perl. In a nutshell, the book helps students develop Perl fluency by discribing idiomatic Perl usage, problem solving, and outlining quite a few gotchas.

    Alternatively, even though I would be interested in seeing the reply, you could /msg merlyn or email him at merlyn@stonehenge.com. He might not see this node otherwise. (I'm only half kidding.)

    --
    Allolex

    Update: I'm currently busy eating the works I struck out above. I can't believe it took me over 16 minutes to write my post.

        A lot of people are very curious about that one, actually - it came up at the Cologne.pm meeting this week for example. Do you think you can post a (maybe just rough) table of contents for the book?

        Makeshifts last the longest.

Re: Good Textbook for Teaching Perl?
by Your Mother (Archbishop) on Apr 09, 2003 at 02:41 UTC
    "Elements of Programming With Perl," 1884777805 and "Perl Black Book, 2nd Edition," 1588801934 (comes with a CD of the book code) are worth looking at. The second is huge but would be easy to plan lessons with by jumping around and it touches lightly on almost all things Perl.

    While I find the O'Reilly books very valuable in retrospect, generally higher quality of code, I own them all so don't flame me, and so on, none of them is a good teaching book, especially for those without a fair amount of UNIX and C background. I taught myself Perl with them, without any other help and with only a little BASIC in my formative years, and I wish I'd found the cookbook and "Programming Perl" after those other books when I was ready for them.

      especially for those without a fair amount of UNIX and C background
      Hmm. Are you basing this on earlier editions of Learning Perl? We worked very hard to eliminate Unix-isms and the "like C" phrases completely out of the third edition. I would definitely agree with you about earlier editions, as well.

      -- Randal L. Schwartz, Perl hacker
      Be sure to read my standard disclaimer if this is a reply.

        I think you did a pretty good job at doing so. I remember a small number of places where you mention how Perl derives feature X from Unix, and I don't think I can remember any spots beyond the first section or two where any C-like references are made.

        I haven't picked up Learning Perl for Win32 Systems (so I have to ask this in ignorance), but why the need for two books? I think your Learning Perl book serves equally well on both platforms. Is it for people who cannot think outside of the Windows box, or are there other aspects to the book to make it easier for people who only use Windows?

        MrCromeDome

        Sorry took so long to reread these. You are correct. The one I own is not the current edition which I've never had a look at. So the new version might be a better choice for non-programmers to start with. I'll give it a look again if I ever follow through with my threat to quit my current job and start a small Perl training lab. :)
      Not sure I'd recommend the "Perl Black Book" for teaching myself...I've got a copy I use for reference at work but I think I'd have found it difficult to teach myself Perl with.
      However, as someone who taught themselves (with no prior C or UNIX experience) I concur with just about everyone else who's recommended Learning Perl with Effective Perl Programming.

      elbow

        Not sure I'd recommend the "Perl Black Book" for teaching myself.

        /me would not recommend it. I read it, and did not like it. There's a review here.

        If you need a reference, use perldoc.

        Juerd
        - http://juerd.nl/
        - spamcollector_perlmonks@juerd.nl (do not use).
        

Re: Good Textbook for Teaching Perl?
by nite_man (Deacon) on Apr 09, 2003 at 06:21 UTC
    Read of book is good but, in my mind, Perl consists enough documentation for efficient work with him. Try to look over perldoc site. I hope you will able to find many interesting things.
    As regards the books I would like to suggest you Effective Perl Programming: Writing Better Programs With Perl and Network Programming with Perl.
    And last thing which I would like say, your contacts with more experienced people in Perl sites, mail lists, forums (our monastery is very good place for a know-how activity), for example, will improve your Perl knowlidge.
    --------> SV* sv_bless(SV* sv, HV* stash);
Re: Good Textbook for Teaching Perl?
by kryberg (Pilgrim) on Apr 09, 2003 at 12:28 UTC
    I have a collection of Perl books and the one I think would be best for a classroom setting is Perl How To Program by Deitel, Deitel, Nieto, and McPhie. You can get just the book or a multimedia cyber classroom version. I took a college course in Java using their multimedia cyber classroom version and thought it was very good. That experience is what prompted me to buy their perl book.

    I have the camel and llama books but it seems to me that they are for the more motivated people that just pick the book up to learn on their own. The Deitel book was written for a classroom environment and has self-review exercises and exercises.

    There are some errors in the book, but I still use it as a reference for regex and it's the book that I first used to learn CGI.
      I think this (and the Anon. post below) are the first two positive reviews of Deitel books I have seen. I've had to teach classes on C with their books, and the books read more like advertisements for their consulting company than anything.

      Nice to see that their books have improved somewhat over the last few years :) I'll keep that in mind.

      Thanks!
      MrCromeDome

Re: Good Textbook for Teaching Perl?
by Anonymous Monk on Apr 09, 2003 at 14:54 UTC
    After using books that just throw syntax at you, I really enjoyed reading Perl How To Program by Deitel. It went beyond the normal function-example, function-example routine and encorporated relivant computer science background. I felt like I was actually learning about programming; concepts that I could apply to programming in any language - while learning to apply them in Perl. After mainly writing simple scripts this was exactly the boost I needed to tackle more extensive programs - and write usefull scripts cleaner and faster than before. It was a nice refresher for me, but I think would make a good text book for first timers too.
Re: Good Textbook for Teaching Perl?
by derby (Abbot) on Apr 09, 2003 at 15:38 UTC
    How long do you think Learning Perl would take up? 8 weeks? 10 weeks? If more than 8 weeks, I'd go with Learning Perl and then just flush out the remaining weeks with a heaping of perldoc and labs (teach them how to teach themselves).

    -derby

      I was thinking somewhere in the neighborhood of 8 to 10 weeks. merlyn mentioned above that he's got a new book coming in June that might fit the bill too, but I don't think I'll have that much time to make a decision :(

      I find perldoc to be a valuable asset in my class. I personally don't find it as easy for people to read as Learning Perl, but I always make sure to supplement my lectures and discussion with perldoc references. I feel I'd be cheating students out of a large part of their education otherwise :)

      MrCromeDome

        I find perldoc to be a valuable asset in my class. I personally don't find it as easy for people to read as Learning Perl, but I always make sure to supplement my lectures and discussion with perldoc references. I feel I'd be cheating students out of a large part of their education otherwise :)

        I'm really glad you use perldoc in your classes. Probably the most overlooked *gem* in Perl is the perldocs, IMHO. Probably like most people, I used perl for a few years before someone clued me in to the perldocs. Since then, it's usually the 1st place I look for an answer to any perl question. I'm sure a lot of time and energy went in to writing the perldocs - they are a very usable resource, even for newbies.

        Like the saying goes, "Give a person a fish, and feed him for a day. Teach a person to fish, and feed him for a lifetime." Perldocs rule!

Re: Good Textbook for Teaching Perl?
by nadadogg (Acolyte) on Apr 09, 2003 at 16:28 UTC
    I'd go with Learning Perl at the beginning, then move to Data Munging with Perl, by David Cross. Those are the two books that I used to teach myself perl with, and they have covered everything that I've needed to do.
Re: Good Textbook for Teaching Perl?
by BubbaJones (Novice) on Apr 09, 2003 at 20:24 UTC
    Got the Perl Black Book. I love it and use it often. Taught myself mostly from that book.