| ▲ | s20n 3 days ago |
| > Why Microsoft’s Motive Wasn’t Deliberate Sabotage I absolutely do not agree. Not only is the standard overly complex, Microsoft also indulged in all sorts of unscrupulous activities to corrupt various National Standards Organisations to get it approved through the ISO <https://en.wikipedia.org/wiki/Standardization_of_Office_Open...>, which is clear evidence of malicious intent. This is a quote from Richard Stallman: > The specifications document was so long that it would be difficult for anyone else to implement it properly. When the proposed standard was submitted through the usual track, experienced evaluators rejected it for many good reasons. Microsoft responded using a special override procedure in which its money buy the support of many of the voting countries, thus bypassing proper evaluation and demonstrating that ISO can be bought. |
|
| ▲ | gregopet 3 days ago | parent | next [-] |
| My wife worked in one of the national standardization organizations. She was urgently called into her boss' office: "Please be on this meeting with me, I think they will try to bribe me if I'm alone". It only happened once while my wife worked there and it was right before the vote where Microsoft tried to fast track their office format. |
| |
| ▲ | shaky-carrousel 3 days ago | parent [-] | | It's what we the old farts have been saying during decades. Do not ever trust Microsoft, they are corrupt beyond hope, they're evil. But people got blindsided by the new Microsoft propaganda. | | |
| ▲ | bayindirh 2 days ago | parent [-] | | > But people got blindsided by the new Microsoft propaganda. This is sadly true. I tried to warn many young folks about VSCode, Copilot and whatnot, and they all laughed at me. Now, they're not laughing either. |
|
|
|
| ▲ | thomasfl 3 days ago | parent | prev | next [-] |
| I worked for the Norwegian standard organization at the time. After seing with my own eyes how Microsoft was able to get OOXML approved, I quit doing standards. The OOXML standard is a joke. Three different ways to store basically the exact same thing. Like dates. |
| |
| ▲ | sevensor 3 days ago | parent | next [-] | | Indeed. “The bad standard is the result of negligence rather than malice” is a total nonsequitur. It in no way excuses pushing a bad standard on everybody to say, “they didn’t mean to make it bad.” It was still bad in obvious ways, and they still did power moves and underhanded things to get it signed off over legitimate technical objections. The reasons it was bad are irrelevant to the fact that it was bad and they promoted it. | |
| ▲ | itsthecourier 2 days ago | parent | prev | next [-] | | wow. thanks for sharing | |
| ▲ | fsflover 3 days ago | parent | prev [-] | | What if they could do it, because people like you had quit? | | |
| ▲ | izacus 3 days ago | parent | next [-] | | Standards committees being completely divorced from reality of software engineering is why most of the standards are useless. So the question is whether it was actually a loss. | | |
| ▲ | pjmlp 3 days ago | parent [-] | | Like POSIX, OpenGL, OpenCL, Vulkan, C, C++, JavaScript, TCP/IP,.... | | |
| ▲ | rglullis 3 days ago | parent [-] | | Is there any example on your list where the standard came before the implementation? | | |
| ▲ | pjmlp 2 days ago | parent [-] | | Yes, Vulkan (Mantle was the idea), C (since C89), C++ (since C++89), OpenCL (after Apple gave it to Khronos). | | |
| ▲ | rglullis 2 days ago | parent [-] | | So, no. None of your examples are equivalent to OOXML. The implementations were first opened up and then standardized. OOXML was the other way around: Microsoft had a standard and tried to enshrine into a standard and force others to waste time and resources to be compatible. | | |
| ▲ | pjmlp 2 days ago | parent [-] | | Only if you ignore what was standardised in PDF form and only later made available on existing implementations. That is why I explicitly made references to specific versions as turning points, as I expected the usual FOSS advocacy replies. |
|
|
|
|
| |
| ▲ | perching_aix 2 days ago | parent | prev | next [-] | | What if then? Should they have just bodied the thing for the love of the game? So that people uncaring for their wellbeing then wouldn't have appreciated it as a sacrifice anyhow? Quite often I find that if people stopped holding fundamentally broken dynamics together and just let the thing fail and fail hard, the overall long term outcome would be better off. Much to the opposite of your suggestion. It's just that turns out, things being properly bodied or properly broken take coordinated action. People deciding one by one, one way or the other, is what actually enables and sustains pathological dynamics like this. But then how does one single out any specific decision? Well, nohow, not with any rigor for sure. | |
| ▲ | thomasfl 3 days ago | parent | prev [-] | | I was new in the standards business. Believed this was common. Understand now that it wasn't. |
|
|
|
| ▲ | hoistbypetard 3 days ago | parent | prev | next [-] |
| The format wasn't the act of sabotage. The way they drove it through the standardization process was. It couldn't have been standardized through the normal process. Similarly, pointing to it, afterwards, as if it were just as implementable as any other standardized format, was an act of deliberate sabotage. |
| |
| ▲ | Ygg2 2 days ago | parent | next [-] | | Malicious compliance is still sabotage. | |
| ▲ | fsflover 3 days ago | parent | prev | next [-] | | > The format wasn't the act of sabotage. The way they drove it through the standardization process was. Why not both? You didn't provide any arguments against it. | | |
| ▲ | hoistbypetard 2 days ago | parent [-] | | What I mean is that it is just the internal binary format they were using before, converted to XML. I don't believe the file format was developed as an act of sabotage; it was just some internal shit they were using because that's how the product had evolved. Standardizing it as if it were an actual designed, open standard, was, however, very much an act of sabotage. That's my read, anyway. |
| |
| ▲ | amiga386 2 days ago | parent | prev [-] | | The format itself is an act of sabotage. The format is basically Microsoft's internal formats for Office, with all their bugs and flags and features, for which Microsoft already owned the only working implementation that works correctly. They completely rejected what standardisation processes _do_, which is to subject the format to scrutiny, criticism and change, to make it universally useful and implementable. Microsoft absolutely did not do that. They rammed through their proprietary bullshit and slapped an "open standards!" label on it. https://www.consortiuminfo.org/opendocument-and-ooxml/the-co... > 2.15.3.26 footnoteLayoutLikeWW8 (Emulate Word 6.x/95/97 Footnote Placement) > This element specifies that applications shall emulate the behavior of a previously existing word processing application (Microsoft Word 6.x/95/97) when determining the placement of the contents of footnotes relative to the page on which the footnote reference occurs. This emulation typically involves some and/or all of the footnote being inappropriately placed on the page following the footnote reference. > [Guidance: To faithfully replicate this behavior, applications must imitate the behavior of that application, which involves many possible behaviors and cannot be faithfully placed into narrative for this Office Open XML Standard. If applications wish to match this behavior, they must utilize and duplicate the output of those applications. It is recommended that applications not intentionally replicate this behavior as it was deprecated due to issues with its output, and is maintained only for compatibility with existing documents from that application. end guidance] > Typically, applications shall not perform this compatibility. This element, when present with a val attribute value of true (or equivalent), specifies that applications shall attempt to mimic that existing word processing application in this regard. The format was _written_ to include specifics that only matter for one product - Microsoft Office - and don't even reveal in that format how those specifics should be interpreted faithfully. This is of ZERO use to anyone looking to make interoperable software that can make use of this standard. And that's the point - it's NOT an open standard, it's quite deliberately Microsoft's proprietary and closed bullshit with "open" shat on top of it, and a paid-for endorsement by a standards body that completely detonated its own credibility by approving it. | | |
| ▲ | hoistbypetard 2 days ago | parent [-] | | > Microsoft absolutely did not do that. They rammed through their proprietary bullshit and slapped an "open standards!" label on it. We are agreeing, I think. I was saying that the format was not developed as an act of sabotage. Ramming that format through standardization (without, as you note, doing any of the things standardization *should do*) so it could plausibly be labeled an open standard was the act of sabotage, IMO. |
|
|
|
| ▲ | monocasa 3 days ago | parent | prev | next [-] |
| Specifically what I heard on the grapevine was that Microsoft sponsored a collection of small island nations into the ISO process, in exchange for their vote on OOXML. |
| |
| ▲ | miohtama 3 days ago | parent | next [-] | | Not only small islands nations. For example in Finland Microsoft partners invaded the local working group to get the standard passed in the voting process. | |
| ▲ | Yizahi 3 days ago | parent | prev [-] | | That is not on MS though. That is a fault of those in change of ISO, that they assign same vote weight to the enormous empires and to the microstates. Votes should be proportional to the population, full stop. Then no one would be able to abuse the system by simply playing by the rules. | | |
| ▲ | MereInterest 3 days ago | parent [-] | | So, if I'm understanding your argument correctly, failure to stop a bad actor from taking a hostile action absolves the bad actor of all responsibility for that hostile action? Because that seems to be what you're saying. | | |
| ▲ | Yizahi 2 days ago | parent [-] | | Hostile to whom and on what basis? If two companies decide to merge, is it by default a hostile action? I don't think so. And what if later anti-monopoly agency decides that it was an infraction and blocks the merger? Then I think it was. Does informing voters about something is a hostile action by default? I don't think so. But if it was later decided that there was a law breach, then it would be hostile action. All people and even megacorps are innocent until proven guilty. Maybe even until accused of being guilty by some authority, though it is pushing it. But until someone at least does something to show their displeasure and point fingers, then yeah, no hostile action has happened, it was fair play. So to answer your question - vote bribing is 100% a failure of the organizer of said vote and of the law enforcement system (in bigger cases) IF that organizer or govt never complained about it or did jack shit in general. But if they at least complained or better did something about the problem, then yes, vote bribing failure would be a shared responsibility of both bad actor doing it and the people who hadn't done any reasonable prevention in advance. Since it is obvious that assigning equal weights to the countries can and did lead to the vote manipulation, I can say that ISO committee had NOT done reasonable prevention of vote manipulation and so is also guilty, just as bad actor MS. |
|
|
|
|
| ▲ | layer8 2 days ago | parent | prev | next [-] |
| Not only is the standard overly complex, it’s also missing clarifications to the extent that it has to be considered underspecified. Moreover, MS Word in particular doesn’t precisely implement the OOXML standard (or any reasonable reading of it), but a buggy and subtly different variation of it. Complexity alone would just make it laborious to implement, but the underspecification and subtle deviations of Microsoft’s implementation makes it virtually impossible to achieve full compatibility. |
|
| ▲ | CorrectHorseBat 3 days ago | parent | prev | next [-] |
| Both can be true at once. They didn't want a standard other people could adapt easily nor do the work to make Word adhere to one and it had to happen fast. By doing it the way they did they got everything they wanted and only needed to buy ISO. |
| |
|
| ▲ | happymellon 2 days ago | parent | prev | next [-] |
| I can't find it now, but I'm pretty sure that Pages was "corrupting" docx files because Apple followed the spec to a tee, and it turned out that Office didn't actually follow the spec that they had published. |
|
| ▲ | conartist6 3 days ago | parent | prev | next [-] |
| I seriously don't see the author's purpose in trying to establish a distinction. If I act like I hate you: say I come and light your house on fire and salt the earth where you raise your crops and poison the water from your family's drinking well, would it not be reasonable to say that I hate you? If you can then confirm that I have no intention to stop (even though I know I'm hurting you) and all I have to say in my defense is, "Actually I do exactly whatever I want and just don't care about you at all," what is the difference to me at that point? In practice total indifference is even more toxic than hate, because it denies engagement. I owe no extra charitability for callous indifference being the root cause of the actions taken. Company or person, society reserves the right to judge you on the effects your force of will brings forth on others. They used theirs to kill their competitors. |
| |
| ▲ | me-vs-cat 3 days ago | parent | next [-] | | In other words: "the purpose of a system is what it does". Duck-typed ethics? | |
| ▲ | jrochkind1 3 days ago | parent | prev [-] | | One difference it might make is a warning for those who aren't deliberately trying to make something complex, and think they might thus be immune from the result. In fact, you can wind up with something terribly complex as a result of other pressures, incentives, history, and context, without it having been deliberate. It takes active investment and skill to avoid complexity, even if not intended. |
|
|
| ▲ | dfox 2 days ago | parent | prev | next [-] |
| > The specifications document was so long that it would be difficult for anyone else to implement it properly. In contrast to ODF specification that is long, complex and written in such a terse way that it really does only specify what is a valid ODF file and not in any way what it means. Good luck implementing that without just copying whatever LibreOffice does. |
|
| ▲ | quotemstr 3 days ago | parent | prev | next [-] |
| Some myths just won't die. OOXML is complex because it has to be. It has to losslessly round trip through an open format every single feature of Office. That's a lot of features. Yes, it's complex. Should Microsoft have cut features of Office just to make OOXML simpler? That's ridiculous. What about users who relied on those cut features? It was fair to ask Microsoft to open the file format. It wasn't fair to expect them to cut features and compatibility. The complaints about complexity from RMS and others represent outsiders seeing the sausage factory and realizing that the sausage making is complicated and needs a lot of moving parts. Maybe life wasn't as simple as the Slashdot "Micro$oft" narrative would suggest. Maybe the complexity of the product was downstream of the shit ton of complexity and sweat and thought that had gone into it. But admitting that would have been hard. Easier to come up with conspiracy theories. |
| |
| ▲ | clort 3 days ago | parent | next [-] | | You are wrong. Microsoft was not asked to open the file format. There was an open file format already accepted as an ISO standard, so now they needed to make their product compliant with an ISO standard because companies around the world were going to prioritise that in their purchases. They did everything they could to ensure that their format was both an ISO standard, and impossible for somebody else to implement. | | |
| ▲ | hdjrudni 3 days ago | parent | next [-] | | From the article, > First, OOXML was, in material part, a defensive posture under intensifying antitrust and “open standards” pressure. Microsoft announced OOXML in late 2005 while appealing an adverse European Commission judgment centered on interoperability disclosures. Thus, it was only a matter of time before Office file compatibility came under the regulatory microscope. (The Commission indeed opened a probe in 2008.) > Meanwhile, the rival ODF matured and became an ISO standard in May 2006. Governments, especially in Europe, began to mandate open standards in public procurement. If Microsoft did nothing, Office risked exclusion from government deals. So... maybe they weren't directly asked to open their file format, but what then? Adopt ODF which is surely incompatible with their feature set, and... just corrupt every .doc file when converting into the new format? And also have to reimplement all their apps? | | |
| ▲ | jesus_666 3 days ago | parent [-] | | Work with OpenDocument to get the necessary features into the next version of ODF while keeping national bodies informed about the status of that effort. In the meanwhile, allow Office to save (with reduced functionality) to ODF in order to fulfill the requirements of existing standards-oriented procurement processes. (Fun fact: They did the latter pretty quickly.) Here's what they shouldn't have done: Undermine ISO's credibility by ramming a hastily-constructed, not-yet-implemented spec through a fast-track process intended for mature specs by stuffing national bodies. I see no reason to place Microsoft's short term profits over the integrity of international standards bodies, nor do I see one to excuse Microsoft for doing so. | | |
| ▲ | jeroenhd 2 days ago | parent [-] | | >Work with OpenDocument Why on earth would they want to do that? Because they hate having money? Because they suddenly decided that opening the market to competition would be more important than the billions they stood to lose? These standards determine the tools people use to communicate with tax offices and other government institutions. Thanks to their efforts (supported by as much corruption as necessary), Microsoft didn't have to invent a new file format and would let people just use the file format everyone was already using for official business. Office allows saving as ODF already and has supported it for ages. It was never about supporting open standards. This is all about corporate interests. I can't think of a single "open" format designed by a large corporation that isn't "open" as a way to make more money. |
|
| |
| ▲ | devnonymous 3 days ago | parent | prev | next [-] | | Small change to emphasize the intent: > because companies and governments around the world were going to prioritise that in their purchases. Governments are the largest revenue stream of pretty much every large software company starting from IBM/Xerox to OpenAI. MS is well known to indulge in all sort of legally grey practices to win such contracts. | |
| ▲ | ranger_danger 2 days ago | parent | prev [-] | | What companies around the world were prioritizing open standard file formats? |
| |
| ▲ | MattPalmer1086 3 days ago | parent | prev | next [-] | | But they did define two variants to get their standard approved in the fast track process. The Transitional variant which is entirely backwards compatible is not fully defined in a way that others can implement without reverse engineering how Microsoft Office does things. The Strict variant isn't totally compatible with all older binary formats but is fully defined. Guess which one is the standard file format? | |
| ▲ | troupo 3 days ago | parent | prev | next [-] | | > OOXML is complex because it has to be. What it didn't have to be is sections upon sections of "this behaviour is as seen in Word 95", "this behaviour is as seen in Word 97" without any further specification or context. The main struggle for independent implementors was reverse engineering all the implicit and explicit assumptions and inner workings of MS Office software. > But admitting that would have been hard. Easier to come up with conspiracy theories. I actually read through a lot of that spec at the time. A lot of it was just lip service to open standards at a time when MS was under a lot of regulatory pressure. | | |
| ▲ | mmis1000 2 days ago | parent | next [-] | | > "this behaviour is as seen in Word 95", "this behaviour is as seen in Word 97" The office relies on behaviour in windows itself "a lot". Even office mac or office web they made themselves isn't a 1:1 replica of the office on windows. Let alone describe it as a standard. "this behaviour is as seen in Word 95" sounds sloppy, but it is indeed the closest they can get. Or what else can you do? You can't just also ship a installation media of word 95 and windows into the ISO standard, right? | | |
| ▲ | troupo 2 days ago | parent [-] | | > You can't just also ship a installation media of word 95 and windows into the ISO standard, right? That's what they almost literally did. The spec is littered with "behavior of this program that has no specification and to see it you need to install it and run it" And that's on top of re-inventing a bunch of specs in MS-only and MS-specific manner (like dates, for example) |
| |
| ▲ | qcnguy 3 days ago | parent | prev [-] | | That stuff happens because Microsoft don't know what the behavior is. It's just a bit which forks Word down some ancient code path that nobody understands and isn't properly documented. Given the huge effort that would have gone into producing this thousand plus page specification, is understandable why the spec writers would have given up at times. I expect most people posting on Hacker News would not be able to write a satisfactory specification for their own software if they are working a large legacy code base. | | |
| ▲ | lozenge 3 days ago | parent | next [-] | | This is correct and there's no point fixing the bugs because it means the layout of the document will change. | |
| ▲ | troupo 3 days ago | parent | prev [-] | | > That stuff happens because Microsoft don't know what the behavior is. They do. Or they did at the time. They literally had things like "save as Word 95" in their office suite. > Given the huge effort that would have gone into producing this thousand plus page specification, is understandable why the spec writers would have given up at times. Given the huge effort to produce it in unreasonable timeline they forced themselves into due to regulatory pressure, sure. The whole OOXML came about only because some large governments said "well, we don't want to be beholden to black box document formats, and we might want a selection of vendors in the future, so ODF looks like a nice proposition compared to Word, actually". So it was literally rushed through Ecma. MS submitted 2000 pages in December 2005, the spec grew to 6000 pages over the course of the yer, and got standardised in December 2006. So, only a year to significantly increase the spec and standardize it. And then it was rushed through the ISO standards track which included things like "Swedish vote declared invalid, accusing MS of manipulating votes" https://www.linux-magazine.com/Online/News/Swedish-OpenXML-V... or "Netherlands automatically abstains from voting due to Microsoft" https://archive.ph/20120711220944/http://isoc.nl/michiel/nod... or "near unanimous 'No with comments' turned into 'Abstain' from Malaysia" https://web.archive.org/web/20090726171905/http://www.openma... or... Google said it best: https://www.csun.edu/~hcmth008/odf/google_ooxml.pdf --- start quote --- In developing standards, as in other engineering processes, it is a bad idea to reinvent the wheel. The OOXML standard document is 6546 pages long. The ODF standard, which achieves the same goal, is only 867 pages. The reason for this is that ODF references other existing ISO standards for such things as date specifications, math formula markup and many other needs of an office document format standard. OOXML invents its own versions of these existing standards, which is unnecessary and complicates the final standard. If ISO were to give OOXML with its 6546 pages the same level of review that other standards have seen, it would take 18 years (6576 days for 6546 pages) to achieve comparable levels of review to the existing ODF standard (871 days for 867 pages) which achieves the same purpose and is thus a good comparison. Considering that OOXML has only received about 5.5% of the review that comparable standards have undergone, reports about inconsistencies, contradictions and missing
information are hardly surprising. --- end quote --- Do not for a second assume that anything about OOXML was done in good faith. Well, apart from the thankless work that people assembling the standard did. | | |
| ▲ | qcnguy 2 days ago | parent | next [-] | | > They literally had things like "save as Word 95" in their office suite. And what do you think that setting did? Forked execution down an alternative no longer maintained codepath instead of the rewritten version that wasn't quite compatible. | | |
| ▲ | happymellon 2 days ago | parent | next [-] | | Which shouldn't be in an open spec... | |
| ▲ | troupo 2 days ago | parent | prev [-] | | Ah yes. All the changes made to word just continued to work magically when "forked down an alternative codepath no one knew about". And if that's the case, why was that specified in OOXML? |
| |
| ▲ | mmis1000 2 days ago | parent | prev [-] | | > save as Word 95 This is for format only and a lossy conversion. Line break or whatever finer behaviour isn't preserved perfectly. Or probably any conversion between different office version is a lossy conversion. They (microsoft) truly don't know how their format behaves exactly at any time I believe. Even office for mac or office for web behaves slightly different. I don't believe they have a true spec (A pixel perfect one) about word document. Or they should use it on their office mac or office web first. |
|
|
| |
| ▲ | user3939382 3 days ago | parent | prev | next [-] | | So you put extensions in the spec you don’t make it impossible for anyone else to implement. They knew open source suites were competing with them they did it on purpose. | | |
| ▲ | quotemstr 3 days ago | parent [-] | | > So you put extensions in the spec ... which are either public, in which case people complain that the spec+extensions is too long instead of that the spec is too long, or ... which aren't public, in which case people complain that there's no interoperability. You can't win. > impossible for anyone else to implement Except for all the people who did implement it? | | |
| ▲ | fsflover 3 days ago | parent [-] | | > Except for all the people who did implement it? It was never fully implemented. LibreOffice has been trying since then and there are always problems. |
|
| |
| ▲ | dullcrisp 3 days ago | parent | prev [-] | | The…sausage has a lot of moving parts? |
|
|
| ▲ | devnonymous 3 days ago | parent | prev [-] |
| From the same wikipedia article: > An Ars Technica article sources Groklaw stating that at Portugal's national body TC meeting, "representatives from Microsoft attempted to argue that Sun Microsystems, the creators and supporters of the competing OpenDocument format (ODF), could not be given a seat at the conference table because there was a lack of chairs."[55] Sure, yeah, that's not deliberate Sabotage /s |
| |
| ▲ | devnonymous 3 days ago | parent [-] | | Also this: > Google stated that "the ODF standard, which achieves the same goal, is only 867 pages" and that If ISO were to give OOXML with its 6546 pages the same level of review that other standards have seen, it would take 18 years (6576 days for 6546 pages) to achieve comparable levels of review to the existing ODF standard (871 days for 867 pages) which achieves the same purpose and is thus a good comparison.
Considering that OOXML has only received about 5.5% of the review that comparable standards have undergone, reports about inconsistencies, contradictions and missing information are hardly surprising.[118]
|
|