A platform capability is done when it is used

Blue gondola cars on a cable above the treetops and red roofs of the San Diego Zoo

Ben Linders at InfoQ wrote up a KubeCon Europe talk by Eugenia Bergman and Hagen Tonnies on what changes when an internal platform is run as a product. The line I keep is Bergman's definition of done: a capability is only truly done once it is adopted and relied upon by its intended users. Tonnies adds what that takes, which is active enablement, storytelling, education, and some internal evangelism, because nobody adopts a thing they have not heard of. It also offers a diagnostic I like: if two teams need a recurring meeting to coordinate, the interface between them is not well defined.

The talk is about infrastructure platforms. I think every word of it applies to a component library, which is the platform most front-end organizations run without calling it one.

A library team ships a component and calls it done. Six months later three product teams have built their own, because they never heard of the shared one or could not make it fit, and nobody asked. By the talk's definition, that component was never done. It was published.

My view is that a library team should track adoption the way a product team tracks it: which components are used, by whom, and which ones were built around. The second list is the roadmap. And the enablement work, the demos and the migration help, is not overhead on top of the engineering. It is the part that makes the engineering count.

How does your design system team know whether a component is actually used?

Photo source: https://photos.robertstowe.com/san-diego