The downside to “dogfooding”

A term that’s become very pop­u­lar, and which espe­cially Microsoft’s devel­op­ers seem to cham­pion, is “dog­food­ing”. The idea that as a devel­oper, you should use your own prod­ucts on a daily basis, even dur­ing devel­op­ment. This exposes you to all the weak­nesses and flaws of the prod­uct, and makes you much bet­ter equipped to deliver a prod­uct that’s actu­ally worth using.

But per­haps there’s a counter-argument that peo­ple seem to miss. If you use a lousy piece of soft­ware on a daily basis, you get used to it. You stop think­ing about how it should be, and only con­sider how it is.

I think the first place I heard of the term “dog­food­ing” was on the Win­dows Mobile team blog. And let’s be hon­est, is Win­dows Mobile really a com­pet­i­tive prod­uct? Is it worth using? Per­haps in a vac­uum. If all you know is Win­dows Mobile, then, well, it’s not too bad. But there’s an obvi­ous rea­son why the prod­uct is strug­gling in the mar­ket­place. Com­pared to every­thing else, it feels hor­ri­ble to use.

Per­haps the recipe for fix­ing Win­dows Mobile would be less dog­food­ing. Win­dows Mobile devel­op­ers shouldn’t be forced to use their own buggy, slow, in-development OS all the time on their phones. Per­haps they should be given iPhones and Black­ber­ries. Per­haps some of them should even be given sim­ple old-school non-smartphones. The ones that didn’t need to be rebooted, and didn’t “fea­ture” load times for open­ing your con­tacts list, or to write a new SMS (text mes­sage). Per­haps they need to be shaken up a bit, and see what else a phone can feel like when you use it. Win­dows Mobile 6.5 might be bet­ter than WM6.0. But that’s not the com­pe­ti­tion they need to beat. They need to beat the iPhone, they need to beat Android, Black­berry and Sym­bian. So those are the prod­ucts they should use at least as much as they use Win­dows Mobile.

The same may be true for Visual Stu­dio. It’s great that the team uses Visual Stu­dio 2010 inter­nally as much as pos­si­ble dur­ing devel­op­ment. But that also means that they get used to its per­for­mance issues. And it means they get used to the assump­tion that “this is what an IDE is like”.

Per­haps Visual Stu­dio would be a bet­ter prod­uct if the team was forced to use Emacs, Vim and Eclipse. Or per­haps even Notepad and makefiles.

And how much bet­ter would TFS be, if the devel­op­ers had used Git or Bazaar instead of dog­food­ing TFS dur­ing development?

Dog­food­ing has its advan­tages, cer­tainly, but I don’t think it alone is a recipe for a good, com­pet­i­tive prod­uct. It leads to an incre­men­tal improve­ment over the pre­vi­ous ver­sion of your prod­uct, but it doesn’t take into account what else is hap­pen­ing in the world. It doesn’t give you the oppor­tu­nity to ques­tion your basic assump­tions1. Some­times, incre­men­tal improve­ment is not what your prod­uct needs.

Just a thought.


  1. Of course I’m not claim­ing that Microsoft’s devel­op­ers never use or exam­ine com­pet­ing prod­ucts. And like­wise, there are obvi­ous ben­e­fits to dog­food­ing, and I’m cer­tainly not claim­ing that the prac­tice should be elim­i­nated. But I think it is telling that their blog posts fre­quently men­tion how heav­ily they dog­food their prod­ucts. But they never men­tion “for this release of Visual Stu­dio, we actu­ally went back and looked at why many peo­ple still pre­fer Vim.”, or “In devel­op­ing Win­dows Mobile 7, the entire team was issued phones run­ning var­i­ous other OS’es, and this taught us what we need to do to finally ship an OS that will take over the world”. 

Share and Enjoy: These icons link to social book­mark­ing sites where read­ers can share and dis­cover new web pages.
  • Digg
  • del.icio.us
  • StumbleUpon
  • Reddit
  • Technorati

Tags: , , ,

2 Responses to The downside to “dogfooding”

  1. […] had some inter­est­ing things to say against the devel­op­ment par­a­digm of dog­food­ing, using this related arti­cle at jalf.dk as a spring­board. I have to say, there are some excellent […]

  2. Kosi2801 says:

    Eat­ing your own dog­food has quite a long his­tory trail already. I can remem­ber when I read it years ago on Joel Spol­skys blog (http://www.joelonsoftware.com/articles/fog0000000012.html) and also Jeff Atwoods blog (http://www.codinghorror.com/blog/archives/000287.html)

Leave a Reply

Name and Email Address are required fields. Your email will not be published or shared with third parties.