A Daily Coding Habit
Write code on most days as a matter of routine rather than intention, and keep doing it through busy weeks.
This is a starting point — make it yours
Use this goal to build your own roadmap — tailored to you and starting fresh.
Weeks 1-2: show up
The only target is turning up. Do not aim for progress yet — aim for a streak of trivially small sessions, so the habit forms before the difficulty arrives.
Set your minimum viable day at fifteen minutes~0.25h
Fifteen minutes of any code counts: a bug fix, a kata, a config tweak. This is the version you do when you are ill, exhausted or busy.
The minimum is the whole mechanism. Plans without one collapse the first time life interferes, because a missed day feels like a failed plan.
Done when: you have written the minimum down somewhere visible and said it aloud.
Anchor the session to something you already do~0.5h
"After I make coffee, I open the editor." Choose an existing daily event as the trigger rather than a time — times slip, routines don't. Pick the earliest workable anchor; the day gets less controllable as it goes on.
Done when: you have a written cue in the form "after X, I will code for fifteen minutes".
Remove the friction before you need to~1h
Editor open on the right project, terminal ready, a note saying what you were doing last. Every second between the cue and the first keystroke is a chance to not start.
Done when: you can go from cue to typing code in under thirty seconds.
Do the minimum every day for two weeks~3.5h
Fifteen minutes. Do not extend it even when it is going well — stopping while you still want to continue is what makes tomorrow easy. Tick it off here each day.
Done when: fourteen days have passed and you did the minimum on at least eleven.
Weeks 3-6: make it stick
Begin this phase only once opening the editor feels automatic. If you are still deciding each day whether to code, stay in phase one — escalating early is what breaks habits.
Write the restart rule before you need it~0.5h
Decide now what happens after a missed day, while you are not feeling guilty about one. Something like: "one missed day is fine and I do the minimum tomorrow; two in a row means I shrink the minimum until it's boring."
Missing a day is normal and predictable. The damage comes from what people conclude about themselves afterwards.
Done when: the rule is written down and you have read it once after actually missing a day.
Raise the floor to thirty minutes on weekdays~8h
Only if the fifteen-minute version has been genuinely automatic for two weeks. Weekends stay at the minimum — a habit that demands the same of a Sunday as a Tuesday tends to lose both.
Done when: four weeks at the new level, with the fifteen-minute minimum still available on bad days.
Keep one small project as the default thing to work on~2h
The largest daily cost is deciding what to do. One ongoing project removes it — you resume rather than choose. Leave a one-line "next up" note at the end of every session.
Done when: three weeks pass without a session spent deciding what to work on.
Review the fortnight and adjust one thing~1h
Look back at which days you missed and why. Adjust exactly one variable — the anchor, the length, or the project — not all three. Changing everything at once tells you nothing about what worked.
Done when: you have named the most common reason for a miss and changed one thing in response.
Weeks 7-12: make it useful
The habit exists. Now point it at something you care about, without letting ambition break the routine that got you here.
Pick one goal the daily session serves~1h
A project to finish, a language to learn, a codebase to contribute to. Ambition is now safe because the habit no longer depends on it.
Done when: the goal is written down and today's session moved it forward.
Add one longer weekly session~15h
Two to three hours once a week, for the work that genuinely cannot fit in thirty minutes — refactors, setup, hard debugging. Keep it separate from the daily habit so that missing it doesn't threaten the streak.
Done when: six weekly sessions have happened.
Survive one deliberately disrupted week~2h
A holiday, a deadline week, illness. Run the fifteen-minute minimum and nothing more. Coming back from disruption without ceremony is the skill that decides whether this lasts a year.
Done when: a disrupted week has happened and you resumed the following week without restarting from scratch.
Write down what you'd tell someone starting this~1h
Three months in, you know things you did not at the start. Write them down — it is the clearest possible evidence that the habit produced something, on a day when it does not feel like it has.
Done when: the note exists and names at least one thing you were wrong about.
Keeping it
A habit does not finish. This phase is about making it durable rather than making it bigger.
Set a monthly review you will actually do~1h
Fifteen minutes, once a month: what got built, what the habit cost, whether the anchor still works. Life changes and the cue that worked in January may be gone by June.
Done when: three monthly reviews have happened.
Plan the holiday version now~0.5h
Decide in advance what happens over a two-week break: pause deliberately with a set restart date, or run the minimum. Both work. What fails is leaving it undecided and drifting.
Done when: the plan is written, with a specific restart date.
Cut the habit back once, on purpose~2h
Deliberately return to the fifteen-minute minimum for a week while nothing is wrong. It proves the floor still works and breaks the belief that only the big version counts.
Done when: a week at the minimum has happened by choice, not by circumstance.