Maintaining a successful open source design community

Rachael Petrie
PatternFly
Published in
4 min readJan 28, 2020

Just two words — “open source” — communicate so much.

Open source software is designed to be publicly accessible. Anyone can see, modify, and distribute the code as they see fit. This philosophy can also apply to the design process of the user interface (UI). User experience (UX) is better when it’s in the open because knowledge is shared and diverse perspectives are brought to every design. This is especially apparent in open source design communities.

An open source design community is built on the foundation of collaboration and transparency. It’s a community based on the idea that a design should be made freely available and may be redistributed and customized.

And it has one vision: Create designs thoughtfully, involving a variety of voices and ideas, and bring the best ideas into the finalized design.

Creating a community that fosters this collaborative innovation requires daily practices and structure that are constantly at work behind the scenes. In fact, open source software is hailed for better quality than proprietary software for a couple of reasons: meritocracy and transparent code.

Meritocracy

Meritocracy is one of open source’s strongest tenets. Meritocracy rewards the best ideas — regardless of where or who they come from. The best ideas shepherd in the best results, and in the case of an open source design community, the best designs.

Transparent code

With open source, users can quickly respond to problems by offering transparent code. In other words, the source code is accessible in the active open source community. That means plenty of people check and approve it all the time.

“Think of it as living code, rather than code that is closed and becomes stagnant.”

Red Hat

Because more people are involved with the code, it becomes better naturally. From a designer’s standpoint, the functionality of the UI is improved as well.

One example of an open source design system is PatternFly, where we work every day to hear and support the ideas of others, channeling these ideas into designs that can apply to user interfaces (UIs) all over the world. So let’s explore exactly how this is done.

Community contributions

On the PatternFly site, you’ll find countless features called components. Components, like buttons and alerts, can be assembled together to build applications. The user has everything they need to get started, including tutorials.

Under the hood, the open source magic happens.

Using GitHub, PatternFly’s open source design community takes in issues and contributions so that new features are introduced, bugs are repaired, and the system continues to improve for users.

And the collaboration just keeps growing.

The community responds by sounding back: “I also have this use case, and here is what I would like the design to accomplish” or “I don’t have this use case, but I do need this feature to apply to another use case.” At this point in time, developers should be included to provide feedback on what approaches are feasible and appropriate for the design system. In GitHub and at times face to face, the design discussion continues. When the design is completed, it is ushered through both HTML and React development where other contributors offer their technical expertise to make the feature a reality.

Collecting feedback

Feedback doesn’t end once the contribution process is over. When maintaining an open source design system, feedback is critical at every phase of the design and development process.

If you’re considering managing an open source design system, feedback oftentimes becomes your greatest opportunity.

How do you field feedback?

The structure of a rubric or template can help lead your design reviews. By using a rubric, resolutions become clearer to stakeholders.

You can collect feedback in a multitude of ways, but here are a few examples of how we collect feedback for PatternFly.

  • Review the design early and often: Bring the design review to the next level using open source methods.
  • Seek inclusive feedback: Surface the design to stakeholders from a variety of backgrounds who work on a variety of products.
  • Seek retroactive feedback: Always be ready to field and take in issues even after the design is created and implemented.

From here, the feedback loop continues by getting out the word and sharing the news.

Sharing the news

The success of an open source design system depends on sharing the news — in other words, be transparent. Did you introduce a new feature? Make a change to your meeting schedule with contributors? Create a helpful new resource, such as a tutorial for your users? Get the news out.

Use your social media channels and post immediately. Create a forum for your community conversation. Send out updates to your mailing list. Or even start a Medium publication to share content about your design system as well as thought leadership articles.

You have endless options to communicate with your users. PatternFly has accomplished this by hosting a monthly community meeting that brings contributors and interested parties up to speed on new features, research, and community projects.

Inform users. Otherwise, you run the risk of leaving out the people that matter most: the members of your open source community.

Communication is everything

For an open source design community and project, communication is everything. Whether it’s seeking feedback, incorporating feedback, or sharing the news, there are countless ways to help connect your users to your design system. Using and promoting an open source design system and community opens the door for better designs and a deeper connection with the people who matter most: your users.

--

--

Rachael Petrie
PatternFly

Interaction designer. Boston based. Writing for PatternFly.org, an open source design system built to drive consistency and unify teams.