Ted Nelson Releases Xanadu
ewen writes "Ted Nelson has at last released the source to Xanadu, the extremely rich but never-quite-finished hypertext system. There was a couple of sessions at the O'Reilly Open Source conference yesterday, which Jon Udell has written up, and Dave Winer has posted some background material and thoughts at his website, www.scripting.com. "
because they were granted the same freedoms as me.
--
Xenu loves you!
There should be a paragraph on that page which says what Green and Gold do and are used for. Yes, I remember the old BYTE summary...would have been nice to have back when disk space was expensive...
For an interesting and clear explanation of what the technology actually does, see:
http://www.byte.com/nntp/joncon?comment_id=1701
(In case you followed the link to comments rather than to Scripting News).
With all the attempts we're seeing to make the web an interactive, BBS-like medium (Slashdot, Web-DAV, ThirdVoice/Gooey/...), I think this technology is definately worth looking into.
The growth of the internet has been thanks to the simplicity (over simplistic in some people's view) of the protocols, etc. XML and XSL are another step in this direction, simple concepts that take the best from existing ideas. SGML has been largely ignored (at least in Europe) thanks to it's needless complexity. DSSSL is even worse.
While the Xanadu system sounds technically and conceptually brilliant, the fact that twenty years down the line it still doesn't work is worrying. Is there a limit at which complex ideas become unimplementable, or has Xanadu simply been unlucky?
And I couldn't help noticing that the C version is the preferred developer option, rather than the Smalltalk/C++ version. So much for the wonders of Object Oriented Programming - the biggest intellectual fraud of the nineties.
Chris Wareham
I met Ted Nelson a few months back and, like nanotechnologist Eric Drexler who documented the effort in a chapter of "Engines of Creation", he's a fascinating guy - neural connections just chaotic enough to create something like this.
What I really want to know, though, is will it layer well over the web infrastructure? Its technical superiority won't win it users; it's not enough of a paradigm shift on its own. Let's hope it plugs into today's web and lets the networked society truly get a grip.
>>>>>>>>>
Read a Linux newbie's musings in The Microsoft Matrix.
- Read fiction at www.espressostories.com
They've gone for the one of the most liberal open source licenses out there X11. This is compatible with GPL and LGPL, doesn't have the "obnoxious advertising clause", and basically gives us enormous freedom to use the product as we see fit.
--
Xenu loves you!
If only they had released Xanadu as Open Source
in the 80s, rather than waiting a whole decade.
If they had, we'd probably be surfing the web using bidirectional links, infinite namespace and all the other cool things that Xanadu has.
However, now that HTML has such a hold it is doubtful that Xanadu can ever make much of an impact.
While the Xanadu system sounds technically and conceptually brilliant, the fact that twenty years down the line it still doesn't work is worrying. Is there a limit at which complex ideas become unimplementable, or has Xanadu simply been unlucky?
Complicated software that works pretty much always derives from something
simple that works, not something complicated that doesn't work.
OOP is overrated, it's useful, but PHBs tend to forget that it's just even easier to write
complete crap using OOP. There's this laugable notion: OOP == Good, !OOP == !good.
I believe that the problem with the smalltalk version
is that it is Xerox parc smalltalk which is not a commonly
supported development environment. The C++ is auto-generated, so unlikely
to be very readable.
http://rareformnewmedia.com/
Wired covered the Xanadu project a couple of years ago. Sounded quite interesting in parts, although it had a real vapourware whiff about it.
Some parts of the tech seem pretty cool - in the Wired article, Nelson went on about a 'revolutionary' new method of indexing & searching textual information which was several orders of maginitude faster than anything else around. This sounded great, but the team's attitude was highly secretive and they refused to even give a demo, never mind release the source code.
Frankly their 'if we told you we'd have to kill you' schtick gave the impression that this was just so much talk which they had cooked up over a few bong hits and that they hadn't gotten around to installing their compilers yet, much less started to code.
Ted Nelson also gave the impression that he had slept through most of the WWW development that had taken place during his time on the Xanadu project. He envisaged a world of micropayments, tightly controlled data and strong copyright controls - basically the exact opposite of the way the Net seems to be going.
So, it is good to see something concrete after all this time - hopefully open sourcing the code will let somebody with a little more programming nouse give them a hand. It would be a shame to see whatever good ideas and models they have developed so far go to waste, but I doubt if Xanadu is ever going to come to fruition exactly as it was originally intended. We just arent working in that kind of world anymore.
-- Stu
The World Wide Web was created before the deluge of software patenting and after hypertext linking had been invented. The Government, as much as we like to complain about it, had a redundant network in place that could handle hypertext linking ARPANET. Most importantly, in 1990 Tim Berners-Lee was coding the World Wide Web on his NeXT machine at Cern while Ted Nelson was XEROXing literary machines 90.1.
If any of this had of hapenned out of step, Ted Nelson could have invented the web, patented his software, making his system the standard. Thusly turning your PC into an
INFERNAL GUMBALL MACHINE OF INFORMATION.
Think I'm out of bounds???? Students, please turn to page 5/13 of Literary Mchines 90.1:
ROYALTIES IN THE XANADU PUBLISHING METHOD
amongst are for those who do not have a copy;
BYTE ROYALTY;
a royalty for every byte delivered.
LINK ROYALTY;
a royalty for links to other documents.
if that wasn't enough, how about a
AUTHORS FUND;
a royalty for everything delivered to the network. If publisher owns material, he gets rebated. Otherwise TAX would be appropriate description.
Let me put it visually for you. You know that little counter you get at KINKO's to make copies with?? Imagine that plugged into your PC. And imagine it spinning really fast.
You thought the RIAA is bad with MP3s?? Well how much music do you listen to as to compared to digging for info on the Web??
Don't get me wrong. I believe in giving every author, written, electronic, musically or otherwise not only their just due, but their asking price for the work they offer. I don't mind a bit going to a secure server and paying for content, no matter what it is.
What I do mind is automatic collection, another opportunity for an unjustified tax by a chrony politician, and exorbitant fees for material that I don't need or want to buy.
As I see it, I don't mind buying the beer, but clean water is everbody's right.
Thanks to the way history is we have the possibility of new revolutions in things seemingly unrelated as computer chips and medicine, or network redundancy and rainforest conservation, all due to the free flow of information.
Do not forget that the goal of Xanadu was and is to be an advanced fee collection system. Because history hapenned right, Xanadu almost seems to be a technological afterthought. It is a curiosity to be examined and avoided.
Those who believe that Xanadu's prime purpose is to incorporate all of human knowledge, and that its careful attention to royalties is an afterthought to attract those who would not otherwise use it, have not been listening to what Ted Nelson has been saying for the last thirty years.
I knew Ted back when he was writing Computer Lib/Dream Machines (I'm in it several times). He's a wonderful visionary. His visions are about literature, primarily. He also has visions about the literary uses of computers, because he's a good visionary. But he is, first and foremost, a writer, and royalties are of prime importance to him. Ted, and I kid you not, loves to scribble his ideas on 3x5 cards or 4x6 cards while he's explaining his latest ideas. Diagrams, arrows, labels, cute pictures, man, he's great at it. And absolutely every single last one of these cards gets 'C'-in-a-circle Copyright 19xx written on it, and it goes back into his pocket. His vision of Xanadu is of a system where absolutely everybody retains eternal rights to whatever they create, and gets paid royalties every time it's used. Period. Don't think otherwise. Is this a good thing? Yes. Is it a feature which will lead to its adoption by the masses? Hell no. The Web exploded because the Web is free. Don't fool yourself on that one.
I find it ironic that some of the most immediate barriers to Xanadu's widespread adoption come from the principle it most espouses: protection of intellectual property rights. It has been wrapped in trade secrecy protection until today, when it is (probably) too late to be widely adopted by anyone. Open Source release doesn't mean something will succeed, it only increases the chances. Look at Concurrent Virtual Workspaces, CVW, which Mitre of all people recently open-sourced. A kick-ass collaborative system with multicast support, but people haven't been beating down the doors.
The other intellectual property problem was with ParcPlace Smalltalk. I mean, banking and brokerage houses use this system a LOT because they don't give a flying damn about standards and because design-to-deployment times are shorter with PPS than with anything else, if the implementors are already expert in it. And for these customers, time is everything. However, all such systems are proprietary from the get-go and forever. ParcPlace tried, unsuccessfully, to figure out how to do intellectual property protection while allowing widespread deployment of products written in PPS. They failed big-time. Smalltalk was always designed as an open system, and when it was made a product by ParcPlace, it turned out to be next door to impossible to make some of it open and some of it closed. Hence, Xanadu got bit.
from roger@xanadu.net
/. is full of insight and warmth, as wells as some misunderstanding and confusion.
/. today. I've been busy trying to get bandwidth back after all we got slashdoted today!
As usual
I'll try to comment on several questions raised in
Acutaly we are stuck in ParcPlace 2.5 (I believe) which keeps us stuck in SunOs because it requires sunview. There is hope, a modified squeak should be enough to read our smalltalk code and preserver the trivial systax changes we require to carry C++ type info.
The Green C version was coded from 1979-88, and is released as it was in 1989. It was decided to shelve GREEN and proceed with a much improved design. This design, "GOLD" is a SMALLTALK == C++ version with breathtaking power and scope. And isn't usable. My contention is that SMALLTALK and C++ are the same language, and I can show that with the C++ code we have. The surprising thing thats appropriate to say here is that the generated C++ is the SAME as the handwritten C++. It reads identically and is indistinguishable from the stuff we wrote by hand. This is astounding enough that I bother to mention it.
But development tools being better, perhaps. But in 1981 a unix system was within the reach of any starving hippy who set it as his priority. I bought my second unix machine in 1982 a sun 100u. Are the tools better now? Unquestionably, but if you don't aim high with good tools, you still produce the same kind of stuff that everyone else makes.
Can it be layered over the web? Probably. An Anonymous Coward claims that every version must be kept because the naming system can't handle changes in the referenced text. This is exactly backwards. The internal mechanism for keeping versions is cheap and clever, involving shared subtrees of data structures, so it is used as a method of handling changing text.
In a more direct way it can be layered in. It will be fairly simple to effect read only access to htmlized Udanax documents. I expect it to be 100 lines of perl. It's on my list, right after getting a GREEN server connected via some reliable bandwidth.
The name has changed since: HG is now known as Hyperwave Information Server and it is a commercial product. More info at http://www.hyperwave.de
I have tinkered with HWIS 4.0 and think it is really nice system to implement intra/extranets and it runs on several architectures including Linux. If you don't want to customize the interface it is fast to get up and running.
Some of the features include
New 5.0 version includes messageboards and mail.Haven't tested it yet though
Hook onto the server and wouldn't you have a collaborative version control system?
If I understood the description on Byte linked to by the first post, you could do the following:
Of course, I wouldn't like to write the compiler for this system...
----- Documentation is worth it just to be able to answer all your mail with 'RTFM' - Alan Cox.
ftp://ftp.ospreysolutions. com/xanadu/xanadu0822rel.tar.z
:)
/. as of late. Guess it comes with popularity. Let's not forget that we do this because it is fun and interesting, right?
Spread it around, its Free©. (thx RMS)
ok, mebbe a little bit more religious rant:
Ted Nelson's ideas have influenced a whole gaggle of software developers and such. He seems to have influenced some of the XML spec. His ideas are worth examining, especially his tumbler arithmetic. Sure, he is eccentric. I aspire to be that eccentric.
I'm not going to print any t-shirts that propose to remake the Web in Xanadu's image. I'm merely looking at the ideas of a pioneer.
On a tangent: there seems to be more noise than signal on
"Classic UFO's
The system Ted Nelson invented is a global naming system for very large data sets; not unlike the Dewey decimal system some libraries use for indexing books.
Sadly the naming system can't handle changes to the referenced text, so in order not to break the references, every version of the document that was ever created has to be kept.
Not really. (You're thinking of his early descriptions of the concept.)
In "gold" the issues of location and labeling were separated, as was version tracking. You can inquire about intermediate versions of a document, but if no server you can reach happens to have saved a copy of them them you can't read them. Servers can in principle "burn all the copies" of a published version, archive them and lose the archive, and so on.
For some kinds of content the server can compute it on the fly, so nobody ever has to save a copy (though other servers might cache it). This corresponds to documents with dynamic content, such as query retrievals and other CGI-generated stuff.
The web also has a hierarchical global naming system, and while it can't index down to a specific paragraph in a document, it can index as far as a well-known entry point within a document.
While the web does have problems with global names, those problems would only be worse with a system like Xanadu.
Again you're confusing indexing with identity. "Gold" handles identity as a separate item. The identity of a document is a history track across versions. "The current issue of Wired magazine" would be one such identity, as would "the latest rough of the December 1999 issue of Wired magazine". You "Publish" the December issue by "hopping the bert" of the current issue onto the same version as the "bert" of the rough of the December issue, creating a new entry in the issue history with exactly the same content as the rough.
The history of the "current issue" bert is thus the set of published issues, while the history of the "December 1999 rough" is the history of the assembly of the issue. The current state of the "current issue" bert is the copy on the newsstand, you can see the publishing history by viewing the bert history, and you can read the back issues (if somebody saved the bits and will serve them to you) by viewing through the previous states of the bert.
As for importing the whole web, "gold" lets you create a placeholder for an external document. Initially you can view the external document through the placeholder - and your server will compose a query to the external system if possible, or tell you that you can't view it yet. Later, if the external document can be and is imported into the system, the owner of the placeholder can "unify" it to the on-system version, declaring the on-system verson to be canonical and giving up his ownership rights to the owner of the canonical version.
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way