Scott Hanselman

Visual Studio Team System and Pricing - My brief historical perspective

March 22, '05 Comments [14] Posted in Programming
Sponsored By

A lot of folks are up in arms about the Visual Studio Team System (VSTS) Pricing announcements. It looks to be a little spendy, and targeted directly at large companies.

Now, I have a tendency to over-simplify, largely because I'm a simpleton. Here's what I think via historical analogy:

  • Most Windows Developers didn’t use Source Control in the early 90’s until Microsoft bought OneTree Software’s “SourceSafe” and make it available for free.
    • Conclusion: Free integrated SourceSafe arguably made source control happen in Windows development. Before, 99% of casual and small-company developers were just zipping stuff up.

So, it follows that

  • While the ingredients of for TDD (Test Driven Development) and CI (Continuous Integration) are free and Open Source, they are varied and confusing.
    • Conclusion: If there isn’t a Free (or darn near free) integrated solution with VS.NET (that we already own) for TDD and CI, then most developers won’t use ever get the dramatic benefits of Test Driven and Continuous Integration development.

Thoughts?

About Scott

Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.

facebook twitter subscribe
About   Newsletter
Sponsored By
Hosting By
Dedicated Windows Server Hosting by SherWeb
Tuesday, March 22, 2005 5:44:59 PM UTC
I totally agree that most Microsoft developers won't jump onto the TDD and CI bandwagon until it's integrated. So the question really becomes one of price...

Let's say I've got 10 developers that currently use Visual Studio .NET 2003 Professional at $799/each, why would I consider upgrading them to Team Edition for an addition ~$1,500/year EACH for functionality that I don't use today, when I don't really understand what I need it for? "We already use VSS what more do you want?"
Tuesday, March 22, 2005 5:47:47 PM UTC
Scott,

yup. and afaik, only the team system will include stuff like fxcop and prefast integration.

translation: 'professional' developers using the 'professional' edition - [iow: everyone not working in a large company] won't use it.

definitely not a good thing.

WM_MY0.02$
thomas woelfer
Tuesday, March 22, 2005 5:53:31 PM UTC
When I first read the new pricing for MSDN I was highly dissappointed. I purchase (it's always been cheaper for me to purchase than renew) an MSDN Universal every year out of my own pocket because I like to keep current and have the most exposure to the Microsoft tools that I can. It doesn't pay for itself directly, because regardless, I'd still have my job as a Sr. Developer where I'm at (and sometimes Architect role).

At first I thought the new pricing put it out of my reach, but upon more reflection, that's not necessarily the case. You see, the Professional with Premium Services subscription is the exact same level as what we currently enjoy as the Universal, and it is a bit cheaper than the current. It just won't get you Team System, but it will get you VS.NET and an improved sourcesafe (though I use SourceGear Vault).

For current subscribers, they are allowing you a free upgrade path into one of the 3 TS roles (though I'm bummed because my subscription may expire before they release it).

I haven't used too many advanced UML tools (such as Rose), or many profilers (exception for the occasional CompuWare if it is available where I work) or decent defect tracking system or Continuous Integration, or unit testing other than NUnit or load tester. The fact is, I didn't have them before to get hooked on, I can live without them now if it'll save me a few thousand $$$. either way, I'd have to pay for much of the individually, or through MS in the form of TS.

What is more dissappointing, however, is that all we've ever heard about for the past year is Team System this, Team System that only to have it priced out of our reach, but then, MS isn't targeting me with it anyway, they are targeting businesses with the money and need to justify it.

I don't think it is the end of the world, but not as many people will have exposure to those tools in the end, and probly not much different than now, not many people have exposure to the non-ms version of the same tools.

As long as I can get the IDE and the Business productivity tools and the Office and such (the new Professional with Premium Subscription) than I'll be fine, it'll be no differant than how things have been for me the past 5 years with MSDN Universal).

Thanks,
Shawn
Shawn B.
Tuesday, March 22, 2005 5:58:55 PM UTC
I'm sorry, I may have missed the point of the converstation. My direct thoughts are that a few more people might get exposure to the TDD, CI, Unit Testing, profiling and so on that TS offers, but due to the currently announced pricing structure, it may not be many more people than current are exposed to and practice such things with the non-MS versions. TS is certainly out of my price reach (personally), and the company I work for that has over 50 developers won't put TS on all of our desktops, perhaps 2 or 3 lucky people will get some flavor of the TS, but not everyone else, due to price. I guess time will tell how it'll impact the market.

Thanks,
Shawn
Shawn B.
Tuesday, March 22, 2005 6:15:02 PM UTC
I'd go 50/50 on this one, Scott. I think that there is a lot of buzz in the MS Developer community about TDD in particular, and I think that tools like TestDriven.NET might lower the bar for most folks, allowing them to at least break into TDD practices.<br /><br />CI is a little different, I think, because I'm not sure the majority of developers see how that benefits them...,myself included. This is less because of doubts on my part and more because I've not done the research to learn more about it. I am aware the CruiseControl.NET uses CI, but have not had a chance to play with it.<br /><br />I think the where teams are well-informed, community tools for TDD can fill in for a lack of tools in VS.NET. CI, I think, will likely need to be part of VS.NET free toolset for many of us to play with it, and see the benefits.
Tuesday, March 22, 2005 6:45:16 PM UTC
Scott, I agree the pricing is an issue but the fact that it's targeted at large companies is also a problem.

I'm still trying to figure out how we can use it given that
a) we're not going to move our entire source code system from cvs (not least because teams use custom stuff to extract based on their requirements)
b) we're not going to move our entire bug tracking system from pivotal
c) we use a custom delivery & build system thats evolved over the last 10 years to support the way our ~140 developers deliver components.
d) and here's the biggy - the integration points for dropping in 3rd party systems look incredibly painful. It seems there's a lot of heavy lifting to do this time around to NOT use the Microsoft provided defaults.

It feels to me that the Team System / Foundation Server is aim at largeish developement orgs that are just starting up, with no existing development processes in place. If you have existing infrastructure it looks to be a hard fit.

This is all under the 'imho' label although I did have a good chat with a TS Evangelist last week, and need to have a couple more.
Right now though, I just don't see a benifit to the amount of shims we'd need to write to get it to work with our existing infrastructure.
I suspect that what we'll end up doing is re-architecting some of our stuff so that when TS is more extensible we'll fit in a little better. I'm looking at at least web-service enabling our current system rather than the slightly less flexible method we have now.
We're constrained in that we also have to deliver/build for Unix (Various), Linux and AIX which means just a VS.NET front end isn't possible.

Don't get me wrong - I love the concept. I've been pushing really hard for it but I just can't justify the work for what essentially boils down to a slightly better orchestration engine than we have today.

I'm hoping the integration points will get better, very soon. That or 3rd parties (like Pivotal) provide those adapters.

just my buck 50.
Tuesday, March 22, 2005 6:54:14 PM UTC
I agree with you on that. I also think that the pricing combined with packaging will cause a very undesirable situation. Imagine a not-so-large company considering VSTS and willing to hear opinions from its in-house developers. Chances are most of the times these developers did not have a chance to evaluate the product because it is out of their budget, so they cannot form an educated opinion. What happens is that the company will probably not go for it. I'm not sure I believe Microsoft cares if we adopt TDD, CI, or whatever wave is out there. It seems that they are pretty busy trying to get the right customers to buy the more expensive SKUs.
Sergio Pereira
Tuesday, March 22, 2005 8:02:40 PM UTC
It looks like Team System exists for one reason - to compete with the Rational product suite. The pricing is aimed at the exact same kinds of organizations: those with more money than brains.
Chris Tavares
Tuesday, March 22, 2005 8:09:50 PM UTC
Actually, I think MS is targeting the wrong group. The developers in large corporations can, and have, already purchased other systems to integrate the development. They use design tools and configuration management tools because they can afford it. The people who need to use these built-in tools are already reluctant to spend $500 per developer. Even when the developers actively push adopting a tool. So, by pricing this new kit so high, they have already lost the largest part of the market.
Steve Betts
Tuesday, March 22, 2005 9:30:01 PM UTC
While I think that *some* developers would make the transition to Test Driven Design and Continuous Integration on the basis of free Microsoft tools, I'm not sure it would have quite the impact that free VSS has had. From my experience, the primary cost of making a transition to TDD/CI is not in software, but development.

There is significant overhead in making the switch to TDD. The team needs to be trained to write unit tests before writing code, and, for most tests, utility classes need to be written to create data the tests depend on. Once your team has its utility classes in place and is more comfortable with the methodology, every new feature needs to have a series of tests written for it. This, of course, increases the amount of time to get a particular feature done and, *short term*, increases the cost of development.

That said, my company made the switch to Extreme Programming (which relies on TDD and CI) last year and, while I was initially skeptical of the additional work required, I am now fully convinced that it is the way to go. The first month or so was a bit painful, but, now that we have hundreds of unit tests in place, we can safely make large changes to our system without worrying about breaking existing functionality. This, for me, is what makes TDD so effective. The improved code quality and stability doesn't hurt either.

So what does this have to do with VSTS? Nothing. It's not available, we don't use it, and, of all the things we had to do to transition to XP, learning to use the free tools for supporting the methodology was by far the easiest part. I haven't played with the VSTS betas, but I can safely say that the open source tools we use (NUnit, Bugzilla) meet all of our current needs.

If Microsoft wants to charge an arm and a leg for VSTS, they'll simply lose the opportunity to capitalize on a large portion of the emerging TDD/CI market. VSTS looks pretty impressive, but, if a team wants to make the move to TDD/CI, it is hardly essential.
John Hann
Wednesday, March 23, 2005 3:04:31 AM UTC
As other comments have mentioned, the big shops that can afford TS in their budgets will already have an incompatible process in-house. They really aren't going to buy a replacement. The group that actually stands to gain the most from TS is the small to mid level ISV and Consulting firms. They are looking for any edge they can get. They know their development life cycle processes suck, and have been tempted with the TS carrot for a year now (almost every ISV/Partner event ends with a handful of TS marketing slides). But now they are told "sorry but you can't really afford it", even though it has been evangelized and presented to them as something they would want to (and be able to) use in the near future. It's really quite insulting treatment.

Sourcesafe adoption was about grass-roots, "give away the tools to get people on your platform"... not too unlike the MSDN Universal concept. But this new pricing scheme is a slap in the face.
Wednesday, March 23, 2005 3:21:36 PM UTC
It gets even worse - the pricing is targeting the large business, which (As already stated above) will blanch at both the cost and the enormity of the change. Anyone currently in the market to spend that much and change the buisness processes will also most likely go with a more mature product (like Rational)

The smaller shops (or smaller groups in big businesses) that would and could benefit the most out of this are also priced out. Even if they are currently paying for a universal for each, they most likely don't have the same "roles" defined clearly - that is, each person fills multiple roles. Heck, even many large business will not want a role based product. What if Jim moves from testing to development? I wonder if the SDE/T's at MS will be forced to forego the developer edition role and use only the test role product - not likely.

CI and TDD will gain - but it will be because of things like nunit and testdriven.net. Because of this (the "it's not part of Microsoft's suite" mentality), it will gain very very slowly.
Thursday, March 24, 2005 12:32:44 AM UTC
Personally - I think that Architect, Developer, and Tester should be free. Team Foundation should be the non-free aspect of it and it should have been an extension to Project Server. "Don't make me pay for something I can pretty much get for free today" - that's what Mom always says.

So - will there be an NUnit, NMock, NDoc, NAnt, etc for .NET 2.0? Probably. Will they be extensible? Probably. How long do you think it will be before they make them compatible with Team Foundation? Not long if we're lucky.
Thursday, March 24, 2005 2:13:02 AM UTC
Your thoughts sound reasonable to me, Scott. Something else that I find interesting is that of all the Microsoft bloggers I read, none of them are talking about the price change...not even Josh Ledgard who invites controversy in his posts.
Comments are closed.

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.