Notes from livecoding the ONA11 website

What worked, and what ideas I have for next year.

This is a quick post I’ve been meaning to do about the work we did this year on the ONA11 conference website.

Background: last year, I was late on getting a conference pass and ended up volunteering for an entire day in the student newsroom. ONA’s student newsroom produces stories, video, and other coverage related to the conference. I had so much fun that I volunteered to do it again this year. I planned to work on it over the summer, but 90% of the work ended up being done in the last week.

The goals for the website varied depending on the context:

  • Before the conference, the focus was convincing journalists to purchase tickets and attend.
  • During the conference, there are two audiences: those who are physically at the sessions and those who want to participate virtually. The former probably want a backchannel for conversation and capturing the highlights, whereas the latter probably want to participate in realtime as much as they can.
  • After the conference, everyone wants to access a historical archive of the content presented in sessions, either to catch those they missed or find the link they heard referenced.

With this in mind, we worked on making the website dynamically reflect these needs. It was helpful, although somewhat distracting from the experience, that I was working on the website during the entire conference.

What worked this time:

  • Session pages as a custom post type. This gave us a structured database of all sessions and allowed us to easily build a session listing, etc.
  • Using Posts 2 Posts to associate posts and presenters with session pages. Our realtime curation crew could easily publish content from the WordPress admin, associate it with a session, and have it automatically pulled into the session page. Furthermore, every presenter had a dedicated profile page and their information could automatically be pulled into other contexts on the website.
  • Auto-showing the livestream player on an individual session page based on timestamp. Every session was associated with a track and I had a bit of logic to pull in the correct livestream based on current time, session start, and session end.
  • Showing the session updates in reverse chronological order during the event (because the user is most likely refreshing the page and wants the most recent updates at the top) and then flipping to chronological order 15 minutes after the event.
  • Leveraging the Zoninator on the homepage for featured stories and events. Editorial loved that they could have full control over which stories were highlighted. WordPress normally lists headlines in reverse chronological order, and developers hack this with “featured” categories, etc.
  • Post formats presented content exactly as it was intended to be presented. I was particularly proud of my gallery implementation, even if there weren’t the visuals to go with it.

Next time I’d like to:

  • Get started earlier so these features are actually fleshed out before the day of.
  • Build an interface for posting updates from the session page so it’s brain dead simple to update (no associating with session post, choosing post type, writing a title if you don’t need to, etc.)
  • Allow for “featured” session updates a la NY Times Editors’ Picks for commenting.
  • Guest session update submissions with a moderation queue.
  • Live update the session page so it’s essentially liveblogging with rich media.
  • Show the bylines/avatars for people covering the event, so you know how well it’s going to be covered (e.g. one person versus five people participating)
  • On the all sessions page, show the number of updates an event has, whether it’s currently live/being livestreamed, etc.
  • Order content on the single session page based when it was published (e.g. you can assume everything 30 minutes after the session is coverage of it, whereas during the event is realtime updates on it).

Lastly, I have one more idea I’d like to pitch: a way of indicating who you want to meet at the conference. Every attendee that registers get access to a page on the website listing every other attendee. Then, they can go through and indicate whom they want to meet at the conference. It’s a double win; you get to notify who you want to meet that you want to meet them, and you get to see in advance who wants to meet you.

For archival purposes, I’ve captured a gallery of screengrabs from the website too.

Author: Daniel Bachhuber

Proud father x2. Principal, Hand Built. Maintainer, WP-CLI.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s