Exploding heads in the open source community
Summary: Late last week, Tim O'Reilly announced at his company's open source convention that Microsoft would submit its shared source licenses to the Open Source Initiative (OSI) to be certified as true open source licenses. It's a curious notion, but makes a lot of sense.
Late last week, Tim O'Reilly announced at his company's open source convention that Microsoft would submit its shared source licenses to the Open Source Initiative (OSI) to be certified as true open source licenses. It's a curious notion, but makes a lot of sense. Microsoft probably wants to find a way to harness the energy and benefit from the scrutiny of the shared development process. They cannot do that, however, with a license that is designed by someone with strong antipathies towards proprietary software, aiming at every turn to create artificial walls around GPL product to ensure that proprietary software cannot use it. Big surprise, Microsoft's shared source licenses are more friendly to proprietary software, and I bet code licensed under them would be more acceptable to the company. That could matter, as if Microsoft were to use a particular external shared source product in its own products, it would quickly result in distribution numbers that would be the envy of most open source projects.
On Wednesday, the state of Massachusetts officially declared that OOXML, Microsoft's standardized XML document format, is on an equal standing with ODF, and thus suitable for state employees and contractors to use in work relating to the state. Perhaps some will view this as "just" a small east coast American state choosing to make life easier for the beast of Redmond. But, like a bag of popcorn, the popping starts slowly, and if the ISO does in the end opt to ratify OOXML as an official standard, expect the popping noise to accelerate.
Also Wednesday, Microsoft proceeded with plans to submit its new HD Photo document format to the JPEG Standards group. There's still a bit of ways to go, but it seems likely that it will be ratified. If you consider that VC-1 wasn't ratified too long ago by SMPTE (a format based on Windows Media Video version 9), one might conclude that Microsoft has found the open standards religion...at least in the sense that when it makes technology in-house, it moves to get it standardized early.
Among those with long-seated antipathies towards Microsoft, this was always certain to create a fair degree of cognitive dissonance. Microsoft is no longer keeping its technology so close to the vest. The battle is no longer for access to information, but whether Microsoft's standards are "worthy", a "my standard is better than your standard" sort of debate.
For some, it doesn't matter whether Microsoft standardized the entire WIN32 API. Microsoft "can't be trusted," and therefore, no standard with which they are associated will pass muster.
Fortunately, most aren't so dogmatic. Most will simply see that Microsoft IS being more open than they have ever been before. They will note that Microsoft is starting to standardize new technology early in the process rather than waiting for a smaller competitor to beat them to the punch and publicly embarass them in small east coast states.
Consumers (and developers) have more information about the protocols and formats Microsoft uses than ever before. No, Microsoft code that implement these standards will never be GPLed (though they may use the new licenses), and they have a greater tendency to create something that they drop as a closer-to-finished product on standardization committees, but that's the way MOST proprietary companies work. Adobe did this with PDF. Proprietary companies aren't going to approach the process the same way open source developers might, because they often build a market for a product before they step back and try to make a standard out of the resulting technology.
That's not a bad thing. Remember, proprietary companies have closer links to real world customers than most open source developers. That shapes the technology they develop, and is a useful feeder into the standardization process.
Irrespective of your preferences, developers now have a heck of a lot of information about the formats used by the most popular software products in existence. That can't be a bad thing. Open source has accomplished much in its competition with Microsoft. The fact that Microsoft releases this kind of information is proof of that.
Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.
Talkback
It would be better if MS would just use the BSD or MIT license, they are
But, all eyes are on Microsoft here. It is more likely that they want to cause problems for open source, any way possible, rather than actually help open source. Nobody will take them seriously here.
And, of course, if MS wants to be taken seriously, a good first step would be to ditch the ridiculous, overly complicated, ambiguous, new XML document format they created and help grow and improve ODF. The standard they created is to sabotage open source.
Re: it would be better
They don't want to. Knowing a bit how Microsoft works internally, they tend to be quite specific about what they want in a license. What they've done in their shared source licenses is laid out what is acceptable to them.
They are the biggest maker of software in the world, so they get to do that. Whether others choose to use the license is up to them, though I'm sure the approval and potentil distribution through the largest software company in the world may be a tremendous attractor.
[i]But, all eyes are on Microsoft here. It is more likely that they want to cause problems for open source, any way possible, rather than actually help open source. Nobody will take them seriously here.[/i]
More money is made outside of Microsoft from Microsoft products (which are mostly platform-oriented) than within it. Microsoft's open source efforts are sure to be friendlier to proprietary interests, but that isn't a bad thing...assuming you haven't bought into the FSF propaganda.
[i]And, of course, if MS wants to be taken seriously, a good first step would be to ditch the ridiculous, overly complicated, ambiguous, new XML document format they created and help grow and improve ODF. The standard they created is to sabotage open source.[/i]
Not going to happen. They aren't going to hand over control over a critical document format to a cabal of antagonistic competitors, just so they can use a format originally designed for another product, one that doesn't support the full range of features found in Office.
That would be exceedingly stupid, so it's not going to happen.
So, yes, as you describe so clearly, MS is just out to screw open source
There is no reason that BSD or MIT would not work fine. It just basically states that if you have possession of the code, you can copy it and use it however you want. You just have to give credit to the original authors. What more could MS want for code they are opening up?
And, YES a lot of money IS made outside of MS. With the shoddy products and security problems, it does get quite expensive, and Microsoft does not pay one cent. And, they don't even pay support, that is the responsibility of the OEMs. So, yes, there is a lot of money made taking care of all the problems.
And, ODF was NOT created for another product, it was created to express what needs to be expressed in a document format, AND, to be able to express what is in the rats nest we call .doc, .xls, .ppt. There is no magic in a document format. There are only so may ways to specify font, margins, indents, headers, etc. Yes, Microsoft wants to make it about 10x more complicated than it needs to be, and of course does not want to use ANY existing standards, like SVG. You see, MS WANTS compatibility problems, they WANT it to be extremely difficult to read and write their format. We are talking Billions here.
Don't be bloody silly.
Wrong.
*Everyone* has the right and ability to write their own license. They don't have to
be the biggest bloody maker of software in the world to do that. What they've done
is no more than what Aladdin System and Apple has done... laid out what they want
to happen. What they want to happen is an open source community with Microsoft
holding the reins. Whatever OSI (or Microsoft) says ABOUT their licenses, it's how
people respond to what the licenses THEMSELVES say that will determine how
they're accepted.
Oh, and "They aren't going to hand over control over a critical document format to
a cabal of antagonistic competitors, just so they can use a format originally
designed for another product, one that doesn't support the full range of features
found in Office." cuts both ways. Microsoft's allegedly open document format can't
be implemented without intimate knowledge of (or reverse engineering) their
products. It would be extremely stupid for anyone to treat their proprietary format
as "an open document format".
Just because it's extremely stupid doesn't mean it's not going to happen. People
and companies have done extremely stupid things before. Even Microsoft.
Semantics
I meant by that more are likely to use that license because they are the biggest software company in the world, not that size magically endows them with the ability to write open source licenses.
[i]Whatever OSI (or Microsoft) says ABOUT their licenses, it's how people respond to what the licenses THEMSELVES say that will determine how they're accepted.[/i]
I agree, but if Microsoft starts to treat shared source licensed products as candidates for use in Windows or MIcrosoft products, that is a huge attractor. Instant market share for the originators of an open source project.
[i]Microsoft's allegedly open document format can't
be implemented without intimate knowledge of (or reverse engineering) their products.[/i]
So you say. Lots don't agree, among them, it would appear, Miguel de Icaza...which i discussed in a previous blog post.
[i]It would be extremely stupid for anyone to treat their proprietary format as "an open document format".[/i]
Somehow Novell managed to do it. It IS possible to implement OOXML. I wouldn't take the extreme silence of the open source community as guide, as MOST seem to despise the mere existence of OOXML.
Point per point answer
Shared sources mean: you can see the code - but you can't modify it, you can't correct it, you can't reuse it. You can just design workarounds.
Miguel de Icaza doesn't deal with document formatting; he deals with programs. Ignoring undocumented aspects of OOXML, you can render quite a bit of a OOXML-encoded document with a translator - but precise formatting will be lost because stuff like Word 97's line wraps, or Word 95's word spacing is UNDOCUMENTED yet supported by the format. That's a deal breaker to most.
The same, OOXML supports VBA only; VBA though isn't part of the spec though, and its DOM is not well documented.
Novell managed to convert the least obfuscated parts of OOXML into ODF, that's true. Yet, formatting is lost - what is retained relies on those quirks learnt when reverse engineering the binary file formats generated by previous versions of MS Office - a job done mainly by Sun and the OpenOffice, KDE and Abiword communities. If OOXML were really well documented, converting from OOXML to ODF would require a simple XML converter and the two DTDs. On the other hand, automated conversion from ODF to, say, XHTML+MathML+SVG+ECMAscript/DOM3 is currently worked on - and the most the developers can complain about is that the finer points of all these standards don't yet have complete implementations and/or the specs are yet too vague about those fine points.
Inform yourself. You merely spit out MS marketing drivel.
The silence of the Penguins
Manifestly: Microsoft has done it. The question is whether anyone else can, either legally in the USA or technically (no re-use of legacy MS source code) elsewhere.
[i]I wouldn't take the extreme silence of the open source community as guide, as MOST seem to despise the mere existence of OOXML.[/i]
No, we despise the prospect of MS perverting a formerly trustworthy standards process to turn a [i]de facto[/i] monopoly into a [i]de jure[/i] monopoly with the entire world's public documents and common history held hostage.
I find the MS proposal to use virtual machines running period software as their proposed archival system to be rather telling on that last point.
What Microsoft Wants
Quite. And what's acceptable to them is that the code or its derivitives never run on a non-Microsoft approved platform, and that the code not be used as a way for developers for those other platforms of which Microsoft does not approve to improve interoperability.
I've read Microsoft's licenses, and I'd not be likely to touch the code covered by most of them lest it "contaminate" me so that I could not work on a GPL or Apache licensed Open Source project in any way related to the Microsoft "shared" code.
Fair enough point
Perhaps that's reason for users to reject it. Would you rather Microsoft NOT make any moves towards integrating better with the open source community? Consider this the start of a process, and evolution within Microsoft, as it were.
Rules of Engagement
My reaction to someone "moving towards" me depends a great deal on whether they are carrying weapons and whether they have a history of assault.
[i]Consider this the start of a process, and evolution within Microsoft, as it were.[/i]
Ah, but what sort of process? The poison-pill provisions and the toxic Novell (Xandros, etc.) arrangements look to be stages in a weapons-development program aimed at [i]software libre[/i]. Not the sort of thing to be celebrated.
Errr...
Talk about Open Source... It's open as long as it's provided and sold to you by MS. Please note that this second point caused rejection by the OSI of these same licenses on a previous attempt.
FSF propaganda is about freedom. Strange, huh? It's the same word that's written in the US Constitution, and you seem to scoff at it. Freedom to use the code, freedom to share it, freedom to modify it, freedom to run it. Only concession: you're supposed to spread the freedom too. That won't do to MS.
ODF: please cite a functionality that OOXML covers that ODF cannot cover. Before you start, ODF doesn't include a macro language, leaving the app the freedom to use whatever scripting language there is - be it ECMAscript (Javascript), Perl, Python, or... Visual Basic.
On the other hand, OOXML says: use Word95 word spacing for which metrics are known to MS only (several similar instances of incomplete specs).
The same thing isn't written down the same way in spreadsheet, word processor or slideshow file formats (redundant specs).
Existing standards aren't used (redundant specs #2) in: date formats, leap years, vector graphics, paper sizes, locales, raster images, math languages, colour designations...
XML used in file formats contains binary data (not true XML) in undocumented encodings.
ODF can be openly revised and improved (version 1.2 is in pre-approving stage). OOXML is maintained by one (1) firm.
ODF has several implementations, by several firms/groups: StarOffice, OpenOffice, NeoOffice, KOffice, Lotus Notes.
OOXML has no real implementation (Office 2007 doesn't use the specs approved by ECMA; changes made are hardly documented).
Please, do professional journalists a favour: stop writing nonsense.
Yes, Freedom...
Yes, freedom from the ability to leverage the incentives principle that drives modern economies. Freedom from innovation that comes from human interests turned towards the needs of non-technical users by reason of the profit motive. Freedom from the ability of hardware distributors to control the design of their own box (at least, if they want to use GPLv3 product).
Lots of handcuffs for a system that advocates freedom. But then again, that was Stallman's brilliance...getting people to believe that all these "restrictions" are really about life, liberty, the constitution and mom's apple pie.
[i]Before you start, ODF doesn't include a macro language, leaving the app the freedom to use whatever scripting language there is - be it ECMAscript (Javascript), Perl, Python, or... Visual Basic.[/i]
Well, gee, that's like saying this web browser doesn't include an HTML standard, leaving the application free to use any text markup language they want.
If it's not included as part of the spec, then it isn't supported. There's no guarantee that EVERY implementation will support at least that much functionality.
[i]ODF can be openly revised and improved (version 1.2 is in pre-approving stage). OOXML is maintained by one (1) firm.[/i]
Who maintains PDF? How is what MIcrosoft doing any different? Granted, PDF is implemented by more third parties at present, but MOST still use Adobe's reader product (which gives must people the ability to run non-standard PDFs), and besides, they've been a standard for longer.
[i]Please, do professional journalists a favour: stop writing nonsense.[/i]
I'm a blogger. I can say whatever I goddamned well please.
?
This leaves... What? Artificial vendor lock-in? Ah, true, M$ does innovate in new ways to screw their customers.
Don't you wonder why big names vendors such as Sun, Novell or IBM actually encourage the use of 'true' Open Source licenses such as the Apache license, the GPL or the MPL?
<i>If it's not included as part of the spec, then it isn't supported</i>: if the spec says, 'any language that can support a Document Object Model level 2 or 3', then do you need to re-write ECMAscript or Java or Perl just for it? No. ODF does just that. What does it mean? Well, you create your document under, say, OpenOffice.org. You store your macros in, say, Javascript. You re-open said document in another suite that supports Javascript too - like, Koffice: it works. It's stored. You use two documented specs: ODF (document format) which calls ECMAscript (scripting format). Both are fully documented.
On the other hand, you create a file in OOXML in Office 2007; you open it in Novell's version of OpenOffice. That version doesn't yet support all of VBA, due to VBA's lack of documentation (it hasn't been completed for OOXML). Your macros don't work well anymore, if at all.
<i>Who maintains PDF?</i>: Well, actually, ECMA does. Adobe created the specs, submitted it to ECMA, which now maintains it; Adobe is the main engineer to newer revisions, but HP does participates on the PostScript standard (PDF uses it), Mozilla works on ECMAscript (used by recent PDF versions for interaction)... So no, Microsoft doesn't do the same.
Come on, give it a bit more thought...
Interesting
Not only doesn't it belong in there, macro's always have entailed a security risk.
Macro's have their place, but certainly not as part of the document standard. They can be embedded into the file, that's something else (probably ensuring that you can use it with only one program)
The interesting thing of course is that with an open standard you could provide a webservice which provides you with this macro facility and ensure that everybody has the same macro...
Actually, no
Two different things
The standards part will only benefit open source, provided that they are well documented and free to implement. And government of those is handed over to a standards body so enhancements can be implemented by consensus.
The exploding head, i guess is only living in your mind, as both sides will benefit.
Have you read
Exploding heads seemed an apt analogy, if a bit gross. Made me think of the movie "scanners."
I guess you're confusing parts
The MA stuff could be expected, no surprises here. Keep in mind that it has become a political decision... Let's first see whether OOXML can make it through OSI. What will MA do when OOXML is rejected by OSI??
HD photo is an interesting case. Have you noticed how long it takes them too convince people of JPEG 2000 and start using it... HD photo is a solution for a problem that no longer exists for most people, the problem was storage on camera's and you've got to agree that this is no issue whatsoever anymore. Five years ago it would have maybe taken the market by storm. Before all vendors have this implemented in their gear we've probably landed @ windows 7. It's nice of Microsoft to make it a standard with patent pledge, but I guess for most people it was just a knee jerk reaction to the name Microsoft.
Much more interesting
What will they do if ISO IS-29500 comes out with edits that make Microsoft Office non-compliant?
My head's exploding all the time!
But seriously, as John puts its, aims of the open source community have been achieved. This is what competition looks like. Of course, I won't be happy until I'm playing Lego Star Wars II on Ubuntu, but that's just me :D At some point I'll be looking into claims that OOXML isn't as open as is claimed, but I doubt it seeing as Ms are trying to get it past a standards body.