This is part of a Tech Jargon Defined series focused on de-mystifying common tech jargon terms.
There's a lot of tech-specific phrases out there, and 'dogfooding' is a classic example of a piece of tech jargon. Hearing it always makes me a little queasy because it reminds me of Proverbs 26:11 "As a dog returns to his vomit, so a fool returns to his folly."
Luckily, in reality, the meaning of the term is nowhere near as gross-- and in practice, it's a wise thing to do. 'Dogfooding' means that a developer adopts the software they create themselves. It's a casual way to test the user experience of a product.
Keep in mind, there's no substitute for external feedback from a user out in the wild. When you're dogfooding, you'll certainly have blind spots. You'll know the next step in the user path because you designed it! At the same time, it can help you spot glaring errors.
So go ahead, try dogfooding your software. At the very least, it's not foolish.
Top comments (2)
Something a co-worker told me is that we call it dog food because "you make it, but you don't eat it", meaning that the software is rarely developed for another developers, so you have to keep a mindset where nothing is as "intuitive" as you think. In short, what you said: put yourself in the shoes of the user.
Thanks.. I had always thought it meant to feed to the user in small bits... 😕