Microsoft vs TestDriven.Net - You’ve Got To Be Kidding Me?!?
I have been following a topic I discovered only a week ago but this incident is more than 2 years old. This issue centers around the question did Jamie Cansdale of TestDriven.Net violate the EULA for Visual Studio Express?
I think the answer is fairly simple, depending on the situation, YES he did. He violated clause 9 of the EULA.
SCOPE OF LICENSE. The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, 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. For more information, see www.microsoft.com/licensing/userights. You may not
• work around any technical limitations in the software;
• reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, despite this limitation;
• make more copies of the software than specified in this agreement or allowed by applicable law, despite this limitation;
• publish the software for others to copy;
• rent, lease or lend the software; or
• use the software for commercial software hosting services.
Some have commented and argued on various blogs that it can’t be proven that he used or wrote his software with the Express Edition. Come on! Are you serious? Of course he used it, maybe only long enough to test the install of his addin but he still used it. Here is the technical explaination of how he worked around the fact that Addins are disabled in Express.
The TestDriven.NET product is implemented as a Visual Studio Add-In. In the Visual Studio Standard, Professional, and Team System SKUs, TestDriven.NET is installed as an Add-In and gets loaded into the IDE through the Add-In Manager. In the Visual Studio Express SKUs, because we disabled extensibility (macros, Add-ins, and VS Packages), the Add-In Manager is removed and therefore Add-Ins are not detected or loaded. Jamie has created additional components specifically for the Express SKUs to work around this technical limitation. He takes advantage of an extensibility point that allows user controls (such as a button class) to customize entries in the Properties window. When his property extender gets called, he executes code that finds, loads and injects the TestDriven.Net assembly into the Express SKU’s running process, thus replacing the functionality of the removed Add-In Manager. This explains why he instructs Visual Studio Express users to open the Properties window in order to enable TestDriven.NET. Once his code is injected into the Express SKU’s running process it can add menu items, enable features that were disabled, and in general take over that instance of Express. These special loading mechanisms that Jamie has built exclusively for the Express SKUs are unauthorized workarounds to the SKUs’ technical limitations.
You don’t just write the code for something like this and not test it and have it work.
So what does this mean since he violated the agreement? Can Microsoft force him to remove support for the Express Edition? Can they sue him for selling a product that hacks their software? I doubt it! He violated the agreement for *his* copy of VS Express so they can make him remove the Addin from his copy but that is about it. Him selling his Addin is not in violation at all. It is actually his customers that are violating the agreement by installing his product. So will MS go after everyone of his customers? I think they are a little smarter than to do something like, I think.
So from what it looks like to me Jamie is legally in the clear but morally I would say he is guilty as sin. He is working on a technicallity which really isn’t very professional or ethical but, then again, that’s business. How many times has the shoe been on the other foot and MS screwing some other company (ahem…Novel) based on loopholes like this.
I cannot for the life of me understand Microsoft’s reasoning behind pursuing this matter. It is killing the little bit of good will they have built in the Open Source Community. They stand to gain very little by winning such a court battle, provided they want their EULA to be tested in court. However, things have a way of working out for the party with enough money to hold out the longest which won’t be a problem for MS in this case.
Jamie has played the part of victim very well but people are starting to realize he isn’t as innocent as he wants us to believe. Either way I am sure he is raking in the cash with all this PR. On the other hand, MS is just shooting themselves in the foot again, reputationally speaking, in a case that even if it goes to trial will win them next to nothing.
RSS ?
1 Trackback(s)