Video summary

Jonathan Blow on the algorithm for becoming a great programmer

Main summary

Key takeaways

Wellness and Self-Improvement

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.
  • 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.

Productivity / growth algorithm (as described)

  1. Think of programming tasks you’d enjoy.
  2. Choose one that’s challenging but doable.
  3. Work on it (expect it to be a bit harder than you thought).
  4. Observe what beliefs helped vs. hurt.
  5. Learn and then pick the next similar project.
  6. 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.

Pro

Translate summary in another language

Pro

Ask questions to this video

Chat for follow-up questions, clarifications, and source-backed answers.

Coming soon

Share this summary

Original video