The Case for Learning at the Point of Execution
By Mitch Hazelhurst ·
Every developer has done this: you hit a concept you don't understand, so you open a new tab. You Google it, find a blog post or a Stack Overflow answer, read for five minutes, then switch back to your code. By the time you're back, you've lost your train of thought. The context you built up is gone.
This is context-switched learning, and it's how almost all developer education works today. Courses, documentation, tutorials, bootcamps — they all require you to leave the place where you work to go to a place where you learn.
It doesn't have to be this way.
Why context switching kills learning
Cognitive science has a clear finding: learning is most effective when it happens in context. When the material is directly relevant to a problem you're solving right now, retention goes up dramatically. When it's abstract and disconnected from your work, most of it evaporates within hours.
Traditional developer education ignores this. You take a course on system design, then go back to building a CRUD app. You read about concurrency patterns, then spend the day writing React components. The knowledge exists in a vacuum, disconnected from the moments where it would actually be useful.
The result is a learning industry that generates completion certificates but not competence. Developers finish courses and can't apply what they learned because they learned it in the wrong context.
The case for in-flow learning
What if learning happened at the exact moment you needed it? Not in a separate tab, not in a 40-minute video, not in a course you'll forget by next week. Right here, in your terminal, while you're looking at the code that prompted the question.
This is what “point of execution” learning means. The teaching surfaces when you're actively working with the concept. Your AI agent just implemented a retry mechanism with exponential backoff? That's the moment to learn why exponential backoff matters, what the alternatives are, and when you'd choose a different strategy.
The context is already loaded in your head. The code is in front of you. The problem is real, not hypothetical. This is when learning sticks.
What in-flow learning requires
You can't just bolt a chatbot onto a terminal and call it in-flow learning. Real contextual education requires several things that don't exist in traditional tools:
Awareness of what you're working on. The tool needs to understand your code, your project structure, and what just changed. Generic explanations aren't contextual.
Memory of what you already know. Teaching the same concept twice wastes time. Skipping concepts you haven't seen wastes opportunity. The tool needs a model of your understanding.
Timing that doesn't break flow. Interrupting a developer mid-thought is worse than not teaching at all. Insights should surface in natural gaps: while your agent thinks, before you accept a plan, after a diff lands.
Adaptation to your level. A senior engineer switching to Rust needs different explanations than a bootcamp grad encountering async for the first time. One-size-fits-all teaching is no-size-fits-anyone teaching.
Pear's thesis
This is the thesis behind pear. Developer education shouldn't happen in a classroom, a course platform, or a documentation site. It should happen in the terminal, at the moment of execution, adapted to what you're building and what you already understand.
Pear watches your code, tags concepts, tracks your knowledge, and teaches you in the gaps between actions. It's not a course. It's not a chatbot. It's a learning system that lives where you work.
The best time to learn something is when you need it. The best place to learn it is where you're using it. Everything else is a compromise.