LLenny's Podcast
← All frameworks
InnovationKarri Saarinen (co-founder, designer, CEO)

Ship-Ugly-Then-Polish Craft Loop

Combine shipping fast with fixing fast: get rough builds in front of real users, reserve polish for general release.

Difficulty
Moderate
Time to result
~weeks to results
Steps
3
Confidence
93%

Most teams treat craft as up-front perfectionism, which paralyzes shipping. Linear inverts it: build a rough version, ship it internally-only in week one, let a small opt-in customer group test the janky version, then apply heavy polish only at general release. Craft becomes the tension between pushing things out very quickly AND improving them very quickly, not perfecting before launch.

Origin

Karri Saarinen's operating method at Linear, contrasted with the 'perfection mindset' he argues makes it hard to ship anything.

Core principles

  • 01You understand how a feature should work only once you start building it, not while designing it in isolation
  • 02Shipping fast and polishing to perfection are opposite ideas that must be deliberately combined
  • 03Rough is acceptable while a thing is explicitly unfinished; polish is non-negotiable at general release
  • 04Early testers must opt in and know it's unfinished, so jankiness reads as 'early' not 'low quality'

How to run it

  1. 1

    Ship it internally after a week of rough design

    Once you have some design ideas in place, put the feature into the app and ship it to production visible only to your own team so you can test it live.

    Pro tip Don't spend tons of time up front designing and polishing perfectly; the building phase reveals how it should actually work.

  2. 2

    Recruit a small opt-in customer cohort to co-build

    Find one to ten customers (often a large company for enterprise features) willing to use the unfinished feature and give feedback as it evolves.

    Pro tip For features you can't fully imagine, partner with a real company who will explain how they actually do the workflow, the way Linear did with Vercel on the roadmap feature.

    Watch out Tell testers explicitly it isn't finished so a janky experience is understood as early-stage, not as your quality bar.

  3. 3

    Gut-check and hold the release at general availability

    Before the full public release, a founder or head of product goes into the product, tries different states and edge cases, and pulls back the release if it feels off.

    Pro tip Testing real content lengths and states surfaces janky animations and scroll bugs that look fine in a demo.

    Watch out Delays here are usually days, not a full redo; if it becomes a redo you scoped the rough version wrong.

In the wild

Threaded comments held back at release

The threaded-comments feature looked good in demos, but when Karri tried different message lengths the animations were janky and the screen didn't scroll right. He captured the issues and sent them to the team.

They pulled back the release until the execution issues were fixed, then shipped.

Roadmap feature co-built with Vercel

Vercel wanted changes to the roadmap feature, so Linear worked directly with them, shipping improvements and taking feedback along the way rather than designing in isolation.

The feature was shaped by a real large-company workflow instead of guesswork.

Common mistakes

Perfecting before shipping

A perfection mindset means nothing is ever fully perfect, so nothing ever ships; you must pair high standards with a bias to push things out and fix them quickly.

Exposing unfinished work without framing it as unfinished

If early testers aren't told it's a work-in-progress, the janky experience becomes their perception of your quality bar instead of a temporary state.

Is it for you?

Best for

Founders and product teams who want high craft but keep stalling on shipping because nothing feels polished enough

Not ideal for

Regulated, safety-critical, or irreversible-launch contexts where a rough public version carries real risk

From the transcript

we don't want to spend tons of time up front just like designing it and polishing it perfectly because we actually believe that when when…

09:00

just like put it into the app and like ship it to production but only visible to us so we internally can test it out

09:00

we should be always pushing things out very quickly but then like also fixing them like improving them very quickly so it it's almost like…

11:30

I started see like oh sometimes the animations are kind of janky

34:30

so we had to like kind of pull back the release a little bit until those things were fixed

35:00

From the episode

Inside Linear: Building with taste, craft, and focus

Karri Saarinen (co-founder, designer, CEO)