Home

About Eric

RSS

Complete Archive




My Favorite Books

Series:

Source Control HOWTO

Marketing for Geeks

The 22 Immutable Laws of Marketing

The Business of Software

WPF 3D

Topics:

Software Development

WPF

Business

Laughs

SourceGear


Related Sites:

www.NotALegend.com

www.SourceGear.com

www.Teamprise.com

     

Dogfooding

I manage this weblog with a tool I wrote called CornSharp.  It's a bare-bones app which may not ever be useful for anybody but me.  Nonetheless, I've had a few requests for the source code.

Meanwhile, I've been wrestling with an issue from my day job:  Vault's integration with Visual Studio .NET really needs to improve.  We do support this feature, but it has some annoyances and some performance problems.

In fairness to ourselves, the primary reason our IDE integration is lame is that all source control tools are lame when they are integrated into Visual Studio.  The concept of having source control inside the IDE is great, but Visual Studio's implementation is really poor.  The integration API is awful.  It shoehorns every source control tool into a very constraining little box.  Vault has a number of advanced features that don't fit in that box very well at all.

But there is another important reason why our IDE client suffers:  In general, the developers at SourceGear don't use it.  We much prefer using our standalone source control client.  It's faster and it has more features.  It allows us to take full advantage of all of Vault's capabilities, not just the subset which happens to fit into the source control UI prescribed by Visual Studio.

But a lot of our customers still prefer to do their source control operations inside the IDE.  The IDE client is an important part of our product.  It deserves to be excellent.

This situation is a great example of how important "dogfooding" is.  In a nutshell, dogfooding means "using your own product".  A product which is being dogfooded tends to be a lot more polished.  When a normal user is annoyed by the product, they can't do anything about it.  But when a developer is annoyed by the product, they can stop what they are doing and make the product less annoying. 

So we've started trying to dogfood our IDE client more.  We are still very constrained by Visual Studio's source control architecture, but within those boundaries, we want our IDE client to be as good as it can be.

As part of this effort, today I moved the CornSharp source code to VaultPub, and I am now using the Vault IDE client for its development.  In addition to giving me another way to dogfood the Vault IDE client, the source code for CornSharp is now available.

(For all three of the people on earth who care, you'll need to download the Vault client installer so you can use it to grab a copy of the CornSharp code.  Start with your browser pointed at vaultpub.sourcegear.com and follow the instructions.)