Weâve all been there. You open a file you havenât touched in weeks and think:
âWhat was I doing here?â
Future-you is just another teammate â and if you donât leave them context, theyâll waste hours retracing your steps.
My dad, a precision sheet metal mechanic, taught me this early. When reality didnât match the blueprint, he updated the schematic right on the bench. Not just for the next worker â but so he himself wouldnât forget what adjustment had to be made. He was leaving breadcrumbs.
Software developers need the same practice.
Too often, our context gets lost in Jira tickets or Slack threads. A vague // TODO is no better â it doesnât carry the âwhyâ or the âwhatâs next.â
Instead, think of breadcrumbs as lightweight, in-place reminders of context:
- A TODO with metadata like
status:started priority:high. - A short markdown task file in the repo describing whatâs blocked.
- A note that links to a design decision or experiment.
These breadcrumbs do three important things:
- Future-you reloads context in minutes, not hours.
- Teammates pick up where you left off without guessing.
- AI tools like Copilot generate better code when they can âseeâ the trail of decisions.
Hereâs a quick example:
â Vague breadcrumb:
// TODO: fix this
â
Helpful breadcrumb:
// TODO: Handle null user when API fails
// status:started priority:high blocked:onAuthRefactor
Now when you or a teammate return, you know exactly whatâs going on â and so does Copilot.
Leaving breadcrumbs isnât overhead. Itâs respecting context â for yourself, for your team, and for the tools youâll use tomorrow.
Thatâs the idea behind Imdone. It makes leaving and managing these breadcrumbs natural, so context always travels with the code.
What about you? What breadcrumbs do you leave for your future self in code?
Top comments (1)
Another great article about Context Driven Development: Leaving Breadcrumbs for Your AI: The Hansel and Gretel Approach - DEV Community