• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

An Antic Disposition

  • Home
  • About
  • Archives
  • Writings
  • Links
You are here: Home / Archives for Rob

Rob

The value of restricting choice

2010/07/27 By Rob 8 Comments

The language game

Microsoft’s talking points go something like this (summarized in my words):

If you adopt ODF instead of OOXML then you “restrict choice”.  Why would you want to do that?  You’re in favor of openness and competition, right?  So naturally, you should favor choice.

You can see a hundreds of variations on this theme, in Microsoft press releases, whitepapers,  in press articles and blogged by astroturfers, by searching Google for “ODF restrict choice“.

This argument is quite effective, since it is plausible at first glance, and takes more than 15 seconds to refute.  But the argument in the end fails by taking a very superficial view of “choice”, relying merely on the positive allure of its name, essentially using it as a talisman.  But “choice” is more than just a pretty word.  It means something.  And if we dig a little deeper, at what the value of choice really is, the Microsoft argument falls apart.

So let’s make an attempt to show how can one be in favor of choice, but also be in favor of eliminating choice.  Let’s resolve the paradox.  Personally I think this argument is too long, but maybe it will prompt someone to formulate it in a briefer form.

Choice — the option to act

Choice is the option to act on one more possibilities.  Choice is the freedom to take one path or another.  Choice is the ability to open one door or another.  And what is the value of choice?  It depends on the value of the underlying possibilities.

In some cases, the value of choice can be valued quite precisely.

For example, imagine I have three boxes, one containing nothing, one containing $5 and another containing $10.  If you have no choice, and are given one  box at random, then you will get $5 on average.   And if given the choice of which box to pick, also without knowing the contents, you will also get $5 on average.

Similarly, if each box contained exactly $5 and you could see inside, the value of choice would still be zero.

But if the three boxes contained nothing, $5 and $10 and you could see inside, then the value of having a choice is clear.  You would naturally pick the $10 box.  So having a choice is worth an additional $5.

So we see that for choice to have value, you must have two things:

  1. A way to estimate the value of outcome over another.
  2. A preference for one outcome over another

In some cases this can be done with precision.  In other cases it can only be estimated or modeled. For example, trading stock options is essentially the selling and buying of the right to exercise the choice (option) to buy or sell a security at a given price within a given time period.  The value of this choice can be modeled by sophisticated mathematical models like the Black-Scholes option pricing formula.

Eliminating choice

So going back to the  boxes again.  Now imagine one has $10 in it, and the other has a note in it that requires that you pay me $10.  You can see the contents of each box.  Which one do you choose?  It should be obvious, you pick the one with $10 in it.

But what if I say you are not limited to picking only one box.  You can pick either box, or both boxes if you wish.  You have absolute freedom to choose A, B or A+B.  What do you do?  Of course, you still pick the box with $10 in it.

But doesn’t that eliminate choice?  Yes, of course it did.  But the value of choice was only derived from the value of the underlying outcomes.  By choosing, I’ve derived the full value of having a choice.  Since if one choice is clearly more favorable than others (it “dominates” the others) then the alternatives should be discarded.

Resolving the paradox of the choice

Give the choice of A, B or A+B, each are distinct, mutually exclusive choices.  They are the three boxes with three outcomes.  Each one has a value that could be estimated.  When someone portrays option A+B as preserving choice, they are forgetting that this is a choice that also restricts choice, since it eliminates A or B in their exclusive, pure forms from consideration.  Any choice, even the choice of A+B, restricts choice.   If you choose A+B then you have not chosen A alone or B alone.  You have the value of the outcome A+B, but do not have the possibly greater benefits of picking choice A alone or choice B alone.

Clear?  I think this should be obvious, but I’ve seen these concepts cause much confusion.

It is also important to realize that the combination A+B may have conjoint effects, which may be neutral, synergistic or antagonistic.  In other words the value of A+B is not necessarily the same as the value of A plus the value of B.

In some cases, certainly, the value of the A+B choice is the same as the sum of each individual values. For example, the boxes with money and notes, these are all simply additive, with no conjoint effects.

But in other cases, the value of A+B has synergistic effects.   For example, the choice of diet+exercise is more salubrious that either one chosen in isolation.

And in some cases the value of A+B is less than the value either one in isolation, as anyone who has bought both a cat and a dog knows.  These choices are antagonistic.

So back to the file format debate.  The choice here is between adopting ODF, OOXML, or ODF+OOXML.  These three choice are mutually exclusive.  They are the three boxes,  with three different outcomes.  Each outcome has a value that could be estimated.  But we should not fall into the trap of thinking that an ODF+OOXML decision is preserving choice.  Far from it.  By making that choice, one eliminates the possibility of having only ODF, or of having only OOXML, with the resulting values that those choices would bring.  Choosing both formats eliminates outcomes and restricts choice just has much as choosing only ODF eliminates outcomes.

You cannot avoid eliminating the outcomes you do not choose.  There are benefits that would come from having only a single standard, and there are costs and complications from maintaining multiple standards.  These must all be considered.

Filed Under: ODF, OOXML

Weekly Links #14

2010/07/24 By Rob Leave a Comment

  • DataNucleus Access Platform – ODF Documents

    “DataNucleus supports persisting/retrieving objects to/from Open Document Format (ODF) documents (using the datanucleus-odf plugin). Such documents can then be used in applications like OpenOffice and KOffice. It makes use of the ODF Toolkit project.”

    tags: ODF

  • Producing ODF spreadsheets

    “So, the remaining question is: How to produce the ODF XML?

    What I did was, open the original content.xml and start to strip away anything that seemed useless. Repeat it untill things stop working.

    So this is an unoficial guide for people writing ODF spreadsheet documents on their own. This is the bare minimum XML I got”

    tags: ODF

  • How To Judge Your Vendor’s Support for a Standard

    “For people who adopt software, trying to judge the value of so-called “standards support” in a product can be an incredibly frustrating experience. Standards implementations often fail to live up to their promises and, worse, it can be very hard to tell in advance of installing and running the software whether or not the “standards support” it supposedly provides is actually going to meet your needs.”

    tags: standards

Posted from Diigo. The rest of my favorite links are here.

Filed Under: Weekly Links

ODF 1.2 Begins Final 60-day Public Review

2010/07/13 By Rob 10 Comments

A major milestone was reached for the OASIS Open Document Format (ODF) TC last week.  The latest Committee Draft of ODF 1.2 (CD 05) was sent out for a 60-day public review.

As you may recall, ODF 1.2 is a single standard in three parts:

  • Part 1 specifies the core schema, and was send out for public review in January.
  • Part 2 is OpenFormula (spreadsheet formulas)
  • Part 3 defines the packaging model of ODF, and went out for public review back in November

The current public review is the first complete review, presenting all three parts of ODF 1.2, including the new Part 2, OpenFormula, which is our spreadsheet formula language.

We will accept public comments (and that includes comments from technical experts in ISO/IEC JTC1/SC34) through September 6th.  Comments should be submitted via the TC’s public comment list, which you can join via these instructions.  You can monitor incoming comments also by subscribing to the comment list, by searching the archives or unofficially via the ODFJIRA Twitter feed.

The OASIS ODF TC will track and review all received comments and produce a report indicating how we have resolved each comment.  If we decide to make substantive changes to the specification based on comments received then we would approve such changes in a Committee Draft (CD 06) and send that out for a 15-day public review of the changes made.  I expect this will occur.  Then, the TC may vote to approve the public review draft as a Committee Specification.  Then we can have a ballot of the OASIS membership to approve it as an OASIS Standard.  And finally (after some additional administrative paperwork) we can submit ODF 1.2 ISO/IEC JTC1 according to their PAS process.

I think we can finish up the above remaining formal steps in the 4th quarter.

As I mentioned, the biggest difference in CD 05 over previous Open Document Format public review drafts is the inclusion of the OpenFormula specification.  If you are interested in contributing comments during the public review, I’d especially encourage you to review this document.  The other parts have already gone through one or more cycles of public review.  This part has not.

An outline of the contents of OpenFormula is:

  • 1 Introduction
  • 2 Expressions and Evaluators
  • 3 Formula Processing Model
  • 4 Types
  • 5 Expression Syntax
  • 6 Standard Operators and Functions
  • 6.4 Standard Operators
  • 6.5 Matrix Functions
  • 6.6 Bit operation functions
  • 6.7 Byte-position text functions
  • 6.8 Complex Number Functions
  • 6.9 Database Functions
  • 6.10 Date and Time Functions
  • 6.11 External Access Functions
  • 6.12 Financial Functions
  • 6.13 Information Functions
  • 6.14 Lookup Functions
  • 6.15 Logical Functions
  • 6.16 Mathematical Functions
  • 6.17 Rounding Functions
  • 6.18 Statistical Functions
  • 6.19 Number Representation Conversion Functions
  • 6.20 Text Functions
  • 7 Other Capabilities
  • 8 Non-portable Features

The ideal reviewer for OpenFormula would have expertise either in formal descriptions of computer languages, e.g., know EBNF, type systems, numeric computing models, etc., or knowledge of one or more of the domains of knowledge we cover via the spreadsheet functions.  Honestly, I think we have enough “language lawyers” on the TC already, so I’m not so worried about that part.  And we did have direct participation by experts in some functional domains.  For example, the statistical and mathematical functions have been given a good scrub already by “Dr. G.”

However, the financial functions, these I think could use a thorough review by a subject matter expert, ideally an expert in financial accounting standards, actuarial sciences, or similar. If anyone knows such an expert who is willing to contribute comments on approximately 30 pages of function definitions related to loan amortization, bond coupon and yield, rates of return, day count conventions, etc., please let me know via email.

Note finally that although OpenFormula is part of the ODF 1.2 specification, it was designed to be a portable, embeddable expression language syntax.  It is a natural fit for a spreadsheet application, but it could be used wherever you need to encode a calculable expression with a rich library of domain-specific functions.  It was designed so it could be used in other contexts.

I think it would be a fun project to implement OpenFormula as a standalone library, Java or Python, where you feed it an expression, along with an “address resolver” object to resolve names (e.g., cell references) to values, and then have it calculate the output value.  This could be the first step toward some interesting things.  For example, I give you an ODF spreadsheet and you generate a web app that executes the same model as my spreadsheet.  (Many years ago, in the 1980’s there was a “spreadsheet compiler” that did something similar to 1-2-3 files).  Or I give you a spreadsheet and indicate some variable input cells and you execute thousands of variations on it via Monte Carlo analysis.  Or I give value ranges for you on input cells, and you calculate the sheet in variations via interval arithmetic.   This may be interesting for sensitivity analysis, risk analysis, analysis of propagation of errors, etc.

Think:  “Plugable spreadsheet evaluation engines, all understanding a common formula expression language.”

Once you have a standardized model for a spreadsheet and that model is independent from the calculation engine, then you have the ability to plug in in different calculation engines that conform to the standard, and these various calculation engines can have various strategies.  This is a very powerful capability, made possible via standardization.

Filed Under: ODF

Weekly Links #13

2010/07/10 By Rob Leave a Comment

  • Are Standards Organizations Relevant? | Heap Overrun

    tags: standards

  • Use Open Document Format as the Government standard — HMG – Your Freedom

    “Establish the Open Document Format as the standard for use in all Government departments rather than continually upgrading to the latest version of Microsoft Office at a cost of many millions of pounds. This is a process which is already taking place in other European countries and one which should be started in Britain at the earliest opportunity.”

    tags: ODF

  • Convert XHTML to ODF using Xalan-J?

    tags: ODF

  • [dev] Proposal of new project for UOF

    tags: UOF

  • Another High-Tech Barrier Falls in South Korea – Digits – WSJ

    “The voice for the use of open document format has been mounting and the government last month said it was considering a change in the status quo.”

  • tags: ODF

  • Lion’s Book (Unix) [PDF]

    tags: unix

  • Introducing Open Source to A Middle School | opensource.com

    “There are so many compelling reasons for children to use open source. If they develop skills and a body of work using open source software, it can follow them through high school, college, and even into the professional world. It won’t cost them or their school any license fees. Using the open formats promoted by free & open source software, their writings and projects will stay accessible, avoiding bitrot. Should the children develop a real interest in a particular tool, the nature of open source is such that they can actually affect change on the tool itself – by actions as small as filing a bug report right up to submitting patches and developing new features. (“

    tags: opensource

Posted from Diigo. The rest of my favorite links are here.

Filed Under: Weekly Links

ISO/IEC JTC1 Revises Directives, Addresses OOXML Abuses

2010/07/07 By Rob 5 Comments

On July 1st, 2010 a new set of rules (directives) took effect in ISO/IEC JTC1  including new processing and voting rules for JTC1 Fast Track submissions.  If these rules had been in effect back in 2007, OOXML would have died after its initial ballot.

Let’s take a look at some of the specific changes that were made in reaction to the events of 2007-08.

First, we see the elimination of the contradiction phase in Fast Track processing.  If you recall, under previous rules, a Fast Track begin with a 30-day NB review period, sometimes called the “contradiction period”, where NBs were invited to raise objections if they think the Fast Track proposal contradicts an existing ISO or IEC standard.  This was followed by a 5-month ballot.   The problem was that the word “contradiction” was not defined, leading to various irreconcilable interpretations.  In the case of OOXML 20 JTC1 National Bodies (NBs) raised contradictions.  Evidently, the passage of time has lead to no progress on defining what exactly a contradiction is, so the contradiction period has been eliminated entirely.  Instead, looking for “evident contradictions” (still undefined) is given to JTC1 administrative staff, which is the surest way of guaranteeing that we never hear of contradictions again.  The Fast Track DIS ballot remains at 5-months, so net-net this accelerates processing by one month.

Next, we see some clarification around how NBs should vote on Fast Tracks.  Back, during the OOXML ballot,  Microsoft made a huge effort to convince NBs to vote “Yes with comments” if they found serious flaws in the text, with the promise that they would all be addressed at the BRM.  Well, we now know that this was a big lie.  Very few issues were actually discussed and resolved at the BRM.  And most of them were addressed by merely saying,  “Sorry, no change”.  At the time I argued that the rules were quite clear, that disapproval should be voiced by a “No, with comments” vote.  Well, we now see another small slice of vindication.  The revised rules now state:

If a national body finds an enquiry draft [ed.  A Fast Track DIS is an ‘enquiry draft’] unacceptable, it shall vote negatively and state the technical reasons.  It may indicate that the acceptance of specified technical modifications will change its negative vote to one of approval, but it shall not cast an affirmative vote which is conditional on  the acceptance of modifications. (ISO/IEC Directives, Part I, Section 2.7.3)

I assume this is clear enough now.

Another change is that if the DIS ballot fails to get sufficient votes, meaning less than 2/3 approval of ISO/IEC  JTC1 P-members, or more than 25% disapproval overall, the proposal dies at that point.  It doesn’t go on to the BRM.  Game over.  If this rule had been in place back in 2007, OOXML would not be an ISO standard today.

Finally, we see the requirement for a Final DIS (FDIS) text for review and approval by NBs.  Back in 2008 I was quite vocal about the absurdity of having NBs vote on a text that they were not allowed to read.  Several NBs lodged formal objections at the time as well.  All this was dismissed by JTC1 staff.  But reality struck when NBs reads the actual published version of OOXML, and saw that it did not contain all of the changes mandated by the BRM.  So belatedly, but better than never, the rules have been changed.  Fast Tracks now require an FDIS text for NBs to review,  along with a 2-month ballot on it.

There are also smaller, less substantial changes.  For example, the dedication to Jan van den Beld, the former head of Ecma, for his “unwavering dedication to the development and evolution of the JTC 1 procedures”, has been removed.   Ironically, both Ecma and Microsoft have indeed made long-term contributions to the evolution of Fast Track in JTC1, but probably not the way they intended.

The new ISO/IEC Directives are posted online.  Note that one document expresses the common rules for ISO and IEC, while another is a set of supplemental rules which apply to only ISO/IEC JTC1.  Evidently, we’re supposed to consult both documents and mentally merge them whenever trying to determine what the rules are.

Filed Under: OOXML

  • « Go to Previous Page
  • Page 1
  • Interim pages omitted …
  • Page 15
  • Page 16
  • Page 17
  • Page 18
  • Page 19
  • Interim pages omitted …
  • Page 69
  • Go to Next Page »

Primary Sidebar

Copyright © 2006-2026 Rob Weir · Site Policies