Intro to Perl

Curtis Poe poec at
Fri Feb 8 14:52:35 CST 2002

I just made a post to Perlmonks
( regarding starting an "Intro
to Perl" seminar.  I won't be able to start this right away, but I was hoping to guage the "real"
level of interest in this.  I've have received a fair amount of email from people who want to
learn Perl, so I wonder if they're really willing to jump through the hoops outlined in the post. 
Also, any suggestions would be welcome.  Finding a place to actually do this would be great.  We
can do it at my company's offices (probably), but it wouldn't be very convenient.

Below is the text of the post.

Camel Fishing

I was chatting with merlyn one day (ooh, I'm such a shameless name dropper :) about the lack of
Portland Perl Monger meetings and he said "why don't you run it?" Well, sometimes I'm not very
bright, so I took over It's been fun and we've had one social and one technical meeting
(with the next meeting coming up). However, I am constantly getting email from people who ask a
variant of the following question:

    I want to learn Perl. I've signed up for the 
    mailing list but some of the conversations are 
    intimidating. Are these meetings okay for a 

I always respond that we welcome any and all, from the "just looking" to the gurus. However, there
has been a lot of interest in learning Perl, but not everyone can afford to pay for training.
Further, just learning from a book can be deathly dull for some people (it is to me, for example).
To deal with this, I'm thinking of a one-day (eight hour) Intro to Perl seminar. This is not to
teach someone to program Perl. Rather, the intent is to give them enough exposure to the language
that they will know where to look for answers when they want to get something done. I don't have
the time or the resources to teach full time (even though I would love to). The intent is not to
give them a fish, but to teach them how (hence, the title of this node and possibly of the

There were some very interesting ideas presented in the Teaching a class thread, but again, I am
not trying to teach Perl. Here is the minimum of what I'm shooting for:

1.  They must supply their own copy of "Learning Perl"
2.  We'll build a small app illustrating a key point 
    from chapters 1 through 12 of Learning Perl
3.  Teach them how to use perldoc and online resources
4.  Small seminars with at max 5 attendees? 
5.  Printed seminar materials that they can later review 
    for the highlights 

Item 1 would show they are serious. Maybe I could require they work through the LLama's Chapter 1
"Whirlwind tour" prior to attending? They could email me working copies of their programs as the
price of admission :) I would probably request a very, very tiny change to the program just to
show they didn't download the code from somewhere.

I think that writing a very simplistic BlackJack game (file I/O demonstrated by saving high
scores) would address item 2. Item 3 would teach them how to fish and item 4 would make it easier
to manage and help them.

Learning Perl would be used because it's fairly straightforward. The curricula could open each
section by briefly explaining the topic (scalars, arrays, regexes(!)) and then using that to build
a new part of the BlackJack program. I don't want to commit to teaching them everything, but
giving them a starting point seems workable.

Is this too ambitious for an 8 hour seminar? Can anyone suggest resources for developing a
curriculum? I have three guinea pigs here at the office, so the first "real" seminar would not be
totally new to me, but I could use some advice here. The one thing that really worries me is a
comment that Tom Phoenix made to me (there I go name dropping again): "I never realized how much I
didn't know about Perl until I started teaching it." That scares the heck out of me. Any common
teaching pitfalls that I should be aware of?


"Ovid" on
Someone asked me how to count to 10 in Perl:
push at A,$_ for reverse q.e...q.n.;for(@A){$_=unpack(q|c|,$_);@a=split//;
shift at a;shift at a if $a[$[]eq$[;$_=join q||, at a};print $_,$/for reverse @A

Do You Yahoo!?
Send FREE Valentine eCards with Yahoo! Greetings!

More information about the Pdx-pm-list mailing list