Static Analysis for Ruby with Jake Zimmerman

Static Analysis for Ruby with Jake Zimmerman

Author: softwareengineeringdaily.com October 14, 2025 Duration: 48:15
Dynamic languages, like Ruby, Python, and JavaScript, determine the types of variables at runtime rather than at compile time. This flexibility allows for rapid development and concise code, but it also makes it harder to catch certain classes of bugs before execution. Type checkers for dynamic languages add structure and safety without compromising their expressive power. Sorbet is a static type checker developed by the Stripe team and designed specifically for Ruby. The motivation behind Sorbet stemmed from the growing complexity of production Ruby applications, where developers needed stronger guarantees and more scalable code quality tools than dynamic typing alone could offer. Jake Zimmerman is a software engineer at Stripe and leads development on Sorbet. He joins the podcast with Josh Goldberg to discuss his background, the challenges of typing in Ruby, the motivation behind Sorbet, its architecture, performance optimizations, and more. This episode is hosted by Josh Goldberg, an independent full-time open-source developer. Josh works on projects in the TypeScript ecosystem, most notably TypeScript ES Slint, the tooling that enables ES Slint and Prettier to run on TypeScript code. Josh is also the author of the O'Reilly Learning TypeScript book, a Microsoft MVP for developer technologies, and a live code streamer on Twitch. Find Josh on Bluesky, Mastodon, Twitter, Twitch, YouTube, and .com as Joshua K. Goldberg. Please click here to see the transcript of this episode. Sponsorship inquiries: sponsor@softwareengineeringdaily.com

For anyone curious about how the code running our world actually gets built, Software Engineering Daily offers a clear and consistent look behind the curtain. This isn't about hype cycles or surface-level news; it's a deep, technical conversation with the engineers, architects, and thinkers who are shaping our digital infrastructure. Each episode focuses on a specific technology, practice, or problem, breaking down complex systems into understandable parts. You'll hear detailed discussions on everything from database architectures and programming language design to the organizational challenges of scaling teams and the real-world trade-offs made in production systems. Hosted by softwareengineeringdaily.com, the podcast serves as a reliable source for developers who want to stay informed and inspired, translating the rapid pace of technological change into substantive, lasting knowledge. It’s for professionals who believe that understanding the "how" and "why" is just as important as knowing the "what." By dedicating time to thorough exploration, this podcast provides context that shorter formats simply cannot, making it an essential resource for anyone building the future, one line of code at a time. Tune in to hear unfiltered insights from the people on the front lines, discussing the tools and decisions that define modern software engineering.
Author: Language: en-us Episodes: 100

Software Engineering Daily
Podcast Episodes
Game Development on the PICO-8 with Johan Peitz [not-audio_url] [/not-audio_url]

Duration: 47:27
PICO-8 is a software-based gaming console for making, sharing, and playing small games with a retro aesthetic. It emulates the look and feel of 8-bit consoles, providing limited color palettes, screen resolutions, and me…
Running Doom in TypeScript with Dimitri Mitropoulos [not-audio_url] [/not-audio_url]

Duration: 1:01:25
Doom has seemingly been ported to every electronic device imaginable, including picture frames, lamps, and coffee machines. The meme of “it runs Doom” has become so widespread that it spawned the r/itrunsdoom sub-Reddit.…
Drone Warfare in Ukraine with Simon Shuster [not-audio_url] [/not-audio_url]

Duration: 55:13
Simon Shuster is a journalist who has reported on Russia and Ukraine for over 15 years, most of that time as a staff correspondent for TIME Magazine. He was born in Moscow, and he and his family came to the United States…
Radix UI with Chance Strickland [not-audio_url] [/not-audio_url]

Duration: 57:56
Radix UI is an open-source library of React components. Its “headless” primitives handle the complex logic and accessibility concerns—like dialogs, dropdowns, and tabs—while leaving styling completely up to the developer…
Building an Open-Source Laptop with Byran Huang [not-audio_url] [/not-audio_url]

Duration: 54:58
Byran Huang is a full stack developer who recently made headlines in the hacker space when he created the anyon_e, which is a highly integrated, open source laptop. The effort was a massive undertaking and showcased grea…
The Architecture of the Internet with Erik Seidel [not-audio_url] [/not-audio_url]

Duration: 51:46
The modern internet is a vast web of independent networks bound together by billions of routing decisions made every second. It’s an architecture so reliable we mostly take it for granted, but behind the scenes it repres…
Building AI Agents on the Frontend with Sam Bhagwat and Abhi Aiyer [not-audio_url] [/not-audio_url]

Duration: 58:08
Most AI agent frameworks are backend-focused and written in Python, which introduces complexity when building full-stack AI applications with JavaScript or TypeScript frontends. This gap makes it harder for frontend deve…
The X-Plane Flight Simulator with Ben Supnik [not-audio_url] [/not-audio_url]

Duration: 57:39
X-Plane is a popular flight simulator developed by Laminar Research. It features a first-principles physics engine, realistic aircraft systems, and a wide variety of aircraft. We wanted to understand the engineering that…