Microsoft recently announced that they would release over 30,000 pages of specifications to allow developers to interoperate with their products. Look at the long press release they put out:
I wondered to myself what specifications these were and how to find them. I stupidly thought that finding them should be trivial from the press release. Read on to find how wrong I was :(.
The press release has a link to Microsoft’s proud new interoperability site. This is a model of corporate form over function. The page is almost completely content free consisting mostly of smiling stock photography and mind-bendingly stupid corporate newspeak.
See those tabs on the page? The ones labeled ‘Products’, ‘Community’, ‘Access’, ‘Standards’? I, again stupidly, thought that, being as I was after standards, I should click on the ‘Standards’ tab. Oh, no. You see dear reader, these aren’t tabs. Although they are links, they don’t go anywhere other than the interoperability home page. The standards tab does change the newspeak when you hover over it however. Said doubletalk becomes:
Microsoft supports thousands of software and hardware interoperability standards in our products, and participates in hundreds of standards-setting activities annually. Learn more about interoperability through Standards by selecting a role below.
Aha! It becomes clear. File formats change depending on your rôle. Silly me, thinking that standards were standards. Unfortunately they don’t have a ‘just wants to read the fscking documents’ rôle so I select ‘IT Professionals & Architects’.
Fail! I’ve just found a long list of pointless articles saying stuff that should be obvious. Almost all are of the form, ‘Hey, Microsoft release a product that does X and there is a standard, Y, which is related to X. Microsoft will support it… eventually’.
Discouraged I returned to the interoperability home page. Nestling at the bottom of the news items are a link to the Office binary file formats. Thrilled by a new scent trail I hungrily follow the link. It is no matter that this useful starting point will be obliterated by the next piece of interoperability news, I can at least find where I am supposed to be and bookmark it. Happily the link did indeed end up with a page of specifications.
Thinking that I must be close, I hunted for some navigation clues. Perhaps a breadcrumbs trail that would lead to the mystical ’specifications’ list. Perhaps there would be a tantalising ‘more like this…’ link. No, far to obvious. Perhaps reading about Microsoft’s Open Specification Promise would yield the magic list?
Success! Here are a list of the specifications covered by the promise. Finally something useful! Just click on the name of the standard and… oh. It is just text, not a link. Microsoft failed to notice the major feature of the Web, the ‘H’ in HTML, the humble but useful hyperlink. No, this is just a static document.
Time to get sneaky. Let’s look at the URL for the binary file formats:
Yay! Microsoft are clearly following the rules for good URL design. Simply deleting the last bit and going to http://www.microsoft.com/interop/docs/ will give me my list of documents…
Oh dear. Fail once again. Microsoft’s website fails at navigation. Even URL guessing failed. Even when presented with a list of specifications, it failed. A large shipment of fail did indeed arrive.
Now, to be fair, I’m sure that these specifications are available somewhere on the horrible mess which is MSDN. All I want is a table with links to the appropriate MSDN pages. Is this too hard Microsoft?