« Skype, Venice, SVG | Main | Adobe, iPhone »

January 12, 2007

Layin' track

Layin' track: The link goes to a Wikipedia history of railway gauge. Once you lay down a standard infrastructure, other people can predictably deploy their work atop it. When each region exercises their own choice in track width, then compatiblity hassles increase costs and reduce choice for those deploying atop that infrastructure. The question isn't so much "Is the railway system open?" as it is "At what levels is the railway system open; who can make what types of choices, when?" The relevance? I've been reading and re-reading these "'Open' requires what?" conversations (O'Reilly, me, Duane Nickull, Anne Zelenka, Cote), and I'm surprised when people assert that there are advantages in developing upon, testing against, and maintaining support for multiple runtime environments, compared to a single "author once play anywhere" predictability across clients' configuration choices. You might want to tweak your region's railway gauge because mountainous regions can't afford normal grades, or because of new highspeed cars, but such non-standard choices definitely impose costs on whose cars you can run, whether freight needs to be unloaded at national borders, the availability of equipment, more. I think that standardizing the understructure opens up deployment atop that understructure -- it provides more choice, at less cost, to whoever wants to use the platform -- and I would personally resist any moves to reduce the predictability of what we can do on Other Peoples Machines. Anyway, I'm still trying to understand those who think SWF development should split out like HTML/JS work, and this "railway gauge" example is a good prior example from history. (There's a little more history on "Author Once, Play Anywhere" in the extended entry.)

Many people today associated the phrase "Author Once, Play Anywhere" with Java, and regard it as a bit of a joke after Microsoft successfully forked clientside Java capabilities in the 90s. But Macromedia popularized this phrase, before the first Web boom, when Macromedia Director and its Portable Player technology allowed for standalone runtimes on Mac, Win, Unix, Solaris, AIX, Iris, 3D0, and other devices.

Here's a Jan95 citation of this use, still available on the WWW:
http://groups.google.co.uk/group/comp.sys.acorn.announce/msg/6d4d19cba767f3ad

In June 1995 Netscape announced extensibility for its upcoming 2.0 version, and Macromedia announced Shockwave, Adobe announced Acrobat Reader, and Sun announced in-browser Java.
http://cgi.netscape.com/newsref/pr/newsrelease28.html

The following links came from this initial wave of WWW interest, and use the "Author Once Play Anywhere" slogan:

Jan 95, press release on device-independent delivery:
http://calbears.findarticles.com/p/articles/mi_m0NEW/is_1995_Jan_31/ai_16589974

Oct 95, press release on beta Shockwave work:
http://www.prnewswire.co.uk/cgi/news/release?id=59450

July 96, William Hurley interviews Macromedia CEO Bud Colligan, and talks about "Shockwave Audio", the first widescale commercial deployment of what was later called MP3 audio:
http://www.webdeveloper.com/multimedia/shocking/96/sh960709.html

But this "Author Once Play Anywhere" material is extraneous to the "Who's scared of a little fork?" main topic... just caught my attention because of some of the Java references in these posts.

Posted by JohnDowdell at January 12, 2007 3:00 PM