Dead Code

Jared Norman
Dead Code
Latest episode

64 episodes

  • Dead Code

    The Slop Slope (with Daniel Fichtinger)

    10/2/2026 | 43 mins.
    Jared interviews CS and cybersecurity grad student Daniel Fichtinger about “slopware” in open source. These are projects, often boosted by AI, that perform legitimacy with buzzwords, emoji feature lists, templates, donation links, and sweeping claims, while the underlying code is messy, over-scoped, or not actually delivering what the README promises. Daniel argues the issue is not simply “bad code” or “used AI,” but honesty, scope, and whether the maintainer can explain and maintain the work. Good projects make a strong first impression through humility, clear boundaries, and sometimes explicit limitations or alternatives. They reframe “gatekeeping” as community maintenance, a social contract of not wasting others’ time, using a gardening metaphor where slop spreads like weeds and harms beginners most by teaching bad patterns. Daniel describes stopslopware.net as a linkable educational response to repeated spammy posts and offers rehab steps: rewrite your README yourself, then incrementally replace AI-generated parts until you genuinely understand and can stand behind the whole project.

    Links:

    stopslopware.net
    ficd.sh
    Daniel’s blog
    Lobsters
    The XY Problem
    Motherfucking Website
    Crafting Interpreters
    Codeberg

    Dead Code Podcast Links:

    Mastodon
    X

    Jared’s Links:

    Mastodon
    X
    twitch.tv/jardonamron
    Jared’s Newsletter & Website

    Episode Transcript
    Hosted on Acast. See acast.com/privacy for more information.
  • Dead Code

    Zero Specificity (with Stephen Margheim)

    27/1/2026 | 49 mins.
    Jared talks with Stephen Margheim about a “missing” middle layer in modern design systems: reusable CSS affordances that sit between Tailwind utilities and full components. Stephen shares how building a no-JavaScript half-star rating input (radio buttons + labels + SVG + careful hover/layout CSS) reinforced his bias toward solving problems with the smallest toolset to avoid incidental complexity and to make solutions portable across frameworks. That philosophy leads to his critique that components are a poor vehicle for purely visual styles because they bundle structure, behavior, and aesthetics in ways that are hard to reuse—so instead, teams should name and standardize visual signals like “button” as composable classes that can apply to many semantic HTML elements. He explains how Tailwind can support this via custom utilities (@utility), tree-shaking, autocomplete, variants, and low-specificity defaults using :where(), and argues a four-layer approach—tokens → utilities → affordances → components—helps teams maintain design systems and progressively drop JavaScript as the web platform adds more native UI primitives (dialog, popover, details/name, etc.).

    Links:

    fractaledmind.com
    Web Awesome
    Font Awesome
    Tailwind: Introducing Catalyst
    Catalyst docs
    shadcn/ui
    daisyUI
    Tailwind docs: Functions & directives
    MDN: :where() selector
    MDN: Popover API
    MDN: CSS anchor positioning
    MDN: <dialog> element
    MDN: Invoker Commands API
    MDN blog: Exclusive accordions with <details name>
    web.dev: Interop 2026 proposals
    Ruby on Rails
    SQLite

    Dead Code Podcast Links:

    Mastodon
    X

    Jared’s Links:

    Mastodon
    X
    twitch.tv/jardonamron
    Jared’s Newsletter & Website

    Episode Transcript
    Hosted on Acast. See acast.com/privacy for more information.
  • Dead Code

    IDE-cide (with Samir Talwar)

    13/1/2026 | 46 mins.
    In this episode, Jared is joined by Samir Talwar to talk about why “programming peaked” and how the developer experience has arguably regressed over the last 15 years—from losing powerful IDE refactoring workflows to the ways pull requests can turn into delayed integration. They dig into what teams lost when testing became “everyone’s job,” why reviews often get stuck in surface-level diff commentary, and how pairing (with rotation) can restore earlier feedback and shared context. They also get into infrastructure trade-offs: containers and Let’s Encrypt are huge wins, but Kubernetes and other “Google-scale defaults” can add heavyweight complexity for teams that don’t actually need it.

    Links:

    Samir Talwar (site)
    “Programming Peaked” (Samir’s post)
    Language Server Protocol (LSP)
    Visual Studio Code
    Vim
    Continuous integration (Martin Fowler)
    Extreme Programming (XP)
    Pull requests (GitHub docs)
    Kubernetes
    Docker
    Let’s Encrypt
    Mastodon

    Dead Code Podcast Links:

    Mastodon
    X

    Jared’s Links:

    Mastodon
    X
    twitch.tv/jardonamron
    Jared’s Newsletter & Website

    Episode Transcript
    Hosted on Acast. See acast.com/privacy for more information.
  • Dead Code

    Death From Algorithm W 1978 (with Sabine Schmaltz)

    30/12/2025 | 38 mins.
    Jared talks with Sabine Schmaltz, an OCaml Developer Advocate at Tarides, about how she went from learning Standard ML in a demanding university course to getting hired for an OCaml role despite only having written “Hello, World,” and what she’s building now: FeedMansion, a tool to improve multi-account social posting and make OCaml community content more engaging with better summaries/teasers. Sabine explains her pragmatic stack—an OCaml backend using the minimalist Dream framework, a SolidJS frontend, and OCaml-based static site generation with MLX (a JSX-like approach that gives type-checked HTML)—and notes that OCaml’s syntax can feel foreign, which is part of why projects like Reason/ReScript help. They dig into where the real friction is today: not OCaml itself, but managing LLM-assisted coding responsibly, dealing with tooling/documentation transitions (like keeping agents on Dune instead of older opam-first guidance), and handling cases where LLMs stumble—such as complex typed database queries—where she used OCaml’s PPX system to generate safer code. The conversation widens to community building via FUN OCaml (Berlin 2024, Warsaw 2025, planning 2026), what’s new in OCaml (multicore support and effect handlers), the value and risk of AI-generated open source contributions, and Sabine’s advice for introducing OCaml at work: start small, choose problems where OCaml shines (DSLs/codegen, reliable services), and help the ecosystem by open-sourcing missing building blocks like API clients.

    Links:

    Hindley–Milner type system
    Standard ML
    OCaml
    ReScript
    ReasonML / Reason
    Tarides
    X/Twitter: @sabine_s_
    GitHub: @Sabine
    Bluesky: @sabine.sh
    Dream (OCaml web framework)
    SolidJS
    MLX (.mlx / JSX for OCaml)
    TyXML
    Opam
    FUN OCaml
    ICFP (International Conference on Functional Programming)
    OCaml Workshop 2025
    Semgrep

    Dead Code Podcast Links:

    Mastodon
    X

    Jared’s Links:

    Mastodon
    X
    twitch.tv/jardonamron
    Jared’s Newsletter & Website

    Episode Transcript
    Hosted on Acast. See acast.com/privacy for more information.
  • Dead Code

    Deferred Conflict (with Steve Klabnik)

    16/12/2025 | 43 mins.
    Jared interviews Steve Klabnik (Rust author and longtime OSS contributor) about JJ (Jujutsu), a newer version control system that can operate on Git repos via pluggable backends so you can adopt it locally without forcing teammates to switch, while getting a simpler, more flexible workflow. Steve explains JJ’s core shift: no staging/index—your working copy is effectively a mutable commit you shape as you work, making it easier to split, squash, and rewrite history without juggling Git’s extra layers and flags, and even “stash” becomes just more visible commits. He highlights JJ’s stable change IDs (so you can refer to work even as hashes change), its conflict model where rebases complete immediately and mark conflicted commits for later resolution (great for many parallel branches), and features like jj absorb (auto-placing review fixes into the right earlier commits) and jj undo (a full operation history that makes experimentation feel safe). Steve also teases work on a JJ-native collaboration/review product inspired by Gerrit-style patch workflows.

    Links:

    Jujutsu (jj) on GitHub
    Jujutsu docs
    Steve’s Jujutsu tutorial
    “I see a future in jj” (Steve Klabnik)
    East River Source Control (ERSC)
    jj CLI reference
    jj absorb
    jj undo
    Working with Gerrit (jj docs)
    Git commit “trailers” / metadata
    Git hooks
    Git LFS
    Perforce Helix Core
    Sapling SCM
    Mercurial
    GitButler
    The Rust Programming Language (“The Book”)
    Steve Klabnik’s site
    why the lucky stiff (Wikipedia)

    Dead Code Podcast Links:

    Mastodon
    X
    Jared’s Links:

    Mastodon
    X
    twitch.tv/jardonamron
    Jared’s Newsletter & Website

    Episode Transcript
    Hosted on Acast. See acast.com/privacy for more information.

More Technology podcasts

About Dead Code

The software industry has a short memory. It warps good ideas, quickly obfuscating their context and intent. Dead Code seeks to extract the good ideas from the chaos of modern software development. Hosted on Acast. See acast.com/privacy for more information.
Podcast website

Listen to Dead Code, Lex Fridman Podcast and many other podcasts from around the world with the radio.net app

Get the free radio.net app

  • Stations and podcasts to bookmark
  • Stream via Wi-Fi or Bluetooth
  • Supports Carplay & Android Auto
  • Many other app features
Social
v8.5.0 | © 2007-2026 radio.de GmbH
Generated: 2/13/2026 - 6:06:55 PM