Comments on the pricing of Team System
The .NET blogging community is buzzing with entries about the recent announcement of pricing for Team System. People keep asking me to chime in, so here goes:
Many of the blog entries I've seen are leaning toward the negative. A lot of folks are complaining. People tend to complain when their expectations are not met. Perhaps it would be helpful to identify which expectations were not met and why that happened.
The perceived entitlements of MSDN Universal
I observe that most MSDN Universal subscribers have an expectation which looks something like this:
As an MSDN Universal subscriber, I get everything Microsoft sells.
Given this expectation, it is easy to understand why people are upset. For these people, the world is about to change. Current MSDN Universal subscribers will not get everything in Team System. (They get a free upgrade to one of the three "role products", but not all three, and they still don't get the server.) The retail price of the new incarnation of "MSDN Everything" has gone from $2,799 to $10,939. And on top of this apparently outrageous price increase, the top tier of MSDN no longer has "everything".
But it never did. This is part of the underlying problem. The expectation above was never completely valid. MSDN Universal subscribers receive a seemingly endless stream of CDs or DVDs. Those discs do contain [basically] everything Microsoft sells, but there is a difference between having the bits and having the right to use them. The contents of those discs are provided under the terms of a license which specifies how the software may be used. I daresay that a majority of MSDN Universal subscribers violate the terms of the license. This happens in two ways:
Many companies and teams buy a single subscription and share it among all their developers. This form of piracy is rampant. Some folks probably even think it's legal. It's not.
We encounter this all the time when talking to people about our own products.
User: "Why should I buy Vault when SourceSafe is free?"
SourceGear: "Why do you think SourceSafe is free?"
User: "Because it's on the MSDN discs."
If you have ten developers using Visual Studio, you're supposed to have ten subscriptions to MSDN Universal. That's the way it works.
Many people use "developer licenses" outside their intended use. This one is even more subtle. The discs in your MSDN subscription contain lots of things which are licensed for development purposes only. I suppose only Microsoft can explain exactly what this means, but I have understood it like this:
- I can use SQL Server Developer Edition when I am developing an application which uses SQL Server. However, if I need SQL Server for my company's accounting system, I need to buy a full license elsewhere.
- I can use Windows Server 2003 for development and testing, but if I want to host my company's online store, I need to buy a full license elsewhere.
I can use Microsoft Office from my MSDN disc if I am developing an Excel plugin. However, if I need Word to edit my business plan, I need to buy a full license elsewhere.
(Oops! Bad example. This is incorrect.)
What about dev tools like FogBugz, Dragnet or Vault? These tools store their data in SQL Server. Surely we can use the SQL Server bits on the MSDN discs for these purposes, right? After all, this is "development".
This may seem to be a grey area, but I think the rules are clear. Using these apps require real SQL licenses, not the developer licenses which come with MSDN.
MSDN has never included licenses to use Microsoft's server products. Team Foundation Server is no different.
Most MSDN Universal subscribers believe that they are getting tens of thousands of dollars of software for $2,799 retail. Believing this doesn't make it true.
Please note, I am not accusing anyone in particular of piracy or cheating. A reasonable and honest person who is completely legal on their use of the stuff on the MSDN discs might still be quite dismayed over the new pricing. Even if you are one of the savvy people who already understood that there is a gap between MSDN Universal and "everything", that gap just got a lot wider.
I'm not asking every MSDN subscriber to be happy about the pricing -- I am merely surfacing a very general expectation which I think is part of the unhappiness.
And I'm also saying that I think the pricing actually makes sense for Microsoft and its strategy. Read on...
The target market for Visual Studio Team System
It's easy to understand why people became excited about Team System. Microsoft is finally getting truly serious about source control and bug-tracking and test-driven development. Why not be excited?
The problem here is that many of those excited people are not really within Team System's apparent target market.
The intersection between the real enterprise software market and the .NET blogging community is probably very small. I therefore feel justified in making the following sweeping generalization to my readers:
Visual Studio Team System wasn't really designed for you.
Ten months ago I said Team System was positioned as a competitor to ClearCase. Now that the pricing is public information, people are beginning to understand this idea. Another wave of complaints will follow later when people actually try to install and use Team System. This product is very, very large.
Personally, I think Microsoft made a mistake in setting expectations when they originally said Team System was designed for teams of 5 or more people. I suppose Microsoft will eventually refine this product to the point where it is more appropriate for smaller teams. But right now and for the indefinite future, it is inconceivable to me that a 5 person team would want to install and use this thing. I envision 5 people trying to take a 747 jet to McDonalds for a burger when a minivan will obviously get them there more efficiently.
I crossed paths recently with a company who I consider to be a pretty good target customer for Team System. Let's call them XYZ Corporation. They have 8,000 developers. Their source control repository is 15 terabytes. These people have a whole different class of problems, and those problems are the ones that Team System is being designed to solve. When Microsoft claims that Team System is designed for the enterprise customer, they're not kidding.
It's all about Tiers
The Visual Studio 2005 family of products is probably the best example I have ever seen of using tiers to extract the right amount of money from a wide variety of customers. Microsoft's basic goal here is to sell Visual Studio to everyone who writes code.
Visual Studio 2003 was tiered as well, but Microsoft apparently realized they were doing a lousy job at the very low end and the very high end. With 2005, they have added tiers to help Visual Studio reach a wider audience:
- The new "Express" editions reach out to the student and the hobbyist. Microsoft loses a lot of these people to Linux and its ilk.
- The new "Team" editions reach out to the enterprise. Microsoft loses a lot of these people to Rational/IBM and some to Borland.
But every company which uses a tier strategy has to face complaints from customers in one tier who want the features of the next tier without paying for them. I have a Chevy Avalanche with the 5 liter engine. I wish it had the 8 liter engine in the next tier. I complain about it.
A lot of Visual Studio developers in the "Professional" tier are complaining that they want the stuff in the "Team" tier. In other words, they may understand that they are not the target market for Team System, but they are not happy about it. They want source control. They want bug-tracking. They want unit testing. Placing those features in the "Team" tier does not meet their expectations. So they complain.
Microsoft is the largest software company in the world. They are utterly dominant in some markets, but they are utterly irrelevant in others, including the market for enterprise-class lifecycle development tools. It is important to realize that Microsoft is facing very difficult competition in this market. They have some major catching up to do. Success is not guaranteed.
If I were to advise Microsoft on how to fail in this challenge, I would tell them to try and please the enterprise customer and the folks in the "Professional" tier at the same time. :-)
But Microsoft is smart. They are designing a product to win and they are pricing it accordingly. That is IMNSHO the right strategy for them. Team System is already a lot cheaper than its competition. If they priced it dramatically lower than it is now, the target market would not take it seriously. Remember, the people in that target market already hold a negative view of Microsoft's ability to deliver this kind of product.
I believe Microsoft will succeed. Team System is going to be an incredible product. It raises the bar in a number of ways that I believe are truly unique. It will take some time before it attains the level of polish and maturity now available with ClearCase, BitKeeper or Perforce. But they will get there.
Perhaps someday Microsoft will bring some or all of the features in the "Team" tier to the broader market. But right now I completely understand why they feel the need to stay focused.
Yes, yes, I know -- I'm biased
My regular readers know that I take pleasure in my ability to be objective. When I admire a competitor, I admit it. When my own product is lame, I admit it.
Obviously, I have some bias with respect to the all these Team System issues:
- My company sells Vault (a source control tool) and Dragnet (a bug-tracking tool). Our target market consists primarily of the folks in the so-called "Professional" tier, exactly the set of people who are unhappy about the pricing of Team System. I have no interest in making Vault into the solution for those nasty CM problems at XYZ Corporation.
- We are also going to be selling add-on products for Team System. A few weeks ago I announced a project we call Allerton. It's vaporware right now, but we'll be showing demos at Tech-Ed.
So in two different ways, I am too involved to be truly objective.
But I tried to lay my biases aside when I wrote this piece, and I hope you will look beyond them as you read it. I wrote this to offer a perspective that I hope will be helpful. The mismatch of expectations is not surprising when you look at both sides, but I think there are good reasons why Microsoft has made the decisions they have made.