Building applications with MongoDB: An introduction

Location: Portland 255 Level: Novice
Average rating: ***..
(3.76, 21 ratings)

Attendee prerequisites for this tutorial are listed below.

This tutorial will introduce the features of MongoDB by building a simple location-based application using MongoDB. The tutorial will cover the basics of MongoDB’s document model, query language, map-reduce framework and deployment architecture.

The tutorial will be divided into 5 sections:

  • Data modeling with MongoDB: documents, collections and databases
  • Querying your data: simple queries, geospatial queries, and text-searching
  • Writes and updates: using MongoDB’s atomic update modifiers
  • Trending and analytics: Using mapreduce and MongoDB’s aggregation framework
  • Deploying the sample application

Besides the knowledge to start building their own applications with MongoDB, attendees will finish the session with a working application they use to check into locations around Portland from any HTML5 enabled phone!

Each attendee should have a running version of MongoDB. Preferably the latest unstable release 2.1.x, but any install after 2.0 should be fine. You can dowload MongoDB at

Instructions for installing MongoDB are at

Additionally we will be building an app in Ruby. Ruby 1.9.3+ is required for this. The current latest version of ruby is 1.9.3-p194.

We will be using the following GEMs and they MUST BE installed ahead of time so you can be ahead of the game and safe in the event that the Internet isn’t accommodating.

  • bson (1.6.4)
  • bson_ext (1.6.4)
  • haml (3.1.4)
  • mongo (1.6.4)
  • rack (1.4.1)
  • rack-protection (1.2.0)
  • rack shotgun (0.9)
  • sinatra (1.3.2)
  • tilt (1.3.3)

Prior ruby experience isn’t required for this. We will NOT be using rails for this app.

You will be downloading some small data sets. Everyone should have a browser and an editor they feel comfortable with.

QUESTIONS for the speaker?: Use the “Leave a Comment or Question” section at the bottom to address them.

Photo of Steve Francia

Steve Francia


Steve Francia leads the developer experience of MongoDB at 10gen. This includes drivers, web, technical writing, integration and evangelism. Steve brings to this role his experience as VP of engineering at OpenSky where he build the worlds first e-commerce site powered by MongoDB and one of the first PHP sites backed by MongoDB. Steve has been an engineer, entrepreneur and executive since 1995 when he was responsible for one of the first ecommerce sites while working for American Telecom.

Steve loves building things, teaching and speaking. He has been involved in open source for over 15 years and prefers to code in Vim. He is the author and contributing author of two O’Reilly books on databases (and development). He has spoken at dozens of conferences around the world and blogs at


For information on exhibition and sponsorship opportunities at the conference, contact Sharon Cordesse at (707) 827-7065 or

View a complete list of OSCON contacts