The Mental Game of Python - Raymond Hettinger [synced version]

Tech Ma2 HN recommenders · 2020–2026
24K views · talk · evergreen · Uploaded 2019-12-04

Raymond Hettinger's PyBay 2019 talk on the mental strategies he uses when programming in Python, such as chunking, solving a simpler related problem, and repeating tasks manually until patterns emerge. This version is re-synced with the slides.

HN recommends it as an entertaining talk on how working memory shapes code and how to reduce cognitive load.

Watch on YouTube

3 comments from Hacker News

@sireat2020 · in “List of YouTube channels for improving web development and programming skills”

Raymond Hettinger is such a treasure! He keeps things simple and in the process you actually learn. I tend to overload the registers when teaching and students do not learn as much. All teachers know the feeling when students eyes glaze over, something that is so much harder to detect in the age of Zoom and Teams. PS [VIDEO] there is a sync fixed version of the talk

RecommendsView on HN
@skimdesk2022 · in “Coding and Confusion”

Raymond Hettinger gave an entertaining talk [0] on a related topic. He taled about how the working memory limits are reflected in code, and how we can reduce the necessary cognitive load of understanding a piece of code. [0] [VIDEO]

RecommendsView on HN
@zahlman2026 · in “Everything old is new again: memory optimization”

> It's a bit cleaner. That's pretty much the reason why. Raymond Hettinger explains the philosophy well while discussing the `random` standard library module: [VIDEO] I feel like much of this has been forgotten of late, though. From what I've seen, i's really quite hard to get anything added to the standard library unless you're a core dev who's sufficiently well liked among other core devs, in which case you can pretty much just do it. Everyone else will (understandably) be put through a PhD thesis defense, then asked to try the idea out as a PyPI package first (and somehow also popularize the package), and then if it somehow catches on that way, get declined anyway because it's easy for everyone to just get it from PyPI (see e.g. Requests). I personally was directed to PyPI once when I was proposing new methods for the builtin `str` . Where the entire point was not to have to import or instantiate anything.