Video summary
Jonathan Blow on the algorithm for becoming a great programmer
Main summary
Key takeaways
Key strategies / advice from the subtitles
-
Use an “enjoyment + challenge” selection rule
- Pick programming projects you think you’d actually enjoy.
- Choose something challenging, but not so hard that you couldn’t finish it.
-
Build skill through repetition (iterative practice)
- After finishing/working through a project:
- Learn from what was difficult.
- Repeat the process: pick the next slightly-challenging, enjoyable thing to build.
- After finishing/working through a project:
-
Do projects that force real learning
- Example mindset: even if you haven’t done much in a domain before, you can get better by attempting ambitious-but-manageable technical work (e.g., building a game engine).
-
Track your own beliefs and update them
- During each attempt, notice:
- What you believed would work at the beginning.
- Which beliefs turned out true/helpful.
- Which beliefs were false/distracting, leading to “mess.”
- Use that feedback to improve your approach next time.
- During each attempt, notice:
Productivity / growth algorithm (as described)
- Think of programming tasks you’d enjoy.
- Choose one that’s challenging but doable.
- Work on it (expect it to be a bit harder than you thought).
- Observe what beliefs helped vs. hurt.
- Learn and then pick the next similar project.
- Repeat until you get “good” quickly.
Presenters / sources
- Jonathan Blow (speaker)
Rate this summary
Your feedback will help improve summaries.
Improve this summary
Reprocess with a stronger model when the summary feels incomplete or inaccurate.
Translate summary in another language
Ask questions to this video
Chat for follow-up questions, clarifications, and source-backed answers.