RailsConf 2013
2013-04-29..2013-05-02
Portland, United States
[RailsConf 2009, RailsConf 2011, RailsConf 2012, RailsConf 2013, RailsConf 2014, RailsConf 2015, RailsConf 2016, RailsConf 2017, RailsConf 2018, RailsConf 2019, RailsConf 2020 CE, RailsConf 2021, RailsConf 2022, RailsConf 2023, RailsConf 2024, RailsConf 2025]
who it's for
rails developers, ruby developers, software architects, web operations engineers, test engineers, library and gem authors, front-end developers
topics
Sinatra integration in Rails; Basecamp application architecture; deployment automation for hybrid and private cloud; application health monitoring; Postgres for Rails apps; building rich Rails APIs with Brainstem; Pry debugging techniques; ActiveRecord refactoring and fixes; TDD with mocking and stubbing external services; zero-downtime payment platform design; creating mountable Rails engines; crafting and maintaining Ruby gems
| title | author | length |
|---|---|---|
| You've got a Sinatra on your Rails | José Valim | 42m |
Builds Sinatra features into Rails and demonstrates they actually work: a single-file Rails app (~27 lines) boots and responds, a rails_natura 75 lines… | ||
| Rails' Insecure Defaults | Bryan Helmkamp | 31m |
Rails lists concrete insecure defaults and practical fixes: leaking exact Ruby/Rack versions in the Server header, binding dev servers to 0.0.0.0, SQL logs… | ||
| Patterns of Basecamp's Application Architecture | David Heinemeier Hansson | 01h 06m |
Argues for a document‑first web model and shows concrete techniques: keybased cache expiration that auto‑invalidates on model changes, Russian doll nested… | ||
| Security is hard, but we can't go shopping | Andre Arko | 36m |
Ruby and Rails are seeing a surge of vulnerabilities: three Ruby releases in six months, 13 CVEs so far this year for Rails, and concrete incidents like… | ||
| Nobody will Train You but You | Zach Briggs | 32m |
Argues that on-the-job experience is a poor teacher and provides concrete, repeatable practices: memorize and rehearse detailed tutorials, let TDD reveal… | ||
| How Shopify Scales Rails | John Duff | 40m |
Shopify claims one Rails codebase evolves to handle 40k stores and spikes to ~500k sales/day by adding layers not rewrites: cachable page caching (gzipped… | ||
| Automation in Deployment on Hybrid Hosting and Private Cloud Environments | Fletcher Nicol | 49m |
Practical notes: teams report using Cloud Foundry for higher‑level app deployment and Chef for configuration management, packaging smoke tests and acceptance… | ||
| The War For Talent: How To Succeed As an Employer or Engineer | Allan Grant | 16m |
Recruiting claim: a curated auction marketplace called developerauction runs short two‑week events, selects ~12 active candidates, and brings 5–15 offers per… | ||
| Monitoring the Health of Your App | Carl Lerche, Yehuda Katz | 37m |
Argument: averages lie — web response times are long‑tailed so 95th percentile and histograms matter. Implementation: an MVP service (Skylight) instruments… | ||
| Real-Time Rails | Brian Cardarella | 28m |
Rails 4 exposes ActionController::Live and Rack.hijack so apps can hold raw TCP sockets and stream; Puma plus Ruby threads gives true concurrency… | ||
| Ruby Libraries Important for Rails | Michael Hartl | 44m |
Covers learning the Ruby standard library by doing actual experiments not platitudes. Uses IRB live coding, RubyDoc and Sublime Text to discover surprising… | ||
| Testing Complex Systems: Creating data and limiting scope | Noel Rappin | 01h 21m |
Builds a concrete testing plan around a Purchase object that computes price from a Trip (200) plus a HotelStay (50 × 3 = 150 → 350), shows using factories and… | ||
| TDD Workshop: Mocking, Stubbing, and Faking External Services | Harlow Ward, Adarsh Pandit | 16m |
Workshop walks through writing failing specs and making them pass using shoulda matchers and RSpec, asserting model constraints like validates :name, presence… | ||
| TDD Workshop: Outward-in Development, Unit Tests, and Fixture Data | Harlow Ward, Adarsh Pandit | 54m |
Live coding shows outward‑in TDD driving a to‑do feature: an RSpec+Capybara feature spec fails, test forces a new completions controller, nested route… | ||
| Postgres, the Best Tool You're Already Using | Adam Sanderson | 33m |
Shows concrete Postgres tricks: use text arrays plus the contains/overlaps operators to implement tagging and materialized-path hierarchies, compute depth with… | ||
| Designing great APIs: Learning from Jony Ive, Orwell, and the Kano Model | Jon Dahl | 44m |
Claims five concrete principles — minimal surface, get out of the way, design for extremes, predictable, and excite users — and shows concrete tools and… | ||
| Introducing Brainstem, your companion for rich Rails APIs | Andrew Cantino | 32m |
A Rails library named Brainstem appears on GitHub as a released API presentation layer that serializes ActiveRecord via presenters, versions those presenters… | ||
| Split Testing for Product Discovery | Bryan Woods | 35m |
Split tests move decisions from opinion to measurements: small cosmetic tweaks yield typical lifts of 1–3% conversion, anecdotal claims show up to 200–300% but… | ||
| How to Write Documentation for People That Don't Read | Kevin Burke | 40m |
Users scan pages in an F‑shaped pattern so short scannable lines, clear headings and one‑page quickstarts matter; a formatted rewrite yields a 125% improvement… | ||
| Delicious Controversy: Docs & Tests | Thomas Meeks | 37m |
Claims that pragmatism beats dogma: a codebase of 27,000 lines accumulates 16,000 lines of specs and huge maintenance cost; unit tests that mock internals… | ||
| What Ruby Developers Can Learn From Go | Lionel Barrow | 31m |
Compares concrete Ruby and Go snippets and shows that Go enforces up-front error handling by returning value+error everywhere, makes unused imports and… | ||
| Sleeping with the enemy.. | George Brocklehurst | 29m |
Recreates DHH's 15‑minute blog demo in Django with a working GitHub repo, using Django's generic views and overriding get_queryset to add a preview query… | ||
| Cache=Cash! | Stefan Wintermeyer | 27m |
Benchmarks use an actual Raspberry Pi and a stack of Rails + Nginx + Memcached + Redis to show concrete wins: initial workflow takes 116 seconds on the Pi, a… | ||
| Of Buyers And Renters and keeping a roof over our heads | Sebastian Delmont | 22m |
Claim: manageable technical debt is useful leverage, not shame. Evidence: a Rails codebase born in 2005 grows to 212 models, 209 controllers, ~28,000 commits… | ||
| Pry-- The Good Parts! | Conrad Irwin | 34m |
Pry is a drop‑in replacement for irb that claims to cut debugging time by giving a real interactive console mid‑run and it delivers: binding.pry opens a REPL… | ||
| Data Storage: NoSQL Toasters and a Cloud of Kitchen Sinks | Casey Rosenthal | 34m |
Argues that the decisive choice is access pattern not buzzwords and gives a concrete framework called Access Patterns tying scheduled vs spontaneous and static… | ||
| An Intervention for ActiveRecord | Ernie Miller | 41m |
ActiveRecord contains real, concrete warts: ~16,000 lines, hundreds of methods and surprising behaviors you must know before you touch models. Expect… | ||
| From Rails to the Web Server to the Browser | David Padilla | 31m |
Shows exactly how an HTTP request travels from browser to Rails and back, walking through Rack’s three-element contract, Thin’s EventMachine connection, and… | ||
| The Magic Tricks of Testing | Sandi Metz | 32m |
Argues that unit testing follows a six-cell grid with precise rules: test incoming queries by asserting return values, test incoming commands by asserting… | ||
| Rails Vs. The Client Side | Noel Rappin | 36m |
Compares the Russian Doll server-rendered HTML approach (aggressive cache keys, Turbolinks, occasional JS) with a Rails API that returns JSON to a client MVC… | ||
| Rails is Just Ruby | Jesse Wolgamott | 33m |
Claim: Rails is Ruby patterns, not magic — demonstrated by concrete examples: blocks/procs as the core extensibility, before_filters and callbacks hooking into… | ||
| BDD and Acceptance Testing with RSpec & Capybara | Brian Sam-Bodden | 01h 19m |
Shows how Behavior‑Driven Development delivers value by testing from the outside in and then filling models, using RSpec for unit/spec design and Capybara… | ||
| Rails for Zombies: Parts 1 & 2 | Christopher Greene, Aimee Simone | 23m |
Creates a small app called Twitter for zombies and walks through the exact commands and files used: rails new TwitterForZombies, rails g scaffold zombie… | ||
| How a Request Becomes a Response | Christopher Greene, Aimee Simone | 29m |
Follows an HTTP GET from browser through web server (nginx Apache WEBrick) to app server (Passenger Mongrel) into Rails where routes.rb defines resources, the… | ||
| Building Extractable Libraries in Rails | Patrick Robertson | 28m |
Practical conventions: treat /lib as a temple — make every lib component extractable into a gem by namespacing and explicit requires; avoid autoloading… | ||
| Natural Language Processing with Ruby | Brandon Black | 39m |
Begins from a concrete claim: Ruby can leverage mature NLP stacks by running on JRuby + JDK 7 to call Java libraries. The demo uses OpenNLP and Snowball to… | ||
| Front-end Testing for Skeptics | Luke Francl | 37m |
Claims that pure Ruby tests can drive real JavaScript UI, run headless, and stay fast and reliable are demonstrated end to end: a third‑party autocomplete… | ||
| Testing HTTP APIs in Ruby | Shai Rosenfeld | 28m |
Compares four concrete testing approaches and gives measurable tradeoffs: isolated unit tests with WebMock lead to blind spots, sandboxing against a real… | ||
| Maintainable Templates | Brendan Loudermilk | 23m |
Templates stop being a mess when presentation logic moves into small, testable objects: use the masked credit card example to see a decorator hide formatting… | ||
| Changing the wheels on the bus at 80 mph: Upgrading to Rails 3 | Andrew Bloomgarden, Julian Giuca | 35m |
New Relic upgrades Rails by running Rails 2 and Rails 3 from one master branch while 55 engineers keep committing; two maintainers patched Bundler to support… | ||
| Crafting Gems | Pat Allen | 38m |
Explains how a gem is just Ruby plus a gemspec and shows exact fields to set, versioning rules, runtime vs development deps, and when to use a railtie or an… | ||
| No Traffic, No Users, No Problem! - Usability Testing for New Apps | Jim Jones | 38m |
Claim: get meaningful usability feedback before any public launch by hooking a local app to a crowd via Rails + Mechanical Turk. Implementation uses an… | ||
| Object-Oriented Lessons for a Service-Oriented World | Chris Kelly | 35m |
Argues that the useful claim is to apply OO principles (SOLID, SRP, DRY, dependency inversion, Law of Demeter) to service boundaries so services behave like… | ||
| Incremental Design - A conversation with a designer and a developer | Rebecca Miller-Webster, Savannah Wolf | 31m |
Argues for making tiny deployable design changes instead of big rewrites, showing work on two products, a dual‑pricing experiment that is A/B tested, moving… | ||
| Humanity On Rails | Daniel Azuma | 40m |
Argues that technology is not neutral and gives a concrete claim: the device paradigm hides mechanisms while exposing commodities, so ends start to justify… | ||
| Closing Keynote | Aaron Patterson | 01h 05m |
Talk details concrete outcomes and tools: a live streaming responses demo built with Puma, server‑sent events, DRb and filesystem watchers that actually… | ||
| Hacking the academic experience | Emily Stolfo | 38m |
Claim: graduates lack on‑the‑job skills and community learning. Curriculum teaches Ruby on Rails with a non‑ORM slot for MongoDB, daily debugging of unfamiliar… | ||
| The Long Ball - Upgrading long lived Rails apps from 1.x-4.0 | Jesse Wolgamott | 39m |
Case studies show stepwise upgrades from 1.2 → 2.3 → 3.0 → 3.1 → 4.0 with concrete actions: pin gems and add Bundler for 2.3, rewrite router/JS/query code for… | ||
| TDDing iOS Apps for fun and profit with RubyMotion | Brian Sam-Bodden | 35m |
Claims that a full TDD workflow is practical for iOS using RubyMotion and its toolchain: create with the motion command, iterate with the motion console REPL… | ||
| Datomic, from Ruby, from Rails | Yoko Harada | 40m |
Datomic gets used from Ruby via the Diametric gem which exposes Datomic as an ActiveModel compliant layer, supports Rails scaffolding, and maps transactions… | ||
| Dissecting Ruby with Ruby | Richard Schneeman | 27m |
Uses nothing fancy beyond prints and kernel probes to find the exact ruby file and line that a method comes from and where it was called, demonstrating… | ||
| How to Talk to Developers | Ben Orenstein | 48m |
Starts with 12 air squats and a live Law of Demeter enactment using volunteers to show how coupling breaks when a component is refactored, then demonstrates… | ||
| Ruby Hero Awards | greg pollock | 17m |
Community-run nomination site rubyheroes.com collects nominations and a volunteer panel vets the top nominees, expanding the usual six honorees to eight… | ||
| Lightning Talks | 02h 19m | |
A rapid sequence of concrete takeaways not lofty themes: an OpenHack recipe that actually runs in 60+ cities with Pizza + BR = code and repeatable rules and a… | ||
| Simple and Elegant Rails Code with Functional Style | Attila Domokos | 34m |
A concrete claim: moving parsing and business logic into tiny, stateless actions lowers complexity and speeds testing. Tools used include flog to measure… | ||
| Keynote | James Duncan Davidson | 23m |
Tunisia’s Star Wars set and Cuba’s offline iPhone users become evidence that web tools change outcomes: an early Hilton.com booking site is actually built with… | ||
| Properly Factored MVC in Rails Applications | Katrina Owen, Jeff Casimir | 01h 43m |
A real refactor of a large Rails app: the stats controller is ~800 lines and one index action is ~200 lines with ~35 instance variables, so code is extracted… | ||
| Configuration Management Patterns | Beau Harrington | 30m |
A concrete system emerges: a game’s 25,000 configuration integers move out of source into a build pipeline that emits a config artifact with build number and… | ||
| Zero-downtime payment platforms | Prem Sichanugrist, Ryan Twomey | 40m |
Rails 3.2 app on Heroku with Postgres 9.x at peak doing ~$1,000/min uses timeouts (15s) around card charges to save Gateway-Dash-Down- placeholders, a cron… | ||
| Services and Rails: The Sh*t They Don't Tell You | Brian Morton | 33m |
Yammer runs 100+ web servers and handles about 500 million requests a day with a 98% cache hit rate and roughly 20+ services behind the rails monolith… | ||
| Describing Your World with Seahorse | Trevor Rowe | 41m |
A small Ruby DSL defines a reusable service model that describes APIs with four parameter types, generates documentation and generates clients for Ruby Python… | ||
| Your First Rails Pull Request | Mark McSpadden | 36m |
Practical checklist for contributing: pick an issue or smaller rails org gem, set up rails dev box (VirtualBox + Vagrant), fork rails/rails, branch, run… | ||
| Firefighting on Rails | Ethan Vizitei | 27m |
Rails parses a web status board every 30 seconds with Mechanize, stores incidents in MongoDB, and pushes SMS and email via Twilio and SendGrid on Heroku… | ||
| Keeping the lights on: Application monitoring with Sensu and BatsD | Aaron Pfeifer | 39m |
Sensu and BatsD form a runnable stack that executes checks, pipes metrics through RabbitMQ and the statsd protocol, and alerts via handlers (PagerDuty, email)… | ||
| Flattening The Cloud Learning Curve Using Rails | Michael Murphy | 19m |
Claims that HP Cloud (OpenStack) can be used from Ruby to provision real infrastructure: HP Cloud Ruby CLI and HP Ruby Fog extensions create a server, attach a… | ||
| Forget Scaling: Focus on Performance | Terence Lee | 41m |
Focuses on single-process speed first so scaling later is easier and shows concrete outcomes: Heroku runs about three million apps and benchmarks show 7… | ||
| Rails Conf 2013 Engine Yard Cloud by Edward Chiu & PJ Hagerty | Edward Chiu, PJ Hagerty | 20m |
A live dashboard demo of Engine Yard Cloud shows repo-to-deploy in a few clicks, SSH access to instances, auto distribution across availability zones and an… | ||
| DevOps for the Rubyist Soul | John Downey | 36m |
Braintree describes a concrete DevOps setup: Ruby-driven automation with Puppet (modules, hiera, facter), orchestration via Capistrano and a custom supply_drop… | ||
| Creating Mountable Engines | Patrick Peak | 37m |
Explains how to build mountable engines for Rails 3/4 with concrete commands and files: generator output, engine.rb configuration, the mount method for routes… | ||
| Using Elasticsearch with Rails Apps | Brian Gugliemetti | 31m |
Shows Elasticsearch integrated into Rails using Tire gem and curl to index data, importing 9,606 documents of forum topics and a product catalog of ~800,000… | ||
| nothing matches | ||