Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?

Re: RFC: How to survive your first few months of Perl

by toma (Vicar)
on Nov 13, 2008 at 06:03 UTC ( [id://723347] : note . print w/replies, xml ) Need Help??

in reply to RFC: How to survive your first few months of Perl

First explain the reason for the sigils, which is to make it possible to add keywords to the language without breaking old code. I have found that this soothes the initial horror of seeing the language for the first time. I like to tell the story of trying to compile my C code in C++ and what happened to all the variables that happened to be named 'new'.

Then show a few simple regular expressions. Mention that they can become horribly complex, but there is no need to scare them with it.

Next show how to do something useful with a CPAN module by cutting and pasting the synopsis, and then making a few modifications.

If you have sufficient hubris, and are reckless, take a request from the audience and write a program that solves an audience-suggested-problem right in front of them, while explaining what you are doing. Watching a good, experienced coder is incredibly instructive. You could have a shill request a problem in case no one else in the audience has a suitable idea. But you can guess and prepare ahead for a few ideas, such as a log file analyzer and a web scraper.

Another approach to a live coding demo would be to have a Death Match, where two individuals or teams of experienced Perl programmers compete to solve a hard problem in a short amount of time. Switch the projector back and forth between the two teams, and add color commentary. I learned the cut-and-paste-the-synopsis trick from watching a Death Match, and I have used it dozens of times since then. That challenge was to write a mail reader in 20 minutes!

One more thing - be sure to show off ptkdb. I realize that lots of people here don't like debuggers, but they are expected and ptkdb is very nice.

It should work perfectly the first time! - toma