Eating one's own dog food

From Wikipedia, the free encyclopedia

Jump to: navigation, search

To say that a company "eats its own dog food" means that it uses the products that it makes. For example, Microsoft emphasizes the use of its own software products inside the company (although they are also known for using competing technologies for their own infrastructure). "Dogfooding" is a means of conveying the company's confidence in its own products.[1]

The idea originated in television commercials for Alpo brand dog food;[citation needed] actor Lorne Greene would tout the benefits of the dog food, and then would say it's so good that he feeds it to his own dogs. In 1988, Microsoft manager Paul Maritz sent Brian Valentine, test manager for Microsoft LAN Manager, an email titled "Eating our own Dogfood" challenging him to increase internal usage of the product; from there, the usage of the term spread through Microsoft, as chronicled in the book Inside Out: Microsoft—In Our Own Words (ISBN 0446527394). The phrase became slang during the dot-com craze, and is used most commonly in reference to technology companies.[citation needed]

In many development environments, to "eat [one's] own dog food" refers to a point at which a product under development is delivered, even in its rough state, to all on the project for use. Particularly in software development, early versions of the product may contain many bugs, crash, lose data or otherwise be unusable, and the people on the project team do not fully rely on it for its intended purpose. As the product matures, members of the team are reluctant to try it, having been burned by a faulty "not ready for prime time" version. In extreme cases, management may issue a dictate that everyone in the organization is to "eat their own dog food" (meaning, for example, "use the latest version of our in-house email program"), as a way of verifying that the product works under real-world conditions. It is often the source of comic chagrin among workers when such a dictate comes earlier than is practical (if, for example, the in-house email program cannot yet send email).[citation needed]

Using one's own products has four primary benefits:

  1. The product's developers are familiar with using the products they develop.
  2. The company's members have direct knowledge and experience with its products.
  3. Users see that the company has confidence in its own products.
  4. Technically savvy users in the company, with perhaps a very wide set of business requirements and deployments, are able to discover and report bugs in the products before they are released to the general public.

A disadvantage is that if taken to an extreme, a company's desire to eat its own dog food can turn into Not Invented Here syndrome, in which the company refuses to use any product which was not developed in-house. Another disadvantage is that if the company developing the product is significantly different from its target users, this may skew the direction of development and/or reduce the efficacy of the above advantages.

[edit] Criticism

The most prominent criticism against "eating one's own dog food" is that software should be chosen based upon what is most appropriate and performs best, regardless of who has developed the software.

[edit] References

[edit] External links

Personal tools