An expert's eyes move differently through code than a novice's. The question is whether showing that difference to the novice helps.
Kuang, Söderberg, Wang, and Höst (arXiv:2603.19855) build GazePrinter, a tool that visualizes expert gaze patterns and overlays them on a codebase for novice developers. In a study with 40 novices, those using GazePrinter navigated code closer to the paths experts took, with indications of reduced time and cognitive load.
What's transferred is not knowledge but attention. The expert doesn't annotate the code, explain the architecture, or mark important functions. They just look at it — and where they look, and in what order, becomes the signal. The gaze recording captures something that documentation misses: the expert's implicit model of which parts of the code matter, revealed through the allocation of visual attention rather than explicit judgment.
This works because code comprehension is not primarily a reading problem but a navigation problem. A novice facing an unfamiliar codebase doesn't lack the ability to understand individual lines. They lack the ability to decide which lines to read first, which files to jump to, which call chains to follow. The expert's gaze is an efficient tour through a complex space — it skips the irrelevant, lingers on the structural, and chains across files in an order that builds understanding incrementally.
The mechanism is joint attention — the same developmental process that lets infants learn what matters by tracking where adults look. The infant doesn't need to understand why the adult looks at the cup rather than the table. Following the gaze creates shared focus, and learning follows from shared focus. GazePrinter does the same thing with code: follow first, understand later.
The limitation is also clear. Expert attention is shaped by expert goals. An expert debugging a specific issue looks at code differently than one doing a general review. The gaze pattern that helps one novice might mislead another pursuing a different task. Attention is context-dependent — what was efficient for the expert's purpose may not transfer to the novice's purpose.