RubyConf 2016
2016-11-10..2016-11-12
Cincinnati, OH, United States
RubyConf ·
[RubyConf 2007, RubyConf 2008, RubyConf 2009, RubyConf 2010, RubyConf 2011, RubyConf 2012, RubyConf 2014, RubyConf 2015, RubyConf 2016, RubyConf 2017, RubyConf 2018, RubyConf 2019, RubyConf 2020, RubyConf 2021, RubyConf 2022, RubyConf 2023, RubyConf 2024, RubyConf 2026]
as the organisers put it
RubyConf is chugging on down to Cincy! Join us November 10–12 as we celebrate all things Ruby while enjoying the sights and sounds of Cincinnati and the Ohio River.
who it's for
Ruby developers, backend engineers, language implementers, tooling authors, engineering managers, open source maintainers, junior developers
topics
metaprogramming in Ruby; quines and code obfuscation; MRuby for embedded devices; compile-time type checking prototype; Guild concurrency model for Ruby; structural typing and duck inference; generational garbage collection in MRuby; DTrace for Ruby diagnostics; building command-line tools with MRuby; surgically refactoring Ruby with suture
| title | author | length |
|---|---|---|
| Opening Keynote | yukihiro Matsumoto 'Matz' | 49m |
Starts from one user in 1993 and traces growth to roughly one million Ruby users and a ~650‑person RubyConf, citing the Pickaxe selling ~20,000 copies… | ||
| Ruby versus the Titans of FP | Cassandra Cruz | 37m |
Compares Ruby to Clojure Haskell and JavaScript by showing concrete implementations not abstractions: implements a higher order map as a proc that delegates to… | ||
| Matz Q&A | yukihiro Matsumoto 'Matz' | 39m |
A concrete prototype emerges: a compile-time type-checker that runs separately from the loader, reads require d sources, and flags inconsistencies while… | ||
| The Neuroscience and Psychology of Open Source Communities | Elizabeth Barron | 40m |
Claims that humans show 107 cognitive biases, that negative events register with five times more neural circuitry and need roughly two positives to… | ||
| Metaprogramming? Not good enough! | Justin Weiss | 36m |
Claims that Ruby can host a fully extensible object model implemented in userland using BasicObject plus about five core methods (add_method, lookup… | ||
| Rhythmic Recursion | Celeen Rusk | 33m |
Rewrites Steve Reich’s clapping piece as runnable Ruby: represents the fixed part and the changing part as arrays of ones and zeros, maps 1→clap 0→rest, uses… | ||
| That Works?! Quines and Other Delightfully Useless Programs | Colin Fulton | 49m |
Shows concrete tricks and finished hacks: implements Brainfuck‑style and JS‑minifier tricks, builds a SASS‑based LISP and a six‑character six characters JS… | ||
| How I Corrupted Survey Results and (Maybe) Ruined a Business | Mike Calhoun | 32m |
A 25‑question survey over five pages is implemented as seven PHP pages that write straight to MySQL with no validation, so answers vanish; about a hundred… | ||
| Datacenter Fires and Other "Minor" Disasters | Aja Hammerly | 33m |
Midnight release corrupts production after pushing master instead of the release branch and running migrations then a 45-minute restore from a backup recovers… | ||
| The Building Built on Stilts | Nickolas Means | 39m |
A 59‑story Citicorp Center sits on four ten‑story stilts using chevron braces and a 410 ton tuned mass damper to halve sway; wind‑tunnel rechecks show… | ||
| Just a Ruby Minute | Andrew Faraday | 32m |
Round is a live Just a Minute session where panelists name real incidents: one flushed a Redis cache that also held live data and caused a production scare… | ||
| Evaluate Ruby Without Ruby | Takashi Kokubun | 29m |
Claim: Ruby DSL can run without MRI by embedding mruby, producing a single binary either via go-mruby (Go + mruby bridge) or mruby-cli (pure mruby). Built… | ||
| Building a Better OpenStruct | Ariel Caplan | 40m |
Shows concrete fixes and fast alternatives: Ruby's OpenStruct is 10–40× slower than an explicit class and global method cache issues are fixed in Ruby 2.1. It… | ||
| C Ruby? C Ruby Go! Go Ruby Go! | Loren Segal | 42m |
Tool gorb generates native extension wrappers that turn ordinary Go packages into compiled .so libraries callable from MRI Ruby, using a command like gorbgen… | ||
| Improving Coverage Analysis | Ryan Davis | 26m |
Claim: test coverage reports give a false positive. Tools examined: Ruby's Coverage API, SimpleCov, and a newly released gem minitest-coverage that records a… | ||
| Rainbows! Color Theory for Computers | Lito Nicolai | 16m |
Builds a smoothed simulation of fluids using smoothed-particle hydrodynamics and maps each particle’s pressure to visual brightness via the Ruby graphics Gem… | ||
| Computer Science: The Good Parts | Jeffrey Cohen | 30m |
Asserts that a four-year CS degree is unnecessary for practical CS and demonstrates concrete exercises and results: implement a minimal list in Ruby, contrast… | ||
| You Have the Empathy of a Goat: Documenting for the User | Tara Scherner de la Fuente | 39m |
Argues that useful documentation is specific: watching a salesperson reveal a CSV upload pain caused by an unsorted pulldown led to fixes that take under an… | ||
| (m)Ruby on small devices | Shashank Daté | 36m |
mruby runs on Raspberry Pi class hardware by compiling with GCC and minirake, producing a single embeddable binary and C arrays of bytecode for linking; the… | ||
| Building HAL: Running Ruby with Your Voice | Jonan Scheffler | 44m |
A voice-driven deployment pipeline actually gets built: an Alexa → IFTTT → Slack → Hubot → GitHub → Heroku flow that sometimes demos cleanly and sometimes… | ||
| How I Taught My Dog To Text Selfies | Greg Baugues | 36m |
Claim: a dog actually sends MMS selfies. Built a cigar‑box device with a USB webcam, a $10 big red button, Pi on a breakout board and PiPiper reading GPIO… | ||
| It's More Fun to Compute | Julian Cheal | 41m |
Live demos show Ruby driving real synths via Ruby + Sonic Pi + MIDI using a small JRuby/DRb server that routes notes to Korg Volca and Minibrute hardware and… | ||
| Programming in the Small: Kids, Chickens, and Ruby | Coraline Clark, Jason R. Clark | 38m |
A father and daughter build a coop monitor that actually takes timed photos with a Raspberry Pi camera, uploads them to Amazon, and displays them in a small… | ||
| Finding your edge through a culture of feedback | Paulette Luftig | 33m |
Claims that a feedback culture raises individual and team capacity and nudges a growth mindset get backed by concrete practices: ASK: actionable, specific… | ||
| My Meta Moments | John Dewyze | 38m |
Metaprogramming is presented as learnable and fun and the concrete result is a working Putter gem that instruments code to log call site file/line, arguments… | ||
| Why Is Open Source So Closed? | Ra'Shaun Stovall | 45m |
Argues that Cyclical Mentorship fixes an access gap between bootcamp grads and mid/senior roles, citing NYC.rb’s 4,500+ membership and a surprising contributor… | ||
| Ruby, Red Pandas, and You | Sean Marcia | 30m |
A system identifies red pandas in long nest‑box videos by sampling one frame per second with FFMPEG, uploading with paperclip + jquery file upload (nginx… | ||
| The Little Server That Could | Stella Cotton | 36m |
Builds a tiny Ruby web server that answers curl requests by opening an Inet TCP socket, parsing HTTP (notes C parsers like Zed Shaw’s ragel/state-machine… | ||
| Becoming a Mid: Two Perspectives on Leveling Up | Kimberly D. Barnes, Kinsey Ann Durham | 41m |
Concrete actions for getting from junior to mid: teach others and build side projects and open source; learn practical tools like SQL, TDD, pseudocode and the… | ||
| Learning Fluency | Sara Simon | 30m |
Argues that fluency builds understanding and shows concrete practice instead of vague immersion: a Middlebury regimen with daily ting xie dictations… | ||
| You graduated from bootcamp, now what? | Melanie Gilman | 28m |
Bootcamp graduates see concrete next steps: join a large team (LivingSocial’s ~120 engineers), sold 1.5 million vouchers during a record deal, and built an… | ||
| Methods of Memory Management in MRI | Aaron Patterson | 49m |
Covers how MRI actually allocates and reclaims memory: Ruby heap layout with 16KB pages, 40B object slots; tag‑pointer fixnum encoding and the 2^62 limit… | ||
| Optimizing ruby core | Shyouhei Urabe | 27m |
Implements a deoptimization engine in Ruby 2.4 that overwrites iseq bytecode in place (memcpy of an iseq_copy) to enable on‑the‑fly optimizations while… | ||
| Seeing Metaprogramming and Lambda Function Patterns in Ruby | Lukas Nimmo | 31m |
Dredged through over 50 prominent Open Source Ruby projects and extracting ten repeatable patterns, the talk claims practical recipes for building DSLs that… | ||
| Even the Justice League Works Remotely | Allison McMillan | 34m |
Claims that non-senior developers can succeed remote if hiring and onboarding focus on measurable behaviors: look for takes initiative, asks questions, and… | ||
| Running Global Manufacturing on Ruby (among other things) | Lee Edwards | 33m |
Teespring runs global short-run manufacturing from a Kentucky facility called Mercury and prints millions of items a year while keeping core business logic in… | ||
| Grow Your Team In 90 Days | Cheryl Gore Schaefer | 38m |
Claims a junior can become a productive Ruby dev in 90 days by following a coauthored checklist and resource list; plan uses an initial half‑day assessment… | ||
| Better Code Through Boring(er) Tests | Betsy Haibel | 34m |
Tests often become a maintenance nightmare and the fix is concrete: three refactorings that reduce brittleness and duplication. The talk shows replacing… | ||
| Surgically Refactoring Ruby with Suture | Justin Searls | 49m |
Suture is a Ruby gem that makes refactors incremental and reversible: it records calls and replays them (SQLite + Marshal snapshots), verifies recordings as… | ||
| Test Doubles are Not To Be Mocked | Noel Rappin | 40m |
Claim: test doubles (mocks/spies) reveal assumptions rather than inherently breaking tests. Example: a price calculator test either creates two Active Record… | ||
| Ruby for Home-Ec | Adam Forsyth | 33m |
Two concrete Ruby solutions show what actually happens: a ~20-line greedy_approximation script takes 64 cuts from 35 boards (three board lengths), accounts for… | ||
| JRuby Everywhere! Server, Client, and Embedded | Thomas E Enebo | 49m |
JRuby claims concrete wins: the red/black benchmark runs almost twice as fast as CRuby with a C extension, JRuby 9.1.6 ships and aims for Ruby 2.4… | ||
| The long strange trip of a senior developer | Brandon Hays | 44m |
Conference talk presents in-depth research across companies and a concrete six-point plan to keep developers contributing for decades, not just 10–15 years. It… | ||
| From no OSS experience to the core team in 15 minutes a day | Andre Arko | 30m |
Claim: a path to the core team with 15 minutes a day by using GitHub, reading README/contributing docs, following the issue tracker and reproducing bugs. The… | ||
| Implementing Virtual Machines in Ruby (and C) | Eleanor McHugh | 50m |
Shows a concrete VM design and several runnable implementations: a simple opcode set (push add print exit) with a dispatch loop, a Ruby version that compiles… | ||
| Ruby’s C Extension Problem and How We're Solving It | Chris Seaton | 35m |
Claim: JRuby+Truffle runs C extensions by interpreting LLVM IR for C extensions and merging those IR trees with Ruby ASTs so the Graal JIT can optimize across… | ||
| Ruby 3 Concurrency | Koichi Sasada | 42m |
Proposal introduces a concrete concurrency abstraction named Guild membership model that pins mutable objects to one Guild, adds Guild::Channel with copy and… | ||
| Attention Rubyists: you can write video games | Cory Chamblin | 45m |
Claims Ruby plus Gosu is practical for 2‑D games and demonstrates it by building two working demos: Winner Winner Chicken Spinner (spin and stop win condition)… | ||
| Bootcamp Grads Have Feelings, Too | Max Tiu | 25m |
Claims that bootcamp grads face a real stigma, with concrete numbers: 35% of bootcamps teach Ruby, bootcamps run at roughly one quarter the cost of a CS… | ||
| Continuing Education at Work | Katherine Wu | 43m |
Two lightweight programs run at work with concrete results: a technical book club meets weekly for one to two chapters (2–20 people) with two rotating… | ||
| “Am I Senior Yet?” Grow Your Career | Katlyn Parvin | 38m |
Claims that seniority equals teaching not raw Ruby skill and that teaching is learnable through practice and measurement are front and center here, backed by… | ||
| Dōmo arigatō, Mr. Roboto: Machine Learning with Ruby | Eric Weinstein | 42m |
A Ruby implementation trains a neural network on the MNIST dataset using the RubyFann gem and serves a React front end with a Sinatra backend; the model maps… | ||
| Problem Solved! Using Logic Programming to Find Answers | Gavin McGimpsey | 45m |
Logic programming claims to let a program declare relations and let the engine infer missing values; the demo shows Ruby options (miniKanren/kanren gems… | ||
| Deletion Driven Development: Code to delete code! | Chris Arcand | 31m |
Builds a static analyzer that parses Ruby with RubyParser (racc) into s-expressions, walks them with a SexpProcessor-derived visitor, records method… | ||
| A Look at Hooks | Craig Buchek | 18m |
Lists the actual Ruby hooks covered, shows method_missing with the proper signature and why also to implement respond_to_missing, demos new implemented roughly… | ||
| Keyword Args — the killer Ruby feature you aren't using | Guyren G. Howe | 17m |
Ruby 2.0 and 2.3 keyword arguments make functions strictly more flexible than positional args, letting optional params be passed out of order, default values… | ||
| Lies, Damned Lies, and Substrings | Haseeb Qureshi | 24m |
Generates all substrings and shows the concrete costs: the average substring ≈ n/3 so naive copying makes the nested loops O(n^3), but MRI uses copy‑on‑write… | ||
| Lightning Talks | Andre Arko, Francois Lapierre Messier, Sam Phippen, Caroline Jobe, Jen Pengelly, Starr Chen, Olivia Brundage, Kate Rezentes, Amy Howes, Assaf Hefetz, Miki Rezentes, Michael Hartl, James Thompson, Victoria Gonda, Jonathon Slate, Michael Cain, Jamie Gaskins, Yurie Yamane, Kei Nawanda, Ryder Timberlake, Noah Gibbs, Chris Vannoy, Andrew Faraday, Mischa Lewis, Jeff Foster | 01h 34m |
Thirty lightning talks compress concrete takeaways: RubyGems traffic hits 4 billion gems and funds are needed to keep mirrors running; practical Git rescue… | ||
| Building maintainable command-line tools with MRuby | Eric Hodel | 37m |
Builds a single-binary CLI for a Fastly API using mruby and mruby-cli, actually ports prototypes from CRuby and wires up mruby-curl and mruby-optparse; solves… | ||
| Composition | James Dabbs | 48m |
Shows a concrete way to stop inventing classes and start composing behavior: models a Topologist example in Haskell and Ruby, rewrites inheritance as… | ||
| Why recursion matters | James Coglan | 39m |
Recursion is framed as fundamental: it proves programs are correct by structural induction, it yields real speedups (example build script vs make: initial run… | ||
| To Clojure and back: writing and rewriting in Ruby | Phill MV | 33m |
Team chooses Datomic and Clojure for immutable data and point‑in‑time queries, hits long boots and huge memory, then rewrites into a single Ruby monolith to… | ||
| Diving into the Details with DTrace | Colin Jones | 37m |
DTrace proves able to flip on dynamic instrumentation of running processes and time kernel and user calls, so experiments trace and rule out CPU, GC and disk… | ||
| Halve Your Memory Usage With These 12 Weird Tricks | Nate Berkopec | 46m |
Claims twelve concrete tricks that can halve your memory usage, targets MRI/C Ruby, and gives numbers: aim for 300 megabytes per instance, expect logarithmic… | ||
| nothing matches | ||