Canvas Tasks

Why the Last 30% of a Side Project Stalls

Published · Canvas Tasks

It's a quarter to ten on a Wednesday night, and the app you've been building since April runs on your phone. It has worked, more or less, for six weeks. The list of what's left is eleven lines long — finish onboarding, polish settings, fix the sync edge cases, fill in the store's privacy form — and you open it after work, read the first line, move a button four pixels to the left, and close it again.

Nothing on the list got shorter.

The last stretch of a side project stalls because the work changes kind, not because you stopped caring about it. The first seventy percent is mostly making: new screens, new chapters, something visible at the end of every session. What's left is mostly judging and closing — testing, fixing edge cases, rewriting, settling the decisions you put off, packaging the thing so someone else can use it. Judging asks for fresher attention than the tired evenings the making used to get. Closing suits those evenings but rarely gets them, because it never looks like progress. The way through is to relabel what's left by the attention it needs, give each kind the hours that suit it, and write one sentence that says when you're done.

The project that's almost done

A project that's almost done has its own kind of evening. In the early weeks, an hour after work produced something you could point at: a screen that wasn't there yesterday, a feature that finally worked. The hour ended with proof. In the last stretch, the same hour ends with nothing that looks like progress. You tested something and found it mostly worked. You looked at two layouts and didn't pick one, then reread the onboarding text four times and changed a comma.

That evening feels like you've stopped caring, and mostly you haven't. What changed is how the work pays. Making pays as you go: every session leaves a mark. Finishing — the judging and closing — pays at the end, and only if the decisions inside it actually get made. Without the running payment, the sessions shrink — first to twenty minutes, then to opening the project and closing it — and the project sits at almost done for a month.

The same thing happens to someone writing a book alongside a job. The first draft is making, and it grows every evening it gets. Revision is judging and submission is closing, and both tend to inherit the late slot the draft was written in. Work that only pays off when it lands behaves this way in general: progress stays invisible until the day it's finished.

A row of cream index cards runs across a wooden desk, each sketched with a few faint lines; the last three are different — a small teal card and two narrow slips with a checkbox drawn on each — and a hand holding a pencil has stopped right where the row changes.
The same row of cards. The end of it is a different kind of card.

Making, judging, and closing

Work on a project comes in three kinds, and the mix changes as the project ages. Making adds something that wasn't there: a screen, a feature, a chapter, a first draft of anything. Judging decides what stays — testing, comparing, cutting, rewriting, and settling the questions you deferred while you were making. Closing finishes things for good, in steps with no decisions left in them: uploading the build, formatting the manuscript to a template, filling in the submission form, pressing publish.

Early on, a project is mostly making, and making is forgiving about when it happens. A tired evening can still produce a rough screen or six hundred words, because you can pick up where the last session stopped and the result is visible either way. The schedule that grows around a side project — after dinner, after the house goes quiet, whatever is left of the day — grows around making.

The last stretch is mostly judging and closing, and that schedule fails each of them for a different reason. Judging done in a tired hour tends not to hold. A layout picked at ten at night is usually picked to end the evening rather than to settle the question, so the next time you look at it the reasons aren't there, and the decision gets made twice.

Closing is the other way round: it suits a tired hour, with no decisions in it to reopen, and still rarely gets one. A closed item makes the list shorter but leaves the thing you're making looking as it did the day before, and months of making have taught you to read progress only in the thing itself. So the tired evening skips fill in the store's privacy form and goes to the top line instead: finish onboarding, which sounds like making and is usually a judgment in disguise. The button in the opening scene was a layout question, reopened.

The work didn't get harder; it changed kind, and the hours you give it didn't change with it.

Route the last stretch by kind

Moving a stalled project again means routing what's left by kind: each item gets a label, and each label gets the hours that suit it. It takes the list you already have, a pen, and four rules.

  1. Relabel every line that's left. Mark each remaining item as making, judging or closing. Last-stretch lists are usually written in making words — finish onboarding, polish chapter nine — which hide what the work asks for. A line holding two kinds is two items, and splitting it is often the first real movement in weeks, because the next sitting starts from a line that can be finished.

  2. Turn postponed decisions into items of their own. Judging hides inside vague lines because the decision was never written down. Decide: password or magic link can be finished in a fresh twenty minutes; polish sign-in can't, because nobody can say when it's done. A decision on the list is also one you can see you've made.

  3. Give judging your freshest hour and closing your tired ones. A decision you can't explain the next morning gets made again, so judging goes wherever fresh time turns up, even half an hour on a Saturday. Each decision leaves closing steps behind it, and closing is the work a tired evening is good for. Measure those evenings in lines crossed off, not in changes to the thing itself.

  4. Write the finished sentence, then cut what it doesn't need. Say in one sentence what will be true when you stop: The app is on the store and the link has gone to three friends. Every remaining item either serves that sentence or moves to a later version. Without one, the list keeps growing, because something can always be better. It's naming the finished state, applied to a whole project.

With a notebook, this is a letter beside each line and one sentence at the top of the page. The rule that does the most work is the third: the other three reshape the list, but only the third changes what happens on Wednesday night. A stalled project is often less short of hours than of the right hour for the item in front of it. A Saturday is only where fresh time tends to turn up; what makes an hour fresh is the energy you actually have, and some weekday evenings have that too.

"But isn't this just the 90-90 rule?"

The ninety-ninety rule is the best-known description of the last stretch, and it is about time. Attributed to Tom Cargill of Bell Labs and popularized by Jon Bentley in 1985, it goes: "The first 90 percent of the code accounts for the first 90 percent of the development time. The remaining 10 percent of the code accounts for the other 90 percent of the development time" (Wikipedia). It is a warning about estimates, and a fair one. What it doesn't tell you is what to do with Wednesday night.

Closer to the point is James Stanier's essay on finishing, which describes the ending of a project as "like landing, demanding a completely different kind of skill and attention" (Landing the plane). That is the same diagnosis. The essay is written for engineering managers, and its prescriptions fit that seat: protect the scope, check in more often, favour checklists over heroics, shield the team from new requests.

A side project has nobody to coordinate with. The person who makes the decisions, does the closing and supplies the hours is the same person, at the end of the same day. Scope still needs cutting, but there's no one to protect it from except yourself. What a solo project can still adjust is which kind of work gets which hour. That choice weighs more alone than on a team: most of a side project's hours come after a full day, so the few fresh ones are worth placing with care.

How Canvas Tasks handles the last stretch

This is where Canvas Tasks comes in. Every task carries an energy level — High, Medium or Low — and a nature: Creative, Thinking or Work, with Unclassified for anything not yet sorted. Both can be changed from the task's details, so relabelling means opening each remaining item and setting both: the nature for the kind of work, and the energy for how much it needs, which answers rule 3's question of a fresh hour or a tired one. The three kinds above map loosely onto the natures: making is usually Creative, judging is usually Thinking, and closing usually belongs under Work, the app's label for routine and administrative tasks.

Switch the task view to the matrix and, by default, tasks are laid out with energy as rows and nature as columns. The tired evening then has an address: the Low row, Work column. So does a fresh half hour: High, Thinking. Instead of asking which line on the list to face, the view shows the two or three that fit the hour you actually have.

In Canvas Tasks, a project has a Finished state field: one line, for the sentence in rule 4. The project can be completed before every child task is done: Complete project moves it to the Completed shelf with its child tasks kept, and it can be restored later, so what the sentence left out is still there when you come back for the next version.

The Stalled badge is there so a project doesn't sit at almost done for a month without you noticing. It appears when none of the project's child tasks has changed for about two weeks, not counting the days off you've set, and it watches the list, not the clock: time logged with the app's focus timer or by hand leaves it in place, while splitting an item or crossing one off clears it.

One honest limit: projects, and with them Finished state and the Stalled badge, are part of Pro. Relabelling tasks and the matrix view are free.

None of this makes the last stretch shorter. It gives each piece of it a label, and an hour that suits it.

Frequently asked questions

Should I set a deadline to force myself to finish?

A date can help, but put it on the finished sentence, not on the list of fixes. A deadline tells you how much time is left; it doesn't tell you which hour suits which item, so a dated polish list stalls the same way an undated one does. If the date slips, that's a reason to shorten the sentence, not to work later.

What about the new ideas that keep showing up near the end?

They are making work, arriving exactly when the project needs judging and closing, which is why they feel so attractive. Write each one down somewhere outside the current version and leave it there until the finished sentence is true. Parking an idea is a decision about when, not about whether — it keeps the thought without reopening the scope.

Does this work for writing a book alongside a job?

The shape is the same. Drafting is making; revision is judging — what stays, what goes, which version of a scene is right; formatting and submission are closing. It's easy to keep giving revision the late, tired slot that drafting tolerated. Moving it to a fresh hour, even a short one, is often what gets a stuck manuscript moving again.

Keep reading

A single sheet of paper divided by one horizontal rule: the upper half holds three ruled lines with a small tally mark counting them in the margin, the lower half holds three identical lines with no tally and no number anywhere beside them.

A Maybe Is Not a Miss

Published

You stop putting what you want to do on today's list, because anything on it reads back as unfinished tonight. Give optional work its own accounting.

Read article
Three index cards lie in a row on a desk beneath a wall calendar whose first cells are shaded and whose last four are blank: the first card is ruled into three empty boxes across its width, while the other two carry a single empty box at the far end — nothing is ticked on any of them, and only one of them is behind.

Being Behind Is a Judgment, Not a Measurement

Published · Updated

Your tracker says you're behind. It measures how much of the period has gone and how many items are ticked — calling the gap between them behind is a judgment.

Read article
A single index card lies face-down on a desk, the work on it hidden, while the paper calendar propped behind it still shows Friday ringed in teal — the card was turned over, the ring wasn't touched.

Putting a Task Aside Shouldn't Move Its Deadline

Published · Updated

You pushed it out of sight for later, and the date moved too. Snoozing a task and changing its deadline are two decisions — here's how to separate them.

Read article
Four shallow wooden frames — different woods, different widths — stand in a row on a desk, each holding a cream sheet ruled with the same four short lines, and a hand lowers the last sheet, its lines in teal, toward the empty frame — the frame is new, the arrangement isn't.

Before You Switch Task Managers, Name What Broke

Published · Updated

Most complaints about a task manager are really about assumptions every task manager makes. Here's how to tell which problems a different app can fix.

Read article
A notebook page ruled with five marks down the left edge, leaving four empty spaces between them, while a hand holds one teal card upright against the page — taller than the space it would have to fit, with the rest still stacked and unplaced.

Put the Fixed Points First — Work Gets the Gaps

Published · Updated

Never enough time in the day for what actually matters — usually because work went on the page first. Place what can't move, then fit work into the gaps.

Read article
Three blank papers of clearly different sizes lie in a row on a wooden desk — a large folder, a mid-sized card, a small note — and a hand sets a single teal card into the middle position — the size that can actually be finished is the one in between.

"Ship the App" Is Not a Task — Getting Task Granularity Right

Published · Updated

The line that's sat on your list for months usually isn't one you're avoiding — it's a bundle written as a task. How to tell a bundle from a unit from a step.

Read article
A desk at the end of the evening, lit by a warm lamp: a hand calmly tucks a single teal card between the pages of a nearly closed notebook while a few finished cards lie face-down nearby — the open question gets a place to wait, so the evening is allowed to close.

What Keeps You Awake Isn't Working Late — It's What You Left Open

Published · Updated

"Don't work before bed" is unusable when the evening is your only work time. What keeps you up is the question you left open, not the fact that you worked.

Read article
A desk on two consecutive mornings: on the left a page crowded with carried-over items and red marks, on the right a clean blank page with a single card set on it, a hand calmly beginning — the day that was missed stays behind, and this morning starts empty.

Missing One Day Shouldn't Reset You to Zero

Published · Updated

You don't quit on the day you miss — you quit the next morning, when the system hands you a bill. How to build a day you can return to without paying interest.

Read article
A wall rack holding many blank cards in neat rows, a desk tray in front of it with just three cards drawn from it, and a hand calmly standing one teal card on its own stand — the inventory stays whole; what gets narrowed is the choosing.

When You Can't Start, Shrink the List to One

Published · Updated

Too much to do and no idea where to start? The count isn't what stops you — being asked to choose one every time you open it is. Separate choosing from doing.

Read article
A wall board of blank paper tiles for the week, tidy on the left and drifting out of alignment toward the right, while a hand calmly sets a single teal tile into an open slot on the one-day tray below — the week drifts, the day gets decided.

Why Time Blocking Falls Apart (and What to Do Instead)

Published · Updated

Time blocking asks you to predict what state you'll be in on Thursday at 2pm. Why the grid breaks by Tuesday, and how to plan order ahead but times on the day.

Read article
A wall calendar where most days carry a small checkmark, one day is simply blank, and a hand calmly adds today's check — the blank day costs one day, not the record.

Habit Trackers Fail Because Misses Pile Up

Published · Updated

Streaks turn one missed day into a broken record, and the what-the-hell effect does the rest. Here's how to track habits so a miss costs exactly one day.

Read article
A person at a desk picking one card from three stacks with different energy levels — choosing the task that fits their current energy.

Why You Can't Start Your To-Do List — and How Energy-Based Task Management Fixes It

Published · Updated

Some days you have time and no energy. Energy-based task management picks by the state you are in — tasks labeled by the energy and nature they need.

Read article
A few task-cards resting upright on a wooden shelf, a hand gently setting one more card down — a restful place to park tasks.

Tasks You're Not Ready For Don't Have to Rot on Your List — Try Incubating

Published · Updated

You're not going to do it this month, but deleting it feels wrong — so it sits there. Incubating is a third state: parked, with zero upkeep until you're ready.

Read article