How to start a Lisp User Group
Tuesday, October 30, 2007
I sometimes get emails from people asking for my advice on how to start a Lisp User Group (LUG). I don't have a "universal formula" and what I do definitely won't work for everyone; however, I have found that the following seems to work for me (and I've help start 3 LUG's and 1 non-Lisp UG in the past 12 years):
- Someone has to take ownership for organizing meetings. Trying to be democratic usually seems to work at (a) the beginning (when everyone is keen) and (b) once a group has achieved some sort of "critical mass". However, in between (a) and (b) is a period of time during which many groups die. If someone takes ownership and commits to organizing topics for each meeting, the group has a chance to make it to (b). Ideally, the organizer is a leader in the Taoist sense of the word.
- Have interesting meetings. Having a few interesting meetings initially really helps to bootstrap things for a group. This may seem hard; however, in practice it really isn't that difficult. You can (to a certain extent) get good presenters to give a presentation at your meeting by pleading, bribing, and flattery. ;-) Once you have a couple of interesting meetings under your belt, you are more confident, people have a "model" for what to expect at your group's meetings, and people actually feel more incentive to give a presentation at your meeting, making it less difficult to come up with future meeting topics. The first meeting is always the most difficult one to organize - after that, it's an awful lot easier. That's why the first meetings are bootstrapping for the group! ;-)
- Have regular meetings. It's easy to say "let's skip this month's meeting because of xxxxx" (where "xxxxx" can be any number of good reasons). This is usually the death knell for a user group as people are creatures of habit and you don't want regular attendees to start doing something else.
- Make it worthwhile for people to give a presentation. I give people publicity because my blog is read by a good number of lispers. You could also see whether any technical book stores in the area would donate books to be given to presenters. If there is a university nearby, try to get some support from the CS or AI departments in the university. It's good to have a mixture of incentives as you're more likely to get a variety of different types of presentations if you attract different types of presenters (duh ;-) ).
- Communicate to people about your group. Send a meeting notice to anyone who has attended a meeting (but don't spam people with a lot of emails) and post meeting notices in public places where people who haven't attended a meeting can easily find out about your group. I always send out a meeting notice to lispvan "regulars" a couple of weeks before a meeting and a reminder the day before a meeting. I also post a notice on selected news groups (to c.l.l. & c.l.s. usually, but to other groups as well sometimes [depending on the meeting topic]) and the ALU web page for the group (e.g. - lispvan). After a meeting, I follow up with a thankyou email to the presenter and (if appropriate) send out an email with links or supplementary material to the regulars (this keeps some external contacts going so that people keep thinking about the group even though the meetings are only held monthly).
- Venue is important. We initially held our lispvan meetings in a pub. That was a good social venue but got a bit too noisy at times. I also tried using school and library rooms with different groups - these were a bit better for the presentation portion of meetings but we tended to lose people in between the presentation portion of the meeting and the social portion of the meeting (which was generally held in a different location after the presentation). I've found the near-perfect location which I use all the time now. It's a cafe that is near the university, so the atmosphere is intellectual and young. It is also relatively quiet, has wireless, has a projector (which we can use for our presentations) and sells some cooked food and alcohol as well as normal cafe food.
- Try to always have a "formal" presentation as well as a "social" component to each meeting (I've found that meetings typically run for about 3 hours - 1 or 2 hours for the presentation and the rest of the time is spent socializing). The formal portion tends to give some loose structure to the evening and helps new attendees get into discussions in the social portion of the meeting. Sometimes, having a series of "mini-presentations" can also work well (especially if the presenters are shy about giving a "long" presentation or don't feel that their topic warrants a full evening presentation).
- Capture the presentations so that non-attendees can see them too. It isn't hard to do and there are a lot of upsides to doing it. Not everyone will be able to come to each meeting and the Lisp community in many places is pretty non-existant (so you'll be doing a "good thing" which other people will appreciate :-) ). In addition, if you record the meeting, you'll get more publicity for your group, which will encourage others to give presentations, which will make your group more successful. I use SnapZ Pro on my Mac to do screencasts (there are lots of other products of course) when either I do a presentation or when a presenter needs a laptop to use. When a presenter has their own laptop but doesn't have screen capture software on their machine, I'll frequently use VNC (or an equivalent) to connect to their machine and capture the presentation on my machine.
- Stay focused but don't discourage variations in content. Although Lisp User Groups focus on Lisp content, it is sometimes interesting to get a different perspective. Also, in many areas, you will get non-Lispers coming to a Lisp meeting simply because there is no user group for their language of choice and "non-mainstream" language users tend to have a lot of things in common. For example, at lispvan, we've had CL, Scheme, and Smalltalk presentations and have had attendees who prefer other languages sit in on our meetings.
- Listen to other people's opinions but do what you think will work best for your group. If you are organizing the group, then it will live or die depending on what you do. What works for someone else won't necessarily work for you or your group.