Making a difference while we still can, for 1234.1233999999999 reasons
Things may seem to have quieted down a bit several days after the BRM in Geneva had ended [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]. It is not entirely true however. One just needs to look underneath the surface to identify a great deal of activity which is done more discreetly. Microsoft’s lobbying attempts — however gruesome and unethical they may be — have not ground to a halt.
Microsoft New Zealand apparently has what’s called a “director of innovation” who gets somewhat of a media placement in the national press. Very promotional and unnecessary. It also deceives.
There is also the strategic announcement of an SDK (putting the carriage before the pony). Don’t get too excited because it’s all .NET-dependent on the face of it. OOXML is a ‘standard’ candidate from Microsoft, only for Microsoft to control and implement. It is hardly surprising that Novell and the Boys chose to implement OOXML ‘translators’ in C#, bringing to mind the technology which Microsoft "reserves the right to sue" over.
So far in this post we have discussed:
- The legal issues of OOXML
- The ownership issues of OOXML
- The deception surrounding OOXML
We have not yet discussed the corruption which ushered the race for ISO-isation of OOXML.
On we proceed to an actual technical breakdown. The following example is by no means new, but it is probably more detailed than several previous reports. Just consider this serious deficiency in what Microsoft strives to make an international standards. It is one among many other examples. Above all, pay attention to Microsoft’s tactless response. [many thanks to a reader for the pointer]
I dashed off an email to the Microsoft UK PR team asking how Microsoft felt justified in seeking ISO standard status for OOXML when it wasn’t even capable of storing numbers correctly. Go back a few issues for the full blood and gore on this matter, but suffice it to say here that a number such as 1234.1234 is a problem for Excel because of the way the IEEE floating-point number system works.
Type 1234.1234 into Excel and it displays as 1234.1234 correctly. However, save the file as XML and a nasty little secret gets revealed: Excel actually stores it as 1234.1233999999999 in the XML file. I understand that Excel has to deal with IEEE quirks, but I’d like the XML file to interoperate without requiring me to fudge the issue manually, thank you.
No less than the great Jean Paoli replied to my email…: “Excel does have the ability though to store 1234.1234 as 1234.1233999999999 or as 1234.1234 and Open XML of course allows both.”
Woah, holy smoke, Batman. Open XML allows both?
If you believe that OOXML is deficient (which it is), then according to this new page you are encouraged to focus mostly on legal and technical issues found in OOXML, in case you contact your national body. [via Andy Updegrove]
I was at the OOXML BRM in Geneva on behalf of my national body.
If you have strong feelings about the procedures used in the voting (e.g. the O members vs P members debate, or the voting on issues that were not individually discussed):
* Contact your national body
* Describe your concerns (with reference to the appropriate directives, if possible)
* Allegations of corruption are unlikely to convince anyone of anything
* Ask your national body to investigate, and to raise an objection to the process if they are not satisfied
I suspect that most national bodies will prefer communication via email – it’s easier for the NB to distribute it to any relevant committee members. But some people feel that emails are cheap and easy, and sending a letter on paper carries more weight: if you agree, then just be aware that there isn’t very much time before the decision on voting is due.
One thing to point out is the incompatibility of OOXML with the number one rival of Microsoft. Not surprisingly, Gray Knowlton is playing dumb in light of the not-so-accidental exclusion of the GPL, but we have known the truth about this deliberate legal maneuver for quite time time, even before the SFLC had it properly articulated. █