Most "learn to code" videos teach you to type along until something runs. That's fine for a start, but it leaves a gap: you can use a framework without knowing what it does underneath, and interviews, debugging and system design all live in that gap.

We keep a list of 60 free videos that close it. To make the list, a video had to explain how something works, still be correct today, and be recommended again and again by developers on Reddit and Hacker News. Many come from smaller channels, conference talks and university lectures that rarely show up in your feed.

Here are 18 of them, grouped by topic, with a level and one line on why each is worth your time.

JavaScript and the web

  1. JavaScript Visualized: Event Loop, Web APIs and Task Queues by Lydia Hallie Beginner
    A short animated explainer of how Web APIs, the task queue and the microtask queue work together. Watch it once and setTimeout and promises stop surprising you.

  2. Rethinking Reactivity by Rich Harris: Intermediate
    The creator of Svelte explains what "reactive" actually means and what the virtual DOM costs. Useful even if you never touch Svelte, because it changes how you think about every frontend framework.

Backend and databases

  1. Backend from First Principles by Sriniously: Beginner (playlist) HTTP, routing, auth, validation, caching and queues taught without tying them to one framework, so what you learn carries to any stack.

  2. Database Engineering by Hussein Nasser: Intermediate (playlist) ACID, indexes, partitioning, sharding and replication shown on real Postgres and MySQL. The best way to understand why a query is slow.

  3. 10 Things I Regret About Node.js by Ryan Dahl: Intermediate
    Node's creator walks through his own design mistakes: security, node_modules, the build system. It's rare to hear someone this honest about their own work, and you learn a lot about runtime design from it.

  4. Transactions: Myths, Surprises and Opportunities by Martin Kleppmann: Advanced
    What isolation levels really guarantee and how race conditions like write skew break real apps. It's by the author of Designing Data-Intensive Applications, explaining one of the book's most important topics in a single talk.

System design

  1. Harvard CS75 Lecture 9: Scalability by David Malan Beginner
    An old lecture that still covers the basics better than most "system design in 10 minutes" videos: vertical and horizontal scaling, load balancers, caching, replication and partitioning, with good analogies. (This is a re-upload of the Harvard lecture.)

  2. Distributed Systems Lecture Series by Martin Kleppmann: Intermediate
    (playlist) His Cambridge course in short videos: clocks, replication, quorums, consensus, Raft and CRDTs. The theory that most system design interview prep skips.

Computer science fundamentals

  1. Building an 8-bit Breadboard Computer by Ben Eater: Intermediate
    (playlist) He builds a working CPU out of logic chips on breadboards: clock, registers, ALU, RAM and control logic. After this, "the computer" stops being a black box.

  2. Simple Made Easy by Rich Hickey: Intermediate
    A famous talk on the difference between simple (not tangled) and easy (familiar), and why it matters for every design decision. Worth rewatching once a year.

  3. Graph Theory Playlist by William Fiset: Intermediate (playlist) BFS, DFS, Dijkstra, Bellman-Ford, topological sort and network flow, each animated and followed by code. A great next step once basic DSA feels comfortable.

Tools you'll use every day

  1. The Missing Semester of Your CS Education by MIT: Beginner (playlist) The shell, scripting, Vim, Git, debugging and profiling. MIT made this course because colleges rarely teach the tools you'll spend most of your working day in.

  2. Git for Ages 4 and Up by Michael Schwern: Beginner
    Branches, merges and rebases explained with Tinkertoys. Once you can picture the commit graph, Git commands start making sense instead of being memorised.

Security basics for web developers

  1. Cross-Site Scripting (XSS) Explained by PwnFunction: Beginner
    Reflected, stored and DOM XSS, animated, with how to defend against each. Short enough to watch before your next project goes live.

  2. How NOT to Store Passwords by Computerphile: Beginner
    Plain text, encryption, hashing and salting, and why only slow salted hashes are safe. Watch it before you build any login system.

AI, explained properly

  1. Deep Dive into LLMs like ChatGPT by Andrej Karpathy: Beginner How models like ChatGPT are pretrained, fine-tuned and improved, from someone who helped build them. If you use AI tools every day, this explains why they behave the way they do.

Career and working with people

  1. The Myth of the Genius Programmer by Brian Fitzpatrick and Ben Collins-Sussman: Beginner
    A Google I/O talk on why hiding your code until it's "perfect" holds you back, and how to share early, take criticism and grow. Especially useful for your first job.

  2. How to Speak by Patrick Winston (MIT): Beginner
    A classic lecture on explaining ideas clearly. It helps in interviews, demos and every time you need someone to understand your work.

How to get the most out of these

Pick one topic, not five. Watch two or three videos from the same section in a week instead of sampling everything.
Write down one thing from each video you didn't know before. That note is what you'll remember in an interview.
Rebuild something small. After the event loop videos, predict the output of a few setTimeout/Promise snippets. After the passwords one, check how your own side project stores them.
If you have an underrated video that taught you more than a paid course, share it in the comments. We read them all and add the good ones to the list.

We keep the full list, with a Watch here option, on Devpool's Resources page: DevPool Resources