Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I don't think many people would argue that Nelson isn't a visionary, but when push comes to shove, there is an uncomfortable amount of truth in Steve Jobs's oft-cited quip, "Real artists ship." After 50 years, Project Xanadu not only isn't in a production-ready state, the "best demo" available is described on the xanadu.com web site as "beyond fixing." The sample EDL documents on the site do a good job of demonstrating what Nelson had in mind with "transclusion" and two-way links, but it is much harder to tell at a glance what the relationship of the source is to the output than it is with HTML, and at least as implemented, EDLs look awfully brittle.

Maybe Xanadu as envisioned would have been better than the web we have now, but what we have as ostensible working proof of that isn't incredibly convincing. Okay, I could link to any text on another web page, not just text with "anchor" links, and the text I linked to would be highlighted. That's nice, but is it essential? And I can transclude text from any other page, which is coo, but man, Nelson seems to stubbornly ignore the ramifications -- or perhaps think commerce and law will rearrange itself suitably to accommodate his vision. "Publishers of original content are free to require payment, or not"; what's the mechanism? What if I just don't want you to transclude text from my document, or only want to allow transcluding certain parts? How are EDLs updated when transcluded documents change? How come, after fifty years, these fundamental questions are still answered with lines like "[Page and document logic] is defined by the data structure, which we will publish when ready"? Has anyone associated with Xanadu considered even basic HTML 2.0-level presentation aspects like tables, images and fonts?

I can't help but think Ted Nelson is the archetypal poster child for "the perfect is the enemy of the good." He's not the Jef Raskin of Apple because, at the end of the day, Raskin was willing to work with other people and make compromises to get some of his vision out the door. Xanadu's failure -- and by all practical measures, it is indeed a failure -- isn't due to the MIT Media Lab, or Tim Berners-Lee, or Apple, or Microsoft, or its variously brilliant-slash-flaky development teams. It's because they never. Ever. Shipped.



Ted's original vision for Xanadu was fairly complete. As I recall, documents would have been effectively immutable; every change you made would publish a new version, and all old versions would remain accessible. Every link and transclusion went to a specific version, so they would never break. If the page you were transcluding changed, you could obviously opt to update your own page to transclude the new version, if you wanted. The exact details for payments were never worked out as far as I know, but they would have required every user and every publisher to have a single specific identity which would be transmitted along with every document and request for a document. I'm fairly glad that didn't happen, at any rate.


The versioning makes sense -- but it seems like it could get unwieldy pretty quickly. (I'm thinking of the technical documentation site I actually work on, with thousands of pages, several of which get minor-to-significant updates on a weekly basis!) It also sounds like a design particularly ill-suited to, say, a news site with a front page that changes several times a day -- or, for that matter, a site like Hacker News -- although I suppose the notion of one-way "jump links" might have been the intended answer?

And, yes, the mandatory identity for all users sounds like a potential privacy nightmare.


It would have been different, no doubt about that. However, it's not like we don't already version everything internally. Wikis keep every edit in the revision history, we put all our code in git, etc. Even back in the day VMS systems had a version number as part of every file name, with the OS automatically keeping past versions of every file. It's just that there's no version field in our standard url syntax, so there's no standardized way of using retrieving those versioned documents.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: