When the abstraction works

Posted on in Web

Abstractions should be justified; without that, they’re just premature optimization.

I’ve been wondering why some designers and developers just get Utopia, and for others, it’s a slower burn. Anecdotally, it feels like folks working for, or with experience at creative agencies see the potential time & brain savings far quicker than their product counterparts. When your career has been defined by many short & sharp projects, you begin to understand which wheels are worth reinventing each time, and which can be abstracted without projects becoming cookie-cutter.

Those who work on design systems understand this—often borne out of frustration at repetition and a lack of consistency, a design system becomes a sensible abstraction and investment of time. But if you only work on one product, or even one vertical of one product, a foundational abstraction like Utopia may feel superflous, or even downright confusing. When 4px works, why complicate matters with var(--space-3xs)?

It’s like learning an A major scale vs. learning the intervals that make up the major scale. If all you’re playing is Wonderwall, the former may be sufficient. But by understanding the underlying music theory, you can jump to any project, even if it’s in E♭ major.

Posted on in Web