Date: Tue, 01 Dec 2020 21:55:56 -0500
To: various-technical-forums
Subject: November V-cons review

Instead of spamming a big wall of text to the list, I've made it another
"lessons-learned" document in my virtual/ website tree.  It is long, and
touches on Zoom, Discord, Signupgenius, Google-docs, Konopas, SSO, website
UX, info-propagation, and different means of human interaction.

I worked two different online events back-to-back over the past two weekends,
and was able to draw some good contrasts between them.  One was Philcon,
not-in-Cherry-Hill, and the other was Chessiecon aka the replacement for the
Darkover cons of yore.  Both ran on the now-mostly-standard underpinnings of
Zoom and Discord, and the model for how all this works is still evolving.

Philcon was donation-based, so didn't have any particular "authorization"
worries.  Chessie wanted to do paid memberships, and had to gate access
in at least some token way.  As someone pitching in to work, my access to
all the events I've done this summer has been through the back door, i.e.
having a Google-drive or similar link to the "inner cabal" info that would
let me run the right components.  One or two bits of runtime info were
occasionally dropped into "tech" areas of Discord when needed.

Both events used SignupGenius to help allocate tasks and workers, and the
Schedule Ghods would periodically take dumps from that and update a master
event sheet.  That facility seems to work fairly well, and doesn't nag casual
users to create some new account/password before it's usable.  Signups can
also be done with a writeable shared spreadsheet, as long as everyone is
competent to edit and behaves.  That model also typically makes the flawed
assumption that everyone involved has a google account, but that's not
strictly true if configured right.

While a "shift-based" model of thinking is a little more efficient when
signing up for tech roles, some folks insist on scanning the schedule first
to cherry-pick hosting for the events they'd also like to *see*.  This makes
things more fragmented for everyone else and makes things like Zoom harder
to coordinate, so "block of events in ONE track whatever they happen to be"
thinking should be encouraged.  This is partially influenced by the way
Zoom accounts need to be juggled.

Philcon offered a *lot* of Zoom training, which unfortunately mostly landed
on Syd's shoulders due to circumstances.  Chessiecon didn't offer any, and in
fact basically swiped Philcon's hosting documentation wholesale and failed
to really dig in and edit it to reflect their own environment.  They seemed
to be assuming that everyone on "staff" would just know what to do, which
was only true in some cases.

For Chessie, when I went to sign up the Signupgenius was piteously empty
so I basically "bogarted" the entire music track, just to get that piece
out of their hair.  That allowed me to avoid track-hopping and keep one Zoom
client logged in as the "track 3" account the whole time.  And I even caught
up with Maugorn during one of his setups, when it dawned on him that the guy
running his session was the same that helped host those laser-show parties
back in the good ol' days.

Discord is a little controversial, and it seems like only about half of any
given con's attendance actually gets on it and masters the basics.  It has a
fairly steep learning curve for many, especially if they've never been exposed
to the fundamental IRC chat-system model.  Alternatives have been discussed
for how to host a community meeting place, and nothing really seems to have
grabbed anyone's attention.  Slack is equivalently obscure and IMHO far more
klunky in operation.  Other media have been tried: I've now witnessed [and
helped manage] two earnest attempts to host a big multi-breakout Zoom meeting
as an all-weekend "consuite" where people could get together and hang via
video, and for some reason people just don't really show up -- maybe only
later when it's "virtual party time", and not a large percentage of the
attendance anyways.  These generally need a competent host to stay at "lobby"
level and 1> help people get to breakout rooms, and 2> insist that they do
so, which latter aspect usually failed and the whole thing simply wound up
as "lobbycon" much of the time.  Still, it's useful to think of it as a
hotel hallway and party rooms along it -- hall monitors will ask you to go
*somewhere* but not linger in the hall itself being boisterous.

I found Philcon's Discord server to be quite well-organized, with some fun
features and add-ons, and could suss out just enough of its permissions
matrix to learn an efficient way to lay that out and group up channels in
different areas.  As a sideline activity I worked on more "bot" integration
into my own test server, to try and duplicate some of the functionality I'd
seen other events use, and to understand the subtleties of configuring it.
YAGPDB and I are on pretty friendly terms by now.

Chessie's Discord server by comparison was a bit of a trainwreck, with
channels sort of all over the place and roles/permissions clearly set up
by people who didn't really understand the hierarchy and precedence.  In
fact, the simpler you keep it the easier it is to manage.  I had a pretty
good handle on a lot of this by the time I hit Chessiecon's server, and
offered to help fix some of it, but their coordinators didn't know me from
Adam and weren't interested.

They were in fact too busy trying to pull their schedule and participants
together.  Relatively few bits of sausage hit me in the face, i.e. I didn't
have a lot of visibility into that process other than occasional deltas
in their master spreadsheet.  Another big problem always is how to get the
right info out to attendees, participants/panelists, and "backstage" techs.
Philcon's approach was to load data for attendees into Konopas, the online
and caching web-based schedule app.  Chessiecon wound up mailing a big PDF
to all registered attendees, with the schedule, descriptions and Zoom links
they'd need to join.  Obviously it is a lot of work to schedule all that up
in Zoom's web-portal itself, which is only step 1, because everything to
further distribute gets copypasta'ed out of that after it's created.

Prior events generally used a website-based approach, which seems like the
cleanest way *IF* it is a one-stop shop for all viewers where they can then
get all the other info they need.  Konopas was almost this, but wound up
burying a couple of important items at the bottom of the "info" tab so
people missed some of it [such as the Discord server link].  Mitigating that
sort of thing is really a matter of having nice big banners at the top of
pages, saying "you will need these other things too" and guide people on how
to find them, what to do in addition [such as set up Discord logins], etc.

These things can be done fairly simply at the attendee level, and it's been
dawning on me that angsting over some kind of fully-integrated single-sign-on
system is only likely to cause more problems than it solves.  A workable way
to gate authorized people to the info they need, and use a time-staged release
strategy to distribute info through the course of the weekend instead of dump
it all at once, are amply sufficient barriers against 99% of abuse.  I've
seen commercial event systems that are less robust, even when "real money"
is at stake.

The sticky wicket is how to get the special meeting/webinar join information
to the panelists.  Zoom will auto-send email as they are configured into
the timeslot, but sometimes that doesn't reach them and they wind up coming
in as attendees/viewers and have to be fetched out of the "audience" after
the house opens.  Hosts were generally ready for that if they were missing
panelists by the top or bottom of the hour.  Program coordinators do well to
confirm out-of-band that their participants actually have the right links to
their sessions -- "it's the big goopy long one, with lots of AAAAAAAAA in it"
was the best description I could come up with.  Local copies of *that* should
be saved aside to have without going back to the Zoom site all the time, and
as KathiO has pointed out there should always be an extra "tech join link"
generated with some fake email address just to have on hand.  Perhaps we'll
get to the point that all of this can be stored and regenerated via Zambia,
and I'm making vague motions in the direction of learning more about that
and how it could be best used.

Sometimes hosts have to swap in for others, so there needs to be a central
repository of critical stuff like Zoom account info.  The Chessie person in
charge of the Zoom setup provided no such document and was trying to be stingy
about the accounts and passwords, which was unnecessary stovepiping.  If you
can't trust your crew with all the info they need to run competently, maybe
they shouldn't be on your crew.  [Oh, and all of this ran under yet another
subset of Matt Shogren's massive business-class Zoom account infrastructure.]

This can swing the other way, depending on organizational approach.  When
a tech spreadsheet tries to have ALL the information in it including huge
links and long descriptions of panel topics, it gets really hard to read as
the rows get ridiculously long.  Even then I often had to hop around between
different documents and pages to assemble all the info *I* needed to run a
given session, and for some I wound up assembling a small stanza-structured
text file with my own items detailed in it to c&p and run from.

For these two events, little or no streaming was done of panels.  Philcon
did some recordings; Chessie did not except for one masquerade-related thing,
later uploaded to fakebook or something.  Philcon *tried* to do captioning,
but the "REV" captioning service had some kind of falling-out with Zoom
exactly at the wrong time and didn't work at all for most of the weekend.
Fortunately, most recordings can be auto-captioned in post if they're to be
put up for viewing on public services later.

It also helped that both cons had moved to a model of 90-minute blocks with
hour-long sessions, leaving enough slack time to take a quick break and get
set up for the next session before the top/bottom of the next hour.  That
really helped make for a more relaxing time.  The back-to-back hours model
used in prior cons needs twice the people and twice the Zoom accounts, leaves
attendees very little transition time, and is just a freakin' nightmare to
hold together.

Philcon had a mini-artshow both at the website and sort-of-within Discord.
Artists and dealers could also post whatever examples they wanted into their
own Discord channels, along with links to their own sites.  It's sort of a
virtual "dealers row", where you wander into each channel in turn to interact
and maybe even buy something.  I wound up in a side project helping one of
the dealers set up a little gallery for her beadwork on Google Sites, which
I'd never touched before.  It's pretty easy to push and drag to build a
layout, but I found it somewhat lacking in basic things like "rotate this
picture".  The dealer actually ground through the effort of transferring a
bunch of pictures from her phone to a Windows box, using Paint to flip them
and kill the "rotated" EXIF bit, and then shovel them up to Google.  I was
actually able to guide her in site building through an audio/video chat on
Discord with a couple of screenshares, as we both learned about it on the fly.

Running virtual events actually takes quite a lot of crew.  Where a given
small program room in a hotel might be a "set and forget" per day, someone
has to start and host every Zoom session and stay with it.  For a paid
event someone(s) still has to wrangle registrations and payment processing
and info-distribution.  Moderators have to monitor interactive environments
for safety issues and step in and de-escalate where needed.  Fortunately,
the online audience seems to be quite well-behaved so far -- the "#incident
write-ups" Discord channel for Philcon remained empty all weekend, and that's
the way we like it.  People host games via Discord, panelists have to be
hunted down sometimes, and users need tech support.  Once everything gets
rolling for real, it is its own weird kind of frantic and stressful, even
if all we're doing is sitting on our butts indoors all weekend.

It is also helpful to keep track of developments within the facilities we use,
such as newer features within Zoom and which revisions of client support them
or not, to be able to advise users if they might want to upgrade pre-event.
The Linux Zoom client in particular has had its share of deficiencies and
its development seems to lag windows/mac by a bit, but recent releases have
brougnt it much more in line with whatever their mainstream codebase is.

Internally, I've been setting up my client-side tools in special and fully
volatile environments, since there's not much use in letting the detritus
from a one-shot weekend event pile up and stay in permanent storage.  My
discord client and browser and Zoom setups exist entirely within re-homed
ramdisk areas in memory, and any important deltas that happen within those
can get packaged up and saved out after it's all over.  Similar games can be
played under Linux to capably run more one that Zoom client at once, be in
two or three meetings at the same time, and pan them across the sound field
in the headphones.  So far I run all this on a single 14" screen, where
Alt-TAB is definitely your friend to wildly swap between all these components
during a run.  I stay hardwired straight into my FiOS front-end during these
things, no wifi, and all of my infrastructure is UPSed.  And I pull copies
of all media I need to use, such as begin/end screenshare bumper slides,
to the local machine instead of relying on "google powerpoint" or whatever.

When I open a meeting I also try to share out a little music running softly
underneath the walk-in slide, which people have mentioned is a nice touch.
It helps them be confident that their software is working right.  The usual
flow model is: wait till attendee count stabilizes, fade music, take down
the slide, and the panelists are live.

The basic model for online events is still shaking down but for the convention
circuit, seems to have reached a fairly stable knowledge model by now.  I'm
kind of at a loss with regard to universally accessible social spaces, as
many people shy away from both Discord and nailed-up "hospitality" Zooms.
Perhaps they're mostly attending panels and talks and readings.  I haven't
taken aggregate stats on how many people are in sessions plus how many are
active within Discord or other common facilities and see how that matches
up against registered attendance, but perhaps other folks have better
insight on that.

References

philcon-chans.txt -- notes on general layout of the Philcon Discord server [since deleted]
discord-cnz.pdf -- General training guide to Discord, from ConZealand
Ben's 2020 set of attendee Con Reports -- separate index, mirroring list on Arisia site

_H*   201202