Slashdot Mirror


Microsoft Slaps Its Most Valuable Professional

Violent Offender writes with a touching story in The Register about Microsoft's awarding of its Most Valuable Professional credential to a British hobbyist, Jamie Cansdale, then turning around and threatening him with a lawsuit for the very software that won him the award. The article links to the amazing correspondence from Microsoft on Cansdale's site.

19 of 474 comments (clear)

  1. DUPE by Ekhymosis · · Score: 5, Informative
    --
    Fighting over religion is like seeing whose imaginary friend is best.
    1. Re:DUPE by Anonymous Coward · · Score: 5, Informative

      They no longer show up. The editors claim "dupe" is special and notifies them rather than showing up... but, uh, apparently they have to be paying attention.

    2. Re:DUPE by nmb3000 · · Score: 5, Insightful

      Is it me or do tags like "Dupe" no longer show up?

      I think Tags were revamped a while ago, and as a result the fun tags don't show up anymore.

      Personally, I don't bother with them any longer. When you could tag something "fud", "yes", "no", "itsatrap", "omgponies", "09F911029D74E35BD84156C5635688C0", etc it was a fun way to comment on a story (even if it is the epitome of groupthink). I thought the tags gave Slashdot users another interesting way to communicate, and to express the general sentiment of a story.

      Sorry Taco, but Tags are boring and useless now. Bring back the old ones or do away with these.

      --
      "What do you despise? By this are you truly known." --Princess Irulan, Manual of Muad'Dib
      /)
    3. Re:DUPE by omeomi · · Score: 5, Funny

      Maybe the editors just can't get enough of the guys who feel that their sole purpose in life is to point out Slashdot dupes, and the incredibly boring conversation about dupes one is forced to wade through just to get to the topical discussion...

    4. Re:DUPE by trawg · · Score: 5, Insightful

      Sorry Taco, but Tags are boring and useless now. Bring back the old ones or do away with these. It's a really interesting example of a web feature that deviated massively from its original purpose into something that the community of the site found useful and neat (well, you and me, anyway - I quite liked the way it used to work as well).

      Rather than build on that they decided to tweak the system (for understandable reasons) so it started working more as it was originally intended - as a way to tag/classify stories at a high level.

      I thought it was always interesting/entertaining - it basically summarised the comments (which is why I read slashdot in the first place) in a way that made it easy to see what the general community feel for a story was. That's more useful to me than keywords in the story, personally.
  2. MS is on a roll... by mcmonkey · · Score: 5, Funny
    They did just go after this guy

    What are the odds?

    1. Re:MS is on a roll... by seaturnip · · Score: 5, Funny

      You must be new here.

      No wait, you have a 5-digit UID. Wha?

  3. Ballmer said it best... by Weaselmancer · · Score: 5, Insightful

    Developers, developers... lawsuit.

    --
    Weaselmancer
    rediculous.
  4. Mod me flamebait all you like by Weaselmancer · · Score: 5, Interesting

    But you know it's true. Read the article. The guy got an MVP and a cease and desist for the same freaking program.

    Is making a joke that runs parallel to the truth flamebait? If so, what does that say about that truth?

    --
    Weaselmancer
    rediculous.
  5. Just read up on all of it a few hours ago... by Anthony+Boyd · · Score: 5, Informative

    ...apparently Jamie has until 4 PM tomorrow (the 6th) to respond to the lawyers or remove the offending application.

    If you read through ALL the correspondence (a boring, lengthy exercise), you'll find out a few interesting facts:

    • Weber, the guy at Microsoft stirring up trouble, was a jerk on 3 counts
      • He assumed that Jamie was hacking the low-end free version of Microsoft's products, when in fact Jamie used APIs published by Microsoft
      • Weber was rude
      • Weber wouldn't state what part of which license Jamie had violated. This is the boring part of the correspondence, because Jamie asks over and over again, and keeps getting back generalities such as "the relevant parts apply." That is crazy making, and I would not at all be as polite as Jamie has been.
    • Now that lawyers are involved, it's pretty clear how Jamie violated their terms.
    • Jamie is looking for a way to "stand up to the bullies" so to speak, even though it's now clear how he violated Microsoft's contract. That's not to say he's BAD -- he's quite great, actually, with a great product, too -- but now that MS has said "here is what you violated, please correct it" he should correct it. With no tricks, no reinstating the feature months later (which he has done once already).

    The end result is that Jamie wants to fight it, but if he does, he's gonna lose in court. However, he is very very right in one aspect -- Microsoft deserves a black eye over this, and I don't blame Jamie for wanting to punch them in the face. I don't think Microsoft/Weber was particularly evil, but they were slightly rude and rather stupid. They would not answer Jamie's requests, over and over again. If they had just answered him plainly and clearly, this would have been solved a year ago.

    1. Re:Just read up on all of it a few hours ago... by FreelanceWizard · · Score: 5, Insightful

      The fact that the APIs are published is immaterial, really. I know of at least one company's software that has a similar clause in its EULA to the Visual Studio one, and they don't do even the slightest protection of their fully documented APIs. Nevertheless, using them would violate the EULA if I wasn't licensed to do so. That's the contract I entered with that company. If I want to use those APIs, I need to pay them more money for the license to do so. This isn't anything terribly new, and even "good guys" do it now and then to protect a revenue stream (cf. MySQL's multiple licenses).

      For those not clear on the situation, the short of it is this. TestDriven.NET is an add-in for Visual Studio. Visual Studio Express has a "technical limitation" that ostensibly prevents the loading of add-ins (removal of the Add-In Manager, I believe). The EULA states that:

      "...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 any technical limitations in the software."

      Constructing an add-in that can be loaded by Express is presumably a violation of the EULA for Express, because you're working around the technical limitation (weak though it may be) in the software that blocks the loading of add-ins. Technically speaking, anyone who uses it with Express is also violating the EULA. The best argument, IMO (and IANAL), is going to be that disabling the Add-In Manager isn't really a technical limitation against the loading of add-ins, since they can be loaded programmatically. It's a technical limitation against end-users manually loading add-ins. ;)

      --
      The Freelance Wizard
    2. Re:Just read up on all of it a few hours ago... by Anthony+Boyd · · Score: 5, Insightful

      Perhaps you can explain to me exactly how he violated Microsoft's contract by using the published APIs?

      Yes and no. I can explain what I read, and why I believe that it will hold up in court. But I don't think you're asking for that. I think you feel that using public APIs should not be prevented or outlawed, and so you object to the entire concept. If I'm wrong about that, you can skip this paragraph and go to the ntext one. But if I'm right, all I can say is that's not an argument I can have with you, as I find it to be a boring one. MS has a contract, they've cited the passage he violates, and they'll sing it out loud in court. Whether we like that or not, it means MS will win in my book. So I don't really care to have a discussion about how ethical MS is, or whether they should be able to restrict a public API. The fact is, they do it, and seem to have a leg to stand on here. But by all means, have that discussion with other Slashdot readers. I'm sure it's one that many would like to have.

      So with that disclaimer in place, here is what I read. Near the bottom of the first page of that scan, you'll see that they cite the part of the contract that has been violated. In particular, the contract states that you cannot circumvent the limitations they've put on the low-end product. One of the limitations is no plugins. That's explained elsewhere, but here in the letter from the lawyers we at least see now that they have a clause prohibiting end-runs around the crippled features of the low-end product. This is what Jamie asked for time and time again. No one would cite any clause that he violated. Finally, at last, someone did. Whatever I think about the merits of Microsoft's case, I will continue to think that they're jerks for taking a year to quote the relevant part of the contract.

      Elsewhere, in another letter, they explain that they have the legal prohibition in the contract to cover cases exactly like this -- cases where they tried to block it technically, but someone found a loophole. So they use the contract as a way to say, "even if we screw up and left a way to do it technically, you still can't do it contractually." We may or may not think they should be allowed to get away with that, but again, that's where I get bored and drop out of the conversation.

    3. Re:Just read up on all of it a few hours ago... by I'm+Don+Giovanni · · Score: 5, Informative
      Except that "public" APIs aren't being used in this case.

      http://blogs.msdn.com/danielfe/archive/2007/06/01/ testdriven-net-and-express-technical-information.a spx

      Friday, June 01, 2007 3:20 PM by danielfe
      TestDriven.NET and Express - Technical Information
      I quickly wanted to respond to questions or misconceptions raised in the comments of my previous blog post.

      A common question or misconception in the comments is saying that if didn't want extensibility we should have provided technical limitations to prevent extensibility (see comments: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, and 18).

      Express Extension Workarounds
      To respond, Visual Studio Express extensibility is limited in a number of ways. One way it is limited is that it does not permit extensibility through Macros, Add-Ins, or Packages. It attempts to reserve these limitations by technical means. Some examples of these technical limitations are that there is no Macros IDE, there is no Add-In manager, and registered Add-In's and Packages are not loaded at startup. The only way to even extend Express is to work around these in-built technical limitations and that is prohibited by the License.

      For a high-level overview on how TestDriven.NET works around technical limitations, here's a response from our development team:

      **
      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.
      **

      For an analogy, this would be comparable to someone working around the technical limitations in the personal version of TestDriven.NET to unlock features in the professional or enterprise versions for free.

      What complicates this even further is that this isn't a developer doing this for his or her personal use or experimenting with our product, this is a business trying to sell a product. We tried for close to two years to get Jamie to stop releasing the Express version of TestDriven.NET without success.

      I hope this helps clarify some of the questions or misconceptions surrounding this issue.

      Filed under: Visual Studio Express
      Comment Notification

      --
      -- "I never gave these stories much credence." - HAL 9000
    4. Re:Just read up on all of it a few hours ago... by Sam+Ritchie · · Score: 5, Interesting

      As the other replies state, the clause (in the Express EULA) is: 'may not work around technical limitations of the software'. Microsoft are assuming:

      1. Jamie at some point clicked through the Express EULA and is forevermore bound by it (ie uninstalling wouldn't terminate the contract).
      2. The 'no plugins' directive will be construed by the court as a technical limitation. Given they've published APIs, this is probably open to interpretation. Someone in the dupe discussion mentioned that the one-sided nature of EULAs means the UK courts must interpret it in the way most favourable to the party that had no input - no idea how accurate this statement is.
      3. Distributing the software to others constitutes 'working around the technical limitations'. IANAL, but on the face of it I can't see how this applies to Jamie.

      Alternatively, perhaps Microsoft think his original alleged violation of the license (during development) somehow disqualified him from distributing a VS.NET plugin - this would probably require proving the plugin is a derived work as Microsoft would have no authority over its distribution otherwise. I can't see them doing this as I would think it would have serious repercussions for their other customers.

      Personally, I think this clause is overly broad and Microsoft's action on it is quite worrying. If they win here, basically all they need to do is claim that something you've written is 'working around a technical limitation' and they can control your product distribution. Let's not forget that the MSTest functionality in the pricey VS 2005 Team Edition is effectively in competition with Jamie's TestDriven.NET.

      --
      This sig is false.
  6. Re:They're idiots... by hobo+sapiens · · Score: 5, Insightful

    Yes, Microsoft obviously doesn't get "community".

    This is the same company who released the Zune, which doesn't play playsfornotsure. Media player 11 which doesn't support Zune. IE7 which fixed few real IE bugs but instead added chrome like tabs and phishing filters. Vista which is un-compelling enough to ensure most people will be on XP until developers stop writing software for it. Need I go on? Microsoft isn't evil like many think. They just suck. Totally clueless.

    --
    blah blah blah
  7. Exactly why I love linux by codepunk · · Score: 5, Insightful

    No one tells me what I can and cannot code on my Linux machine and or software. I have always said
    programming on a windows box is like programming with one hand tied behind your back. Nothing but artificial barriers to getting things done. I sure don't miss the days when I had to program on windows.

    --


    Got Code?
  8. Developers developers developers developers dev... by Johnny+Mnemonic · · Score: 5, Insightful

    One of Microsoft's greatest strengths, competitively, has been strong support for third party developers. They would do well to remember that that is a strategic advantage, and should not be squandered lightly.

    It's pretty silly to have a free, "watered down" IDE/compiler for their product, and a paid-for Pro version in the first place. They only benefit by making world class development free for everyone. The money that they make on IDE licenses must be pretty marginal to the amount of Windows licenses they sell through strong third-party dev support.

    It's even worse to have a pissing match with someone that made one of their products better, and was recognized by Microsoft for doing so.

    I hope student developers everywhere take note.

    --

    --
    $tar -xvf .sig.tar
  9. Notes from an MS apologist by hkb · · Score: 5, Insightful

    1. Weber just seriously damaged Microsoft's relationship with the community.
    2. Weber was way, way out of line.
    3. Weber should be dismissed.
    4. This incident has made me doublethink our decision of going to ASP.NET for in-house app development.
    5. Yet another reason not to get locked into proprietary software.

    --
    /* Moderating all non-anonymous trolls up since 2004 */
  10. Go open source, my friend by ContractualObligatio · · Score: 5, Insightful

    You can tell from my sig I work for a commercial enterprise; I'm painfully familiar with how the law can get in the way of things. But this guy has a simple choice if he wants to maintain some form of principle:

    First, be open source if you want to be truly principled in all of this. Just walk away - clearly you don't like the way Microsoft operates. Have some sympathy for people in M$ who spent one helluva long time trying to avoid bringing lawyers into the mix, tell them you think their business stinks, and walk away (and get the story out there on the web).

    Or, work in the spirit of Microsoft's business model. It's what a decent business person does. It seems that far from being a hobbyist you are in fact selling this tool on your website. If you want to make money out of the Microsoft ecosystem, and they're willing to invest something like a year in explaining their point of view, don't get the lawyers involved. Work with them, respect their intent.

    Trying to paint M$ as the bad guys here is wrong - if things are bad, they're bad on both sides. So the license wasn't clear, but M$ spent a lot of time explaining their point of view. But no, this guy Jamie wants to get his lawyer involved. He wants to force a guy running a development team to talk about law, not about the spirit of what they're trying to achieve. That's bullshit. Jamie never discloses the content of the conference calls, he just sticks to his "let's talk legal specifics" - and then bitches when M$ does indeed come at him with lawyers.

    He might be making the mistake of many programmers, of course, who think that the law operates like code. Well, just like all code has bugs, so do all legal arrangements. And when you force things to go legal instead of having principles, you might just find that the justice system allows a bug fix to be applied before it comes to a legal conclusion. For example, the courts may find that the intent of the Express edition is clear, and that in the course of a year's worth of dialogue between the two parties any confusion was clearly resolved. They might agree with Microsoft's lawyers that Jamie's own offering of different commercial editions of the TestDriven product indicates a good understanding of Microsoft's commercial model. They might express sympathy for M$'s efforts to get a free version out for hobbyists, and forgive them for not having a 100% airtight technical and legal solution to prevent it from being extended. After all, it seems reasonable to expect that people can act in accordance to the spirit of an arrangement, without needing otherwise pointless effort being spent on perfectly restrictive measures, doesn't it?

    The courts may therefore conclude that although Jamie has not committed such a blatant breach of contract that M$ can claim damages, he has violated the clear intent of the Express edition and must therefore restrain from offering TestDriven for Visual Studio Express.

    Work to open source principles, work to business principles - both of those I can understand. Work to a principle something like, "it's your fault if I can get *my* lawyer to prove that *your* lawyers didn't put a sufficiently airtight contract in place", and you're just another weasel making the world a worse place for everyone.