Eating your own dog food or "dogfooding" is the practice of using one's own products or services. This can be a way for an organization to test its products in real-world usage using product management techniques. Hence dogfooding can act as quality control, and eventually a kind of testimonial advertising. Once in the market, dogfooding can demonstrate developers' confidence in their own products.

Origin of the term

In 2006, Warren Harrison, the Editor-in-Chief of IEEE Software recounted that in the 1970s television advertisements for Alpo dog food, spokesperson and actor Lorne Greene pointed out that he fed Alpo to his own dogs. Another possible origin he remembered was that the president of Kal Kan Pet Food was said to eat a can of his dog food at annual shareholders' meetings.

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 company's product. From there, the usage of the term spread through the company.

Real world usage

InfoWorld commented that this needs to be a transparent and honest process: "watered-down examples, such as auto dealers' policy of making salespeople drive the brands they sell, or Coca-Cola allowing no Pepsi products in corporate offices… are irrelevant." In this sense, a corporate culture of not supporting the competitor is not the same as a philosophy of "eating your own dog food". The latter focuses on the functional aspects of the company's own product.

Dogfooding allows employees to test their company's products in real-life situations; a perceived, but still controversial, advantage beyond marketing, In software development, dogfooding can occur in multiple stages: first, a stable version of the software is used with just a single new feature added. Then, multiple new features can be combined into a single version of the software and tested together. This allows several validations before the software is released. The practice enables proactive resolution of potential inconsistency and dependency issues, especially when several developers or teams work on the same product.

The risks of public dogfooding, specifically that a company may have difficulties using its own products, may reduce the frequency of publicized dogfooding.

Examples

In February 1980, Apple Computer president Michael Scott wrote a memo announcing "Effective Immediately!! No more typewriters are to be purchased, leased etc., etc. […] We believe the typewriter is obsolete. Let's prove it inside before we try and convince our customers." He set a goal to remove all typewriters from the company by 1 January 1981.

By 1987, Atari Corp. was in the process of using the Atari ST throughout the company.

The development of Windows NT at Microsoft involved over 200 developers in small teams, and it was held together by Dave Cutler's February 1991 insistence on dogfooding. Microsoft developed the operating system on computers running NT daily builds. The software was initially crash prone, but the immediate feedback of code breaking the build, the loss of pride, and the knowledge of impeding the work of others were all powerful motivators. Windows developers would typically dogfood or self-host Windows starting from the early (alpha) builds, while the rest of the employees would start from the more stable beta builds that were also available to MSDN subscribers. In 2005, InfoWorld reported that a tour of Microsoft's network operations center "showed pretty much beyond a reasonable doubt that Microsoft does run its 20,000-plus node, international network on 99 percent Windows technology, including servers, workstations, and edge security". InfoWorld argued that "Microsoft's use of Windows for its high-traffic operations tipped many doubters over to Windows' side of the fence."

Alternative terms

In 2007, Jo Hoppe, the CIO of Pegasystems, said that she uses the alternative phrase "drinking our own champagne". Novell's head of public relations Bruce Lowry, commenting on his company's use of Linux and OpenOffice.org, said that he also prefers this phrase. In 2009, the new CIO of Microsoft, Tony Scott, argued that the phrase "dogfooding" was unappealing and should be replaced by "icecreaming", with the aim of developing products as "ice cream that our customers want to consume". A less controversial and common alternative term used in some contexts is self-hosting, where developers' workstations would, for instance, get updated automatically overnight to the latest daily build of the software or operating system on which they work. Developers of IBM's mainframe operating systems have long used the term "eating our own cooking".

See also

  • Alpha test
  • Food taster
  • Self-hosting
  • Servant leadership
  • Software prototyping
  • User innovation

References

  • What Is The Work Of Dogs In This Country? (Joel Spolsky on Fogbugz's dogfooding, Joel On Software, 2001-05-05)
  • 'Chowing down on dogfood' (Google dogfooding Blogger)