2014 Swiss Perl Workshop redux
The Swiss Perl Workshop did not disappoint, although as a featured speaker there was plenty to worry about. One of the organizers, Matthias Bloch, was well trained to take care of the chaotic situation of herding cats and programmers. He was a trained primary school instructor, in which he explained the getting a group of first graders to do anything is much harder. I'm dubious, having been to many workshops, but everything went well. The trick is to embrace the fear.
Matthias and Roman Baumer, the main organizers, have set out to discover the Perl community is Switzerland. They run the Swiss Perl Community Meetup and have been doing what they can to find the Swiss companies using Perl. It's a lot of leg work and old fashioned networking. You can't merely rely on social networking and email for that We talked a bit that it's not uncommon in my own work to find Perl programmers who don't know about CPAN or Stackoverflow. If they don't know about those, they probably aren't paying attention to other sources.
Matthias Bloch herding the cats
This is similar to what I spoke about in my keynote, The Whitespace in the Perl Community (which I need to write out). The Perl projects that survive and do well are the ones that have constant human input and have someone who pays attention to them everyday. It's not enough to have a webpage or a Twitter account, or to upload some code. I highlighted a few of one my involvements, such as the perlfaq, PAUSE, and Perl mongers--all of which work not because of tech but constant attention. It's not something that we can optimize or automate away. We've seen what happens when we do that: no one sticks around. If you want to build community, you need dedicated organizers and agitators who personally interact with people to find out what they think and want. You can't get that from surveys. Someone needs their finger on the zeitgeist.
Roman Baumer takes the pulse of the audience
The workshop was truly a workshop, too. I gave my Become a CPAN Author interactive class, which is getting better and better each time I give it, and Paul Johnson gave a Devel::Cover. In each of these, people had the chance to setup their environment with the help of experts.
Many events take on the title "Workshop", but they really mean "Mini Conference". They have talks where most people watch and one person speaks. I like that this event was an actual workshop and people knew that they would be able to go through a complete task with help. I'd like to see the events that call themselves "workshops" do much more of this, even to the point where we have a first-rate idea about which workshops do the most to bring people into the community.
My own workshop goes far beyond uploading your first distribution to CPAN. I now go through these steps, which seem simple when you've done it once but are daunting as a single task:
- Create a PAUSE account
- Create a GitHub account
- Create a distribution with Module::Starter, h2xs, or whatever you like
- Import the distro into Git, and push to GitHub
- Make the dist and upload to PAUSE
- Make another person in the class a comaintainer of the module
- Fork the module on GitHub
- Improve another person's module and send a pull request
- Upload the other person's module
- Merge a pull request
- Set up GitHub and Travis CI integration
Several other good things came out of the conference. Paul Johnson mentioned that
cpan -T ..., which should turn off testing, doesn't but he doesn't know why. I was able to answer "Because I did it wrong! It's my fault!" I think that is no longer the case and the shame motivated me to send Andreas CPAN.pm pull request 77.
Tobi Oetiker talking about Callbackery
I think by accident that there was quite a bit of Mojolicious going on. Some of it comes Tobi Oetiker (who talked about callbackery), the author of RRDTool. His company exchanged some money for some consulting from me to help me afford to go to Switzerland. I'm not much for free money and prefer to work for it, usually through classes.
Lee Johnson talking about fun and non-profits
After the conference I moved on to Zürich for a two-day Mastering Perl class at Colab Zürich. I experimented with Kickstarter to use their multiple rewards system, unlike the campaigns I've run through Crowdtilt. I wanted people to be able to sponsor Swiss students to attend the class, and some did. That expanded the market so more people could participate and I could meet my goal more easily. Remember, the Swiss Perl community is still developing.
I think Kickstarter worked well, but I don't know if it's that effective for discovering new people to bring into the community. Getting someone to create an account on a service they might not use otherwise is a tough sell, especially if it's a US-centric service. But, as I said before, these things go off with constant human involvement and encouragement.