[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Debconf-team] [content] Scheduling experience

Following the series of content team related topics, it's time to cover the
schedule, which is one of the activities that I was particularly involved with.

What was done:

One of the first things done was to prepare an schema of the schedule, this
was prepared from the ideas proposed by the local team, the feedback from the
global team, the venue meal times, etc. The main ideas that remained were: to
have an OpenWeekend at the start of the conference which would have lots of
talks, selected to be "geared to a broader audience", reduce the amount of
events per day as the week progresses, a morning plenary, 20 minute talks
should have 20 minute talks in parallel.

Ideas that had to be overridden due to the amount of talks/bofs approved:
having more "hacking" time during DebConf (i.e time without any scheduled
talks) all the official events should have video coverage, no BoFs during the

Having the schema gave us a general idea of the amount of event-hours we
could fill. But as proposals kept coming, we started moving some of the
BoFs targetted mostly to people present at DebConf to be in-person-only (i.e.
without video coverage), and also changed some 45 minute talks to 20 minutes,
in order to be able to provide video coverage for more events. We also had to
open the BoFs sessions during the OpenWeekend, and in the end, the only "free"
afternoon (Friday) had scheduled talks, mostly because of really hard to solve

After the talk selection meeting, we had almost all the event-hours that
could fit in our extended schema. To do the schedule, I first based myself on
the spreadsheet used last year and then adapted it to include more checks
regarding speaker availability.

One problem with this was that in multi-speaker events, I only had the
information of the submitter, which I didn't notice at first and required a
lot of re-arrangements later on. Another problem was that the spreadsheet was
not connected to the summit database, so changes were not reflected

Automatic checks implemented in the spreadsheet:
- Event submitter had reconfirmed
- Event submitter was present on that day
- The slot was not assigned more than once

Other checks done manually:
- Avoid setting a talk on the same day that the speaker arrives to the venue.
- Try to follow the requests written in the comments to content.

Missing checks:
- The speaker is in another event at the same time ( :-/ )
- A maximum amount of events from the same speaker during the same day.

We had no sensible track information, and no track coordinators, so the very
first draft just ignored them, and only tried to have a broad coverage of
interests in each timeslot. But after a first round of feedback, I started
moving topic-related talks to the same day, which worked mostly fine as a
track replacement, but it added some weight in some cases, for example, on
Sunday 16th, we had a bunch of gnupg and git/gbp as topics, that put into test
dkg's endurance.

With a preliminar version, and the deadline over our heads, I sent it to the
list and to the speackers, and requested feedback. Naturally, this revealed
some errors. The feedback helped fixing most issues. But of course it was
impossible to make everyone happy regarding event overlaps (scheduling is a
known NP-hard problem).

Once the schedule was done, a painful point was transferring this information
into summit: I had no access to the database, and the admin interface was way
to painful to use. To avoid wasting hours that I didn't have, I had to create
blind SQL commands that cate then ran on the database, first to create the
time slots, then to assign those time slots to the events. In a way, it was
fun, in another, it shows how much we need to improve our current conference
management system.

- "You made a big mistake, you asked for feedback"
- "This looks like painful, manual work, thanks for all your effort"

Things to improve:

- Include all speakers (not just submitter) in checks for availability
- Check that a speaker is not scheduled twice on the same slot
- Check that there are not too many events on the same day for the same
- Codify the comments into programmatical checks (e.g. "early in the
  conference", "before X talk", "after Y talk", etc)
- Update availability information "live".

- Code this into something that is not a spreadsheet
- Have a conference management system that does not take 1 minute to load
  each event page in the admin mode.

- Solve N=NP ?

More comments?

Happy hacking,
"People get lost in thought because it is unfamiliar territory."
-- Fix's Principle
Saludos /\/\ /\ >< `/

Attachment: signature.asc
Description: Digital signature

Reply to: