Eat your own dog food or risk falling behind

by liz ryan|

When you have a problem, you need a solution that you can trust to quickly solve it for you. But in a world full of endless options at your fingertips (thanks to the internet), it can be hard to trust things that are untested and unfamiliar. In your search for the right solution, you turn to those that have experience using the options you’re considering to ensure you make the right choice. You can then confidently address your problem with a recommendation from someone who uses the solution themselves.

The same can be said for selecting the right business solution. You’re probably more likely to choose the one that’s been used, tested, and proven by the company recommending it. In the tech space, this concept is called “dogfooding”.

The term, “dogfooding” or “ eating your own dog food,” originally emerged from a 1970s era Alpo Dog Food commercial where a famous American actor simply fed Alpo to his dog as he recommended it to the viewing audience. In the tech world, legend has it that in 1988, Microsoft legend, Paul Maritz, leveraged the concept to challenge his colleagues to use the company's products for themselves to ensure the value they could deliver to customers.

Regardless of its origin, dogfooding has been around for a while and there’s a reason for that. It’s a no-brainer to confirm the true value of your product by actually using it yourself. We believe in this wholeheartedly at Sonar..

How to start eating your own dog food 

Dogfooding is a way of clearly demonstrating confidence in your own products, by using them every day to ensure that they pass the tests of real-world scenarios. Unfortunately, it’s not as simple as Alpo dog food when it comes to tech products. Each cog in the metaphorical machine must work in harmony for the products to perform as expected. 

With dogfooding, you not only use your products, you rely on them and integrate them into your development and production workflow as much as possible. This helps you anticipate challenges and embrace opportunities ahead of your end user. But if your organization isn’t doing this today, where do you begin? The following principles can help you get started:

1. Ensure you have the right access

You can’t start eating your own dog food without the right access to your products. Whether this is a test or live environment, making sure that you can use the product every day like your end user will help you “take a walk in their shoes.” This, in turn, helps you better understand the challenges they face and the victories they achieve with your products.

2. Establish the “why”

When addressing issues or proposing innovation for your products, you first have to have a clear understanding of how important it is, why you are deciding to work on it, and the expected outcome. It’s also important to think through how this fits into the big picture of your products.

3. Take baby steps

Rather than chasing after a major release, you can opt to break things down into small meaningful changes that bring incremental value to the end user. When you skip these “baby steps,” you may lose sight of key dependencies or create rework by overlooking details. This helps to shorten the iterations, achieve realistic goals and maximize investments into solutions that are actually useful. 

4. Create a timebox

By proactively defining a clear time frame for the team to commit to delivering the work, you minimize the impact of taking on too much to fill the time or adding too little to the sprint. This way, you take on functional increments that are realistically achievable. This helps the team stay focused and have a clear understanding of what needs to be done to meet the timebox.

5. Promote the feedback loop

Feedback is essential to discovering whether you’re creating value for the user. The most credible sources of feedback come directly from the end user and from your own experience trying your products. It’s each team member’s responsibility to ask for and provide feedback that is both professional and productive. And feedback is only effective if the team adapts to it after it's given.  

The real moment of truth comes when you release code into production and start using it. This is the most important opportunity to test whether it works in the real world in the way it was  envisioned, or to “eat your own dog food.” 

Putting it into practice at Sonar

At Sonar, we eat our own dog food every day. Not only do we use our Clean Code products, we leverage this concept across our organization.  We use it in everything from our web development cycles to our website, from our marketing to our helpdesk, and from internal processes to our company culture. We leverage tools like open forums to introduce initiatives and freely provide feedback that’s topical and constructive on an ongoing basis.

Dogfooding has influenced how every one of our teams operates and the trajectory of our products. We leverage the same Clean Code products and practices in our development cycle to deliver the Clean Code solution that our thousands of customers use every day. This uniquely positions us to continuously bolster our core methodology. 

A real example of how our dog food impacts us can be found directly in our product’s user interface with the red and green colors we use to convey information. When colorblind Sonar employees and a UX designer started using our products, it quickly came to light that accessibility improvements needed to be made to accommodate their requirements. The key principles outlined above were used to develop and circulate a solution internally and today this accessibility concern is integrated into our design and is always top of mind. 

Dogfooding deeply impacts how we deliver quality in our products. While we’d prefer a nice espresso to Alpo dog food, we’ll continue to “eat our own dog food” to deliver the best Clean Code products on the market.