dark mode light mode Search Menu


Steve Starer on Flickr

Dogfooding is short for “eating your own dog food”. As a software company or developer, this means using for yourself the software you write for your clients.

This has great advantages because you are able to see what the user experience is like for your clients. You are also more likely to fix a bug if it affects you in your daily work.

For a long time the compiler for Microsoft’s C# programming language was written in C++. Then the C# team at Microsoft created a new compiler called Roslyn, which is written in C#. It is a lot faster than the previous compiler and it has the advantage of now being cross-platform (it works on different types of computers). It’s interesting that the code to compile the language into code is written in the language.

No one really knows where the term dogfooding or eat your own dog food comes from. In the 1980s, a TV actor Lorne Greene mentioned he fed Alpo dog food to his own dogs. And the CEO of Kal Kan Pet food also supposedly ate the company’s dog food product at annual company meetings.

However, the first mention for computer programming was in an email from a 1988 email from Microsoft manager Paul Maritz, titled Eating our own Dog Food, encouraging another Microsoft manager to use their products as a way to understand and improve them.

So now that you know what dogfooding means, can you find ways to try it yourself when creating a tool or application for other people? What software do you use, or could you use, that you might also build for other people?

Learn More

Eat Your Own Dogfood


What is the Work of Dogs in this Country?