Anyone who’s been around the software industry for a while has heard the phrase “eating your own dog food”. It is the practice of a company using its own product. In my career, I’ve always worked for software companies that live and breath this practice. Dogfooding is second nature to me. “Of course we’re running our own products!”
Often, eating your own dog food is a milestone in the release process. If your own company isn’t able to run the software successfully, how can you ask your customers to use it?
Dogfooding is even more important for major new versions of an existing product than it is for new products. With a new product, there are no existing installations to upgrade. Users are not entirely dependent on the software to get their jobs done. The new product is not a vital and integral part of the employees’ day.
With upgrades, though, there are expectations of how the software is going to behave. The users cannot afford disruptions in their day, and they don’t want to wrestle with the software after an upgrade.
It’s probably no surprise to you that here at SugarCRM, we run our business on our own product. Our internal Sugar instance is the single longest running installation of Sugar on the planet. Every employee at SugarCRM uses our internal Sugar instance on a daily basis. It’s been heavily customized over the years, often adding functionality for our specific business needs that were eventually redone for inclusion in the base product. This means not all of those original customizations were upgrade-safe — shame on us! – due to the upgrade-safe methods being built after the fact.
We won’t go to the Release Candidate milestone with a new major version of Sugar until we’ve been running it successfully in production ourselves for at least a couple of weeks. This gives us time to shake out any problems encountered with the upgrade, and add fixes to the upgrade process as necessary.
I’m happy to say that we did our production upgrade to Sugar 6.0 last night. So far, the reaction from our internal users is overwhelmingly positive. No disruptions, and they’re already seeing the benefit of Sugar 6.0’s myriad of usability improvements. One of our veteran sales guy said to me, “That was the easiest upgrade we’ve ever done!”
The countdown is now on to Sugar 6.0 Release Candidate 1!