Skip to content
ThorbisInterface Guidelines (opens in a new tab)

Quality

One focused chapter from the Thorbis interface research. 14 rules. Read the research index for every chapter and focused study.

Quality

This is Linear’s method, applied to a trades OS. Karri Saarinen wrote the rules; Tuomas Artman trained the team to see what doesn’t work. We keep them as law. Sources: The Linear Method (opens in a new tab), 10 rules for crafting products that stand out (opens in a new tab), Why is quality so rare? (opens in a new tab), and Quality Wednesdays (opens in a new tab).
  • Quality is the north star. Evaluate every decision by “does this improve quality?”, not “will this ship faster?” Speed is a byproduct of a small team that already knows the standard. Karri Saarinen , Why is quality so rare? (opens in a new tab).
  • The spec is the baseline, not the finish. Meeting the ticket is the start of craft. A job board that “works” and a job board a dispatcher will live in for eight hours are different products. Karri: “It’s easy to meet the spec. It’s harder to do the craft.”
  • Quality is not perfection. Start rough. Iterate toward polished with real operators. Defects are countable; excellence is not. Don’t hold a surface hostage waiting for a mythical last pixel. Karri, rule 6.
  • Reduce scope to raise quality. The simplest way to make something better is to do less of it, then do that part exceptionally well. A half-finished second view is worse than one view a dispatcher trusts. Karri, rule 8.
  • The best design is opinionated. Design for the operator in front of you. Broad flexibility is how products become mediocre. Purpose-built software does the heavy lifting; flexible software makes every team invent a workflow. Linear Method: purpose-built. Karri, rule 7.
  • No handoff. The person who shapes the surface stays on it through implementation. PM decides, designer visualizes, engineer builds, that assembly line is how quality dies. Connected teams, shared issues, engineers in the first design review. Karri, rule 3. Ryo Lu ships the same way at Cursor: the designer writes the interface.
  • Small teams, judgment over committees. Three to five people with taste beat a large review. Hire people who already show craft. Give them a standard, then get out of the way. Karri, rules 2 and 9.
  • Data is a crutch. A/B tests will not tell you the surface feels cheap. Talk to operators. Trust the sense of rightness. Metrics confirm; they do not invent taste. Karri, rule 10.
  • Papercuts every week. Quality is not an individual sport, you cannot see the defects in a UI you built. Tuomas Artman made this a Wednesday habit at Linear: each engineer finds and fixes one papercut (inconsistent 150ms fade, a row that jumps a pixel, a menu that isn’t keyboardable). Thirty minutes. Like brushing your teeth. Quality Wednesdays (opens in a new tab).
  • Bugs close in seven days. A known defect that sits is a decision to ship lower quality. Linear’s zero-bugs policy: fix it within a week. We keep the same clock. Tuomas Artman , Why we committed to a zero-bugs policy (opens in a new tab).
  • MVPs stay internal. Incomplete products are for us. Operators get a finished job, even if the job is small. Do not A/B a half-built dispatch board in the middle of the working day.
  • Build for the operator. Linear Method: build for the creators. Keeping the individual productive beats generating perfect reports. In Thorbis the creator is the dispatcher, the tech, the owner, not the admin reading a quarterly dashboard.
  • Say no to busywork. The tool works for the operator, not the other way around. Remove or automate work-around-work. Don’t invent terms: a project is a project, a job is a job. Principles & Practices (opens in a new tab).
  • Decide and move on. There isn’t always a best answer. Make the call, ship, watch an operator use it, correct. Momentum over deliberation. Linear Method: create momentum, don’t sprint.

I built this for the dispatcher at 7 a.m., the tech in a crawlspace, and the owner closing the books. Quiet chrome. Precise work. I’m still learning. These are the notes.

Applied bookmark research

Reviewed 2026-09-06. These examples reinforce the existing owners; they do not introduce another visual style or claim the product behavior is implemented. Read the 26-source review and access limits.

Make the task easier, not the screen busier

A feature can look complete while the dispatcher still has to reconstruct context or wait for unrelated content.

Start from one person, interruption, and completed task. Keep the current job and its next action usable while optional evidence arrives. Treat the real constraint as part of the brief, not something polished away afterward.

Thorbis example. For assigning a tech, show the job, relevant availability, and the consequence of the assignment. Do not make the dispatcher traverse a marketing-style sequence or a new shell to finish a routine task.

Verify. Walk through the task with representative long and missing records. Check that the essential action remains understandable when optional content is slow or unavailable. Record the result rather than claiming a performance improvement without measurement.

Do not import. No additional shell, feature hero, framework migration, or new dependency. Keep the approved surface role.

Open the product skill · Evidence: Design Engineer Principles; How we think about design; Component Architecture for React Server Components

Preserve the place as the collection grows

Large customer, property, and inspiration collections become expensive to navigate when every inspection loses the current place.

Treat filters, selected records, scroll, and Back behavior as part of the task. Loading a child or optional panel should not reset the whole collection. A saved reference includes enough context to be useful when revisited.

Thorbis example. Open a property from a filtered customer list and return to the same filter and position. On the inspiration wall, reserve the media footprint and retain source credit even when the preview is unavailable.

Verify. Try refresh, Back and Forward, a direct record link, an empty result, a failed preview, and a long collection. Check that late data does not overwrite a draft or move the action under the pointer.

Do not import. No unbounded eager media, private information in shareable URLs, or a local-only storage promise borrowed from Copper.

Open the ecosystem skill · Evidence: 7 Principles of Rich Web Applications; Component Architecture for React Server Components; Philosophy; Copper

Loading search…

Loading search. You can close this message and keep reading.