An incomplete list of talks I have given or I am preparing. You can also find some of my proposals, successful and not, on my page on SpeakerLine.io.

Conscious Coding Practice: the Three Concrete Steps

Me speaking at RubyConf Nashville

Imagine if you could just pick up any coding problem and solve it. There's a way to get that "fingertip feel" for coding. And it comes from mindful, conscious practice.

Coding exercises are... fine. But there's a kind of exercise we can steal from another industry that works incredibly well. After this talk, you'll be able to create coding studies for yourself, not just find other people's exercises that are already worked out for you.

The talk is in Ruby. But the technique works with any language, library or paradigm. It's also good for pairing.

Six Years of Ruby Performance: A History

Title Slide Ruby keeps getting faster. And people keep asking, "but how fast is it for Rails?" Rails makes a great way to measure Ruby's speed, and how Ruby has changed version-by-version. Let's look at six years of performance graphs for apps big and small. How fast is 2.6.0? With JIT? How close is Ruby 3x3?

Build Your Own Framework to Understand Rails Magic

Chapter 3 slide from presentation

Rails 'magic' is just Ruby metaprogramming. You can understand Ruby's metaprogramming features and Rails' more unexpected systems in one go by building your own Ruby MVC web framework, structured like Rails.

This is a three-hour workshop, as delivered at RailsConf 2019 and Southeast Ruby 2019 (sorry, no video!). So I've helped over a hundred people debug this live as they typed it in :-)

Make Ruby 2.6 Faster with JIT

Title Slide

Ruby 2.6 added a JIT implementation, called MJIT. How did it happen? How does it work? How do we use it? What code does it work well or poorly on? All this and more... But the video hasn't posted, alas, as of the beginning of 2020.

Faster Apps, No Memory Thrash

Title Slide "The Ruby memory system can be tricky. Configuring it isn't easy. I'll show you a new simple tool to optimize your Ruby binary's memory settings. You'll learn about the CRuby memory resources and how you check them. Let's optimize your memory usage to keep memory small and keep garbage collection fast."

How Close is Ruby 3x3 for Production Web Apps?

Title Slide "How much faster is current Ruby than Ruby 2.0 for a production web application? Let's look at a mixed workload in the real commercial Discourse forum software. We'll see how the speed has changed overall. We'll also examine slow requests, garbage collection, warmup iterations and more. You'll see how to use this benchmark to test your own Ruby optimizations."

Toronto Ruby Brigade: The Littlest ORM and More

Title Slide A presentation to the Toronto Ruby Brigade of The Littlest ORM, the Five-Minute Ruby Framework and Just Build Your App on Rack.

The Littlest ORM

Title Slide "Ever wonder how Sequel, ActiveRecord or DataMapper work? Let's build a working mini-ORM, complete with an application and tests! Ruby makes it surprisingly easy. We'll go over all the code in 30 minutes. There will be a GitHub link so you don't have to type furiously."

Hastur: Open-Source Scalable Metrics with Cassandra

Title Slide "How much faster is current Ruby than Ruby 2.0 for a production web application? Let's look at a mixed workload in the real commercial Discourse forum software. We'll see how the speed has changed overall. We'll also examine slow requests, garbage collection, warmup iterations and more. You'll see how to use this benchmark to test your own Ruby optimizations."

Replacing Java Incrementally with JRuby

Title Slide At OnSite Manager, Inc, we took an old established Java application and added JRuby and Ruby on Rails "on top" of the existing application as new and replacement views and subsections of the application. In this talk, I discuss the approaches we used for this work.