Virtual conferences were and are still everywhere. Many big in-person events which were running on for years suddenly switched to online mode. PyCon Us, EuroPython, PyData (the world's premier data science conference), to name a few. And these are big events, the second batch of accepted talks for EuroPython had 100+ talks. And to crown it all, they opened the CFP worldwide which means that for the same number of accepted talks (112 after 1st batch 2019), you had to battle against worldwide competitors. I remember taking one hour just to rate this year's talks.

Organising conferences is NOT a piece of cake

Conferences are mentally draining for organisers. For community events, even if they are paid, run on precious volunteer labour. Just imagine, if you accepted 100s of talks, you had some 500 submissions. For EuroPy you had to write a 500 words summary and a 200 words summary (if i remember well) for places where 500 words don't fit. The description of my EuroPython talk is actually the 500 words abstract i submitted. Each reviewer had to read some (500 * (500+200)) words which is 350, 000. Given that the average reading time is 200 words per minute, that gives us 350, 000 / 200 ~ 1750 minutes which is around 29 hours. Being a reviewer is a trust. You can't just play around with it. 200 words per minute is for non-technical documents, for technical reads, it's less.

For organizers, it's not a 3-days event. It's a months-long event. Being one of FlaskCon's organisers, we did weekly meetings. We had micro teams on marketing, helpdesk and planning. It being online in no way means no work. Some tasks take longer to be completed. Sometimes, they never complete. Our marketing's team time was spent looking for the 100+ user groups' mails. In many cases we did not find it at all. The result was that this task was less than halfway finished. It's also an ongoing watch. We extended CFP twice. One to get more submissions, one to increase submissions' diversity. Extending CFP means more pressure on your team to finish preparations. You take painful decisions. When you think of it, you drain yourself emotionally why? For the community, so that some folks can enjoy an event. Btw volunteer training is also a thing.

Another issue is cohabitation. In global conferences you have global teams, this means people from different cultures, languages and ... time zones. Yes, time zones always find a way to pull your leg. It goes anything from people misunderstanding the time to folks who could have made it to the meeting if it was 3omins after. The last time someone got confused about the time we decided to speak only GMT. As for the time, we set two weekly chats, one in the morning, one in the evening. We had volunteers from Russia, Europe, China to America. It was a nice solution. As for getting along, you have to make sure to find your way as everybody has a way of doing things.

Did we talk about politics? If from the start you take some wrong decisions, and build upon those, reality can slap you further on. A soon as finances come into play, your movements are being watched.Unless you are doing something for you, you have to be careful not to give a wrong impression of the tech you are representing. You can be a Microsoft hater, skipping Windows support on tools you release, but, if you are organizing an Angular or React conference, you can't push anti-uncle Bill agendas forward in the clear. You also cannot show favoritism to your favorite multinational corporation. It's not about having unlimited sponsors, booth spaces in online conferences are limited. You also have to tone your severity. Let's say for the same framework/language, a certain package is better than another one. You can't cross out what you don't like on sight. You also have to decide the diversity proportion. The Django foundation for example does not fund events which has less than 1:2 ratio of women speakers, last time i checked their funding conditions. You also have to decide the proportion of levels. Do we consider only intermediate talks and above, or we add in some beginner talks as well? There are also hosts of issues like these. For FlaskCon, the chair of PythonIreland, Mr Nicolas Lawrance decided a good many of these and we sailed on those happily. That's what the policies section of my recommendation to him on LinkedIn means.

Last but not least it's about dealing with speakers. This part is full of surprises. You have to onboard speakers, invest in their training to use your setup. The EuroPy trainings amazed me. I mean, for you to be present in the session means that your talk was good enough to be accepted. You had people from Europe and the world but, 50% of the people in my session was looking for Zoom's share screen button and looking around to understand Zoom's features. You also have to decide what happens when speakers cannot show up, or don't show up. You also have to deal with cases of misconduct and plagiarism if any. The last case might get people to knock at your doors and threaten to give your event a bad reputation for publishing plagiarized works. It's a deception as an organizer for you to let the fact that you managed to accept a bad apple sink in.

And on for the most obvious part: coordination. Imagine you have to check and use 5 WhatsApp-like apps everyday. That's what you find yourself with. Calendars, excels, documents, Trellos, Slacks, you name it! You have to swim your way around those without sinking. Real-time coordination is also essential when the event goes live. You need to have backups in place to complete vital tasks. Some day someone might be busy, the next time it's someone else, you have to make sure that deadlines are respected. If you have great and enthusiastic people around, this part is fairly easy to get going, not that it is easy, it means less worry. Volunteers are not employees. You have to accommodate different speeds. But i maintain that a great team aces it well! Choose your team well, it pays here.

DevCon's setup this year: AMAZING

Looking back, DevCon always choose the right setup. I don't say Sessionize for CFP is good but i am talking about the website. Auto-updating the website from Sessionize's API for accepted talks is great. And static websites are really cool in the JAMStack spirit. I don't say that DevCon is the first event to do it, but i am commenting on the choice of tech. Let me detail in brief the 3 conferences i had the opportunity to have a fairly good insider's view viz: EuroPython where i was a Speaker (Free for speakers), FlaskCon as an organiser (Free event) and PyCon India as a volunteer (Paid for every non-speaker, including volunteers).

EuroPython used Zoom for speakers, YouTube for streaming, Discord for QnA & Speaker onboarding. For selling tickets, CFP and schedule, they used a host of Python-powered homegrown software. The speaker experience was not so cool as you had to switch from a Discord voice chat which is used as a waiting room to join the Zoom. CFP was great. FlaskCon used sessionize for CFP and schedule. Zoom via ReStream for YouTube. The Pallet's opened few channels on their Discord specially for the event for QnA and discussions. It was a straightforward event with as little overhead as possible as we had to buckle everything in a short time. PyCon India used the legendary homegrown Junction. They used townscript for payments. For managing the event, it was The streaming service i don't remember. QnA and helpdesk: Zulip. Being on the managing side of Hopin was nice. You get to put in banners in-between talks and help speakers start. It has a lot of options, no complaints. Multiple tracks are also accounted for. EuroPy paid for Zoom and PyCon India paid for Hopin at the very least. For FlaskCon, especially the first edition we decided a 100% policy of by the community, for the community. And we managed it without sponsors, but still getting speakers from the US government and Google.

When I asked Mr Jochen on one of the MSCC virtual code and coffees the setup, he amazed me. I mean, a painless experience nearly for free? He detailed the setup in an article. The mix of cloud, VM, Skype and lightweight bill was mind blowing, bold and daring. The article explained who implemented it first etc. Again it's the right choice of tech which stood out. I prepared this article so that you can get more insights on what organizing a conference entails, commonly-used solutions and being grateful to the team behind DevCon. As you read Mr Jochen's article, think how does it solve some of the aforementioned points. It's an article to read another article. The event also showed once more the capabilities of our small island-state. DevCon's setup beats many a giant à plat! Hats off to the team!

Sad Days

And the world is not smiling. Being on the Python-events team since sometimes, we saw the number of events just decline. Many switched to online, but it's not the same enthusiasm as in-person ones. One point which we discussed but still eludes us is "How to make online conferences as real as possible". One thing is sure, you won't get free coffees via your inbox anytime soon.

Image credit: Content Creators