Save 37% off PRO during our Black Friday Sale! »

How We Use MongoDB at BusyConf (Take Two!)

How We Use MongoDB at BusyConf (Take Two!)

BusyConf currently handles 4 major pieces of conference planning – it collects speaker proposals, allows the review committee to rate speaker proposals, builds an offline-enabled and archived HTML5 schedule (iPhone, Android, iPad, Desktop), and handles attendee ticket registration including payments, refunds, etc.

We attend conferences, and as attendees, the schedule at the conference is often lacking. It’s poorly organized, lacks information, and requires Internet access. This makes it hard as an attendee to choose the talks that you want to go to. BusyConf is an attempt to solve that problem while also making it easier for conference organizers to run a conference. We handle the calls for proposal, we allow organizers to rate proposals, we give them an interface to turn activities into a schedule, and we publish that schedule in many formats. We also handle ticket registration and credit card payments.

Regarding this talk, specifically, we’re going to focus on how we designed the schema for the scheduling portion of the app.

For more info:
http://ryan.mcgeary.org/2012/06/05/mongodb-schema-design-at-busyconf/

0f5f0ea6a2dc7ed3cb5830377a4fe7e2?s=128

Ryan McGeary

August 15, 2012
Tweet

Transcript

  1. Making great conferences even better BusyConf.com Ryan McGeary How We

    Use MongoDB at BusyConf TAKE TWO!!!
  2. None
  3. What is ?

  4. MongoDB? Why

  5. MongoDB? Why NOT

  6. Event Day 1 Day 2 Day 3 Track 1 Track

    2 Track 3 TimeSlot 1 TimeSlot 1 TS 2 TS 3 Activity Speaker Activity Activity Activity Speaker 1 S 2 S 3
  7. Events Days TimeSlots Activities Speakers Links Tracks 1..N 1..N 1..N

    1..1 1..N 1..N 1..N
  8. Events Days TimeSlots Activities Speakers Links Tracks 1..N 1..N 1..N

    1..1 1..N 1..N 1..N position? META DATA?
  9. Event Day 1 Track 1 TimeSlot 1 TimeSlot n Track

    n TimeSlot 1 TimeSlot n Activity S 1 S n Activity Speaker Activity Speaker Day 1 Track 1 TimeSlot 1 TimeSlo t n Track n TimeSlot 1 TimeSlot n Activity S 1 S n Activity Speaker Activit y Speak er
  10. Event Day 1 Day 2 Day n... Track 1 Track

    2 Track n... TimeSlot 1 TimeSlot 2 TimeSlot n... Activity Speaker
  11. Event Day 1 Day 2 Day n... Track 1 Track

    2 Track n... TimeSlot 1 TimeSlot 2 TimeSlot n... Activity Speaker
  12. Ryan McGeary ryan.mcgeary.org @rmm5t ryan@busyconf.com McGeary Consulting Group

  13. http://ryan.mcgeary.org/2012/06/05/mongodb-schema-design-at-busyconf/ https://speakerdeck.com/u/rmm5t