Every Perl Mongers Group is slightly different. Some are purely social groups, others are purely technical, most are somewhere inbetween. Some have hundreds of members, others have only a few. There are few hard and fast rules on how to make your Perl Mongers group a success. In this article, Dave Cross shares some of the knowledge he picked up in his three years as leader of London.pm.
One of the biggest problems to overcome is that of finding new members. Once your group becomes well known then new members will find you (for example, a search for "london perl" in Google returns the London.pm web site as the first link), but when you're first setting up a group it can be difficult to get news of your existence out to people who might be interested in it.
I recommend a two pronged approach. You can advertise in places where Perl hackers hang out in the hope that some of them will be in your area and you can advertise in places where geeks in your area hang out in the hope that some of them will be Perl hackers.
The first alternative is better catered for now than it was when London.pm started in 1998. I think I pretty much just posted a message to comp.lang.perl.misc, but these days you would also be able to put announcements on use.perl.org and Perlmonks. You might also have other local Perl Monger groups who don't mind you posting an announcement to their mailing list (of course you should check with them first).
For the second alternative you could look at other local geek user groups. Do you have a local Linux User Group (or, perhaps *BSD)? There are many benefits to setting up links with these kinds of groups. As an extension to this idea, you might try to get small news items in the kinds of magazines that Perl people read. As an extreme example of this, I once managed to get London.pm mentioned in the IT section of The Guardian (a national newspaper). The hits on our web site rocketed that day.
Another alternative that becomes a possibility when you have a few members is to look for more Perl users in the companies where your existing members work. Maybe they have some kind of internal bulletin board where people could post messages advertising your group.
Once you have a few members, it's important to get a mailing list up and running as soon as possible. This will then be the major line of communication between you and your members.
The tone and content of your mailing list is obviously up to you and your group to decide, but, in my experience, groups with a chatty social mailing list tend to be more successful than ones who insist on no off-topic messages to the list.
On the London.pm list discussion is always pretty wide ranging. We discuss options for meeting venues, latest Perl news, various other geek stuff... oh, and Buffy the Vampire Slayer. A good sign that your mailing list is being successful is when people live nowhere near your group start posting because your list is such an interesting place to hang out.
It's also up to you just how authoritarian you want to be about posting formats. You're bound to have someone on the list who posts in a format that offends others. This may take the form of HTML email, top posting, oversized .sigs or any of a number of other heinous crimes. My personal feeling is that the Perl Community can sometimes be a bit over-zealous in flaming people over these things so I recommend a gentle pointer to the guidelines rather than a massive flaming. At least for the first and second offenses.
Also, you don't have to be limited to just one mailing list. In London, some people wanted to get the information about the next meeting date and venue, but weren't so interested in the general chat. To deal with that we set up a separate announcement list. I know that other groups have set up mailing lists where recruiters can post job requirements and only people who are currently looking for work need see them.
A website is a very useful tool for advertising your existence, particularly if you can get it listed on popular search engines.
But a web site can be a double-edged sword. If the content on a web site is out of date, then visitors will think that your group no longer exists. The best example of this is having the date of your next meeting on the front page of your site. If this date is a year in the past then it's not a great advertisement for your group.
So bearing in mind the fact that you need to keep your content fresh, here are some ideas of things to put on your web site.
Don't just stop at the date of the next meeting. List dates for the next three months. Of course this rather relies on you being organised enough to know what will be going on in three months time.
Tell people how good your meetings are. Better still, show them. Have photos of meetings on the site. If you have technical meetings, have links to the slides from the talks - after a few months that can build up into a useful archive.
Many publishers produce Perl books. And most of them will give your group as long as you promise to write a review for them. Putting the review on a web site will make them very happy.
It's an interesting feature of the publishing industry that the more books you review, the more you'll be sent to review.
Do your members have useful modules on CPAN? Or are they involved in other Perl projects? Have a list of these on the web site.
This is something to discuss with your members as some people don't feel happy about having mailing discussions archived on a public site. But it can be useful to have a full archive available - even if it's password protected.
A great way to get frequently changing content is to take web feeds from other sites. For example you can get a list of the latest Perl news from http://perlnews.org/feed/ and a list of the most recent CPAN uploads from https://metacpan.org/feed/recent. Grabbing these once a day and passing the contents through a piece of XML::Feed goodness will ensure that you have new content every day.
Meetings are at the heart of most Perl Monger groups. It's all very well communicating by email or IRC all day, but you can't beat a face to face meeting. How, where and when you organise your meetings is of course completely up to you, but here are some ideas.
Ever since London.pm has existed it has had well-defined and well-publicised algorithms for calculating the date of the meeting. The immediate advantage of this is that you don't get involved in monthly discussions as to when the next meeting will be. Everyone knows when it will be and plan the rest of their social life around that fact. A side benefit of having such an algorithm is that you can write a program that will display forthcoming dates on your web site.
When setting up the algorithm for calculating the meeting dates, it's worth finding out the dates used by other local geek groups and avoiding those. You really don't want to have your meetings on the same night as the local Linux User Group (unless you want a joint meeting).
Having established a schedule, it's also important to be flexible. Occasionally there will reasons to have meetings on other dates (perhaps someone is visiting from out of town and you'd like to meet them or they'd like to give you a talk). In these cases I'd recommend not moving already planned meetings, but adding extra (london.pm call them "emergency") meetings.
Not all groups have social meetings and those that do take a number of different forms. The most popular seem to be meeting in a local bar or pub, meeting in a local restaurant, and meeting at a members house. Often groups will combine these options - a bar followed by a restaurant seems a particularly popular choice.
One important thing to bear in mind at social meetings is how new members are greeted. You need to ensure that a) your group is easy to find and b) welcoming to newcomers. Techniques for ensuring that people can find you normally involve having something "perlish" on your table. This can vary from Perl books to stuffed camels. Making sure that newcomers are welcome can be a bit trickier. The best option is probably to ask a few of the more gregarious members of the group to be on the lookout for new faces lurking nervously at the edge of the group. Another option might be to have a point in the evening where everyone takes introduces themselves to the group. Having everyone wearing name badges is probably going too far.
One good idea if your group is big enough is to see if you can book a private function room in the bar. Many venues will do that for free if you guarantee that you'll spend a certain sum of money. That makes you much easier to find.
Some groups start out just holding technical meetings. Others (like London.pm) have added them later on. There are some very obvious requirements for a technical meeting (a venue and at least one speaker) but some other things sometimes get forgotten (do you need internet access or a projector?)
Finding a venue often seems to be the hardest part of organising a technical meeting. Your best option is to ask members if any of them are working for a company who will lend you a room for a night. You'll need a rough idea of the numbers of people you'll be expecting as it can be a bit of a problem trying to cram 40 people into a room that was meant for 20. Another option would be to hire a room for the night. For example, when Damian Conway comes to London, we hire a room in the (appropriately named) Conway Hall. In that case you can either ask members for donations to cover the costs or you can charge admission.
Finding speakers usually isn't such a problem. You will usually find members of your group who are very happy to share their latest ideas with others. Sometimes people are nervous about doing it the first time, but they soon get the hang of it. Maybe you have members who have already given talks at Perl conferences (or maybe they'd like the chance to practise ones they are about to give at a conference).
Another good source of speakers is visiting Perl gurus. Most of the "names" in the Perl community will be only too happy to speak to local Perl Monger groups if they're passing through your town.
A good way to encourage people to speak is to run "lightning talks". These were invented by Mark Jason Dominus for the first YAPC conference in Pittsburgh. They are talks that only last five minutes. This is plenty of time to give an introduction to all but the most complex of topics and it's short enough that no-one can be really scared about talking for that long.
When planning the schedule for a technical meeting you need to take into account how early most of your members can get to the venue. There's no point in starting before most of your audience can arrive. You also probably don't want to go on for much more than two hours (unless you have something really interesting to discuss). I like to have four or five lightning talks and two or three longer talks (20-30 minutes). Don't forget to have a 15 or 20 minute break in the middle of the evening.
And that (as far as I can tell) is how London.pm became one of the biggest and most successful Perl Monger groups. I'm aware that my experience is very UK-specific, so if there are any more international tips, then I'd love to hear them.
What did you do to make your group successful? Alternatively, was there anything that didn't work? Please let me know by emailing me at firstname.lastname@example.org. I'll publish any good advice I get in an update to this article.