RailsConf 2016
2016-05-04..2016-05-06
Kansas City, MO, 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]
as the organisers put it
The 2016 RailsConf will be coming to you from beautiful Kansas City. Don't miss this chance to talk all things Rails with other developers and enthusiasts.
who it's for
Rails developers, backend engineers, platform and operations engineers, engineering managers, QA and test engineers, technical leads
topics
Rails 5 and Action Cable; ActiveRecord SQL performance; Sprockets asset pipeline; Turbolinks mobile bridges; Active Job background jobs; Docker packaging for Rails; Kafka integration with Rails; Testing Rails at scale; Rails boot process and initializers; Localization and internationalization
| title | author | length |
|---|---|---|
| Opening Keynote - Jeremy Daer | Jeremy Daer | 01h 12m |
Claims that Basecamp 3 already runs Rails 5 and that Action Cable is production-ready — but high-connection workloads force the pattern “give me a job” to… | ||
| Day 1 Closing Keynote: Skunk Works | Nickolas Means | 48m |
Skunk Works delivers concrete wins: a P-80 prototype from metal to flight in 143 days, the U-2 reaching 70,000 feet with wafer-thin wings and bicycle landing… | ||
| The Rails Boot Process | Xavier Noria | 39m |
Explains exactly what files run and when: config/boot.rb calls Bundler.setup, config/application.rb loads railties then Bundler.require, the application class… | ||
| Making a Rails App with 140 Characters (or less) | Nate Berkopec | 40m |
Start from the claim: Rails can be shrunk to a tweet. The demo pares 433 lines across 61 files down to a one‑line shell command using Rack and the railtie… | ||
| How Sprockets works | Rafael Mendonça França | 30m |
Explains how Sprockets composes processors, transformers and compressors into the default pipeline that builds assets, how the environment and manifest map… | ||
| Day 2 Opening Keynote | Chanelle Henry | 48m |
Claims a repeatable UX process and shows the tools used: XPR workshop (experience process review), analytics audits, prototyping, usability testing and tight… | ||
| Ruby Hero Awards | Ruby Hero Awards | 10m |
An annual awards rundown that names nine new Ruby Heroes chosen from 454 nominations and 133 nominees, explains a past-heroes review step to avoid a popularity… | ||
| ...But Doesn't Rails Take Care of Security for Me? | Justin Collins | 43m |
Rails' built‑in protections don't stop logic and deployment mistakes: an unscoped find lets anyone delete other users' payment methods ($2,800 bounty), a… | ||
| Will It Inject? A Look at SQL injections and ActiveRecord | Jessica Rudder | 33m |
Clear walkthrough of which ActiveRecord calls are safe and which bite back: find and find_by treat inputs as integers or escaped strings, while raw fragments… | ||
| Turbo Rails with Rust | Godfrey Chan | 42m |
Rust native extensions replace hot Ruby paths with safe system code: a one‑liner Rust implementation of Fast Blank matches or beats C, Helix scaffolds the… | ||
| Writing a Test Framework from Scratch | Ryan Davis | 32m |
Claims how to build a test framework from the atom of assert up to runnable suites using plain Ruby, reimplementing minitest as “microtest” with real code… | ||
| From Director to Intern: Changing Careers as a Single Mom | Teresa Martyny | 42m |
A nonprofit director quits, applies to Dev Bootcamp, survives a nine‑week Phase 0 and an 18‑week program while parenting two kids, learns pairing, heavy… | ||
| Introduction to Concurrency in Ruby | Thijs Cadier | 36m |
Builds a tiny Slack‑like chat server and implements it three ways so differences are concrete: multi‑process with fork and pipes (Unicorn style), multi‑thread… | ||
| 5 Practical Ways to Advocate for Diversity | Tony Wieczorek | 30m |
Five concrete tactics: measure using an EEO-1 style survey (open-sourced for a 250-person company), diversityhackers.com (curated weekly links) and sponsoring… | ||
| Power up Your Development with RubyMine | Tatiana Vasilyeva | 40m |
RubyMine demonstrates concrete, usable features: quick theme and keymap switching, bundled and community plugins, a presentation assistant for showing… | ||
| Stuck in the Middle: Leverage the power of Rack Middleware | Amy Unger | 35m |
Explains how to write and install custom Rack middleware, with concrete examples: a Ping Pong endpoint that short-circuits and returns 200 Pong, a… | ||
| Surviving the Framework Hype Cycle | Brandon Hayes | 34m |
Uses the Gartner hype cycle to pick frameworks by stage not buzz, maps concrete roles — pioneers, settlers, town planners — to actions at each phase, and gives… | ||
| Rails to Phoenix | Brian Cardarella | 29m |
Bleacher Report rewrites a Rails site into Phoenix and runs at 1/15th of the servers, averaging 10–30 ms with only one spike near 800 ms; independent… | ||
| How We Scaled GitLab For a 30k-employee Company | Pan Minqi | 38m |
An engineering team migrates GitLab’s repo and uploads from local FS to Alibaba OSS object storage, removes Grit and targets libgit2 by implementing libgit2… | ||
| Developing and Maintaining a Platform With Rails and Lotus | Simone Carletti | 37m |
DNSimple rewrites its REST surface into API v2 mounted as a Rack app, built with Hanami (formerly Lotus) alongside Rails and running in production. The… | ||
| Going Serverless | Jeremy Green | 28m |
Uses the Serverless Framework to deploy code to AWS Lambda and Api Gateway, with CloudFormation for infra and DynamoDB/RDS as examples. Demo builds a left-pad… | ||
| Build Realtime Apps with Ruby & Pakyow | Bryan Powell | 31m |
Pakyow claims realtime, server-driven Ruby apps without writing JavaScript and proves it with a demo blog: live active reader and comment updates sent as… | ||
| Don't Forget the Network: Your App is Slower Than You Think | Andre Arko | 40m |
Claim: user-perceived latency includes routing and network time often invisible in New Relic and can add 50% or more to response time; use New Relic queue… | ||
| Quit Frustrating Your New Developers - Tips From a Teacher | Miki Rezentes | 38m |
Practical steps and measurable signals decide whether to watch: a six to eight weeks onboarding plan, a written New Engineer's Handbook that covers machine… | ||
| Precompiling Ruby scripts - Myth and Fact | Koichi Sasada | 38m |
Ruby 2.3 adds precompilation primitives for RubyVM::InstructionSequence and provides methods like InstructionSequence#to_binary and load_from_binary; a sample… | ||
| Multi-table Full Text Search with Postgres | Caleb Thompson | 27m |
A real feature evolves from LIKE to Postgres full text search across multiple tables using database views and materialized views; the build uses the Textacular… | ||
| Rediscovering ActiveRecord | Mario Chavez | 27m |
Shows how ActiveRecord turns a class into live objects by loading table schema (via schema_cache.columns_hash), building an ARel AST and statement cache with… | ||
| Saving Sprockets | Richard Schneeman | 38m |
A major maintainer leaves a project with over 44 million downloads and more than 70% of commits concentrated in one person so the team documents concrete… | ||
| Inside ActiveJob | Jerry D'Antonio | 41m |
Explains how ActiveJob serializes jobs, uses a thread-safe map and per-queue thread pools, and builds an async job processor from scratch that calls… | ||
| The State of Web Security | Mike Milner | 34m |
2015 breach data shows concrete harms: SQL injection still lets attackers exfiltrate millions (TalkTalk ~157,000 accounts, ~£60M loss; VTech = 200k kids + 5M… | ||
| Implementing the LHC on a Whiteboard | James Edward Gray II | 36m |
Argument: algorithmic thinking beats jargon; Big O helps find simpler solutions. Demonstrations use Ruby: hash-based linear set intersection, recursive… | ||
| Opening Day 3 Keynote | Aaron Patterson | 51m |
Findings: Ruby’s gem_prelude causes O(N) require scans and switching to an explicit gem_prelude patch (gem "name" before require) yields O(1) startup lookups… | ||
| Finding Translations: Localization and Internationalization | Valerie Woolard | 29m |
Concrete Rails low level advice on making apps translatable and avoidable pitfalls so you can decide fast. Covers using i18n.t and localize for strings and… | ||
| Site Availability is for Everybody | Stella Cotton | 29m |
A production outage triggered by a 1.6 billion Euro crowdfunding spike forces a static front page and reveals the claim: simulated load finds real bottlenecks… | ||
| Client/Server Architecture: Past, Present, & Future | Mike Groseclose | 23m |
Claims that the web moves from monoliths toward separated clients and APIs, with a production example of migrating a large Weedmaps Rails app toward… | ||
| How to Get and Love Your First Rails Job | Molly Black | 39m |
Advice: pick a Rails sample project that crush the sample project by showing specific problems solved, refactor until names and methods are clear, and use the… | ||
| I Can’t Believe It’s Not A Queue: Using Kafka with Rails | Terence Lee | 33m |
Explains concrete claims and demos: Kafka handles hundreds of thousands to millions of messages a second, Heroku launches a public beta Kafka add‑on with SSL… | ||
| From Excel to Rails: A Path to Enlightened Internal Software | Nick Reavill | 33m |
Claims Rails is practical for internal tools and replaces fragile Excel workflows by turning flattened buy sheets from ten team spreadsheets into normalized… | ||
| Level-up Your ActiveRecord Skills: Learn SQL! | Ryan Dlugosz | 40m |
Claims that learning SQL fixes performance and reporting problems by moving work into the database, with concrete examples: a Ruby dashboard that would… | ||
| From Zero to API Hero: Consuming APIs like a Pro | Cecy Correa | 39m |
Covers concrete gotchas and fixes: how HTTP verbs, headers and bodies actually work, why status codes (200/201/202/400/401/403/404/429/5xx) are diagnostic, and… | ||
| Zen and the Art of the Controller | Michael Kelly | 28m |
Argues controller bloat is controllable not inevitable and shows concrete refactors inside Rails using AJAX background jobs Devise and Active Record examples… | ||
| Facepalm to Foolproof: Avoiding Common Production Pitfalls | Jon McCartie | 31m |
A checklist of concrete fixes: stop running WEBrick in production and use Puma with a sane worker count (typical Rails process ≈180–200MB; too many workers… | ||
| Packaging and Shipping Rails Applications in Docker | Allan Espinosa | 29m |
Claims that Docker images decay and slow deployments get fixed by concrete steps: exploit build cache reuse and split Gemfile into a separate Gemfile layer so… | ||
| Small Details, Big Impact | Yehuda Katz, Liz Baillie | 38m |
Skylight swaps an unreadable RPM column for a Popularity icon sized to avoid misleading log‑normal distributions, proves the triangle meter works better than… | ||
| How Compose uses Rails to Scale Work, Now Open-Sourced | JP Phillips | 19m |
Compose open-sources a Rails app called Fizz that centralizes daily posts, praises and week‑long milestones to make a 20‑person remote company scale after an… | ||
| Crushing It With Rake Tasks | Clark Barrett | 30m |
Shows concrete Rake recipes: runs bundle exec rake db:migrate and demonstrates db:migrate:redo and rollback behavior, when editing migrations is safe, and when… | ||
| Step 1) Hack, Step 2) ?, Step 3) Profit | Bradley Herman | 36m |
Hired grows from a weekend hack into a global marketplace serving thousands across 16 cities in 6 countries, and quarterly hack weeks produce actual product… | ||
| Your Software is Broken — Pay Attention | James Smith | 37m |
Claims concrete numbers: 49% of engineering time goes to finding and fixing bugs and 84% abandon after two crashes. A production-monitoring stack is built… | ||
| Priming You for Your Job Search | Mark McDonald, MiMi Moore, Travis Hillery | 25m |
Indeed Prime vets candidates with Hackerrank tests, phone-screened talent ambassadors and a talent writer who crafts a launch-ready profile that stays live for… | ||
| Strong Practices for Rails Applications Continuous Delivery | Nathan Smith, Robb Kidd | 34m |
Claims a full commit-to-production pipeline that actually builds and deploys a Rails app, using Chef Delivery to orchestrate gated stages. It runs Rubocop and… | ||
| Excellence Through Diversity | Andreas Fast | 28m |
Personal account of red green colorblindness shows an Ishihara test, missed ripe fruit and meat doneness, discovery at age 21, and a claimed night-vision… | ||
| Hiring Developers, with Science! | Joe Mastey | 33m |
Argues that most interviews are invalid because they measure the interviewer not the candidate and offers Industrial/Organizational tools: focus on validity… | ||
| Internships: Good for the Intern, Great for the Team | Lillie Chilen | 31m |
Recommend hiring interns who pair for six weeks, then do a month‑long solo project, then pair again; assign a mentor and schedule daily mentor check-ins… | ||
| Booting Up: Hiring and Growing Boot Camp Graduates | Eric Weinstein | 41m |
States the concrete claim: in 2015 nearly a hundred programming boot camps produce thousands of graduates, and hiring needs change accordingly. Describes which… | ||
| Reduce Small-Team Culture Shock with Agile | Jamie Riedesel | 33m |
Describes why hires from traditional IT bring survival strategies like reflexive change resistance and intentional deinvestment, with concrete examples (125… | ||
| ActiveRecord vs. Ecto: A Tale of Two ORMs | Brad Urani | 39m |
Compares a Rails ActiveRecord implementation of a Hallway Track app to an Elixir Phoenix/Ecto rewrite and shows concrete tradeoffs: ActiveRecord reads like… | ||
| Testing Rails at Scale | Emil Stolarsky | 21m |
Shopify replaces a slow hosted CI with a Buildkite scheduler and self-managed compute on AWS, using autoscaled EC2, spot/reserved instances, and a custom… | ||
| ActionCable for Not-Another-Chat-App-Please | Jesse Wolgamott | 39m |
Rails 5 ActionCable brings WebSockets into Rails with concrete claims: use cookies.signed user_id for auth (no session), call action_cable.server.broadcast… | ||
| Rails 5 Features You Haven't Heard About | Sean Griffin | 34m |
Most of Rails 5’s value here is concrete: the type attributes API (implemented largely in 4.2) adds an attribute class macro that accepts type objects so… | ||
| Turbolinks 5: I Can’t Believe It’s Not Native! | Sam Stephenson | 38m |
Claim: Turbolinks 5 lets small teams ship lightning-fast Rails apps and high‑fidelity hybrid iOS and Android apps using a shared set of web views. Evidence… | ||
| Secrets of Testing Rails 5 apps | Prathamesh Sonpatki | 43m |
Rails 5 gives concrete testing changes: a new Test Runner invoked via bin/rails test (powered by Minitest 5 plugins) that prints runnable failing lines… | ||
| Riding the Latest Rails for Charity | Joseph Dean | 41m |
Company runs an internal DashCon hackathon that produces three open‑source projects for charities, including Grantzilla (replaces an Access grants workflow)… | ||
| Style Documentation for the Resource-Limited | Betsy Haibel | 37m |
Argues a concrete, incremental method that avoids stop-the-world rewrites: a three-step cycle to identify, codify, document UI components, refactor into Rails… | ||
| Bridging the Gap between Designers and Developers | Ryan R Hughes | 20m |
Agency Oodle reports work for over 100 clients and claims the fix is concrete: plan for weekly review touch points, ask questions about edge cases like… | ||
| Continuous Visual Integration for Rails | Mike Fotinakis | 32m |
Claims a practical system for pixel‑level CI: integrates perceptual diffs into Rails feature specs, uses Capybara screenshots plus ImageMagick compare for… | ||
| Make Them Click | Roy Tomeij | 36m |
Claims concrete tactics and tested examples: how scarcity, social validation, reciprocity and commitment actually move behavior, with stories and numbers —… | ||
| Real World Docker for the Rubyist | Jason R. Clark | 39m |
New Relic runs real services in Docker and documents what actually changed: a custom Centurion gem deploys images to many hosts with rolling restarts, logs go… | ||
| Building Applications Better the First Time | Jessica Roper | 27m |
Claims a 3‑day sales query workflow shrinks to 10 minutes and proves it by building a sales audience‑sizing tool that initially fails because the wrong user is… | ||
| The Guest: A Guide To Code Hospitality | Nadia Odunayo | 35m |
A practical guide claims that treating code like a hosted home speeds onboarding and reduces friction, and it demonstrates concrete tools: README as guidebook… | ||
| Frameworks for Feedback | Rebecca Miller-Webster | 29m |
Explains concrete frameworks: Situation, Behavior, Impact for actionable feedback, Facts Feelings Needs Requests (Non‑Violent Communication) for hard… | ||
| Managing Growing Pains: Thinking Big While Being Small | Joe Arnold | 31m |
Small company (~15 people, five devs) runs Life.io, a Rails multi-tenant stats platform for global insurers and touches hundreds of thousands of users, and it… | ||
| Can Time-Travel Keep You From Blowing Up The Enterprise? | David Copeland | 27m |
Argues that the right move is not monolith vs microservices but evolving architecture: adopt rule of three to create generators and gems, prefer one Rails app… | ||
| Lightning Talks | Thomas Witt, Michael Hartl, Reid Morrison, Mike Virata-Ston, John Sawers, Matthew Nielsen, Adam Cuppy, Godfrey Chan, Nadia Odunayo, Saron Yitbarek, Stephanie Nemeth, Jose Castro, Benjamin Fleischer, Stephanie Marx | 01h 33m |
Forty five‑minute demos condense into concrete takeaways: a Docker‑based PAS portal is implemented in Rails; API versioning uses grape chain packaging… | ||
| Pragmatic Lessons of Rails & Ruby in the Enterprise | Nathan Beyer | 41m |
An account of adopting Rails and Ruby inside Cerner gives concrete fixes and failures: Rails powers the Healthy Intent SaaS and many REST APIs, hundreds of… | ||
| Sponsor: Indeed | Chris Colòn | 11m |
Indeed Prime launches a vetted marketplace that pairs top engineers with screened employers, adds a concierge liaison team to build profiles and coach… | ||
| How to Build a Skyscraper | Ernie Miller | 42m |
Chronological case studies show concrete claims, methods, and outcomes: an safety hoist demonstration proves elevators make high floors valuable; the Equitable… | ||
| Get a Whiff of This | Sandi Metz | 38m |
Shows that the 22 named problems actually map to precise refactorings and recipes, not handwaving; demonstrates a concrete fix for a data clump by creating a… | ||
| Sponsor: Hired | Bradley Herman | 09m |
Hired says the product is built on Rails since day one, runs a GitHub org with several open‑source projects, and positions itself as built for engineers by… | ||
| Postcards from GorbyPuff | Aja Hammerly | 23m |
Live demos use Cloud Vision to label landmarks (it returns "Fremont Troll" and lat/long), identify a wombat at 93% confidence, and OCR signage that yields… | ||
| Succession | Katrina Owen | 41m |
An end-to-end refactoring of a hard‑coded Ruby here‑doc becomes a concrete recipe: add a simple test, introduce a parallel implementation, isolate algorithmic… | ||
| Foreign API Simulation with Sinatra | Konstantin Tennhard | 29m |
Proposes using Sinatra interceptor apps to simulate foreign APIs instead of scattering VCR or Webmock stubs, claiming a single-file, readable service… | ||
| 3x Rails: Tuning the Framework Internals | Akira Matsuda | 42m |
Benchmarks with benchmark-ips, stackprof, rblineprof and TracePoint show GC costing about ten percent, an optimized template resolver that scans and caches… | ||
| Your First Legacy Codebase | Coraline Ada Ehmke | 31m |
Your First Legacy Codebase by Coraline Ehmke So you've just graduated from a bootcamp and you're starting your first real job in software development. You've… | ||
| Pat Packet Visits Ruby Rails | Jeremy Fairbank, Pat Packet | 40m |
A literal delivery walkthrough explains exact protocols and behaviors: HTTP message format and methods like GET POST PUT DELETE, status codes (200, 304, 404… | ||
| Storytelling with Code | Michael Rau | 34m |
An immersive one‑person office called Temping uses a Rails app to schedule emails, Hue lights, hidden speakers and a laser printer that spits out portraits and… | ||
| Tweaking Ruby GC Parameters for Fun, Speed, and Profit | Helio Cola | 42m |
Upgrading and tuning Ruby GC actually changes measurable behavior: compiled Ruby from source, exported GC environment variables and deployed tuned… | ||
| Closing Keynote: Paul Lamere | Paul Lamere | 59m |
Forty minutes of concrete results: 14 experiments on Spotify-scale data that mine listener plays, cultural text, metadata and acoustic features to build apps… | ||
| How We Deploy Shopify | Kat Drobnjakovic | 17m |
Shopify runs one of the largest Rails apps, benchmarked at 25,000 requests per second and powering about 243,000 businesses. Deploys use a Capistrano script… | ||
| Keynote: The Unfortunate Value of Failure | Ramsey Nasser | 35m |
Argues that failure is information not shame, showing Elm's actionable error that suggests fixes and contrasting token red stop-sign errors; demonstrates tool… | ||
| How I Code and Use a Computer at 1,000 WPM!! | Sina Bahram | 13m |
Claims that a screen reader reads at 1,000 words per minute and demonstrates navigation of real sites (Ars Technica, Hacker News, Reddit) to show which HTML… | ||
| Making Money Disappear with Hash Functions! | Brendan Cordy | 13m |
Python code is used to generate addresses from random 256‑bit keys and to query blockchain.info’s API; mass querying triggers denial‑of‑service blocking… | ||
| lol im so random! | Mark Wunsch | 14m |
Covers where Math.random() and other language PRNGs get their bits, shows that PRNGs are seeded state machines and that Mersenne Twister has an astronomic… | ||
| A million things to do with a computer! | Tef | 14m |
Scratch claims over thirteen million projects, uses block-based sentences instead of syntax, and ships extensions for Arduino, Twitter, and text-to-speech. It… | ||
| My favorite Unicode character: the zero-width joiner! | Anne Decusatis | 12m |
Explains how U+200D ZERO WIDTH JOINER actually combines code points into one glyph (example: 👩+❤️+👩 → 👩❤️👩), shows concrete counts: a combined emoji… | ||
| nothing matches | ||