"Simple Made Easy" - Rich Hickey (2011)A Philosophy of Software Design | John Ousterhout | Talks at GoogleHow To Design A Good API and Why it MattersRailsConf 2014 - All the Little Things by Sandi Metz13 videos · 11 hr 8 min
Playlists

Talks every programmer should watch

Curated by Claude · 13 videos · 11 hr 8 min

These are the talks that turn up in thread after thread when someone asks what every programmer should see. None of them is a language tutorial. The list starts with Rich Hickey's Simple Made Easy, then moves through design and APIs, everyday code craft and testing, ways of thinking, and working with other people. It ends with two wider looks at the state of software.

Play all on YouTube
  1. 1
    Video frame: "Simple Made Easy" - Rich Hickey (2011)1:01:39

    "Simple Made Easy" - Rich Hickey (2011)

    Strange Loop Conference · Picked by 14 · 2022–2026

    The place to start: Hickey's split between simple (not intertwined) and easy (familiar) gives you a vocabulary for complexity that the rest of this list keeps using, and HN calls it a must-watch even if you never touch Clojure.

  2. 2
    Video frame: A Philosophy of Software Design | John Ousterhout | Talks at Google1:01:40

    A Philosophy of Software Design | John Ousterhout | Talks at Google

    Talks at Google · Picked by 11 · 2018–2026

    Ousterhout's hour on deep modules and managing complexity is HN's standard short version of his book, and a practical companion to Hickey's ideas.

  3. 3
    Video frame: How To Design A Good API and Why it Matters1:00:19

    How To Design A Good API and Why it Matters

    Google TechTalks · Picked by 12 · 2011–2025

    Joshua Bloch treats every programmer as an occasional API designer, and HN has called this the best resource on the subject since 2011.

  4. 4
    Video frame: RailsConf 2014 - All the Little Things by Sandi Metz38:47

    RailsConf 2014 - All the Little Things by Sandi Metz

    Confreaks · Picked by 15 · 2015–2025

    Moving from design to the code itself, Metz refactors a tangle of conditionals into small objects and explains why duplication is cheaper than the wrong abstraction.

  5. 5
    Video frame: "Making Impossible States Impossible" by Richard Feldman25:06

    "Making Impossible States Impossible" by Richard Feldman

    elm-conf · Picked by 9 · 2017–2026

    A short talk on shaping your data so that whole classes of bugs cannot happen; the examples are in Elm, but HN commenters say the ideas carry over to any typed language.

  6. 6
    Video frame: Ruby Conf 12 - Boundaries by Gary Bernhardt45:55

    Ruby Conf 12 - Boundaries by Gary Bernhardt

    Confreaks · Picked by 8 · 2015–2024

    The talk that introduced 'functional core, imperative shell', which HN recommends as a practical answer to how to test code without mocking everything.

  7. 7
    Video frame: 🚀  TDD, Where Did It All Go Wrong (Ian Cooper)1:03:55

    🚀 TDD, Where Did It All Go Wrong (Ian Cooper)

    DevTernity Conference · Picked by 11 · 2018–2024

    Cooper goes back to Kent Beck's original idea of testing behaviour rather than implementation details, and many commenters say it changed how they write tests.

  8. 8
    Video frame: Hammock Driven Development - Rich Hickey39:49

    Hammock Driven Development - Rich Hickey

    ClojureTV · Picked by 12 · 2014–2024

    From code to thinking: Hickey's case for stepping away from the keyboard and letting your background mind solve the problem, which HN treats as permission to think before you type.

  9. 9
    Video frame: Bret Victor - Inventing on Principle54:20

    Bret Victor - Inventing on Principle

    Rui Oliveira · Picked by 12 · 2013–2025

    Victor's live demos of tools that show results as you type, plus his argument for organising your work around a principle, left one commenter writing that it blew their mind.

  10. 10
    Video frame: Growing a Language, by Guy Steele53:31

    Growing a Language, by Guy Steele

    Bill Pugh · Picked by 11 · 2014–2026

    Steele makes his point about extensible languages by giving the talk in one-syllable words plus terms he defines as he goes, and HN calls it perhaps the best talk ever on the topic.

  11. 11
    Video frame: Google I/O 2009 - The Myth of the Genius Programmer55:17

    Google I/O 2009 - The Myth of the Genius Programmer

    Google for Developers · Picked by 5 · 2011–2024

    Software is a team sport: Fitzpatrick and Collins-Sussman make the case for humility, code review and sharing work early, and HN readers call it career-shaping.

  12. 12
    Video frame: "The Mess We're In" by Joe Armstrong45:50

    "The Mess We're In" by Joe Armstrong

    Strange Loop Conference · Picked by 10 · 2014–2025

    Erlang's co-creator gives a funny, opinionated tour of why software got so tangled, which HN still finds accurate years later.

  13. 13
    Video frame: Preventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)1:02:42

    Preventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)

    DevGAMM · Picked by 14 · 2020–2025

    The widest view to end on: Blow argues that knowledge gets lost between generations and that software quality is already slipping, and his talk is the usual link in HN threads on software decay.