Slashdot Mirror


Microsoft Vs. TestDriven.NET

Erebus writes "Jamie Cansdale released a free addin to Visual Studio back in 2004 to help developers build unit tests. His only problem was, he enable his addin for all versions of VS - including the Express addition which isn't suppose to support addins. After over a year of trying to talk with Microsoft and understand how and why he was in violation of their license agreement, during which they would never explain specifically which clause in the license was being violated, they sent the lawyers after him and pulled his MVP status. To top it all off, Jamie is actually a Java developer by day — his addin was originally developed just as a hobby project. A full account is available on his blog, including all email correspondence he had with Microsoft and the now 3 letters received from Microsoft lawyers. The lead product manager for Visual Studio Express has responded to Jamie's posts."

8 of 418 comments (clear)

  1. Shoot at foot... by Ckwop · · Score: 4, Interesting
    1. Aim at foot.
    2. Fire at foot.
    3. ...
    4. Profit?

    What is it about Microsoft and reinventing perfectly good tools. First they tried to replace Nant with MsBuild, with limited success. They're trying to reinvent Subversion and Cruisecontrol with the Microsoft Team System. They are the ultimate NIH company. I've started to form the opinion that this is unsustatinable for Microsoft. You can't keep reinventing and supporting tools like this forever, because no matter how many programmers you have there OSS movement has more. They will keep producing high-quality tools faster than you can release competitors.

    People used to complain that Sun were control freaks about Java. What did Sun do? They listened and GPLed Java. I think the guys at Sun have come to a similiar conclusion to me. Your products are part of an ecology and the ecology is always bigger than one company. What you want to do is foster a larger ecology for your products and hope that this translates to sales.

    I admire Sun for this approach, it's risky but it shows maurity in face of change ushered in at the hands of OSS. Microsoft seems to have no strategy for tackling OSS outside of the United States. Over here, software patents don't exist. They may win the battle but be swamped by the tidal wave from abroad.

    I use TestDriven every single day I'm in work and I can tell you that this makes the licensed copy of Visual Studio 2005 (paid at full price) a much more functional piece of software. To me, this is validation of the ecology; the open source product made me feel that I'm getting more value out of the purchase.

    It's this affect that Sun hopes GPLing Java will bring to their revenues. I for one think they're right.

    Simon.

    1. Re:Shoot at foot... by RightSaidFred99 · · Score: 3, Interesting
      You've got to be kidding, right? You actually think MS should just not develop products because there are a bunch of various different open source tools people could use instead? That makes absolutely no sense whatsoever.

      First, they are a software company and they sell solutions, not products. MsBuild integrates with all the other MS tools including Visual Studio and TFS. I would rather have one solution that works well than having to pass through the open source gauntlet of choosing from 20 different tools and trying to make them all work together. Comparing TFS to Subversion is insultint - to TFS. TFS is much more than Subversion, think Subversion + Continuum + Bugzilla (somewhat) + requirements tracking + other tools.

      In short, your post is entirely wrong. I don't see you bitching about ClearCase, Synchronicity, or other commercial tools. It's just Microsoft that is silly for releasing products when there are already all these "great" open source tools.

  2. Having read the MS response by palladiate · · Score: 4, Interesting

    The MS project manager goes on about working with Jamie to clear up the Express situation, but doesn't explain their reasoning beyond calling what he did "illegal."

    First, that's not the way to treat your community. Either explain to him and to us exactly what he did that was wrong, beyond the vague wording at the beginning of not being in the "spirit" of Express editions. Second, when can Microsoft unilaterally declare breach of contract "illegal?"

    I use DevC++ for all my hobby needs and teaching the kiddo. After this, I would never switch to MS C++ Express or VB Express, even if it was a vastly superior product. I just need some syntax highlighting and compiler integration. I don't want to dance around legal threats over what Microsoft's "spirit" is this week.

  3. How far can licenses go by ch-chuck · · Score: 5, Interesting

    I've often wondered how much one can get away with in licenses. Of course they cannot override any consitutional or local laws, but say a developer is rather religious. Can s/he then stipulate that the software cannot be run on Sundays? Or that the user must be wearing underwear or shoes and shirt while using $PRODUCT ?

    --
    try { do() || do_not(); } catch (JediException err) { yoda(err); }
  4. Re:english by Anonymous Coward · · Score: 3, Interesting

    Come on. The irony of this is at very high levels. M$ touts Visual studio express as the "free" windows IDE/compiler in response to many OSS competitors. Then someone develops something for it and M$ starts pitching a livid bitch fit. This is M$ paying lip service to customers, saying "look here, we're free too!" then having it bite them in the ass, because the value of M$'s software is enforced by an untested (ie legally debatable) custom shrink wrap copyright.

  5. Re:But is it illegal? by kebes · · Score: 5, Interesting

    Has anyone found a nugget of legal truth in the other documents?
    According to the Microsoft legal threat, the relevant portion of the Visual Studio Express EULA is:

    ...you may use the software only as expressly permitted in this agreement. In doing so you must comply with any technical limitations in the software that only allow you to use it in certain ways... You may not work around technical limitations in the software.
    Microsoft would claim, therefore, that to develop TestDriven.NET, the developer had to download Visual Studio Express, and agree to the EULA in order to install it. However the situation is probably more complex. The issue (from what I can tell) is that a single version of TestDriven.NET works with all versions of Visual Studio (Express or otherwise). So it can easily be shown that TestDriven.NET was developed using the full version of Visual Studio--which not only allows you to create add-ins but in fact encourages you to do so. So the EULA (of the full version of Visual Studio) was not broken.

    So the question is: "Is TestDriven.NET legally required to alter their product so as to enforce the terms of someone else's EULA?" Isn't it the end-user, who combines VS Express and TestDriven.NET that is in violation of the EULA?

    Or perhaps the real question is: "Are ridiculous terms in an EULA, such as 'thou shalt not make the product do things we didn't intend for it to do' actually legally enforceable?"
  6. More details by Mateo_LeFou · · Score: 5, Interesting

    Digging into the email exchange I found Jamie saying:

    1) You said that by using Intellisense I may be in breach of the
    dissasembly clause in the VS SDK license.
    2) You said that by working out how to use an API by looking at the
    public type and method names I may be in breach of the reverse
    engineering clause in the VS SDK license.
    3) You said that by adding a button to the Express SKU interface I may
    be in breach of Microsoft's copyright.

    #3 is particularly funny

    --
    My turnips listen for the soft cry of your love
  7. Boycott TestDriven.NET. by DavidMarkle · · Score: 3, Interesting
    How about some facts?

    If only people would stop and dig through the facts, you'll see that Jamie Cansdale not only acted in bad faith by first agreeing to withdraw support for the VS.NET plugin, then turning around only one day later and re-offering support for it in the betas of Visual Studio.NET Orcas. Let us for the moment concede that perhaps Jamie has some sort of valid legal case for continuing to offer his Add-in. Even if that were so, let's read the text of his letter to MS's lawyers, shall we?

    " ...we the undersigned hereby jointly and severally: ... undertake ... never again in future (whether acting by ourselves, though agents or third parties, ... etc etc... to make such or any other similar offending products available for sale or otherwise on that or any website, or through any other medium ... We understand that our undertakings in this letter are undertakings to the Court and we are aware that any breach of them may be treated as a *contempt of court*. [Emphasis added by me]"

    Wow. That's a pretty strong statement. That means that by re-offering the plugin for Orcas after shipping this letter, Jamie has said that he's willing to go to jail. Perhaps he'll learn some sense of ethics there.

    Jamie Quells Dissent on his Blog

    You probably won't hear me paraphrase Chuck D much on this blog, but don't believe the hype. Why not? Well, I as well as others (see Eric's post) have tried to write entries in his blog telling him that he's in the wrong on this issue. Somehow our posts never made it to his blog! Surprise! I wonder if it's a bug in his blogging engine. Or perhaps Jamie doesn't want to have a backlash against him start on his own weblog.

    TestDriven.NET is not Free Software

    If you read most of the responses to this story in Slashdot, or (believe it or not) Jamie's blog, you'll probably be led to believe that TestDriven.NET is free, open-source software, and that Jamie Cansdale is a lone developer, toiling away for the sake of the community, and being bullied by the 800 pound Gorilla that is Microsoft. Nothing could be further from the truth. TestDriven.NET costs$95 per user. Want an enterprise license? That'll be $10,500, please. Some have made the patently ludicrous claim that Jamie does give the software away for free. Not if you're using it professionally, he doesn't! His licensing terms are... wait... that's the next section! Stay with me here, this is the best part!

    Jamie's License is Just as Bad

    It's time to play a little game, boys and girls. The game is, "let's guess whose license agreement this is":

    " ...you may use the software only as expressly permitted int his agreement. In doing so you must comply with any technical limitations in the software that only allow you to use it in certain ways... You may not work around any technical limitations in the software..."

    versus:

    " ...Licensee shall not, and shall not permit others to ... use the Software in any manner not expressly authorised by this Agreement."

    Sound pretty familiar, don't they. The same clause that Jamie complains is vague, irrelevant, and unenforceable in the MS license is pretty much exactly the same in the TestDriven.NET license. Jamie Cansdale is a hypocrite, and he deserves to be exposed as such, and punished.

    TestDriven.NET's Real Functionality comes from Software that is Free

    For those of you unfamiliar with the product, TestDriven.Net is basically a plug-in for Visual Studio that allows developers to run NUnit, MBUnit, and NCover tests with a click of the mouse, or a quick keystroke. It performs a few other functions, but that's about it. These products are all open-source and free. Others have labored long and hard to generate these tools, and Jamie ships them with his non-free product. All of the heavy lifting is done by these utilities -- TestDr