Saturday, June 02, 2007

Licensing 101, or How Not To Handle Disputes

I’ve been back and forth on the ongoing train wreck between Jamie Cansdale and Microsoft over TestDriven.Net’s support for Express editions of Visual Studio.  I’ve finally come to the opinion that Jamie’s in the wrong, and I think his arguments are a bit specious and hollow.

At the end of the day it comes down to the fact that Microsoft’s been clear that Express isn’t intended to support add-ins.  All of the other thousands of companies developing VS add-ins understand this.  What’s up with Jamie?  What’s not clear about this? 

Spending his time arguing over whether TestDriven.Net’s support uses public APIs is futile, IMO.  The bottom line is that folks at MS fought hard to get Express versions released out for hobbyist use, and there were some mandates put in place to enable that — like Express not supporting any add-ins or plugins.

Jamie runs a business and makes money off TestDriven.Net.  I’d think he’d understand the need to control certain revenue streams — after all, Jamie himself took TestDriven.Net from a freely available tool to one you have to pay for.  I don’t think he’s open to folks trying to pore through his EULA trying to find loopholes for using the hobbyist version in a commercial role.

So, with all this said, I’d like to vent my spleen on Microsoft’s handling of the matter.  Frankly, you guys suck.  Not renewing Jamie’s MVP over the flap is understandable, but not being up front and plainly saying “You’re out of luck specifically because of your position on TestDriven.Net” is foolish.  I also have a very low opinion of the style of communication coming from the initial contact person at MS.  Read through the e-mails linked on Jamie’s post and see what you think.  (Interestingly, that same Microsoftie was a roadblock to James’s efforts with Visual Studio Hacks.  Note to MS: Maybe you should consider having someone else handle interfacing tasks…)

At the end of the day I’m irritated by both sides.  MS’s handling of the matter is completely stupid, but seems to be right on line with the 1000Lb gorilla approach they’re using for the patent issues so prominent in the news.  On the other side, Jamie’s taken a stance that’s fundamentally wrong.  I can’t imagine he’d appreciate the same sort of behavior with folks using his commercial product.

Maybe this train wreck will clear up in a nice fashion, but I doubt it.

(By the way, I’m a huge fan of TestDriven.Net.  I used it when it was free, got really pissed when he started charging for it, then plunked down the $$ to continue using it.  I also showcase it during my talk on Open Source Test Tools, even though it’s not open source.)


Anonymous said...

> Microsoft’s been clear that Express isn’t intended to support add-ins

Well I don't know. That intent is not made clear in the EULA. Certainly that intent is clear to me now. But is this a case of creating "intent" after the fact? How would one know if they simply downloaded the app and read the EULA?

I agree, that Jamie should remove Express support. But as I pointed out in my post, his only obligation as far as I'm concerned is to not create the registry setting that makes TD.NET show up in Express.

My reasoning is here.

Definitely though, this was mishandled by MS. I have to feel for Dan Fernandez who has to come in and clean up after Jason Weber.

Jim Holmes said...

EULAs are written by lawyers for lawyers, which is right where all this mess is right now. Drop legalese aside for a minute and go with intent -- because how often have we ("we" as an industry, I mean) completely missed the boat with what's written for requirements and what was really intended? To me (and it took me some significant amount of introspection on this), MS was pretty clear with their intent: No add-ins for Express.

Microsoft and Jamie have had this discussion for a long, long time now. Every other vendor has agreed to not provide add-in support for Express. Why is Jamie being so contrarian? What, wouldn't DevExpress love to have their tools wrapped up in Express?

Here's something I'm not completely clear on: Did Jamie do any coding differently for the Express support vice the support for the other versions? If so, then that's nothing more than continuing to dig the hole deeper, IMO.

I'm certainly not carrying water for MS in this case. The initial contact person blew the conversation as far as I'm concerned, and the issue of MS having potentially reverse engineered TestDriven.Net is amazingly stupid. Like that person-should-go-away stupid.

Regardless, I don't agree with Jamie's approach to this. MS did a good thing by releasing Express as a free tool. That's a HUGE change on MS's part. Jamie's splitting hairs and jepoardizing any future similar efforts by MS. What are the odds we'll see an Express version of Orcas? Much, MUCH lower, methinks.

Unknown said...

> Every other vendor has agreed
> to not provide add-in support
> for Express

Well every one except Microsoft of course. They've released add-ins for Express, which demonstrates that add-ins aren't disabled on Express.

Was it really their intent? If so, why not include it in the EULA? Does violating intent equate to violating a license?

These are bigger questions than just this case.

It's not unlike making a backup copy of software or music for my own archival purposes. It's not what the issuing companies intend, but I'm allowed to do it.

In any case, I agree with you. At this point, it's probably a lost cause for Jamie. I'm also unclear on whether his code did anything special to support Express or not.

As for jeopardizing future efforts, I'm not convinced by that. Do we really believe Express editions are released out of altruism? As much altruism as the drug dealer shows when gives away the first hit (except that Expres is a healthy thing).

With all the other free IDEs and platforms out there competing for mindshare, this seemed like a smart strategic move on MS part.

Subscribe (RSS)

The Leadership Journey