<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Thomas Gerber</title>
    <description>The latest articles on DEV Community by Thomas Gerber (@thomasgerber).</description>
    <link>https://dev.to/thomasgerber</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F842627%2F0230ba30-8fed-485a-a4d5-853839bf1f03.jpeg</url>
      <title>DEV Community: Thomas Gerber</title>
      <link>https://dev.to/thomasgerber</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/thomasgerber"/>
    <language>en</language>
    <item>
      <title>Git + Jira Analytics in 10 minutes on your laptop</title>
      <dc:creator>Thomas Gerber</dc:creator>
      <pubDate>Fri, 18 Nov 2022 05:41:06 +0000</pubDate>
      <link>https://dev.to/thomasgerber/git-jira-analytics-in-10-minutes-on-your-laptop-3o83</link>
      <guid>https://dev.to/thomasgerber/git-jira-analytics-in-10-minutes-on-your-laptop-3o83</guid>
      <description>&lt;p&gt;Product and Engineering Managers, rejoice! You can now get Git and Jira &lt;strong&gt;analytics&lt;/strong&gt; on your laptop in 10 minutes! It is free, open-source, and all the data stays with you! &lt;/p&gt;

&lt;p&gt;Explore and Leverage all your engineering operations data (epics, issues, pull requests, builds, releases) to make informed decisions.&lt;/p&gt;

&lt;p&gt;Docker Desktop and git required. Open your favorite terminal and launch:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/faros-ai/faros-community-edition/main/install.sh)" _ --source devto_analytics
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Open source &lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;code&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://community.faros.ai/docs/faros-essentials"&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Faros Community &lt;a href="https://community.faros.ai/docs/slack"&gt;Slack&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--J0mxFXK5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p2vul133w1ub1b3kl75u.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--J0mxFXK5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p2vul133w1ub1b3kl75u.gif" alt="Install Flow" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Say goodbye to stale spreadsheets and rigid metrics!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ohgmXt7U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1vwtx8wq8jciosezrdrz.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ohgmXt7U--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1vwtx8wq8jciosezrdrz.jpeg" alt="Spreadsheet meme" width="263" height="192"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--qjYcn-sE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/co1p4slinx4mq60ehsng.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--qjYcn-sE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/co1p4slinx4mq60ehsng.jpeg" alt="Metrics meme" width="264" height="191"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>git</category>
      <category>analytics</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Making the case for the EngOps data fabric</title>
      <dc:creator>Thomas Gerber</dc:creator>
      <pubDate>Wed, 18 May 2022 16:40:42 +0000</pubDate>
      <link>https://dev.to/thomasgerber/making-the-case-for-the-engops-data-fabric-121a</link>
      <guid>https://dev.to/thomasgerber/making-the-case-for-the-engops-data-fabric-121a</guid>
      <description>&lt;p&gt;As an engineering leader, I've worked with data all my life. In fact, most recently, I was in charge of the data layer of Salesforce Einstein, Salesforce’s AI platform. Even with all the data expertise in our organization, it was strikingly obvious that the engineering function in most companies my peers and I worked for, have not been able to fully leverage all the data in a unified manner. The problem - data is often scattered across disparate systems. A better data-driven approach is a must if we want to move from gut-feeling and guesswork to intelligent actions that impact real business outcomes.&lt;/p&gt;

&lt;p&gt;All other functions have great data fabrics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sales teams have &lt;strong&gt;Salesforce&lt;/strong&gt;. They have sales pipelines, automated data enrichment processes, revenue predictions, and SalesOps, which is now a very well understood role.&lt;/li&gt;
&lt;li&gt;Marketing gurus have &lt;strong&gt;Segment&lt;/strong&gt; &amp;amp; &lt;strong&gt;Google Analytics&lt;/strong&gt;. They can track visits, attribute them to campaigns, and can calculate cost of leads to the last dollar.&lt;/li&gt;
&lt;li&gt;Product Managers have &lt;strong&gt;Amplitude&lt;/strong&gt;. They can map customer journeys, predict churn and LTVs, and segment audiences into personas.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;On the other hand, engineering usually does not have anything similar. That is because compared to other functions, software engineering is an artful craft, one that is rapidly evolving. As such, choices of tools are made locally, in a bottoms-up fashion, which leads to massive fragmentation of data. &lt;strong&gt;How many CI/CD systems does your engineering organization use? How many CRMs does your Sales organization use?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In many cases, engineering leaders are often forced to cobble data together in spreadsheets in order to perform meaningful analysis. Take Lead Time for Change as an example, one of the 4 DORA metrics that research suggests is meaningful to track for engineering organizations: not only do you need to ETL data from multiple systems (commits, pull requests, build, artifacts, deployments) to compute it, the collected data needs to link properly together. You need a robust data system to gracefully deal with missing data and out-of-order data ingestion. Most likely, you will also need to capture changesets for your deployments. &lt;a href="https://dev.to/thomasgerber/why-computing-dora-metrics-is-hard-56be"&gt;A very tall order&lt;/a&gt;. &lt;strong&gt;As the old saying goes, the shoemaker's child always goes barefoot.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Even though metrics vendors may alleviate that pain somewhat, it is not sufficient. The metrics those tools capture and surface are fairly static, and their domain of applicability is limited. Notice that the products mentioned above have analytics as a foundational capability: you can measure and track anything you want on your data. What you don’t know can hurt your teams - and your bottom line.&lt;/p&gt;

&lt;p&gt;I want to make the case that engineering organizations similarly need a new data fabric centered around EngOps; a fabric that should of course cover the main software engineering value stream elements (Tasks, Pull Requests, Incidents, Builds, Deployments, and more), but can also extend and simplify compliance, recruiting, employee satisfaction, and OKRs. &lt;/p&gt;

&lt;p&gt;Data fabrics usually have, at a minimum, the following characteristics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Practical and Connected&lt;/strong&gt;: Value comes from how well the data is modeled after the world - Lead / Opportunity / Account in Salesforce; Campaigns / Sources / Mediums  in Google Analytics; User Sessions in Amplitude. Great data models have relationships properly connecting events and entities together for increased value: for example in Amplitude, a user can be in the  ‘new’, ‘current’, ‘dormant’ or ‘resurrected’ based state on their behaviors. For EngOps, that modeling and how the different data elements connect is especially critical given how many different systems are at play. &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Actionable and Extensible&lt;/strong&gt;: Data can be analyzed, aggregated, and visualized any way the user sees fit. It can be used for automation purposes through APIs and exported for further processing. It can be extended by the user: for example custom objects / fields in Salesforce; properties in Segment / Amplitude.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Trusted and Intelligent&lt;/strong&gt;: Data can be observed at the most granular level: for example, Segment, Amplitude and Google Analytics have live debuggers/feeds to introspect data as it changes or arrives in the fabric. Data is also automatically improved, through inferences on how it connects and imputations of values; those improvements are documented and remediable. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now, here are a few concrete examples of what an engineering leader could do simply (minutes or hours, not days) with such an EngOps data fabric:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dive into the data to craft meaningful policies and investment objectives that impact the business - and then track corresponding Key Results: 

&lt;ul&gt;
&lt;li&gt;Is onboarding new engineers going better over time, or worse? Is remoteness making onboarding less effective?&lt;/li&gt;
&lt;li&gt;Is the lead time per integration decreasing? Where is the bottleneck? Does each integration require changing the underlying APIs or are those durable?&lt;/li&gt;
&lt;li&gt;How do meetings and interviews impact code delivery? &lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;Automate based on a trusted, transparent metric:

&lt;ul&gt;
&lt;li&gt;Automated deployments if the Change Failure Rate of the application is low enough&lt;/li&gt;
&lt;li&gt;Automatically adjust the type of under-utilized cloud instances&lt;/li&gt;
&lt;li&gt;Collect compliance evidence and enforce policies automatically&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Clearly, you shouldn’t be focusing on building such an &lt;strong&gt;EngOps data fabric&lt;/strong&gt;. It is challenging to build and not your core business. This is what we build at &lt;strong&gt;&lt;a href="https://faros.ai"&gt;Faros AI&lt;/a&gt;: the connected engineering operations platform&lt;/strong&gt;. We want to unlock the power of all that EngOps data for your organization. You can check out our open-source version: &lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;https://github.com/faros-ai/faros-community-edition&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;(originally posted &lt;a href="https://www.faros.ai/blog/making-the-case-for-the-engops-data-fabric"&gt;here&lt;/a&gt;) &lt;/p&gt;

</description>
      <category>devops</category>
      <category>engops</category>
      <category>github</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Why computing DORA metrics is hard</title>
      <dc:creator>Thomas Gerber</dc:creator>
      <pubDate>Mon, 18 Apr 2022 16:37:52 +0000</pubDate>
      <link>https://dev.to/thomasgerber/why-computing-dora-metrics-is-hard-56be</link>
      <guid>https://dev.to/thomasgerber/why-computing-dora-metrics-is-hard-56be</guid>
      <description>&lt;p&gt;The &lt;strong&gt;DORA metrics&lt;/strong&gt; are a set of metrics that measure the &lt;strong&gt;quality and velocity&lt;/strong&gt; of software delivery of an engineering organization. By measuring and continuously iterating on these metrics, engineering teams can deliver better software to their customers faster, and achieve significantly better business outcomes. &lt;/p&gt;

&lt;p&gt;So why aren’t those metrics widely available in your engineering organization? &lt;strong&gt;Because they are difficult to compute.&lt;/strong&gt; Here are a few of the hurdles we faced when we were building Salesforce Einstein, and the reason we started &lt;a href="https://faros.ai" rel="noopener noreferrer"&gt;faros.ai&lt;/a&gt;. Keep these (and us!) in mind when you start this journey.&lt;/p&gt;

&lt;p&gt;Let’s start with the &lt;strong&gt;time to restore service&lt;/strong&gt; metric. Good news: you can probably get this metric from your incident management system. Assuming you are OK with not having a single pane of glass for your metrics. But don’t get ahead of yourself!&lt;/p&gt;

&lt;p&gt;Now let’s look at &lt;strong&gt;change failure rate&lt;/strong&gt;. This is a metric that combines your incident and your deployment data. This means you need to &lt;strong&gt;extract and load data&lt;/strong&gt; from both sources somewhere to compute the metric. You cannot just get it from one of your systems. That’s just the first difficulty. Next you need to correlate your incidents with your deployments.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn8twtw80n16y2423xrgw.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fn8twtw80n16y2423xrgw.jpeg" alt="ETL Failures"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Then, let’s take a look at &lt;strong&gt;weekly deployments&lt;/strong&gt;. It is common for Engineering organizations to have several CI/CD systems. The data from the different systems will need to be &lt;strong&gt;modeled and normalized&lt;/strong&gt;. More fun!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lead time for changes&lt;/strong&gt; ups the ante: not only do you need data from multiple systems (commits, pull requests, build, artifacts, deployments), that data needs to link properly. Your system will need to be robust enough to gracefully deal with missing data and &lt;strong&gt;out-of-order ingestion&lt;/strong&gt;. Most likely you will also need to impute changesets for your deployments.&lt;/p&gt;

&lt;p&gt;Finally, if you overcome those difficulties, you will want to roll up those metrics along organization lines, slice and dice by application, by stage, and over time. All of a sudden, you have to maintain a service catalog, deal with hierarchical roll ups and drill downs, …&lt;/p&gt;

&lt;p&gt;TLDR: DORA metrics are difficult to compute; don’t build them from scratch. Use tools and products that deal with these difficulties to get to value faster. Check out &lt;a href="https://github.com/faros-ai/faros-community-edition" rel="noopener noreferrer"&gt;Faros Community Edition&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>dora</category>
      <category>productivity</category>
      <category>engops</category>
    </item>
    <item>
      <title>How we Learned to Stop Worrying and Love Data Movement with Airbyte</title>
      <dc:creator>Thomas Gerber</dc:creator>
      <pubDate>Mon, 11 Apr 2022 17:17:27 +0000</pubDate>
      <link>https://dev.to/thomasgerber/how-we-learned-to-stop-worrying-and-love-data-movement-with-airbyte-51ba</link>
      <guid>https://dev.to/thomasgerber/how-we-learned-to-stop-worrying-and-love-data-movement-with-airbyte-51ba</guid>
      <description>&lt;p&gt;&lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;Faros Community Edition (CE)&lt;/a&gt; is an open-source engineering operations platform that connects the dots between all your operational data sources for a single-pane view across the software development life cycle. &lt;strong&gt;Airbyte&lt;/strong&gt; powers Faros CE.&lt;/p&gt;

&lt;p&gt;In this post, we will explain:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Why Faros CE needs ELT&lt;/li&gt;
&lt;li&gt;Why we chose Airbyte&lt;/li&gt;
&lt;li&gt;How we use Airbyte and contribute back&lt;/li&gt;
&lt;li&gt;How we let our users unleash even more of Airbyte’s power&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  1. Why Faros CE needs ELT
&lt;/h3&gt;

&lt;p&gt;Faros CE provides API, BI, and automation layers for engineering operations data (from Pull Requests to Incidents). With Faros CE, you can answer questions about bottlenecks in your CI/CD pipelines, issues in your onboarding processes, progress towards your goals, with data that is fresh, connected, queryable, and most importantly, all in one place. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--3e64gV_S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4iyytpowo0jiekqd3gux.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--3e64gV_S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4iyytpowo0jiekqd3gux.png" alt="Metrics Lead Time" width="880" height="158"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But before any of this can be achieved, data needs to be ingested into the Faros CE platform from many different sources (GitHub, Jira, CircleCI, PagerDuty, …) in order to properly connect and analyze that data. &lt;strong&gt;Faros CE decided to leverage Airbyte for that ELT.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Why we chose Airbyte
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;We didn’t want to spend our energy working on data movement.&lt;/strong&gt; Instead, we want to focus on our data schema and its useful applications for our community. We hence had to pick a data integration platform.&lt;/p&gt;

&lt;p&gt;There are 3 reasons Airbyte stood out:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Airbyte has a &lt;strong&gt;vibrant community&lt;/strong&gt;; just check &lt;a href="https://community.faros.ai/docs/airbyte-stats"&gt;those stats&lt;/a&gt; out (powered by Faros CE)!&lt;/li&gt;
&lt;li&gt;Airbyte has become the &lt;strong&gt;de-facto standard for data movement&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Airbyte already has &lt;strong&gt;a rich catalog of connectors&lt;/strong&gt; that we can leverage (GitHub for example)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. How Faros CE integrates Airbyte and how we contribute back
&lt;/h3&gt;

&lt;p&gt;To integrate Airbyte, we first created the &lt;strong&gt;&lt;a href="https://github.com/faros-ai/airbyte-connectors/tree/main/destinations/airbyte-faros-destination"&gt;Faros destination connector&lt;/a&gt;&lt;/strong&gt;. It knows how to send data from sources into the platform, and takes care of mapping the various entities being extracted against our rich, connected data schema. Because of the great &lt;a href="https://docs.airbyte.com/understanding-airbyte/airbyte-specification"&gt;Airbyte specification&lt;/a&gt;, that code is compact and focused on the value Faros CE provides (i.e. that mapping).&lt;/p&gt;

&lt;p&gt;Second, we contributed to source connectors important to Faros CE (Jira) or new source connectors that didn’t exist yet (&lt;a href="https://docs.airbyte.com/integrations/sources/jenkins/"&gt;Jenkins&lt;/a&gt;, &lt;a href="https://docs.airbyte.com/integrations/sources/customer-io/"&gt;Customer.io&lt;/a&gt;, &lt;a href="https://docs.airbyte.com/integrations/sources/harness/"&gt;Harness&lt;/a&gt;, &lt;a href="https://docs.airbyte.com/integrations/sources/victorops/"&gt;VictorOps&lt;/a&gt;, &lt;a href="https://docs.airbyte.com/integrations/sources/pagerduty/"&gt;PagerDuty&lt;/a&gt;). Since we use Typescript, we decided to contribute our &lt;a href="https://docs.airbyte.com/connector-development/cdk-faros-js/"&gt;Typescript CDK&lt;/a&gt;. It is our way to strengthen the community while benefiting from it!&lt;/p&gt;

&lt;p&gt;Finally, whether it is through docker-compose (&lt;a href="https://community.faros.ai/docs/local-deployment"&gt;local&lt;/a&gt;) or plural.sh (&lt;a href="https://community.faros.ai/docs/cloud-deployment"&gt;cloud&lt;/a&gt;), Airbyte is deployed as part of Faros CE, with  pre-configured connections. Our users only need to enter credentials to their source systems, and can have data ingested in the platform &lt;a href="https://community.faros.ai/docs/quickstart-step-2"&gt;in a matter of minutes&lt;/a&gt;!&lt;/p&gt;

&lt;h3&gt;
  
  
  4. How we let our users unleash even more of Airbyte’s power
&lt;/h3&gt;

&lt;p&gt;Our users have direct access to the Airbyte instance that launched as part of their Faros CE platform. They have therefore access to its full feature set! In particular, they can create &lt;a href="https://community.faros.ai/docs/custom-source"&gt;custom sources&lt;/a&gt; or contribute new sources to the Airbyte community with minimal effort! &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Airbyte is the bedrock on top of which Faros CE is built. The product and its community enables us to focus on our core value. We are proud members of the Airbyte community.&lt;/strong&gt; &lt;/p&gt;

</description>
      <category>devops</category>
      <category>dora</category>
      <category>productivity</category>
      <category>airbyte</category>
    </item>
    <item>
      <title>BI for EngOps with Metabase</title>
      <dc:creator>Thomas Gerber</dc:creator>
      <pubDate>Fri, 08 Apr 2022 17:04:46 +0000</pubDate>
      <link>https://dev.to/thomasgerber/bi-for-engops-with-metabase-1nf2</link>
      <guid>https://dev.to/thomasgerber/bi-for-engops-with-metabase-1nf2</guid>
      <description>&lt;p&gt;&lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;Faros Community Edition (CE)&lt;/a&gt; is an open-source engineering operations platform that connects the dots between all your operational data sources for a single-pane view across the software development life cycle. &lt;strong&gt;Metabase powers Faros CE.&lt;/strong&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  What can you do with Faros CE thanks to Metabase?
&lt;/h3&gt;

&lt;p&gt;Faros CE provides ELT, APIs, BI, and automation for engineering operations data. With Faros CE, you can answer questions about bottlenecks in your CI/CD pipelines, issues in your onboarding processes, progress towards your goals, with data that is fresh, connected, queryable, and most importantly, all in one place. Let’s dive in to show how Metabase makes that simple.&lt;/p&gt;

&lt;p&gt;Let’s take &lt;strong&gt;lead time&lt;/strong&gt; for example. Lead time is a software delivery metric popularized by the DevOps Research and Assessment (DORA) organization, that measures the time it takes for changes to go from idea to production. That number in itself is not sufficient, however. It is important to put it in context. And Metabase makes it simple to provide that context! In the Faros CE DORA Metabase dashboard, you can see &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How your lead time compares to known industry benchmarks thanks to the gauge visualization with ranges&lt;/li&gt;
&lt;li&gt;The evolution of lead time for each of your applications over time with a line chart&lt;/li&gt;
&lt;li&gt;The breakdown of lead time by stage, so you can start to see where the bottlenecks are in your software delivery process thanks to stacked vertical bar charts.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0w1ZWkyH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6wzc3pmbpq1s00x033pv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0w1ZWkyH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6wzc3pmbpq1s00x033pv.png" alt="Lead Time Metrics" width="880" height="158"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Our users love to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.metabase.com/docs/latest/users-guide/interactive-dashboards.html#open-the-action-menu"&gt;Zoom into the underlying data&lt;/a&gt; by simply clicking on the charts.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.metabase.com/docs/latest/users-guide/04-asking-questions.html"&gt;Create their own metrics and charts&lt;/a&gt; in Metabase from scratch or from our canned charts, without the need for SQL and with previews at every stage&lt;/li&gt;
&lt;li&gt;Use &lt;a href="https://www.metabase.com/docs/latest/users-guide/14-x-rays.html"&gt;X-Rays&lt;/a&gt; for fast insights in their datasets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;This interactivity in Metabase creates a virtuous cycle of increased trust into the metrics and increased usage and exploration. And that cycle is easily bootstrapped.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WrWVeOrw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n1jva170temliq7bl7b8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WrWVeOrw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n1jva170temliq7bl7b8.png" alt="Faros CE Architecture" width="880" height="442"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devops</category>
      <category>dora</category>
      <category>productivity</category>
      <category>github</category>
    </item>
    <item>
      <title>Software Composition: building on the shoulders of giants</title>
      <dc:creator>Thomas Gerber</dc:creator>
      <pubDate>Thu, 07 Apr 2022 15:51:25 +0000</pubDate>
      <link>https://dev.to/thomasgerber/software-composition-building-on-the-shoulders-of-giants-4mfh</link>
      <guid>https://dev.to/thomasgerber/software-composition-building-on-the-shoulders-of-giants-4mfh</guid>
      <description>&lt;p&gt;When we decided to release &lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;Faros Community Edition (CE)&lt;/a&gt;, the open source version of our SaaS product Faros AI (&lt;a href="https://faros.ai"&gt;https://faros.ai&lt;/a&gt;), we decided to focus on 2 things: &lt;strong&gt;time to value&lt;/strong&gt;, and &lt;strong&gt;making it as welcoming as possible to users and contributors&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;As an open-source engineering operations platform, our data schema (which models everything from pull requests to deployments) is the keystone of our value proposition. We wanted to make it as useful to the community as possible. Which is why every capability of Faros CE leverages that data schema, AND is powered by best-of-class open source projects!&lt;/p&gt;

&lt;p&gt;We rely on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Airbyte&lt;/strong&gt; for ELT&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hasura&lt;/strong&gt; for our GraphQL API&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Metabase&lt;/strong&gt; for BI&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;n8n&lt;/strong&gt; for Automation&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;dbt&lt;/strong&gt; for transformations&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As a result, the Faros CE codebase is &lt;strong&gt;compact&lt;/strong&gt;: the data schema, some initialization scripts that compose those services together, and some pre-configured dashboards and endpoints.&lt;/p&gt;

&lt;p&gt;Faros CE is up and running in minutes! And users can leverage the full power and extensibility of those best-of-class projects. For example one can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Connect to new or custom data sources thanks to Airbyte’s ever growing source catalog and development kits&lt;/li&gt;
&lt;li&gt;Enrich data ingested in Faros CE thanks to Hasura’s Actions feature&lt;/li&gt;
&lt;li&gt;Get automatic insights into their Engineering Operations data thanks to Metabase’s X-Ray feature&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Composition is truly the most powerful capability in software engineering. Yay functional programming?!&lt;/p&gt;

&lt;p&gt;We welcome your thoughts on this and encourage you to try out Faros CE by heading over to our GitHub repo - &lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;https://github.com/faros-ai/faros-community-edition&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here is an example of what you can achieve in minutes!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xXOrQKy3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g8mfhgvwiv18xdxgmiy0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xXOrQKy3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g8mfhgvwiv18xdxgmiy0.png" alt="GitHub dashboard" width="880" height="527"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devops</category>
      <category>opensource</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Same visibility into your SDLC as the apps you develop!</title>
      <dc:creator>Thomas Gerber</dc:creator>
      <pubDate>Tue, 05 Apr 2022 21:06:40 +0000</pubDate>
      <link>https://dev.to/thomasgerber/same-visibility-into-your-sdlc-as-the-apps-you-develop-db7</link>
      <guid>https://dev.to/thomasgerber/same-visibility-into-your-sdlc-as-the-apps-you-develop-db7</guid>
      <description>&lt;p&gt;As software engineers, we understand how important it is to instrument our applications. Without Datadog, New Relic, Sumologic, we know that Engineering would grind to a crawl at the first sign of trouble. The same holds true for your Software Delivery Process, i.e. how you review, merge, build and deploy changes, resolve incidents and fix bugs.&lt;/p&gt;

&lt;p&gt;With &lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;Faros Community Edition&lt;/a&gt;, you can now have unprecedented visibility into your Software Delivery Process.&lt;/p&gt;

&lt;p&gt;Anyone used to tackling this problem quickly hits a wall: data is in a lot of different places and cannot always be easily leveraged. For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;for Change Failure Rate, your incidents are in PagerDuty, your Deployments in CircleCI&lt;/li&gt;
&lt;li&gt;GitHub only gives you metrics for a single repository, and nothing close to PR Cycle Time&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VdVzYSRB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fk7uqc8l05ec9cywp60x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VdVzYSRB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fk7uqc8l05ec9cywp60x.png" alt="Getting GitHub Stats is Hard" width="576" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At this point, you may think “all those systems have APIs! Let’s extract all that data and compute metrics ourselves! I know the perfect place to put it!”.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--taNZin_f--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e65fc2su9l1pjim7fqpk.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--taNZin_f--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e65fc2su9l1pjim7fqpk.jpeg" alt="A real database" width="750" height="705"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is when the REAL fun begins!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Data Integration is a nightmare&lt;/li&gt;
&lt;li&gt;Linking data is necessary for some metrics (like lead time for changes) but incredibly hard&lt;/li&gt;
&lt;li&gt;If your teams use several systems (say CircleCI and GitHub Actions), you have to deal with data modeling and normalization&lt;/li&gt;
&lt;li&gt;Self-serve can quickly become daunting, and maintenance is hampered&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is why we built &lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;&lt;strong&gt;Faros Community Edition&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Faros Community Edition (CE) is an open-source engineering operations platform that connects the dots between all your operational data sources for a single-pane view across the software development life cycle.&lt;/p&gt;

&lt;p&gt;Features to consider:&lt;/p&gt;

&lt;p&gt;🗺 &lt;strong&gt;Rich Data Schema&lt;/strong&gt;&lt;br&gt;
Connected canonical models for the whole SDLC; 50+ entities, from tasks to deployments&lt;/p&gt;

&lt;p&gt;🚰 &lt;strong&gt;Import from a variety of sources&lt;/strong&gt;&lt;br&gt;
Easy data import onto our models from Task Management, Version Control, Incident Management, and CI/CD systems&lt;/p&gt;

&lt;p&gt;❄️ &lt;strong&gt;Flexible GraphQL API&lt;/strong&gt;&lt;br&gt;
Leverage imported data for automation / exploration in our canonical representation&lt;/p&gt;

&lt;p&gt;📊 &lt;strong&gt;Preconfigured dashboards&lt;/strong&gt;&lt;br&gt;
View well known engineering metrics such as DORA and SPACE&lt;/p&gt;

&lt;p&gt;🏗 &lt;strong&gt;Extensibility and shareability&lt;/strong&gt;&lt;br&gt;
Build and share custom metrics and dashboards&lt;/p&gt;

&lt;p&gt;☁️ 💻 &lt;strong&gt;Container-based deployment&lt;/strong&gt;&lt;br&gt;
Run on your laptop, private or public cloud, with no external dependencies&lt;/p&gt;

&lt;p&gt;Get started in 10 min, get your questions answered and finally ditch the spreadsheets!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/faros-ai/faros-community-edition"&gt;GitHub repo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://youtu.be/9nplGxnyAqw"&gt;1 minute video&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://community.faros.ai/docs/quickstart"&gt;Quickstart guide&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devops</category>
      <category>dora</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
