Skip to content

Program

Benno Rice edited this page Sep 15, 2025 · 15 revisions

How Program Has Been Made

How program works is (and should be) very much up to the Program Chair. What I'm going to describe here is a mixture of the general structure that I've applied when I've run it, and some specific things that have worked well (or not). The "I" in this page, at least at this time, is Benno Rice coming off the back of doing PyCon AU 2025. You should not feel chained to what is written here, and I've attempted to explain the "why" as much as the "what" so that you can try to get good outcomes out of whatever process suits you.

The Goal

The goal of the Program Chair is to put together a collection of content that is informative, entertaining, and thought-provoking for the Python Community in Australia. What defines "the Python Community in Australia" is 100% vibes-based but presumably, since you're now the Program Chair, you've got a sense of what that vibe is. We want that group of people to have a good time at PyCon AU and while the Director and the rest of the Core Team are making sure there's a place for that to happen and that people are going to show up, the goal of the Program Chair is to arrange the presentations that they're going to see.

Along with this you're also a voice for the content side of things in other areas of the conference such as workshops and other conference events.

Tools

We've been using PreTalx for a while. It's worked well for us and fits will with the workflow we use, described below in the section on the CfP. We generally pay for the use of the hosted version and various people know the author/operator Tobi/rixx and can introduce you if you need to ask technical questions or get bugs dealt with. We've made heavy use of Google Sheets for Thunderdome and post-CfP tracking of things like waitlists and backup speakers. Any replacement tools should be considered in terms of how they fit the process you want to use.

General Program Structure

The "traditional" PyCon AU program format consists of a day of specialist tracks, followed by two days of main conference. Specialist Tracks are where one of the venue rooms is given over to a group of people from a specific interest area and they will select the program for that room for that day. The Program Chair has veto power over what goes on in the track but I've never had to exercise it. The number of specialist tracks is generally the same as the number of presentation rooms being used for the main conference although depending on the venue it could vary, the main goal is to allow for some highly area-specific content selected by people who know that area well.

The "traditional" format also has lightning talks as the last hour of each main conference day. These are 5 minute talks that attendees will propose on the day, to be presented that day. More on them below.

The rest of this document assumes you're following something close to this structure. You don't have to, but I'd encourage you to remember The Goal. Likewise if this format doesn't seem to be meeting The Goal any more, it should absolutely be changed.

The Sequence of Events

  1. Determine Specialist Tracks (must be done before CfP can open)
  2. Call for Proposals (must be complete 4 or more months prior to conference open)
  3. Finding and Locking In Keynotes (should be done as soon as practical)
  4. Recruiting Reviewers (can be done during CfP)
  5. Proposal Review (allow 2-3 weeks, starting ~1 week after CfP close)
  6. Thunderdome (allow one day, ideally)
  7. Schedule Construction (should be ready ~3 months out from conference, will change)
  8. Lightning Talks (working out who's selecting, and who's hosting)
  9. Pre-Conference (everything between initial schedule release and conference open)
  10. Conference (on-the-ground cat herding)

Determining Specialist Tracks

The number of specialist tracks you have will generally be the same as the number of main conference rooms you have since they'll generally be using the same rooms. Once you know how many specialist tracks you're running (we've had 3 and 4 in the conferences I've been Program Chair for) you need to then work out who's running them. Various approaches have been used for this ranging from just asking people to run a pre-selected set of tracks to running a mini-CfP soliciting proposals for tracks from various groups and then selecting from those. In same cases this mini-CfP process has resulted in overlapping proposals and in some cases this has been resolved by seeing if the overlapping groups are willing to merge. Other ways of doing this are fine, so long as you're ending up with a group of specialist track organisers you have confidence in. Once you have your specialist track organisers locked in, then you're ready to open your Call for Proposals.

Call for Proposals (CfP)

Preparing for the CfP

Before the CfP can open you'll need to have whatever tool you're using ready to go. In PreTalx this would involve creating the event and configuring the CfP for it, and assuring that someone on the committee (could be you but more likely should be the Treasurer or the Director) has made sure we've sorted out all the contractual and billing stuff.

If you're using PreTalx then there will probably be prior years' events you can look at to get an idea of how to configure your event. There's a bunch of event-specific settings that are reasonably obvious, and then there's settings specific to the CfP. The main things you're going to need to set up in the CfP section are a Session Type for your standard talk (traditionally a 30-minute talk), a Track for each of your specialist tracks as well as the Main Conference, and then the Headline and Text for the PreTalx CfP landing page. Then you should add your close date as the deadline, bearing in mind that we generally define our close time as a date "Anywhere on Earth" (AoE). The AoE approach avoids confusion over timezones but the way we generally implement it is to take midnight in the time zone with the largest negative offset from UTC, convert that into the local time of the conference venue, and set that time as the CfP deadline in PreTalx.

We also add a bunch of Custom Fields that are important:

  • Presentation-specific questions:
    • Content warnings - Ask whether the proposal should have content warnings displayed in the program. It's a good idea to point to some guidelines on what kinds of content should have what kinds of warnings.
    • AV Requests - Speakers should be able to assume we'll have the equipment to project slides from a laptop. If they need anything special like audio playback, live cameras, or whatever we need to know so we can work out how to do it, or if it's not workable.
  • Speaker-specific questions:
    • What pronouns do they use?
    • What are their social media handles?
    • Are they part of an under-represented community?
    • Do they want to be on the announcements mailing list?
    • Do they need financial aid to attend the event? IMPORTANT: It must be made clear that the speaker requiring financial aid will not directly inform whether their proposal is accepted. Acceptance comes first, and then if financial aid becomes a problem we may have to drop the proposal out in favour of an alternate.
  • Legal butt-covering:
    • The speaker(s) must assert to us that they have the legal right to present everything in their proposal.
    • If we're doing live streaming we must get permission from the speaker(s) to do this. If we don't get it they can still present but we have to make sure they're not streamed.
    • We must get permission from the speaker(s) to post recordings of the presentation under a CC BY-NC-SA license. Again, if they don't give this permission they can still present but we must not post a recording.

The main issue we've had with PreTalx around tracks is that PreTalx assumes that any given proposal is only going to be submitted to one and only one track. PyCon AU has traditionally been fairly flexible with tracks and is fine with the idea that people can submit to multiple tracks. In 2025 we tried having track selection as a separate Custom Field but inadvertently left the "normal" track selection enabled as well. This caused confusion. If PreTalx adds the ability to submit to multiple tracks then that would be fantastic, if not it may be worth trying a few ways of doing this to work out what the least confusing workaround is.

Clone this wiki locally