

Jean Boussier & IO-Bound Misconceptions
20 snips Jul 14, 2025
Jean Boussier, Senior Staff Engineer at Shopify and a key member of the Rails Core team, dives into the intricacies of Rails performance. He explains the distinction between IO-bound and CPU-bound issues and sheds light on Ruby’s Global VM Lock and its concurrency implications. Jean emphasizes the importance of understanding gem dependencies rather than treating them as magic. He shares insightful perspectives on background jobs and performance optimization, advocating for deeper engagement with Rails to enhance development productivity.
AI Snips
Chapters
Books
Transcript
Episode notes
Own Your Gem Dependencies
- Treat your gem dependencies like your own code and open the gem code to understand or fix issues.
- Do not wait for maintainers; fork and patch gems yourself for immediate fixes.
Explore Gems Through Editing
- Open a gem locally with
bundle open
to explore and add debug statements. - Experiment with gems to better understand and fix them; it’s easier than you think.
Latency vs Throughput Explained
- Fast web request response (latency) differs from handling many requests at once (throughput).
- Unicorn excels at latency by avoiding thread contention, while Puma aims for higher throughput.