Microsoft Seeks Open Source Certification
eldavojohn writes "Microsoft is applying for OSI certification for its Shared Source Initiative. The move is described in a blog post by an MS OSS lab worker: 'Today, we reached another milestone with the decision to submit our open licenses to the OSI approval process, which, if the licenses are approved, should give the community additional confidence that the code we're sharing is truly Open Source. I believe that the same voices that have been calling for Microsoft products to better interoperate with open source products would voice their approval should the Open Source Initiative itself open up to more of the IT industry.' According to PC World, reaction from the community has been mostly positive."
From reading the higher modded posts on the previous story, I was surprised that few people seem to have bothered to take a quick look at these licenses. Let's give that a try-
Both the Microsoft Limited Permissive License (Ms-LPL) and the Microsoft Limited Community License (Ms-LCL) contain a clause like this:
Platform Limitation- The licenses granted in sections 2(A) & 2(B) extend only to the software or derivative works that you create that run on a Microsoft Windows operating system productThe Open Source Definition has this:
5. No Discrimination Against Persons or Groups
6. No Discrimination Against Fields of Endeavor
Either 5 or 6 look a like a clear contradiction to above clause. So IMHO, the 'limited' licenses shouldn't qualify for OSI approval. Then the Microsoft Reference License (Ms-RL) has this:
the Licensor grants you a non-transferable, non-exclusive, worldwide, royalty-free copyright license to reproduce the software for reference use(Emphasis mine). Basically a 'look but don't touch' license. Thanks to other commenters for pointing out Open Source vs. Free/Libre: this could qualify as Open Source, but definately does not qualify as Free/Libre software.
I don't see any obvious problems with the other licenses though. And 1 thing I do like: they're nice and short, so that you can actually read them, and (try to) understand what they say. As opposed to reading through the pile of legal mumbo-jumbo in common EULA's.
One final point I'd like to make: one shouldn't take a license and complain about whether it does or doesn't suit your purpose. Instead, start with what you want to do with your code, and use a license that best suits that purpose. For some funny, new app the GPLv2/3 may be good, but for an implementation of a low-level networking protocol, that you want to become the defacto standard, a BSD-style license may be more appropriate (so that it can be used by anybody, even hidden deep inside black boxes, but using your protocol). You might be worried about the exact purpose of these MS licenses, but they may also be a vehicle to have your code included in MS products (and help improve standards compliance/interoperability). Not to mention that it's zero problem to contribute things like small bugfixes to projects licensed under these.
So I agree very much with parent poster. Why complain about MS when you think they're throwing you a bone, and you don't trust it? Simply throw them a bone back sometimes, and see what happens.