← Back

Decide when to stop designing before you begin

You may be familiar with Pareto principle of 80/20, where 80% of results come from 20% of efforts. If you aren’t careful, chasing that last 20% could waste not just your time, but also the work you’ve already done. Here’s how to overcome it: embrace constraints.


Design is an iterative discipline. You can’t do something once and call it a day. Even if it was done right and it works, it’ll be far from good. So, we’ve learned how to iterate quickly, how to fix things, improve, touch up and polish. However, this comes at a cost.

Just like with cooking, if you spend too much time seasoning and perfecting your dish, it may come out overcooked, too salty, or worse: cold, making it inedible. You’ll throw it away and start from scratch because cooking is a one-way street: you can’t hit a magic ‘undo’ button.

So what do you do to make a dish just right? You may want to set a time limit on your preparations, or on the number of ingredients you use, or even decide on a specific set of techniques to cook it with to ensure the final result is good but not overdone.

In essence: define what it means for your dish to be done.

For example, I like my eggs runny, so I will add them to a pot of cold water before setting it on a stove, then set a timer to 100 seconds the moment water begins to boil. This process delivers consistently reproducible results each time: eggs come out perfectly runny. Not too soft to be undercooked, not too hard to crumble.

I imposed a specific limit on the length of the cooking process.

We can apply the same principle to design. Don’t think about the end result, rather focus on a set of rules you need to consider something “good enough to ship”. After all, “perfect” is the enemy of “done.”

An example could be a piece of homepage copy you’ve meant to work on. You know what to write about, but when should you stop? Are there any universal rules or guidelines you can follow? What methodology could lead you to a copy you can ship today or tomorrow?

Let’s say it’s a short copy, a paragraph introducing a new coffee brand. The goal is to hook visitors into reading the rest of the page.

Here’s a few examples of design constraints based on the task above:

  • Put an arbitrary limit on the length of your copy; i.e: write no more than three short sentences;
  • Define a finite feedback loop; i.e: three edits followed by three critiques from people for each edit.
  • Put an arbitrary time limit on the final deliverable: today, tomorrow, a week; then stick to it no matter what. This will make you work more efficiently.

When asking for feedback on most things, I often use this tried and tested approach from @julian:

“Ask several people to rate your intro from 1 to 10 on how interested they are in reading more. Don’t let them choose 7—that’s a cop-out. They have to decide between 6 (meh) or 8-10 (good).” — Julian Shapiro

There are plenty more constraints you can add to the mix to ensure you don’t spend too much time polishing your copy, design, or frontend code.

Ask yourself “what does ‘done’ look like for this task?” and set clear boundaries before you begin. You may save yourself from getting stuck in a seemingly infinite perfection loop.