One of the most surreal experiences in my life occurred in 1999 in the West-End Manhattan apartment of Richard M. Stallman's mother, where RMS was celebrating his birthday. The messiah of the Free Software movement himself poured me a glass of Guarana soda (not Bawls, btw, but some other brand he sourced from a bodega somewhere in the city), then spontaneously and maybe subconsciously practiced a few folk-dance moves, as if it was a nervous tick. I leaned over his shoulder while he taught Emacs LISP to an attractive Italian lady on his worn, smudged laptop, an external keyboard balanced on top of the laptop's presumably broken (or insufficient) keyboard. Later he and everyone at the party settled down, legs crossed, in the living room while he played folk tunes on a penny whistle, summoned from nowhere like a magician producing your card. He gave me a GNU/Linux sticker to wear, featuring cartoon representations of the GNU Gnu and the Linux penguin dressed as superheroes in flight. He also gave me his business card, which he submitted in Japanese fashion by holding the card at both edges and presenting it with a polite bow--a slight but rapid lean from the hip. You say that you're disappointed in Nelson's negative attitude, but he's not alone and I think it comes with the job of being a visionary. Stallman was a polite host, but very blunt and honest. I got into Stallman's party by way of a friend who was very active in the Perl community (as in the Perl programming language). Somebody had passed this on to Richard and he spoke up, asking if my friend could help steer the Perl community towards settling on a single Free Software license for the greater ecosystem rather than the mish-mash of GPL/BSD/Apache licenses they were using at the time. Alas, my friend had to confess that he wasn't that influential, to Stallman's visible disappointment. It was like my friend had instantly fallen off Stallman's radar to become just another warm body at his party. If you imagine this kind of exchange happening every day for decades, of being the target of harsh criticism--only some of it intelligent or well considered--and routinely snubbed and denied credit for what has become a massive, mainstream cultural and technological movement, then you can see where the bitterness comes from. In the second video, Nelson quoted Machiavelli: "There's nothing more difficult to take in hand, more perilous to conduct, or more uncertain in success than to take the lead in the introduction of a new order of things." The challenge to one's psyche is not so much about whether the new order can actually technically work, but the resistance of your fellow humans who don't "get" it, or are determined not to get it, a-la Sinclair's refrain: "It is difficult to get a man to understand something when his salary depends on him not understanding it." But Nelson, I fear, has to battle the former problem more than the latter. Technology geeks like us are easy to excite with brilliant and non-conventional ideas (look how fast BitCoin is growing, for example), but Xanadu and ZigZag imply enormous engineering challenges that may not be practical. I'm reminded of something similar to ZigZag called the "Triadic Continuum", based on ideas of Charles Pierce in the early 20th century. Someone named Jane Mazzagatti took these ideas and developed the Triadic Continuum data structure at Unisys, patenting the bonkers out of it, and sometime after that a writer named John Zuchero wrote a book on her work called The Practical Pierce. I do not recommend buying this book. Just don't. It provides a somewhat functional description of the Triadic Continuum, but it doesn't take long to get the idea that Zuchero had fallen head-over-heels for Mazzagatti; it's practically a love letter masquerading as a CompSci book. The data structure he describes seems like a good idea, but on closer examination is an orgy of linking data for the sake of it, with nothing that jumps out as a clear advantage over other techniques. It makes you spend an enormous amount of overhead on pointers and the cycles to follow them, but there aren't any clear techniques for making use of this linkage for anything other than storing and recovering strings. In the same vein, Xanadu and ZigZag are an orgy of concepts that seem cool on the surface, but they trade an insane amount of overhead for benefits that may not be as useful or justified as Nelson imagines. It might be insanely cool if authorship data can be preserved every time you cut-n-paste a word or sentence from one document to another, linking the documents together in a Xanadian matrix of physical and semantic relationships that can distribute royalty payments every time a book or document is sold, automatically compile bibliographies and allow readers to leap from one related document, idea or word to another, but even if it was technically possible (particularly in respect to scaling), it might be a solution in search of a problem that doesn't exist. Back in 2001 I built a web site that implemented bi-directional linking by using the "Referrer" field submitted with every HTTP GET request. The software I wrote kept track of these referrers, visited the pages to verify their existence and capture their title, then listed them at the bottom of each article I wrote. I also got it to support attaching backlinks to individual paragraphs (by appending "?p=#" in the URL you link to). I got written up in MIT Technology review for it! Unfortunately that site isn't online anymore, nor do I have plans to resuscitate it, but I announced the feature in an essay called "Ghosts of Xanadu", acknowledging Nelson's influence. I think that many of Nelson's ideas are viable and valuable, but not all of them. Any time you have a visionary like Nelson, the world tends to treat their work like a smorgasboard that you can pick and choose from as you please. Ideas 1, 4, 7 and 9 work for me, but not the rest. There have been many attempts to implement Nelson's ideas in code, but "pure" Xanadu isn't really in use anywhere. I think it may be worth cannibalizing it for some ideas, but not all of them. Which ideas are worth implementing should depend on your vision, though, not Nelson's.
My plan was to email him and ask him his ideas about operating systems, computing, the Internet...how he would have done it all...and use the ideas that I thought were worth preserving. He ignored my questions because they would take too long to write about in an email (which I grant is very true), and instead offered to Skype me, in addition to recruiting me to his Xanadu team because I "wrote well and sounded intelligent" - paraphrasing, despite not knowing the language that Xanadu is currently being developed in. I should have simply Skyped him I guess, because I accepted his offer. He sent me source code, and disappeared. It became harder and harder to communicate with him because he was busy, and eventually I guess I must have said something that he disliked, because it's been a month since my last email with him. I feel regretful because now I'll never know of his ideas, which I'm sure are numerous and innovative, and I would have liked to implement them in my projects. :( I'm thinking of emailing Engelbart and asking him the same question, what he thought went wrong along the way and how he would have done it, again cherrypicking the best ideas, but it appears that Engelbart's ideas are more easily accessed publicly than Nelson's (most, if not all, of Nelson's books are out of print), so maybe it'll be unnecessary.
I'm actually in awe that he corresponded with you, even if disappearing after a while. But don't read too much into his silence, it might not be that he took offense. I've noticed in myself and others that we can have the intent to keep a conversation going, but every opportunity comes at the "wrong time" or there's some idea that I gotta develop more before I write about it, or too tired or something or something. Days of procrastination turn into weeks, months, and then you've forgotten about it. You might want to gently prod him but, obviously, not too frequently! I've dwelt often on some of the other ideas in Xanadu and how they could be accomplished, particularly of how to maintain authorship, future revisions and bi-directional links. My use of HTTP referrers was a hack and depended on someone explicitly following the link in a browser (and not suppressing the referrer, which I think some privacy software does). I don't know how Nelson or other Xanadu engineers approached it, but for a while I was contemplating things like an extension to UTF-8 that could piggy-back unique identifiers in the last character of each word, or some other semantically independent sequence of characters. In some of the UI mock-ups (or prototypes) I've seen, I disagree somewhat with the documents floating in 3D space and the lines connecting references. It looks too busy and messy to me, a great demo but not something I'd want to work with day-to-day. Jef Raskin's prototypes of zoomable UIs looks a little bit better, but with too much zooming. A few years ago I was inspired to get a foot pedal for my computer. There was one company that sold guitar FX pedals with a USB adaptor that translated a foot-press to any keyboard combo you wanted. I programmed it to implement the keyboard shortcut for "Mission Control" on Mac OS X. It actually kinda works, as long as you get used to it. Tap with the foot and see every open document zoom into view, tap again and it zooms back to what you were working on. Alas, I couldn't get myself into the habit, because I just didn't multitask that much. With a different UI, though, I can see it being more effective. The problem, as I see it, is that Mission Control doesn't prioritize what it zooms out to, it's just Expose on steroids. But what if, when I tap my foot on the pedal, it zooms out to the documents I access most frequently, plus the most recent browser history. That might be better. I also keep wanting to detach Hubski/Reddit-like link collections from the browser window and make each link and discussion thread its own high-level object on the desktop. Tap my foot and I zoom out to see all the links, tap again and I zoom back on the page or thread I was focusing on. I want to stitch my own work into that tapestry, so local private documents live in the same space as public pages on the Internet. To the guy who invented those Flash/Java/Javascript "tag clouds", I want to grab him by the shoulders and shake him good and hard. "No! You made it useless! Take it out of the browser and group them semantically, make it part of the desktop, and clicking doesn't go to a new page but expand the contents indefinitely!" I keep taking detours into the "Developer" category on the App Store to see if anyone has done this (or worse, to the ambiguous, nebulous, catch-all "Productivity" section). I want to develop, or see someone else develop, a folding text editor that captures everything, but not in a stiff cut-n-paste way like Evernote. Something that uses passive data-entry to organize everything automatically. When I try out "Mind mapping" software I get frustrated and pissed off: I have to specify everything myself. Some of those ideas come from, or were triggered by Xanadu. Boy, it's been a long time since that Wired article ;-)