(Seattle Perl Users Group)

Perl SPUG Meetings |  Next Meeting |  Time |  Place |  Gathering Place | 
White Camel Award |  Mailing List |  Beginner's Nights |  Jobs |  Contacts | 
Meeting Reviews |  Damiathon 2000 Pics |  TPC 4.0 Pics |  SPUG Wiki

Next Meeting

Meetings in 2003:  |Jan| Feb| Mar| Apr| May| Jun| Jul| Aug| Sep| Oct| Nov| Dec|

Meetings in 2002

What is Perl?

Perl is a powerful, portable, and mature programming language created by Larry Wall, with  contributions from lots of other people.  It is culturally derived from the UNIX  C language,  various UNIX shells, and the grep, sed, and AWK utilities of UNIX, among other influences.  Although it was first embraced by UNIX programmers and Systems Administrators, in recent years, Perl has become the most popular choice of Web developers doing CGI applications.  It runs under most modern computer operating systems, and is freely available and unencumbered by royalty or licensing restrictions

SPUG: Seattle Perl Users Group

The Seattle Perl Users Group is dedicated to the development of a mutually supportive community of Perl programmers in the Seattle, WA USA area, and to the professional development of the individual members. Our primary focus is on helping each other learn more about the Perl programming language.

In pursuit of these goals, we strive to encourage the following types of activities:

We operate as a kind of "Educational Cooperative", by taking turns telling each other what we've learned about Perl.

White Camel Award

According to a recent survey, SPUG has the second largest subscriber base (over 400) of any Perl User Group in the world -- only the London group has more, but not by much. But SPUG is not only one of the biggest groups, it's also widely recognized as one of the best. In fact, it's so good that its founder, Tim Maher, was awarded the coveted White Camel Award in part for forming and running it. (Click the picture for a larger view).

Monthly Meetings

We hold monthly evening meetings on 3rd Tuesdays at a Seattle WA location.

Our meetings are open to the general public, and Perl programmers of all levels are welcome. There is no charge to attend.

About Beginner's Nights

In the early days of SPUGgery, we had lots of newbies, but as our members evolved and the topics became more advanced, abstract, and downright bizarre (thanks Damian! 8-}), we reached a stage where attendance by newbies began to diminish.

So our current policy is that every 3rd meeting or so will be dedicated to beginner's topics. The (usually 3rd Tuesday) SPUG Newbie Meetings for 2003 will be held on 2/18, 5/20, 6/11, and 11/18.

February Meeting; Tuesday, 2/18/03: "Beginner's Night"

Formatting Documents with POD

by Geoff Grosenbach

Geoff will talk about Perl's own documentation system called POD (for Plain Old Documentation). Topics will include:

Learning about Perl

by Jeremy Mates

Jeremy will not talk about Perl itself, but rather about stuff that's about Perl. Topics will include About the Speaker:

Jeremy Mates is a systems administrator for the department of Genome Sciences at the University of Washington. Primary responsibilities include developing and supporting the backups, network, mail, printing, and web services on Mac OS and UNIX systems in the department.

March Meeting; Tuesday, 3/18/03:

* Green Lightning Festival *

Location: SAFECO Tower, Seattle
Time: 7-9pm

This month, we'll feature several short talks by SPUG members, ranging in duration from 5 to 20 minutes. We still have some open slots for additional speakers, so send email to spug(AT)teachmeperl.com if you want to participate.

Why Green Lighting? SPUG was born on St. Patrick's day, 1998, so please help celebrate SPUG's 5th Birthday by wearing GREEN at this month's meeting.

Modules from the Spring Collection

Tim Maher, Consultix

Tim will feature excerpts from past and future conference presentations, including a demo of his new module, Shell::POSIX::Select, and short talks on other Perly things.

Use vs. Require

Jay Scherrer, "Practical Tax"

Jay's been writing a Perl program to implement the 1040 tax return for some time now, which you can read about at his web site. Along the way, he's learned that it's better to use require when use is not required, and he'll be sharing his knowledge of that subject in this short talk.

Fred's Calendar Thingy

Fred Morris

Sounds obscene, I know, but Fred Morris wants to talk about his thingy! For the past year, he's been working on a multi-user calendar thingy with mod_perl/MySQL. Fred is going to wander around the UI while simultaneously discussing what motivated him in the first place, why he chose the particular tools and architecture he did, lessons learned and refactoring to be done, as well as the publicly accessible SPUG calendar page and the template-driven report generator which drives it. He will also briefly discuss "robot motels". Check out the cool SPUG Calendar page being served-up by Fred's thingy!

REdeparse: A Regular Expression Explainer

Michael Wolf

REdeparse is a tool that explains a Perl regular expression, much like the cdecl tool does for C and C++ declarations. Like the Rosetta Stone, it provices multiple views of an expression in two languages -- Perl and English.

Sweet & SAWA, a lite introduction

Andrew B. Sweger
Addnorya Technology Consulting

SAWA (Simple API for Web Applications) facilitates a philosophical notion that web application logic should be mutually exclusive from how that data is formatted for public consumption. In other words, the coder worries about the code, and the designer worries about how the output will be transformed. SAWA::Lite is intended to be a light-weight stepping-stone towards the much more powerful (and learning-curve intensive) SAWA suite. However, SAWA::Lite could possibly do all that you need depending on your application needs. More information on SAWA and SAWA::Lite can be found at the project web site, http://sawa.sf.net/lite/

Improving Periodic Webscraping

Jeremy Mates

Thoughts on a queue system to improve the process of webscraping. Goal is to separate the downloading and parsing stages to better adapt to changing content (that breaks the parser) and simplify the scripts involved.

April Meeting; Tuesday, 4/15/03:

Perl for UNIX Users

Tim Maher, Consultix

Tim's writing a book for Manning Publications called "Minimal Perl for Shell Users and Programmers". Unlike other Perl books, this one will give the reader advanced standing for his existing knowledge of UNIX shell commands and shell programming techniques, and capitalize on that to make Perl easier to learn.

In this talk, Tim will feature excerpts from the upcoming book, and practice for his associated conference presentations at Linux Fest Northwest, YAPC::America::North, and The Perl Conference.

He is happy to share this information with SPUGsters, and looks forward to hearing their sage advice on what works and doesn't in these presentations!

Topics will include:

May Meeting; Tuesday, 5/20/03:

Perl and Web Bugs

Meryll Larkin
Chapter Leader, Seattle Linux Chix

Perl for UNIX Users (cont.)

Tim Maher, Consultix

In the first of this month's two presentations, Meryll will talk about the use of Linux, Apache, MySQL, and Perl ("LAMP") to track Web visitors


In whatever time remains, Tim Maher will continue where he left off in April's talk, featuring excerpts from his upcoming book and YAPC::America::North presentations on topics including:

June Meeting; Wednesday, 6/11/03:

Perl Regular Expressions Q & A Session

Michael Wolf, SPUG

Michael will field questions on the use of Perl's Regular Expressions, and related operators (m//, s///, split, etc/). Bring your defective regex code along, or your questions, and he'll help you out.

If time remains, Tim Maher will lead a discussion on Perl Certification, and show off his new preprocessor for the Magicpoint presentation software.

July Meeting; Wednesday, 7/2/03:

Small Miracles

presented by

Dr. Damian Conway,

We'll be privileged to be the 2nd group on the planet to hear Damian's latest blockbuster talk, in the "Quantum Superpositions", "Life, the Universe, and Everything", and "Time::Space::Continuum" series.

August Meeting; Tuesday, 8/19/03:

Unit Testing

presented by

Jonathan Gardner,

Jonathan will talk about techniques for doing Unit Testing of Perl software. A rough draft of his talk, and some useful links, can be found at the SPUGwiki site.

September Meeting; Tuesday, 9/16/03:


presented by

Brian Ingerson,

Brian Ingerson will talk about his popular wiki package called kwiki. Come and find out what wikis are all about, and why Ingy's contribution makes them more accessible.

October Meeting; Tuesday, 10/21/03:

Lightning Talks

presented by

The SPUG Brain Trust

Due to the short-notice cancellation of our previously scheduled speaker, SPUGsters will be improvising short talks on various Perlish topics for this month's meeting. For a list of speakers and topics, see the SPUGwiki page

November Meeting; Tuesday, 11/18/03:

Perl Security

presented by

Brian Hatch,

Perl has intrinsic features, such as dynamic string handling, which make it immune to common programming insecurities. However, this may lead programmers into believing that they can do no wrong in Perl -- which isn't the case!

Brian will cover a number of best-practices you should use whenever coding in Perl, such as

About the speaker
Brian Hatch is the Chief Hacker at Onsight Inc., the author of Hacking Linux Exposed, and the co-maintainer of stunnel. He lives in Ballard, Seattle's hottest neighborhood for Open-Source activity.

December Meeting; Tuesday, 12/16/03:


presented by

Bill Campbell,
bill at celestial dot com

Bill will talk about building web applications using the CGI::Application, HTML::Template, and CGI::Session modules from CPAN. These tools simplify building web apps by largely separating the web page design from program code. The CGI::Application module allows the programmer to build applications with a very simple CGI script that invokes an application in a well defined modular structure. It is designed to use the HTML::Template module which removes most of the HTML considerations from the Perl programmer who only has to supply and process template variables used in the template. CGI::Session preserves state information for the session with minimal work. See the following link for more details: http://support.celestial.com/doc/webapps/index_long.txt

Future Meetings (3rd Tuesdays)
We're Accepting Proposals!

Anyone who has Perl knowledge to share is welcome to volunteer to make a presentation at one of our meetings. Email proposals to spug(AT)TeachMePerl.com.

Meeting Time

The official meeting is on 3rd Tuesdays from 7-9pm, preceded and followed by optional social hours over adult beverages at a nearby facility.

We aren't authorized to enter the auditorium until 6:45, so those who arrive early please wait in the lobby until that time.


Our meetings are held at the SAFECO building at the corner of Brooklyn St. and NE 45th St., near the University of Washington. The SAFECO Tower is the largest structure in the area, and as such is easy to spot once you get close. (To get a better idea of its location, look for the label "Safeco Plaza Tower" on this map in the center/top area.)

Getting to the Building

From points North of the University District:

Take I-5 south bound, exit at NE 45th Street. Turn left (east) on NE 45th Street. You should easily see the SAFECO building ahead on the right. When you reach Brooklyn Ave NE, you're there. Find a convenient parking space.

From points East of Seattle:

Take highway 520 or I-90 west, exit to north bound I-5. Follow directions for downtown Seattle below.

From Downtown Seattle:

Take I-5 north bound, exit at NE 45th Street (keep right). Turn right (east) on NE 45th Street. You should easily see the SAFECO building ahead on the right. When you reach Brooklyn Ave NE, you're there. Find a convenient parking space.

Getting to the Meeting Room

The entrance is on the Brooklyn side of the large SAFECO tower (near the NE corner of building, close to Brooklyn Ave NE & NE 45th ST). Enter through the glass revolving doors. Just inside the doors, you should see the security desk. Inform the guard that you are there for the SPUG meeting in the auditorium. The guard will have you sign the log book and give you a visitor badge or sticker. You will be directed to the mezzanine level (fourth floor) where the auditorium is located.
We aren't authorized to enter the auditorium until 6:45, so those who arrive early please wait in the lobby until that time.

The auditorium has nearby restrooms and vending machines. Food and drink are permitted in the auditorium, but please help keep the room clean. Sorry, there are no cup holders in the seats, but they do include a writing surface.

Please don't wander too far from the auditorium, and remember that we are guests. When you leave, sign out on the log book and return the visitor badge.

Bus Transportation

Many city buses serve the general area of the meeting place.

Pre-Meeting Gathering Place

For those who arrive early and wish to socialize with other SPUGsters before the meeting, we have designated a nearby pub as a gathering place: Finn MacCool's, at 4217 University Ave. North.

To find the other SPUGsters whiling away the time until the meeting commences, you could try looking for the SPUG leader (who will typically be there), who bears a remarkable resemblance to this cartoon Perl Instructor.

Those wishing to dine with other SPUGsters are encouraged to assemble at the Cedars Restaurant, at 50th St. and Brooklyn, in the University District. (This is quite near the Safeco building where our meetings take place.) The phone number is 527-5247. If you're planning to be there, please post a message to the list indicating your expected arrival time, so others may attempt to rendezvous with you.

SPUG Mailing List!

Would you like to be notified about upcoming meetings and participate in discussions with other local programmers, like the 400+ other Perl enthusiasts on our mailing list?

If so, join the SPUG Mailing List by visiting the subscription page.

If you don't want to receive daily messages, check the box on that page to select the digest version. To see older messages (going back as far as Jan., 2003), click on Spug-List Archives on that same page.

Recruiters at Meetings:

Although we are happy to help recruiters and contract programmers find each other, we recommend that recruiters provide information about job openings via Email, rather than by coming to meetings. (Although we find the technical discussions fascinating, some recruiters have found them to be unendurably dreary.)

Job Offers for SPUG Members

Some of our members do contract Perl programming work, while others are looking for full-time jobs. Accordingly, we are always interested to hear about openings for Perl Programmers in the Seattle area!

We can help you communicate your job opening to the hundreds of Perl programmers on our mailing list. By providing you access to our members, we are providing you with a valuable service at no charge. In return, we ask that you provide the following details of your job opening, to prevent our members from individually having to ask the questions that would elicit the same answers.

To submit your job listing for consideration, Email a description of it containing the following details, to spug(AT)TeachMePerl.com.

SPUG officials will post announcements of such openings to our mailing list after ensuring that all details are complete. If you are reluctant to disclose any of these details, then you are encouraged to post your job announcement elsewhere.

SPUG Contact Info

To comment on this WEB-page,

Many thanks to our ISP sponsor, Zipcon Internet Services,
and meeting space sponsor, SAFECO Corp.

Our Mascot, Thor: 

(cuter than any camel; and unencumbered by legal restrictions too!)

© Tim Maher 1998-2001