One Truth, Many Views: Consistency through the Source of Truth Method

One Truth, Many Views: Consistency through the Source of Truth Method

One Truth, Many Views: Consistency through the Source of Truth Method

In this article, I break down the Source of Truth method and share why it's so essential. I'll walk you through examples to show how it maintains clarity by sticking to one "source of truth," making workflows smoother, and turning team collaboration into a breeze.

In this article, I break down the Source of Truth method and share why it's so essential. I'll walk you through examples to show how it maintains clarity by sticking to one "source of truth," making workflows smoother, and turning team collaboration into a breeze.

In this article, I break down the Source of Truth method and share why it's so essential. I'll walk you through examples to show how it maintains clarity by sticking to one "source of truth," making workflows smoother, and turning team collaboration into a breeze.

Riccardo Marconato

Jan 19, 2024

Riccardo Marconato

Jan 19, 2024

Riccardo Marconato

Jan 19, 2024

Today, I want to share a principle and methodology that are incredibly important and applicable to every aspect of your work and life.

To be honest, I haven't done extensive research to find an exact definition or a formal name for this methodology. So, I've decided to simply call it the "Source of Truth method".

Design Systems are powerful examples of the Source of Truth method, serving as the ultimate source of truth. Additionally, programming concepts like MVC (model-view-controller), database integration, or OOP (object-oriented programming), what I'm about to explain is much simpler at its core.

I truly hope it proves to be valuable to you.

How does the Source of Truth method work?

This method is based on a simple principle: each element is unique, like an ID, and cannot be repeated but only displayed in different ways.

For instance, I have a list of articles that I've written on Framer, and what you're reading is one of them. However, initially, I also had the same list of articles in Notion, which I regularly use.

The problem arises when I violate the rule of the Source of Truth Method. If I work on Notion and then copy the article to Framer, I end up with two articles instead of one. The issue is that any changes I make on Framer don't reflect in Notion, and vice versa.

So essentially, I had to delete one of the two lists (which is what I did) or use Zapier or other automation products (which didn't seem necessary to me).

By having only the articles on Framer, I can be certain that there are no duplicates, and I don't have to struggle to keep the two lists identical. In other words, having two copies of the same element doesn't make sense.

One source, Multiple Views

As previously mentioned, it is crucial to avoid having multiple copies of the same item. Each item is unique, analogous to an ID. However, in the context of a list of articles for my website, we have the flexibility to display the source multiple times while still adhering to this principle.

We can interpret this as having one source but multiple views. According to the Source of Truth method, it is vital for the views to be somehow dependent on the source. This does not imply that they are additional copies, but rather representations of the source.

The views can manifest in various forms. For instance, if the source is typically a database, the view could be a visual representation that retains the source's data without overwriting it, thereby preserving the integrity of the Source of Truth rule.

Design apps often incorporate this feature, similar to Figma's master component and its instances, or the links in Adobe programs. These tools allow for the expansion and exploration of different representations while maintaining a strong connection to the source.

Notion, an example of Source of Truth

Notion is a very good example of the Source of Truth method, the idea of one source and multiple views is beautifully realized in its database functionality.

Imagine that your source is a comprehensive database of tasks that you've created on Notion. This database is your "source", and it contains unique entries of every task you need to complete. However, the beauty of Notion's system allows you to create multiple views, which are essentially different ways to look at or interpret your source data.

For instance, you can have a Calendar View which displays your tasks for the week in a calendar format, giving you a visual representation of your schedule. Alternatively, you can opt for a Kanban View which organizes your tasks into different stages (like "Not Started", "In Progress", and "Completed"), simulating a project management board. Or perhaps you prefer a simple List View that presents your tasks in a straightforward, linear format. Despite the variety of views, the underlying data remains the same - one source, multiple views.

This concept perfectly aligns with the Source of Truth method, emphasizing the goal of having a single, unique source while allowing for different representations. It simplifies data management by avoiding duplications and enhances productivity by providing customized perspectives.

With this approach, you can effortlessly switch between views based on your needs, knowing that any changes you make will be reflected across all views, ensuring consistency and accuracy.

If you had 100 views with the same data from one source and had to manually update each view whenever you add or change data, it would lead to many errors.

Figma, Master Components and Instances

Figma and other UI tools demonstrate the Source of Truth method with Master Components and Instances. Designers can create a single Master Component, the "source", and generate multiple instances of it in their design.

These instances can be seen as different "views" of the master component. They can be customized and manipulated with overrides to meet specific design needs, such as changing colors, sizes, or even adding or removing elements.

However, even with these overrides, the connection to the master component remains intact. This means that any changes made to the master component will automatically apply to all of its instances, ensuring consistency and eliminating the need for manual updates. This mirrors Notion's approach to data management.

Similar to Notion, Figma's approach allows for flexibility and customization while maintaining a single source of truth. It simplifies the design process and enhances productivity, especially in large projects with recurring elements, as it enables designers to centrally manage these elements and ensure consistency across the entire project.

OOP, Object-Oriented Programming

Object-Oriented Programming (OOP) is a paradigm that organizes data into objects and the functions that can operate on these objects. It promotes greater flexibility and maintainability in coding through its key principles: encapsulation, inheritance, and polymorphism.

The concept of Source of Truth Method is deeply rooted in OOP. Just as OOP utilizes objects as reusable components throughout the program, Source of Truth Method employs master components to be used repeatedly across a design. In OOP, an object's methods can be invoked for different use cases while maintaining the object's core structure, much like the overrides in Source of Truth Method that allow unique customizations while keeping the connection to the master component.

Ultimately, Source of Truth Method, like OOP, centralizes control by maintaining a "single source of truth"—be it the master object in OOP or the master component in design systems. This approach not only ensures consistency but also significantly simplifies the process of managing and updating large systems.

Design Systems, the Source of Truth

Design Systems serve as a comprehensive guide to a project's visual and functional elements, ensuring uniformity across different platforms and products. They include a library of design elements—such as colors, typography, and components—and a set of standards for their use.

Design systems are invaluable for teams, as they streamline the design process, maintain consistency in user experience, and facilitate collaboration. Much like the OOP concept in programming, design systems maintain a "single source of truth" by establishing a central repository of design elements that can be reused and adapted across various parts of a project.

This approach enhances efficiency and coherence, thereby improving overall product quality.

As a believer in the Source of Truth Method, I naturally evolved into a Design Systems expert. With a strong understanding of Object-Oriented Programming principles, I adapted these concepts to design.

I'm experienced in designing reusable master components with design processes and approaches, which led me to explore the world of Design Systems. I've written a series of articles on this topic that you might find interesting. Check them out.

Cloud, your File Repository

Cloud (Mega, Dropdbox, Google Drive…) is a perfect example of the Source of Truth Method, as it enables easy and secure access to data on multiple devices. It acts as a universal source, ensuring a single version of truth. As the Source of Truth Method states, data can be accessed and edited from any device, making it even more convenient and efficient.

The cloud offers numerous advantages for both personal and professional use. For personal use, it simplifies file management and sharing, granting you access to your files from any device, anywhere, and at any time. Say goodbye to the worry of losing precious photos, videos, or documents, as they are safely stored in the cloud through the Source of Truth Method.

For professional use, the benefits are even more significant. The cloud fosters collaboration by enabling team members to access, edit, and share documents in real-time, seamlessly integrating with the Source of Truth Method. This facilitates quick decision-making, improves productivity, and minimizes the risk of errors and miscommunications.

The cloud provides scalability to businesses. As your business grows, you can effortlessly increase your storage capacity in the cloud, without the hassle of purchasing and maintaining physical servers. Moreover, the cloud operates on a cost-effective pay-as-you-go model, ensuring that you only pay for the storage space you require, in line with the Source of Truth Method.

The cloud has revolutionized the way we store and share data. It offers flexibility, scalability, and cost-effectiveness to meet both personal and professional needs, ensuring seamless connectivity and accessibility to your data.

If you're interested, I utilize Mega, a premier cloud service that stands out in the market, offering excellent features at competitive prices. It's definitely much better than Dropbox and Google Drive. Check Mega here: https://mega.io/pricing?aff=6yWLqs9dGbI

Why the Source of Truth Method is so important

The Source of Truth method offers significant benefits that streamline and enhance design and data management processes. Firstly, it introduces a single source of truth that eradicates inconsistencies, reduces errors, and ensures that all views are always up-to-date. This concept greatly reduces the potential for mistakes and helps maintain a clear, accurate representation of data or design elements across a project.

Secondly, the Source of Truth method fosters efficiency and productivity. By managing changes centrally, it eliminates the need for repetitive, manual updates, saving considerable time and effort. Furthermore, its flexibility allows for customization of individual views without compromising the underlying master element, fostering creativity and adaptability.

Finally, the Source of Truth method also enhances collaboration. With a single master component or data point that all team members can access and reference, it's easier to maintain a unified vision, coordinate tasks, and collaborate effectively. This approach can be particularly beneficial for large, distributed teams working on complex projects.

ABOUT THE AUTHOR

Riccardo Marconato

Product Designer specializing in seamless user experiences and Design Systems. Over 10 years of experience, multiple awards, and international project contributions.

ABOUT THE AUTHOR

Riccardo Marconato

Product Designer specializing in seamless user experiences and Design Systems. Over 10 years of experience, multiple awards, and international project contributions.

ABOUT THE AUTHOR

Riccardo Marconato

Product Designer specializing in seamless user experiences and Design Systems. Over 10 years of experience, multiple awards, and international project contributions.

Read More