|
|
Subscribe / Log in / New account

Notes from an online free-software conference

By Jonathan Corbet
September 4, 2020

LPC
The 2020 Linux Plumbers Conference (LPC) was meant to be held in Halifax, Nova Scotia, Canada at the end of August. As it happens, your editor was on the organizing committee for that event and thus got a close view of what happens when one's hopes for discussing memory-management changes on the Canadian eastern seaboard become one of the many casualties of an ongoing pandemic. Transforming LPC into a successful online experience was a lot of work, but the results more than justified the effort. Read on for some notes and thoughts from the experience of making LPC happen in 2020.

The first thing the organizers of a conference that is threatened in this way must do is to face the problem early and start thinking about how to respond. Your editor has talked with organizers from a few other events who didn't (or couldn't) do that; the result is that they were not fully prepared and the attendee experience suffered. In the case of LPC, planning started in March, fully six months ahead of the event — well before the decision to cancel the in-person event had been made. We needed every bit of that time.

Which platform?

An online event requires an online platform to host it. The Linux Foundation, which supports LPC in a number of ways, offered a handful of possibilities, all of which were proprietary and expensive. One cannot blame the Linux Foundation for this; the events group there was under great pressure with numerous large events going up in flames. In such a situation, one has to grasp at whatever straws present themselves. We, though, had a bit more time and a strong desire to avoid forcing our attendees onto a proprietary platform, even if the alternative required us to build and support a platform ourselves.

Research done in those early days concluded that there were two well-established, free-software systems to choose from: Jitsi and BigBlueButton. Either could have been made to work for this purpose. In the end, we chose BigBlueButton for a number of reasons, including better-integrated presentation tools, a more flexible moderation system, and a more capable front-end system (though, as will be seen, we didn't use that part).

BigBlueButton worked out well for LPC, but it must be said that this system is not perfect. It's a mixture of highly complex components from different projects glued together under a common interface; its configuration spans literally hundreds of XML files (and some in other formats). It only runs on the ancient Ubuntu 16.04 distribution. Many features are hard to discover, and some are outright footguns: for moderators, the options to exit a meeting (leaving it running) and to end the meeting (thus kicking everybody else out, disposing of the chat session, and more) are adjacent to each other on the menu and look almost identical. Most worryingly, BigBlueButton has a number of built-in scalability limitations.

The FAQ says that no BigBlueButton session should have more than 100 users — a limitation that is certain to get the attention of a conference that normally draws around 600 people. A lot of work was done to try to find out what the real limitations of the platform were; these included automated testing and running a couple of "town hall" events ahead of the conference. In the end, we concluded that BigBlueButton would do the job if we took care not to stress it too hard.

"Taking care" meant a number of things, starting with the elimination of plenary sessions. Such sessions have never been a big part of the event; LPC is focused on smaller groups where serious discussions happen and real work gets done, so this decision did not require major changes. An opening welcome message was recorded by 2020 LPC chair Laura Abbott and made available on YouTube. Not putting 500 or more people into a single "room" side-stepped many of the scalability concerns.

Beyond that, attendees were asked to keep their webcams turned off except when they were actively participating in the discussion; one of the quickest ways to find the scalability limits on both the server and client sides is to turn a lot of cameras on. Use of the "listen-only" mode was encouraged to reduce server load; this was probably unnecessary and also runs counter to the "everybody participates" goal of the event. Live streams were set up through YouTube as a way of further reducing load and providing a backup channel if everything went up in flames. The YouTube streams turned out to be useful for a number of people who were unable to register for the conference or just found it easier to watch that way.

The smoothness with which the actual conference ran made it clear that we need not have worried quite so much. LPC sessions routinely held well over 100 people, with the kernel development in Rust session drawing over 170 participants. The servers were never seriously stressed. Things only got bumpy during the "show off your beer" session held after the official close of the event, when 20 or more attendees had their cameras on at the same time; BigBlueButton just does not work well under that sort of load.

Creating the conference experience

BigBlueButton nicely handles the task of hosting videoconferences, but does not solve the whole problem of creating an online conference event. It is meant to run behind a front-end system that provides a landing page for incoming guests, controls access to rooms, and more. It ships with a system called Greenlight that handles these tasks, but Greenlight is not really meant for hosting conferences. It cannot, for example, present attendees with a set of [LPC front end] available rooms and tell them what is happening therein. Thus, we ended up writing our own front-end system to take care of these tasks; it fetched the schedule from the main LPC web site and produced a version that allowed attendees easy access to the appropriate rooms. The front end also provided some management screens allowing the organizers to get a picture of what was going on. For the curious, the resulting code has been released at git://git.lwn.net/lpcfe.git.

Anybody who has been to both an in-person conference and a videoconference knows that the two are not equivalent. The organizing committee worried that we have all had more than our share of videoconferences in the past few months, and that enthusiasm for a conference that looked like yet another one would be limited. We knew that we would never be able to replicate the experience of an in-person event, but we wanted to get as close as we could.

Part of that was working on a set of practices to make the sessions as productive and interactive as possible. The "cameras off except when discussing" protocol worked well in that regard. It allows attendees to focus on the people who are actually talking, and popping up a video window is a clear signal that somebody has something to add. The chat and polling systems built into BigBlueButton also helped to increase interactivity and were quite heavily used.

In-person events often create conversations that continue in the hallway, a separate breakout room, or in a pub afterward. We were unable to provide the pub experience, but could try to provide some of the rest. Several "hack rooms" were set aside for any group that wanted to use them for side discussions; those, too, were heavily used. We also encouraged the scheduling of birds-of-a-feather sessions at the last minute for topics needing further discussion; those sessions saw a lot of real work done during the conference.

In an attempt to create a "hallway" for other discussions, a separate chat forum was set up using Rocket.Chat. This, too, proved to be popular, and it also served as a support channel for attendees during the event.

An online event must also address the problem that attendees are spread across time zones around the planet. LPC ran some polls to try to find an optimal time window, but ended up running four-hour days starting at 14:00 UTC — a slot that works reasonably well for the Americas and Europe, but which is rather less comfortable for attendees in much of Asia and Oceania. The Android microconference ran an extended BOF session outside of the normal schedule as a way of accommodating some of those folks; the conference as a whole probably could have benefited from more sessions at other times.

The decision to go with four-hour days was the only rational choice, though, even though it meant turning LPC into a five-day event. Videoconferences are tiring, and few people have the patience to sit through a full day even if the time window is favorable.

All told, nobody would ever confuse an online LPC for an in-person gathering, but we were able to preserve many of the aspects that has made LPC a productive gathering over the years. Attendees seemed happy about their experience. A number of them asked for there to be some sort of video presence mode available in the future, even after in-person gatherings become possible again.

Other points of interest

Some conferences have responded to the pandemic by simply canceling for this year; these include the Linux Storage, Filesystem, and Memory-Management Summit, Kernel Recipes, and the GNU Tools Cauldron. The Cauldron, though, subsequently accepted an invitation from LPC to run a track there. The result was an intermixing of GNU toolchain developers and their users on a scale that has rarely been seen; one can only hope that it will be possible to run other events together in the future.

One need not attend many in-person events to have the dubious pleasure of watching a presenter desperately trying to get their laptop working with the projector while the session's scheduled time ticks away. Putting all of those presenters onto a new and unfamiliar platform threatened to raise that experience to a whole new level. In an attempt to avoid that, committee members put together a set of documents on how to use BigBlueButton in both the presenter and moderator roles. Then, a set of training sessions was run to drive home the basics of operating the platform and running sessions. The fact that the sessions themselves ran quite smoothly is a testament to the effectiveness of this documentation and training.

We have all had painful videoconference experiences by now where some attendees simply cannot be seen or heard. In an attempt to make LPC a little better, the committee chose, for the traditional speaker gift, a kit consisting of a headset, camera, and lights, along with a few other goodies. The kits were appreciated and heavily used with, one hopes, a corresponding improvement in audio and video quality.

The LPC committee struggles every year with the question of how many tickets should be made available. LPC is a working conference; letting it get too big makes it harder for people to find each other and runs counter to the overall goals of the event. The question takes a bit of a different form for an online event, though; the decision was made to allow more than the usual number of attendees for a number of reasons. In the end, nearly 950 people registered, making this by far the largest LPC event ever — and we still ended up turning people away.

Some people were surprised by this, clearly thinking that an online event could allow entry to an unlimited number of people. The registration cap existed for two reasons: concerns about having too many people in the "room" and the above-mentioned scalability worries. In the end, we could have allowed more people in. More people in the "room" do not inhibit the discussion, and the problem of pressing through a crowded hallway to reach the coffee or find a collaborator are not present. The servers handled the load just fine. But we had no way to know how things would work out ahead of time.

Of the nearly 950 people who registered, just over 800 attended at least one session during the event. The growing body of wisdom about online events suggests that no-show rates of up to 50% can be expected, so this is a relatively high turnout. Even for an online event, where travel is not necessary and the registration fee is minimal, people who register for LPC actually want to attend.

For the curious, the LPC online infrastructure ended up consisting of 17 virtual machines. Six of those were BigBlueButton servers; they had 32 dedicated CPUs each, which turned out to be ridiculously oversized. Half as many CPUs would still have been more than the system could use. For each BigBlueButton server there was a machine dedicated to creating the live YouTube stream for the principal room in that server. One machine held the Rocket.Chat server and one ran the front end; there was one more running an LDAP directory server providing login information to both. There was a coturn server for NAT traversal, and a monitoring host running Zabbix.

All told, the experience of running LPC as a virtual event was exhausting, but also rewarding. Despite our worries, we were able to pull off a successful event using 100% free software. Hopefully, by the time LPC 2021 comes around, it will be possible to meet in person again; should that not be the case, we will be in a much better position to run things virtually. One way or another, we'll get our community together to work out how to make free software even better.

Finally, your editor wrote this article and is fully responsible for any mistakes in it, but the work described above — along with the many other tasks required to run an event like LPC (developing the program, managing registrations and speaker passes, working with sponsors, etc.) — was done by the organizing committee as a whole. That committee was Laura Abbott, Elena Zannoni, Kate Stewart, James Bottomley, Christian Brauner, Jonathan Corbet, Guy Lunardi, Paul McKenney, Ted Ts'o, Steve Rostedt, and David Woodhouse. Thanks are due to the Linux Foundation for its support as well. The biggest thanks, of course, are owed to the attendees of LPC, without whom there would be no interesting conversations at all.

Index entries for this article
ConferenceLinux Plumbers Conference/2020


to post comments

Notes from an online free-software conference

Posted Sep 4, 2020 15:19 UTC (Fri) by kees (subscriber, #27264) [Link] (2 responses)

I wonder if it would be useful to have both an online-only and an in-person LPC, separated by 6 months? (Perhaps the online one could be more BoF/hackroom-focused to reduce the overhead needed to have a "full" program committee.)

I loved having everyone watching a discussion also in a common chat room. Side discussions popped up, URLs for more context got pasted; it was great. I wish this existed (or rather could be implicitly achieved) for the in-person LPC. (Maybe one would have to show at the room's door the unique code generated when they entered the online chat room first...)

Notes from an online free-software conference

Posted Sep 4, 2020 16:54 UTC (Fri) by klbrun (subscriber, #45083) [Link]

Would on-line conferences get greater attendance, since travel would no longer be an issue?

And could they be recorded for later replay, so time would also not be an issue?

Notes from an online free-software conference

Posted Sep 6, 2020 21:37 UTC (Sun) by nix (subscriber, #2304) [Link]

Strongly agreed: it's by far the best online conference experience I've ever had, with the give-and-take typical of LPC redoubled by traffic in the parallel chat pane eliminating the usual problem of conferences that people want to make points but don't want to interrupt the presenter. I found myself vaguely wishing that attendees to post-pandemic conferences got a teleporter, so we could keep using BBB for presentations but still have a real hallway track (RocketChat is a good chat client but just doesn't replace the superb hallway track experience :) ). (Of course, nothing stops a BBB stream happening in an in-person conference too, I suppose. I'm just spoiled by having a sofa to slouch on.)

Alas, this seems a little way off still: unsolved technical problems, more funding needed. (It would definitely solve the commuting problem but future pandemics would really spread fast!)

Notes from an online free-software conference

Posted Sep 4, 2020 18:16 UTC (Fri) by dale.glass (guest, #137679) [Link] (4 responses)

Hello!

I work on a project that might actually be of use for virtual conferences: https://vircadia.com/

Vircadia is an Apache 2 licensed 3D virtual environment in the vein of VR Chat, Second Life or NeosVR. We have excellent spatial voice chat, a 3D environment, VR support, and run on Linux, Windows and OSX (with very experimental support for Android and Quest).

I think the software could already be usable enough for a conference. We use it for our own meetings, of course. It's easy to deploy, decentralized, and extremely scalable. The spatial audio specifically is a great feature for conferences. For instance it's possible to create environments where audio is attenuated in different ways. You can make it so that you can just walk a few steps away, and only hear the people close to you. It's possible to simulate a conference room with a display showing a presentation, and to also simulate the hallway experience. I think the main issue would be the requirement for 3D support (VR is optional).

Each environment can be moderated, and everything is scriptable including the UI (in Javascript). Something like "everybody must be silent while the presenter talks" wouldn't be difficult to accomplish.

We're still a fairly young project that formed as a community fork of the now dead High Fidelity. But we have many excellent people in our community and would be very willing to work with a free software oriented convention. If there's any interest, I'll be available for any questions, or you can visit our Discord: https://discord.gg/Vhzqk2M We also have regular events, and tomorrow there will be a development meeting followed by a community one. We'll be glad to introduce anybody interested to our project and to answer questions. See: https://vircadia.com/events/

Notes from an online free-software conference

Posted Sep 5, 2020 3:35 UTC (Sat) by pabs (subscriber, #43278) [Link] (3 responses)

I note that Mozilla have also been working on something similarish:

https://hubs.mozilla.com/
https://mixedreality.mozilla.org/

Notes from an online free-software conference

Posted Sep 5, 2020 10:32 UTC (Sat) by dale.glass (guest, #137679) [Link] (2 responses)

Yes, there's certainly no lack of competition in this area.

In comparison with Hubs, we aim much higher. We don't do the "floating torso with hands" kind of avatar for instance. We have a full body mesh that can move naturally, be set up for full body tracking, and have flexible parts to it. We're not aiming just for doing presentations in 3D/VR, but for a high quality immersive experience. You should feel like you're actually there.

Notes from an online free-software conference

Posted Sep 6, 2020 0:15 UTC (Sun) by pabs (subscriber, #43278) [Link] (1 responses)

Full body tracking seems like overkill for a lot of conferences, so do you also do the floating avatar thing?

Notes from an online free-software conference

Posted Sep 6, 2020 9:24 UTC (Sun) by dale.glass (guest, #137679) [Link]

You always have a full avatar, though you could give yourself some floating hands if you really wanted to. An avatar can look like pretty much anything, but our default is a full human shape.

If you're in desktop mode, it looks like most any game. You move with WASD/controller, and the avatar has animations applied to it. Your legs move when you walk, your arms move when you speak or choose an animation.

If you're in VR with for instance the Oculus Touch controllers, you control your arms.

If you're in VR with full body tracking then you control your entire body.

Notes from an online free-software conference

Posted Sep 4, 2020 18:24 UTC (Fri) by amacater (subscriber, #790) [Link] (1 responses)

It might be instructive to talk to the Debian video team for the (slightly smaller than usual) Debconf 20 Online this year. By contrast, they opted to use jitsi throughout and to have a bunch of talks prerecorded.

21 VMs, 96 cores, 278GiB of RAM, 2TiB of disk, 1 GPU - 262TiB of data transferred overall.

76 countries

... and a bunch of discussion on the debconf-video IRC channel. Jonathan Carter - current Debian Project Leader - was very much involved. It's by no means a given that everything will work but the team did a great job for which the attendees were very grateful.

Stefano Rivera and https://saimei.ftp.acc.umu.se/pub/debian-meetings/2020/De... give details. Comparisons are always instructive

Notes from an online free-software conference

Posted Sep 4, 2020 20:07 UTC (Fri) by valhalla (guest, #56634) [Link]

I think it's relevant to specify: jitsi for the speakers (and video team), but regular streaming (at low latency) for attendees, with interaction via IRC and etherpad.

I don't think having attendees on jitsi would have worked.

Notes from an online free-software conference

Posted Sep 4, 2020 21:39 UTC (Fri) by ffdixon (guest, #138187) [Link] (8 responses)

I am the Product Manager for BigBlueButton. I really enjoyed reading your experience with our software, as well as some of the feedback. The upcoming version 2.3 (under development) will run on Ubuntu 18.04 and should support sessions larger than 100 users (we'll do lots of testing to find out the new limit).

We're committed to making BigBlueButton the best web conferencing for online learning, and to keeping it open source and growing the world-wide community of developers contributing to it.

Thanks for sharing your experiences!

Regards,... Fred Dixon
--
ffdixon .at. bigbluebutton .dot. org

Notes from an online free-software conference

Posted Sep 5, 2020 10:04 UTC (Sat) by dskoll (subscriber, #1630) [Link] (3 responses)

How hard would it be to make it distribution-agnostic? Requiring a specific version of a specific distro is a problem in many scenarios.

I realize one can hack around this with a VM or a container, but that's sub-optimal.

Notes from an online free-software conference

Posted Sep 6, 2020 21:43 UTC (Sun) by nix (subscriber, #2304) [Link] (2 responses)

Our humble editor popped up a slide showing the dependency graph of BBB in his talk on running LPC this year. It's enormous. It would probably be easier for them to just build their own distro than it would be to make that massive collection of packages work on a number of distros...

Notes from an online free-software conference

Posted Sep 7, 2020 16:27 UTC (Mon) by Wol (subscriber, #4433) [Link]

Dare I suggest a custom gentoo ... :-)

Or quite possibly closer to Sabayon. Surely if you're doing a distro just for that, it can't be too hard to maintain a list of ebuilds on a gentoo-style server and build a Sabayon-style distro from it.

Cheers,
Wol

Notes from an online free-software conference

Posted Sep 28, 2020 9:00 UTC (Mon) by cpitrat (subscriber, #116459) [Link]

Isn't it exactly the problem that AppImage, Snap & others are solving ?

Notes from an online free-software conference

Posted Sep 6, 2020 21:40 UTC (Sun) by nix (subscriber, #2304) [Link] (1 responses)

Hm. 18.04 is going to be EOL in only a couple of years. If you must mandate one specific distro, why not leapfrog all the way to 20.04, which is also LTS and would give you longer before the hammer came down?

Notes from an online free-software conference

Posted Oct 12, 2021 4:13 UTC (Tue) by JanC_ (guest, #34940) [Link]

I assume Ubuntu 18.04 will be supported commercially for 10 years, just like 14.04 & 16.04 now, so it might not be as much of a problem for their intended audience(s).

Notes from an online free-software conference

Posted Sep 8, 2020 6:32 UTC (Tue) by josh (subscriber, #17465) [Link]

I would really love to see the conference scheduling mechanism fully integrated into BigBlueButton as a "public calendar" mechanism. That was a huge part of what made the conference work so well, and it'd be wonderful to have it available in other settings when using BigBlueButton for regular meetings. The hackrooms where you could see who was in them worked quite well for ad-hoc meetings, and I'd love to have that available for ad-hoc conversations with colleagues.

Notes from an online free-software conference

Posted Sep 10, 2020 20:42 UTC (Thu) by anton (subscriber, #25547) [Link]

Thank you and the other BBB developers. We have just used BBB in another online conference (EuroForth), and I am looking forward to using it for teaching in the upcoming semester.

Notes from an online free-software conference

Posted Sep 5, 2020 3:21 UTC (Sat) by pabs (subscriber, #43278) [Link] (1 responses)

GitLab Commit apparently had a good way to cater to the timezone challenged: have pre-recorded sessions available for registrant watch on demand for a few weeks before the event, then during the event replay each session more than once to cover all timezones with Q&A after each replay, with speakers encouraged to attend the times that worked for them. After the event recordings of the full sessions including Q&A were available.

Notes from an online free-software conference

Posted Sep 5, 2020 4:06 UTC (Sat) by corbet (editor, #1) [Link]

That may work for certain types of presentation-oriented events; it's not going to do much for a discussion-oriented working conference like LPC, though.

Notes from an online free-software conference

Posted Sep 5, 2020 4:22 UTC (Sat) by pabs (subscriber, #43278) [Link]

Support of BigBlueButton by The Linux Foundation

Posted Sep 5, 2020 9:01 UTC (Sat) by pmenzel (subscriber, #113811) [Link]

Thank you for the great summary, and congratulations for a successful conference.

> The Linux Foundation, which supports LPC in a number of ways, offered a handful of possibilities, all of which were proprietary and expensive.

To support the development and ecosystem of BigBlueButton, did The Linux Foundation pay at least a little money to the BigBlueButton developers?

Notes from an online free-software conference

Posted Sep 5, 2020 12:37 UTC (Sat) by pdp7pdp7 (subscriber, #96517) [Link]

Thank you very to the organizers. It was a valuable experience and the best virtual conference I have attended. I really appreciate the effort to use open source.

Notes from an online free-software conference

Posted Sep 5, 2020 13:44 UTC (Sat) by karim (subscriber, #114) [Link] (2 responses)

Thanks for writing this down. It's pretty unique to see this level of dedication to doing something that's usually done using almost 100% proprietary packages using 100% open source packages. Hats off to the LPC committee.

Some nibbling at the edges:
- Youtube is NOT open source. I don't disagree with its use, and I wouldn't have advised trying to use an alternative open source solution. I haven't looked, and maybe those exist, but I've not come across anyone running/hosting an OSS Youtube. Part of the problem there is that even if we did have an OSS version, there's still the cost of hosting and bandwidth and those would likely be non-negligible for anything popular enough. Hence Youtube is probably the right choice.

- Having been doing remote training for 7+ years now, I initially started off by using mostly proprietary packages/solutions. When possible, I've replaced what I could with open source packages. I was therefore quite interested to see LPC's BBB efforts, especially as they would be tested by dozens of speakers and an even larger set of participants. I have to admit, though, that its scalability issues seem to preclude moving to it for the type of work I do. This specific passage is most of interest: "Things only got bumpy during the "show off your beer" session held after the official close of the event, when 20 or more attendees had their cameras on at the same time; BigBlueButton just does not work well under that sort of load." I routinely have >20 people with live cameras on at all times. BBB is therefore still not an option for me for now.

Thanks again for sharing.

Notes from an online free-software conference

Posted Sep 5, 2020 15:29 UTC (Sat) by Sesse (subscriber, #53779) [Link]

Agreed that it's a great writeup. I don't think having a completely optional YouTube stream detracts much from the “100% free software” goal—but it isn't actually that hard to distribute live streams yourself these days, and the cloud bandwidth costs are rarely prohibitive if you can already afford (or get sponsored, more likely) 17 virtual machines with 32 cores each. :-) But you do get a very popular ecosystem for after-the-fact viewing.

Notes from an online free-software conference

Posted Sep 9, 2020 8:51 UTC (Wed) by Creideiki (subscriber, #38747) [Link]

I haven't used it myself, but people on Mastodon seem quite excited about PeerTube as a free, decentralised alternative to YouTube. It doesn't do live streaming yet, but it's on the roadmap.

Notes from an online free-software conference

Posted Sep 8, 2020 16:38 UTC (Tue) by behanw (guest, #90443) [Link]

For the record, at the peak of the Rust talk I recorded 172 participants in the BigBlueButton session in the LLVM micro-conference. It was an excellent session.

Notes from an online free-software conference

Posted Sep 10, 2020 19:01 UTC (Thu) by g2boojum (subscriber, #152) [Link]

Just out of curiosity, as someone using desktop linux for online meetings, what was the hardware in the speakers' gifts?

Notes from an online free-software conference

Posted Sep 29, 2020 0:44 UTC (Tue) by pabs (subscriber, #43278) [Link]

Another post about an online conference (OSM SOTM):

http://blog.imagico.de/sotm-2020-a-few-thoughts-on-the-ex...


Copyright © 2020, Eklektix, Inc.
This article may be redistributed under the terms of the Creative Commons CC BY-SA 4.0 license
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds