Peter Hoffmann

How to Organize a PyCon.DE

We had 5 great days at PyCon.DE 2017 and PyData Karlsruhe. About 430 developers joined us at the Centre for Art and Media. Participants from all over the world (Japan, Israel, India, the Netherlands, Italy, Switzerland, Russia, Romania...) attended 68 talks and tutorials in 4 different tracks.

Team

The most important thing during the organization of a conference is an outstanding orga team. We organized everything online. Telegram was of great benefit for asynchronous communication. In addition, we had Google Hangouts: monthly at first, weekly two months before the conference, and daily in the last two weeks. We used JIRA to track tasks and a private GitHub repository for our files and the GitHub wiki for documentation.

Everybody wants to go on vacation and might also have a bad week when they just do not want to do something for the conference. If you do it alone, the risk of burnout is high. If you have a nice team, other organizers will jump in.

It's very important to have a diversity of knowledge and experience in the organizing team:

Website

Keep it simple. We first wanted to write our own Django app to run the website. Soon we realized that none of us would have the time to maintain it, so we switched to a static site built with Lektor. Once a new version was pushed to GitHub, the web server pulled it to update the content. A very easy workflow with low maintenance overhead. The schedule was kept in an Excel spreadsheet and combined with a JSON dump of the PaperCall metadata to generate the online version.

Call for Papers

PaperCall worked pretty well for us. The only downside is that it is very easy to submit talks, so we had some people submit the same talk to us and to many other conferences. If you want to have unique content in your talk selection, keep an eye on duplicates.

We liked the full talk/speaker metadata dump in JSON format.

People often submit on the last day. Don't be nervous if you don't have many talks submitted early on. We also extended the call-for-papers deadline, which got us another 25 talk submissions, because quite a few people forgot the first deadline.

Tickets

Ti.to is easy to administer and gives you a good overview of sold tickets and revenue. You can limit the validity of tickets, create special tickets for speakers/sponsors, and generate hidden tickets. Especially during the last weeks when people want to reassign their tickets or want to get refunds because they can't attend, it is important to have a good tool at hand, because otherwise you will drown in manual work and support requests.

We sold 15% of the tickets during the early-bird sale and the rest in the normal sale. Ticket sales skyrocketed when we finally launched the schedule online. We were pretty late announcing the keynote speakers. In fact, we announced them when we were already nearly sold out. So next year we plan to announce them earlier to get more social media attention from great keynote speakers.

Budget

We used the legal entity Python Software Verband e.V. as an umbrella for all contracts and financial matters. It's important to have one person responsible for the budget and to track revenue and expenses. In our case it was me. I used a simple Google Docs spreadsheet to track everything. Keep an eye on cash flow. Some expenses might occur early when you have not yet received all the ticket revenue.

Financial Aid Program

We wanted to have a diverse conference. Even if we could do much better, the FinAid program helped to bring in 10 more people who could not otherwise attend the conference.

Venue

Having a nice venue and good catering is important for the success of the conference. The ZKM and the Open Codes exhibition were a perfect match. They were quite flexible regarding the number of rooms that we needed. We had planned different scenarios, from a small conference with only two tracks and very basic catering to the full-blown one which we were able to run in the end. We tried to finance the venue through sponsorship. The cost of catering scales well with the number of attendees. We were very conservative in the initial budget. Student tickets needed to be subsidized by business tickets.

Triple-check the wireless LAN. Not only with your venue contact, but also with the venue technicians. We told the venue organizers at every meeting how important a stable WLAN is. Still, we had lots of complaints about the network.

PyCon.DE 2018 & PyData Karlsruhe

Final word: Always have fun!

It was lots of fun for us to organize PyCon.DE, so we'll be back next year: