News / 19 June 2020

Virtual iRODS User Group Meeting 2020 - A Success!

We did it.

The Virtual iRODS User Group Meeting 2020 is a wrap and it went about as well as we could have hoped. During a global pandemic, we connected via Zoom and Slack and with enough preparation, it worked!

All the slides and videos from the talks are linked from

The iRODS Consortium gave 11 talks at UGM2020:

We want to give special thanks to our virtual hosts this year, The University of Arizona.

Additional thanks are deserved for our team here at RENCI, project management, communications - a true group effort.


The iRODS User Group Meeting has traditionally welcomed about 120 people from around the world with a plurality from Europe in the last few years. The 20+ talks have been given in a two-day, single-track meeting room with projection and recording for later. The day before the talks has been a day of multi-track iRODS training, and the day after has been a day for hacking on things together as a community, interoperability testing, and hammering out proofs-of-concept for fledgling use cases. Participants represent companies, universities, libraries, government agencies, and academic and professional consortia from around the world. An installation of iRODS at any of these organizations could serve tens of thousands of users and provide policy-based data management with a 100-year view.

This year's goals were the same, but the logistics had to change with the times.

The following lists capture some stats and how we went about planning (and learning from) our Virtual iRODS UGM 2020.


  • 25 accepted talks + 10 lightning talks
  • ~300 total registrants
  • 227 total participants, 19 countries
  • Maximum of 172 concurrent Zoom participants
  • Attendees from many time zones - all of US (-7 to -4), all of Europe (+1 to +3), South Africa (+2), Australia (+10)
  • ~5.2k Slack messages - on Slack's free plan, limit of 10k
  • 6 Zoom recordings - needed to be post-processed into 39 videos with intros/fadeout


  • Received talk abstracts at We've done this the last few years, no reason to change.
  • Agenda posted publicly. The accepted talks were advertised ahead of the conference to generate registrations. Connection information would only be available to registrants.
  • $0 registration. (or $20 for a T-Shirt and bag of goodies)
    • Free registration has become a standard option for many virtual conferences, since costs are so low to run them, and it increases visibility and reach, why not?
    • Used University-based registration system - limited, but had no choice.
  • No day of training. We decided not to try to reproduce the desired experience of getting hands-on training and debugging while learning the technology. It was going to be too hard to get all the materials copy/paste-perfect with all the other electronic logistics that needed to be handled.
  • Single Track. The iRODS Community is almost big enough to demand simultaneous talks, but not yet. Planning for a single track conference is so much easier to coordinate and our topics are a good balance of high level overviews, site reports, and technical details of recent advancements. Additionally, we want to avoid splitting everyone up as long as is feasible. We believe it provides for a better community if we're all in the same room, having a shared experience.
  • Speaker prep sessions. These were scheduled for the week before the conference. The speakers were asked to join a Zoom Webinar where they could be walked through expectations and timing procedure for the day of their talk. With the same setup they would use the next week, their camera, microphone, background were checked and confirmed. We also had every presenter say their name so we could check and practice pronunciation.
  • 3 days of talks, 2 sessions each day. We used the training day to spread out and give our participants a longer break. We considered three sessions per day, but decided that reducing the number of moving parts was important. The break was 2 hours between the first and second session each day.
  • Slack for backchannel and discussion. Q&A / help / shenanigans / sponsor channels / team coordination
    • We decided to focus on limiting the number of channels. We configured the Slack workspace to auto-add everyone to all the defined channels. This helped ensure that everyone could see everything by default. We decided that smaller, more directed conversations could/should move to email or phone. This helps convey a similar environment (as much as possible) to a large shared space like we would have for an in-person conference.
    • Access granted a few days before conference began. This allowed us to help get a hold of the culture and dynamic that would emerge in the Slack workspace. By starting to welcome each registrant, we could recreate some of the lost connection from not having a welcome/registration table. It set the stage for the collegial interactions we are used to having at our conference and signaled to newcomers about the community's friendliness.
  • Welcome Packet. This document was intended to hold all the connection information and was expected to change multiple times throughout the conference. By using a Google Doc, pinned in Slack, we had a single point of truth and it would not get lost as Slack continued to scroll by. A link to this Welcome Packet was also emailed to all registered attendees a few days before the conference to get them into Slack and prepared for the next week's logistics.
    • Updated twice daily by the iRODS team with the latest links (session and break)
    • Included Help and Navigation screenshots for Zoom and Slack
    • Linked to the iRODS Consortium's Code of Conduct
  • Zoom Webinar for talks. Participants could not see each other, could not chat, could only raise their hand to be recognized/unmuted if they wanted to ask a live question on the recording. This made the video system largely one-directional, simplified the interactions. This intentionally limited opportunity for accidental microphone/camera slip-ups and malicious Zoom-bombing.
  • Zoom Meeting for Break Room between sessions each day. We wanted a place where participants could see each other and catch up (many of our participants have nearly a decade of history with us). These breaks were 2 hours each day.
  • Zoom Meeting (x5) for Friday Troubleshooting. We organized one main room and four additional 'work' rooms if a particular team member and a particular participant wanted to work on something together. We ended up only using two of the available work rooms for the 20 people who joined us on Friday. We were able to solve 4 specific issues and made plans to get together soon on a couple others.

Other Decisions

  • Zoom Meeting for Group Photo. This was scheduled prior to the first session on Day 2. Our 'photographer' instructed everyone on how it would work, when to smile, and then took multiple screenshots. These were post-processed to form the final composite image.
  • Pre-Session video loop. To signal to attendees that they were in the right place, we had a 3-4 slide presentation shared and set to loop for the ~30 minutes prior to 'going live' with our broadcast. The slides included the agenda for the upcoming session, the expected timing, the code of conduct, and sponsor information.
  • Swag bag. For those who paid for a conference T-Shirt and bag of goodies, we shipped swag bags around the world. This turned out to be more complicated than expected due to customs in a number of countries being backlogged. Most received their packages in time.
  • Custom Zoom background. We worked to craft a simple design that was not distracting or that would be easily blocked or occluded by different head placements and hair type. We pinned the image in Slack before the conference and reminded speakers about it during their prep sessions. It was also good for attendees to have during the Group Photo.
  • Roles made explicit. The team members helping with this conference were given specific roles to play during the event. We had:
    • MC - handled opening/closing the sessions, introducing the speakers, and facilating the questions and answers for each speaker
    • Speaker promoter/prep/demoter - moved 'Attendees' to 'Panelists' in the Webinar and back again
    • Q&A wrangler - gathered and copy/pastes questions to the MC in Zoom Chat
    • Timekeeper - messaged the speaker and the MC as time ran out in each talk (Q&A, 2 minutes remaining, Done)
    • ShenaniganPolice - all other team members were actively watching for bad behavior
  • Signposts in Slack. At the beginning of each talk, the talk title, speaker, current connected participants, and a reminder about asking questions was pasted into the #general channel. This provided context, transition, and wayfinding when scrolling back through the history.
  • Lightning talk gathering. This was handled via slack direct message (DM). It was mentioned at the beginning and end of each session and in the Welcome Packet. During the break on Day 3, this list was posted for everyone to see and to define the schedule for the last hour of the conference.

Feedback and Reaction

  • Participants never felt lost. Video was in Zoom, text/comments/discussion were in Slack, Welcome Packet always had the truth.
  • Presenters behaved. All our timing marks were hit and we stayed on schedule.
  • Smooth transitions between speakers. One of the 3-4 Zoom 'Co-Hosts' would Slack DM the next speaker with timing and instructions for what would be coming soon. A couple speakers needed to be reached by phone (these numbers had been collected the week prior in the Prep Sessions). When the prior speaker had 5 minutes remaining, the next speaker would be promoted within Zoom to a 'Panelist' with their camera off and the microphone muted. This let the MC know they were available and ready. When the time came and the MC called their name, the next presenter would turn on their camera, unmute, and present their slides fullscreen. The MC then introduced the speaker and then turned off his own camera and microphone until the Q&A at the end of the speaking slot. The Consortium presented a couple talks first and this set the stage for how the flow would be managed. Setting expectations was very helpful.

Lessons Learned

  • Practice for team and presenters was key. We worked out presentation timing, handoffs, Q&A, role expectations.
  • Single track was definitely the right answer. Community sense was maintained. Fewer moving parts.
  • Assign more than one Zoom 'Co-Host' in case of disaster. At one point, our MC's laptop crashed and rebooted during a speaker's presentation, but it had no effect on the presentation or the attendees' experience.
  • Active team members need two screens / computers. There is too much going on to switch between Slack, Zoom, email, and chat.
  • Display Names matter. Participants should be encouraged to update their Display Name in Slack to be 'First Last (Affiliation)'. This helped all participants to gain context for who was speaking and how to contact them later if desired.
  • The MC must plan for clean video cuts. Knowing that we were going to post-process the video recordings, we planned to have a couple seconds of silence before and after each speaker's presentation.
  • Post-production is hard. With the raw footage from Zoom, post-production was straightforward, but requires expertise to get good results. We kept it simple, an intro and fade to black and direct upload to YouTube.

The only thing we really lacked was a live/delay stream for the APAC (Asia-Pacific) region - but a week later, the talks are edited and available. For a team our size, this was the right decision, but we could see a live or delayed option being useful for a larger audience.

Let's hope we never need to do this again, but if we do, we'll be prepared and a lot more confident going into a virtual event.

Terrell Russell