# source of truth

Published articles for source of truth.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Rise of the Knowledge Engineer

DevFeed: [Rise of the Knowledge Engineer](<https://devfeed.tech/articles/rise-of-the-knowledge-engineer-33664.md>)

Original publisher: [Read original article](<https://www.mintlify.com/blog/knowledge-engineer>)

Author: David Isquick

Published: 2026-09-16T00:00:00Z

Content type: article

Language: en

Sources: [Mintlify Blog](<https://devfeed.tech/sources/mintlify-blog.md>)

Topics: [Documentation](<https://devfeed.tech/topics/documentation.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [AI-assisted coding](<https://devfeed.tech/topics/ai-assisted-coding.md>), [Users](<https://devfeed.tech/topics/users.md>)

Tags: [agents](<https://devfeed.tech/tags/agents.md>), [ai](<https://devfeed.tech/tags/ai.md>), [ai-trends](<https://devfeed.tech/tags/ai-trends.md>), [api](<https://devfeed.tech/tags/api.md>), [developers](<https://devfeed.tech/tags/developers.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [knowledge-base](<https://devfeed.tech/tags/knowledge-base.md>), [operational](<https://devfeed.tech/tags/operational.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>), [support](<https://devfeed.tech/tags/support.md>), [workflows](<https://devfeed.tech/tags/workflows.md>)

### AI overview

The article examines the rise of the knowledge engineer as companies increasingly serve AI agents that read documentation, compare products, solve support problems, and perform tasks. It argues that organizations need operating systems and processes to keep knowledge accurate, accessible, consistent, and retrievable, because incorrect information can spread through generated code, support responses, and automated workflows.

### Source excerpt

Agents are one of the largest audiences for company knowledge, accounting for 66% of measured web traffic across documentation powered by Mintlify. The emerging role responsible for keeping that knowledge accurate and retrievable is the knowledge engineer.

## Design tokens: The building blocks of a design system

DevFeed: [Design tokens: The building blocks of a design system](<https://devfeed.tech/articles/design-tokens-the-building-blocks-of-a-design-system-33521.md>)

Original publisher: [Read original article](<https://www.aha.io/engineering/articles/design-tokens-the-building-blocks-of-a-design-system>)

Published: 2026-08-18T00:00:00Z

Content type: article

Language: en

Sources: [Aha! Engineering Blog](<https://devfeed.tech/sources/aha-engineering-blog.md>)

Topics: [Design system](<https://devfeed.tech/topics/design-system.md>), [ui](<https://devfeed.tech/topics/ui.md>), [CSS](<https://devfeed.tech/topics/css.md>), [consistency](<https://devfeed.tech/topics/consistency.md>)

Tags: [atomic](<https://devfeed.tech/tags/atomic.md>), [component](<https://devfeed.tech/tags/component.md>), [css](<https://devfeed.tech/tags/css.md>), [design](<https://devfeed.tech/tags/design.md>), [design-system](<https://devfeed.tech/tags/design-system.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>), [structure](<https://devfeed.tech/tags/structure.md>), [tokens](<https://devfeed.tech/tags/tokens.md>), [ui](<https://devfeed.tech/tags/ui.md>), [variables](<https://devfeed.tech/tags/variables.md>)

### AI overview

This article explains how design tokens provide a shared language for visual design attributes in a scalable design system. It contrasts tokens with hard-coded values, describes primitive and semantic tokens, and discusses using the Design Tokens Community Group standard to connect design and engineering.

### Source excerpt

Implementing a design system at scale is often less about the pixels and more about the language we use to describe them. As a Senior Software Engineer at Aha! I've spent a lot of time thinking about how we can build a UI that is not only beautiful,

## What are the best platforms for network automation?

DevFeed: [What are the best platforms for network automation?](<https://devfeed.tech/articles/what-are-the-best-platforms-for-network-automation-30880.md>)

Original publisher: [Read original article](<https://www.rogerperkin.co.uk/faq/what-are-the-best-platforms-for-network-automation/>)

Author: Roger Perkin

Published: 2026-07-24T08:25:02Z

Content type: article

Language: en

Sources: [Roger Perkin Network Automation Consultant](<https://devfeed.tech/sources/roger-perkin-network-automation-consultant.md>)

Topics: [Network](<https://devfeed.tech/topics/network.md>), [Automation](<https://devfeed.tech/topics/automation.md>), [Ansible](<https://devfeed.tech/topics/ansible.md>), [Orchestration](<https://devfeed.tech/topics/orchestration.md>), [awx](<https://devfeed.tech/topics/awx.md>), [Low code](<https://devfeed.tech/topics/low-code.md>)

Tags: [ansible](<https://devfeed.tech/tags/ansible.md>), [automation](<https://devfeed.tech/tags/automation.md>), [awx](<https://devfeed.tech/tags/awx.md>), [faq](<https://devfeed.tech/tags/faq.md>), [low-code](<https://devfeed.tech/tags/low-code.md>), [nautobot](<https://devfeed.tech/tags/nautobot.md>), [network](<https://devfeed.tech/tags/network.md>), [network-automation](<https://devfeed.tech/tags/network-automation.md>), [orchestration](<https://devfeed.tech/tags/orchestration.md>), [red-hat](<https://devfeed.tech/tags/red-hat.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>)

### AI overview

The article lists Nautobot, Itential, Ansible, AWX, and Red Hat Ansible Automation Platform as network automation platforms. It states that they serve different purposes, including configuration, orchestration, source of truth and inventory, and enterprise low-code use cases.

### Source excerpt

The best platforms for network automation include Nautobot, Itential, Ansible, AWX, Red Hat Ansible Automation Platform to name a few. Each one serves a different purpose including configuration and orchestration, source of truth and inventory and enterprise low code. Check out my dedicated post on network automation platforms

## From Intent to Reality: Driving pyATS Tests from NetBox Against a CML2 Fabric

DevFeed: [From Intent to Reality: Driving pyATS Tests from NetBox Against a CML2 Fabric](<https://devfeed.tech/articles/from-intent-to-reality-driving-pyats-tests-from-netbox-against-a-cml2-fabric-30871.md>)

Original publisher: [Read original article](<https://brent.leekley.me/blog/netbox-intent/>)

Author: Brent Leekley

Published: 2026-06-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [brent.leekley.me blog](<https://devfeed.tech/sources/brent-leekley-me-blog.md>)

Topics: [NetBox](<https://devfeed.tech/topics/netbox.md>), [Network](<https://devfeed.tech/topics/network.md>), [Cisco](<https://devfeed.tech/topics/cisco.md>), [data](<https://devfeed.tech/topics/data.md>), [Structured-data](<https://devfeed.tech/topics/structured-data.md>)

Tags: [cisco-modeling-labs](<https://devfeed.tech/tags/cisco-modeling-labs.md>), [cml](<https://devfeed.tech/tags/cml.md>), [cml2](<https://devfeed.tech/tags/cml2.md>), [custom-fields](<https://devfeed.tech/tags/custom-fields.md>), [genie](<https://devfeed.tech/tags/genie.md>), [ids](<https://devfeed.tech/tags/ids.md>), [intent-based-networking](<https://devfeed.tech/tags/intent-based-networking.md>), [netbox](<https://devfeed.tech/tags/netbox.md>), [network](<https://devfeed.tech/tags/network.md>), [network-automation](<https://devfeed.tech/tags/network-automation.md>), [network-testing](<https://devfeed.tech/tags/network-testing.md>), [ospf](<https://devfeed.tech/tags/ospf.md>), [pyats](<https://devfeed.tech/tags/pyats.md>), [pynetbox](<https://devfeed.tech/tags/pynetbox.md>), [router-id](<https://devfeed.tech/tags/router-id.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>), [spine-leaf](<https://devfeed.tech/tags/spine-leaf.md>), [structured](<https://devfeed.tech/tags/structured.md>), [testbed](<https://devfeed.tech/tags/testbed.md>)

### AI overview

This tutorial shows how to store declared OSPF router-IDs in NetBox and use Cisco pyATS to compare them with the router-IDs on a live CML2 spine-leaf fabric. The comparison turns network intent validation into a pass-or-fail test.

### Source excerpt

NetBox holds the intent (declared OSPF router-IDs), a CML2 spine-leaf is the network under test, and pyATS is the judge. Close the loop and prove the live network matches what you said it should be, with real pass and fail output.

## Reducing Single-Person Dependency Through Documentation and Onboarding

DevFeed: [Reducing Single-Person Dependency Through Documentation and Onboarding](<https://devfeed.tech/articles/the-bus-factor-of-zero-29354.md>)

Original publisher: [Read original article](<https://arturdryomov.dev/posts/bus-factor-of-zero/>)

Author: Artur Dryomov

Published: 2026-01-30T00:00:00Z

Content type: opinion

Language: en

Sources: [Artur Dryomov](<https://devfeed.tech/sources/artur-dryomov.md>)

Topics: [Documentation](<https://devfeed.tech/topics/documentation.md>), [Requirements](<https://devfeed.tech/topics/requirements.md>), [Code review](<https://devfeed.tech/topics/code-review.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [GitLab](<https://devfeed.tech/topics/gitlab.md>)

Tags: [bus-factor](<https://devfeed.tech/tags/bus-factor.md>), [collaboration](<https://devfeed.tech/tags/collaboration.md>), [docs](<https://devfeed.tech/tags/docs.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [github](<https://devfeed.tech/tags/github.md>), [gitlab](<https://devfeed.tech/tags/gitlab.md>), [onboarding](<https://devfeed.tech/tags/onboarding.md>), [requirements](<https://devfeed.tech/tags/requirements.md>), [review](<https://devfeed.tech/tags/review.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>)

### AI overview

The article reflects on onboarding a new developer and argues that accessible documentation, product requirements documents, and architectural records can reduce reliance on tribal knowledge and make project history easier to understand.

### Source excerpt

Onboarding new developers to a team is an opportunity for introspection. It's one thing to share tribal knowledge, and another to realize that the mere existence of such knowledge can be counterproductive. Recently, I had an opportunity to onboard a new developer to one of our projects. Fortunately, almost everything went right. In a couple of days, the developer was able to contribute minor changes to the project, within a couple of weeks, major ones. Of course, a good portion of this rapid involvement can be attributed to the developer, but I believe the approaches described below helped a lot.

## Crafting a Perfect Product Catalog

DevFeed: [Crafting a Perfect Product Catalog](<https://devfeed.tech/articles/crafting-a-perfect-product-catalog-38730.md>)

Original publisher: [Read original article](<https://blog.developer.bazaarvoice.com/2026/01/29/crafting-a-perfect-product-catalog/>)

Author: Shashank Khatri

Published: 2026-01-29T11:33:26Z

Content type: article

Language: en

Sources: [Bazaarvoice](<https://devfeed.tech/sources/bazaarvoice.md>)

Topics: [data](<https://devfeed.tech/topics/data.md>), [clients](<https://devfeed.tech/topics/clients.md>), [trust](<https://devfeed.tech/topics/trust.md>), [navigation](<https://devfeed.tech/topics/navigation.md>)

Tags: [apis](<https://devfeed.tech/tags/apis.md>), [categories](<https://devfeed.tech/tags/categories.md>), [conversations-api](<https://devfeed.tech/tags/conversations-api.md>), [data](<https://devfeed.tech/tags/data.md>), [file](<https://devfeed.tech/tags/file.md>), [format](<https://devfeed.tech/tags/format.md>), [ids](<https://devfeed.tech/tags/ids.md>), [integration](<https://devfeed.tech/tags/integration.md>), [navigation](<https://devfeed.tech/tags/navigation.md>), [product](<https://devfeed.tech/tags/product.md>), [product-catalog](<https://devfeed.tech/tags/product-catalog.md>), [reviews](<https://devfeed.tech/tags/reviews.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>), [ugc](<https://devfeed.tech/tags/ugc.md>)

### AI overview

This Bazaarvoice post presents best practices for maintaining product catalogs used to manage and display user-generated content such as ratings and reviews. It covers precise product names, consistent category information, and naming conventions for product and category identifiers to support integration, content submission, navigation, and accurate review associations.

### Source excerpt

Your product catalog is the definitive source of truth for your online presence, especially when managing User-Generated Content (UGC) like ratings and reviews. For Bazaarvoice clients, a meticulously maintained catalog is vital for seamless integration and flawless display. This post explores three key best practices--from precise product naming and consistent category data to optimal naming conventions--that will unlock the full potential of your UGC program, drive trust, and boost conversions.

## Use Test-Controlled Data as the Ground Truth for Web Page Tests

DevFeed: [Use Test-Controlled Data as the Ground Truth for Web Page Tests](<https://devfeed.tech/articles/never-use-the-page-as-the-source-of-truth-28894.md>)

Original publisher: [Read original article](<https://glebbahmutov.com/blog/source-of-truth/>)

Author: Gleb Bahmutov

Published: 2025-10-03T04:00:00Z

Content type: tutorial

Language: en

Sources: [Gleb Bahmutov](<https://devfeed.tech/sources/gleb-bahmutov.md>)

Topics: [Testing](<https://devfeed.tech/topics/testing.md>), [Cypress](<https://devfeed.tech/topics/cypress.md>), [Web](<https://devfeed.tech/topics/web.md>), [Ground truth / benchmark quality](<https://devfeed.tech/topics/ground-truth-benchmark-quality.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [advice](<https://devfeed.tech/tags/advice.md>), [cypress](<https://devfeed.tech/tags/cypress.md>), [data](<https://devfeed.tech/tags/data.md>), [network](<https://devfeed.tech/tags/network.md>), [process](<https://devfeed.tech/tags/process.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>), [test](<https://devfeed.tech/tags/test.md>), [testing](<https://devfeed.tech/tags/testing.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

This tutorial explains why tests should not compare two values rendered on a web page as if either value were authoritative. It recommends stubbing the data or network response so the test controls the expected value, while allowing limited duplication when it improves clarity and maintainability.

### Source excerpt

Imagine you are testing a web page showing the purchase receipt.

## When Your Source of Truth is Reality

DevFeed: [When Your Source of Truth is Reality](<https://devfeed.tech/articles/when-your-source-of-truth-is-reality-38392.md>)

Original publisher: [Read original article](<https://blog.danlew.net/2025/07/01/when-your-source-of-truth-is-reality/>)

Author: Dan Lew

Published: 2025-07-01T13:00:26Z

Content type: opinion

Language: en

Sources: [Dan Lew Blog](<https://devfeed.tech/sources/dan-lew-blog.md>)

Topics: [Databases](<https://devfeed.tech/topics/databases.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [data](<https://devfeed.tech/tags/data.md>), [database-design](<https://devfeed.tech/tags/database-design.md>), [databases](<https://devfeed.tech/tags/databases.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>)

### AI overview

This opinion article argues that databases tracking real-world entities can never be perfectly authoritative because reality changes and records may be incomplete or inaccurate. It uses a community orchestra roster and other examples to explain the limits of the single source of truth concept.

### Source excerpt

Let me tell you a story about why one should be cautious with databases that track the real world. I play trombone in a local community orchestra. For the past two years, I've been the board secretary; part of my duties is keeping a roster of who is

## 4 Software Design Principles I Learned the Hard Way

DevFeed: [4 Software Design Principles I Learned the Hard Way](<https://devfeed.tech/articles/4-software-design-principles-i-learned-the-hard-way-39080.md>)

Original publisher: [Read original article](<https://read.engineerscodex.com/p/4-software-design-principles-i-learned>)

Author: Engineer's Codex

Published: 2024-04-22T19:03:53Z

Content type: article

Language: en

Sources: [Engineer's Codex](<https://devfeed.tech/sources/engineer-s-codex.md>)

Topics: [Software Engineering](<https://devfeed.tech/topics/software-engineering.md>), [Architecture & Design](<https://devfeed.tech/topics/architecture-design.md>), [Software](<https://devfeed.tech/topics/software.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [design](<https://devfeed.tech/tags/design.md>), [software-design](<https://devfeed.tech/tags/software-design.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>), [synchronization](<https://devfeed.tech/tags/synchronization.md>)

### AI overview

An experienced software engineer shares design principles drawn from building and launching a large service. The article argues for maintaining one source of truth, deriving values instead of storing duplicate state when practical, and selectively repeating code rather than forcing unsuitable abstractions. It emphasizes that these principles require context and tradeoffs.

### Source excerpt

If there's two sources of truth, one is probably wrong. And yes, please repeat yourself.

## The future of Keycloak Operator CRs

DevFeed: [The future of Keycloak Operator CRs](<https://devfeed.tech/articles/the-future-of-keycloak-operator-crs-31600.md>)

Original publisher: [Read original article](<https://www.keycloak.org/2022/09/operator-crs>)

Author: Václav Muzikář

Published: 2022-09-02T00:00:00Z

Content type: article

Language: en

Sources: [Keycloak Blog](<https://devfeed.tech/sources/keycloak-blog.md>)

Topics: [Keycloak](<https://devfeed.tech/topics/keycloak.md>), [Quarkus](<https://devfeed.tech/topics/quarkus.md>), [Cloud](<https://devfeed.tech/topics/cloud.md>), [Git](<https://devfeed.tech/topics/git.md>)

Tags: [critical](<https://devfeed.tech/tags/critical.md>), [declarative](<https://devfeed.tech/tags/declarative.md>), [deprecated](<https://devfeed.tech/tags/deprecated.md>), [eol](<https://devfeed.tech/tags/eol.md>), [idm](<https://devfeed.tech/tags/idm.md>), [kerberos](<https://devfeed.tech/tags/kerberos.md>), [keycloak](<https://devfeed.tech/tags/keycloak.md>), [ldap](<https://devfeed.tech/tags/ldap.md>), [openid-connect](<https://devfeed.tech/tags/openid-connect.md>), [operator](<https://devfeed.tech/tags/operator.md>), [quarkus](<https://devfeed.tech/tags/quarkus.md>), [rest-api](<https://devfeed.tech/tags/rest-api.md>), [saml](<https://devfeed.tech/tags/saml.md>), [source-of-truth](<https://devfeed.tech/tags/source-of-truth.md>), [sso](<https://devfeed.tech/tags/sso.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

The article describes Keycloak's new Operator, rewritten for the Quarkus distribution and available as a preview. It explains that Custom Resource Definitions for managing Keycloak resources are not yet available because supporting features, including file storage and read-only interfaces, are still being developed. The CRDs were expected to be added with support anticipated in Keycloak 21.

### Source excerpt

A while back, we have announced a new Operator rewritten from scratch to provide the best experience for the Quarkus distribution. While the legacy Operator is now deprecated and will reach EOL with Keycloak 20, the new one is already available as a preview, see the installation guide. One of the most common concerns around the new Operator is the current lack of the CRDs for managing Keycloak resources, such as realm, users and clients, in a cloud-native way. One of the key aspects of the new Operator will be redesign of managing these Keycloak resources via CRs and git-ops. This new approach will leverage the new storage architecture and future immutability options, making the CRs the declarative single source of truth. In comparison to the legacy Operator, this will bring high robustness, reliability, and predictability to the whole solution. Before we would consider operator ready for leveraging CRs, we expect completing several features including but not limited to: File store (expected in Keycloak 20) to persist data in a file instead of DB. Read-only possibilities for administration REST API, UI Console and other interfaces. This is required for the new immutability concept which will be used to ensure any data coming from the CRs (and subsequently from the file store) are read-only from all interfaces. All of this is critical to proper CRs implementation, hence the new Operator is currently missing the CRDs for managing Keycloak resources. The missing CRDs will be added once Keycloak has the necessary support for it, which is currently expected in Keycloak 21. We have prepared a few options to alleviate the situation with missing CRDs in this repository.