Share

Dead Code
Advent of Weird Ruby Code
In this episode of Dead Code, Jared Norman and guests Andrew, Sofia, and Senem discuss their experiences with Advent of Code, an annual programming challenge with Christmas-themed puzzles. They share how the challenge fosters creativity, improves coding skills, and allows for unique problem-solving approaches, particularly using Ruby’s powerful tools like Tally and each_cons. The group reflects on their goals, from practicing domain-driven design and test-driven development to simply having fun writing unconventional code. Jared highlights his focus on creativity over competition, streaming his solutions on Twitch, while the guests explore how Advent of Code inspires learning outside their day-to-day work.
Links:
TRICK (The Ruby International Obfuscated Code Competition)
Dead Code Podcast Links:
Jared’s Links:
More episodes
View all episodes
50. Rage Quit Stamina Theory
47:42||Ep. 50The 50th episode of the Dead Code Podcast brought Karl Weber, Jared Norman, Benjamin Wil, Sofia Besenski, and Noah Silveira together to mark the milestone with sharp, funny, and critical takes on the state of tech. They skewered CEOs bragging about AI-driven layoffs as short-sighted profiteering, questioned the hype fueling the AI bubble, and praised Ruby and Rails for extending developers’ “rage quit stamina” despite flaws in error reporting and dependency management. The group emphasized the importance of empathetic, fast code reviews and smaller PRs, arguing that culture and collaboration matter more than mythical “10x developers.” They also critiqued DHH’s claim that executives should be the least busy, framing it as privilege disguised as wisdom, while pointing out that rest and balance benefit everyone. The episode captured their signature mix of humor, industry critique, and camaraderie, closing with gratitude for 50 episodes and excitement for what’s next.Links:Giveaway: Anarchy Agile hats — enter at jardo.dev/anarchyagile“CEOs Are Publicly Boasting About Reducing Their Workforces With AI” – FuturismThe Pragmatic Engineer 2025 Survey: What’s in your tech stack? Part 1“Two Simple Rules to Fix Code Reviews” – The Pragmatic Engineer“In Praise of Normal Engineers” – Charity Majors, Honeycomb“Executives Should Be the Least Busy People” – David Heinemeier HanssonDead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript49. Radiation Hardened (with Dave Gauer)
01:02:42||Ep. 49In this episode of Dead Code, Jared interviews Dave Gauer, creator of the Ziglings project—a whimsical, hands-on tutorial for learning the Zig programming language. Dave shares how Ziglings began as a personal learning tool and grew into a widely loved resource, especially among younger developers. He emphasizes the value of learning in public, blending humor, accessibility, and bite-sized challenges to make complex systems programming concepts less intimidating. The conversation also explores Dave’s deep interest in the Forth language, the appeal of small, self-contained “microworlds” for learning, and his broader philosophy on sharing work, embracing whimsy, and building things that make programming joyful and approachable.Links:ZiglingsZigRustlingsForth ColorForthAlpine LinuxLynx browserWhy’s (Poignant) Guide to RubyLearning PerlThe Little SchemerMindstorms by Seymour Papert Steal Like an Artist by Austin KleonRatfactor.com – Dave Gauer’s personal website and blog.Forth in Space (section on Ratfactor) – Dave’s notes on how Forth has been used in radiation-hardened chips and space tech.Dead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript48. Epistemic Extinction (with Mond)
33:29||Ep. 48In this episode of Dead Code, Jared and guest Mond explore how James C. Scott’s concepts of legibility, metis, and episteme apply to tech interviews, arguing that standardized hiring processes prioritize what’s easy to measure over what truly reflects engineering skill. They critique the over-reliance on algorithmic interviews, noting that senior engineering work often depends on tacit knowledge—metis—that can’t be captured in rubrics or LeetCode problems. The conversation touches on Goodhart’s Law, the risks of over-optimization, and how attempts to make human processes more legible through metrics can backfire. Jared shares how his company experiments with more realistic code assessments, though both acknowledge the challenges of scaling less standardized approaches. They conclude by warning that technological standardization of social systems, like hiring, can entrench flawed norms and obscure what actually matters.Links:James C. ScottSeeing Like a StateLegibility (as a concept)Goodhart’s LawThe Cobra EffectLeetCodeYAMLMond’s Blog – Here Comes the MoonDead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript47. Naked and Semantic (with Fabien Basmaison and Jens Oliver Meiert)
41:31||Ep. 47In this episode of Dead Code, Jared speaks with Jens Oliver Meiert and Fabien Basmaison, co-maintainers of CSS Naked Day, a long-standing web tradition that invites developers to strip CSS from their websites for one day to emphasize semantic HTML, accessibility, and the separation of concerns in front-end development. Originally launched in 2006, the event encourages developers to reflect on the underlying structure of their sites and how well they function without styling. Meiert and Basmaison discuss how modern tools like Tailwind, CSS-in-JS, and component-based design both challenge and occasionally align with the event’s philosophy, and they explore reasons for the decline in participation, from increased reliance on frameworks to the rise of AI-assisted development. Looking ahead to the 20th anniversary in 2026, they hope to inspire more developers to join in, even in small ways, as a reminder of the enduring value of accessible, maintainable, and standards-based web design.Links:Jens' BlogCSS Naked DayCSS Zen GardenFrontend DogmaPandaDocDead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript46. Eat Your Greens (with Ivo Anjo)
49:55||Ep. 46In this episode of Dead Code, Jared interviews Ivo Anjo, a Ruby performance expert at Datadog, about Ruby’s concurrency model and his work improving visibility into it. They discuss the Global VM Lock (GVL), which simplifies Ruby’s internals but hinders multithreading, and explore the promise and current limitations of M:N scheduling, now partially implemented via Ractors in Ruby 3.4. Ivo created the gvl-tracing gem to visualize thread behavior and uncover subtle bugs, advocating for a more intelligent, OS-like scheduler to improve performance fairness. He also shares insights from building Datadog’s always-on production profiler and his direct-bind gem, which allows low-level access to Ruby internals when official APIs fall short. Overall, the episode highlights a growing movement of developers modernizing Ruby’s internals and pushing past its reputation for being slow.Links:gvl-tracingdirect-bindStackProfrbspyRactorsYJITRubyConfRubyKaigiEuRuKo 2025Dead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript45. Herbicide (with Marco Roth)
29:04||Ep. 45In this episode of Dead Code, Jared talks with Marco Roth about Herb, a new fault-tolerant parser for HTML and ERB designed to improve the developer experience in the Rails ecosystem. Unlike tools like Deface or Nokogiri, Herb doesn’t auto-correct or mask errors—it parses templates exactly as written, enabling better diagnostics, formatting, and linting for server-rendered views, especially in Hotwire, Turbo, and Stimulus contexts. Built in C for portability and speed, Herb can be used across Ruby, JavaScript, and browsers via WebAssembly. Marco created it after running into limitations with existing tooling while building the Stimulus LSP. Future plans include deeper integration with tools like Ruby LSP and possibly enabling LiveView-style reactive rendering in Rails. Developers can try it today via a VS Code extension or the interactive web playground.Links:DefaceSpreeSolidusNokogiriRuboCopPrismHerbHerb PlaygroundHerb VS Code ExtensionHotwireTurboStimulusStimulusReflexPhoenix LiveViewRuby LSPEpisode 10 with Kevin Newton on PrismEpisode 38 with Carson Gross on HTMX Dead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript44. Coffee Grindcore (with Alan Ridlehoover)
38:47||Ep. 44In this episode of Dead Code, Jared talks with Alan Ridlehoover, Senior Engineering Manager at Cisco Meraki, about managing software complexity through clear abstractions and thoughtful design. Using a metaphor of a vending-style coffee machine, Alan explains how complexity often arises not from algorithms but from code that’s hard to understand due to excessive abstraction or poor structure. He emphasizes focusing on the readability of what’s directly in front of you, using tools like flog and the ABC metric to quantify complexity, while also trusting gut instinct and applying heuristics like Sandi Metz’s five-line rule. Alan discusses minimizing over-engineering, favoring well-named private methods over inline comments, and stresses that code and commit messages—not comments—should tell the story. He also introduces “rehydration,” the process of adding back duplication to reveal better abstractions, helping developers make their code more maintainable and easier to change over time.Links:Flog (Ruby)ABC MetricGerritDRY Principle (Don’t Repeat Yourself)Domain-Driven Design (DDD)PolymorphismDead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript43. Wish Granted (with Scott Werner)
27:52||Ep. 43In this episode of Dead Code, Jared chats with Scott Werner, CEO of Sublayer, about his experimental AI web framework, Monkey’s Paw—a Ruby-based tool that uses natural language prompts to generate web pages, embracing LLM “hallucinations” as a creative feature rather than a flaw. Designed to bring back the playful spirit of early Web 2.0, Monkey’s Paw allows developers to prototype ideas quickly and unexpectedly, often resulting in delightful, unintended features like auto-generated tooltips. Scott explains how the project reflects a broader shift toward ephemeral, AI-assisted development and introduces Sublayer, his minimal agent framework built for AI generation. Both Jared and Scott agree that while LLMs may not produce enduring art, they offer fun, whimsy, and new ways to experiment in coding, highlighting how these tools can be valuable outside of pure productivity or profit-driven goals.Links:Monkey’s PawSublayerArtificial RubyWorks on My Machine (Substack)WebsimTRICK CompetitionRails GeneratorsPowerPoint CopilotDead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript42. Pickaxe Resurrection (with Noel Rappin)
39:13||Ep. 42Short-Form Summary:In this episode of Dead Code, host Jared chats with Noel Rappin, Staff Engineer at Chime and co-author of the updated Programming Ruby (“The Pickaxe Book”), about revitalizing Ruby’s most iconic reference. Rappin explains that despite claims Ruby is “dead,” it’s still widely used by startups and major companies like GitHub and Shopify. He took on the update to bridge the gap between Ruby 2.0 and 3.3, modernizing the book to reflect new features like pattern matching and changes in the ecosystem, while keeping it relevant for today’s developers, many of whom are coming from JavaScript, Python, or Java. They discuss the balance between Ruby’s flexible syntax and emerging norms via tools like RuboCop, the cautious use of metaprogramming, and how Ruby’s expressive power still stands out. Rappin hints at a future Ruby 4 update and encourages developers to embrace Ruby’s strengths, especially for teams valuing agility and clarity.Links:Noel RappinDave ThomasProgramming Ruby (The Pickaxe Book)why’s (poignant) Guide to RubyBundlerRuboCopStandardRBRactorsPattern Matching in RubySorbetRBSSteep Dry-typesSinatraRSpecConcurrent RubyFibersDead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript