DonHopkins on Jan 24, 2018 | parent | context | favorite | on: Ted Nelson on What Modern Programmers Can Learn fr...
I think his biggest problem is that he refuses to collaborate with other people, or build on top of current technology.
He's had a lot of great important inspirational ideas, but his implementation of those ideas didn't go anywhere, he's angry and bitter, and he hasn't bothered re-implementing them with any of the "inferior technologies" that he rejects.
Back in 1999, project Xanadu released their source code as open source. It was a classic example of "open sourcing" something that was never going to ship otherwise, and that nobody could actually use or improve, just to get some attention ("open source" was a huge fad at the time).
http://www.theregister.co.uk/1999/08/27/web_precursor_xanadu...
>Register believe it or not factoid: Nelson's book Computer Lib was at one point published by Microsoft Press. Oh yes. ®
They originally wrote Xanadu in Smalltalk, then implemented a Smalltalk to C++ compiler, and finally they released the machine generated output of that compiler, which was unreadable and practically useless. It completely missed the point and purpose of "open source software".
I looked at the code when it was released in 1999 and wrote up some initial reactions that Dave Winer asked me to post to his UserLand Frontier discussion group:
http://static.userland.com/userlanddiscussarchive/msg010163....
http://static.userland.com/userlanddiscussarchive/msg010164....
http://static.userland.com/userlanddiscussarchive/msg010165....
http://static.userland.com/userlanddiscussarchive/msg010166....
http://static.userland.com/userlanddiscussarchive/msg010167....
A few excerpts (remember I wrote this in 1999 so some of the examples are dated):
>Sheez. You don't actually believe anybody will be able to do anything useful with all that source code, do you? Take a look at the code. It's mostly uncommented glue gluing glue to glue. Nothing reusable there.
>Have you gotten it running? The documentation included was not very helpful. Is there a web page that tells me how to run Xanadu? Did you have to install Python, and run it in a tty window?
>What would be much more useful, would be some well written design documents and port-mortems, comparisons with current technologies like DHTML, XML, XLink, XPath, HyTime, XSL, etc, and proposals for extending current technologies and using them to capture the good ideas of Xanadu.
>Has Xanadu been used to document its own source code? How does it compare to, say, the browseable cross-referenced mozilla source code? Or Knuth's classic Literate Programming work with TeX?
>Last time I saw Ted Nelson talk (a few years ago at Ted Selker's NPUC workshop at IBM Almaden), he was quite bitter, but he didn't have anything positive to contribute. He talked about how he invented everything before anyone else, but everyone thought he was crazy, and how the world wide web totally sucks, but it's not his fault, if only they would have listened to him. And he verbally attacked a nice guy from Netscape (Martin Haeberli -- Paul's brother) for lame reasons, when there were plenty of other perfectly valid things to rag the poor guy about.
>Don't get me wrong -- I've got my own old worn-out copy of the double sided Dream Machines / Computer Lib, as well as Literary Machines, which I enjoyed and found very inspiring. I first met the Xanadu guys some time ago in the 80's, when they were showing off Xanadu at the MIT AI lab.
>I was a "random turist" high school kid visiting the AI lab on a pilgrimage. That was when I first met Hugh Daniel: this energetic excited big hairy hippie guy in a Xanadu baseball cap with wings, who I worked with later, hacking NeWS. Hugh and I worked together for two different companies porting NeWS to the Mac.
>I "got" the hypertext demo they were showing (presumably the same code they've finally released -- that they were running on an Ann Arbor Ambassador, of course). I thought Xanadu was neat and important, but an obvious idea that had been around in many forms, that a lot of people were working on. It reminded me of the "info" documentation browser in emacs (but it wasn't programmable).
>The fact that Xanadu didn't have a built-in extension language was a disappointment, since extensibility was an essential ingredient to the success of Emacs, HyperCard, Director, and the World Wide Web.
>I would be much more interested in reading about why Xanadu failed, and how it was found to be inadequate, than how great it would have been if only it had taken over the world.
>Anyway, my take on all this hyper-crap is that it's useless without a good scripting language. I think that's why Emacs was so successful, why HyperCard was so important, what made NeWS so interesting, why HyperLook was so powerful, why Director has been so successful, how it's possible for you to read this discussion board served by Frontier, and what made the World Wide Web what it is today: they all had extension languages built into them.
>So what's Xanadu's scripting language story? Later on, in the second version, they obviously recognized the need for an interactive programming language like Smalltalk, for development.
>But a real-world system like the World Wide Web is CONSTANTLY in development (witness all the stupid "under construction" icons), so the Xanadu back and front end developers aren't the only people who need the flexibility that only an extension language can provide. As JavaScript and the World Wide Web have proven, authors (the many people writing web pages) need extension languages at least as much as developers (the few people writing browsers and servers).
>Ideally, an extension language should be designed into the system from day one. JavaScript kind of fits the bill, but was really just nailed onto the side of HTML as an afterthought, and is pretty kludgey compared to how it could have been.
>That's Xanadu's problem too -- it tries to explain the entire universe from creation to collapse in terms of one grand unified theory, when all we need now are some practical techniques for rubbing sticks together to make fire, building shelters over our heads to keep the rain out, and convincing people to be nice and stop killing each other. The grandiose theories of Xanadu were certainly ahead of their time.
>It's the same old story of gross practicality winning out over pure idealism.
>Anyway, my point, as it relates to Xanadu, and is illustrated by COM (which has its own, more down-to-earth set of ideals), is that it's the interfaces, and the ideas and protocols behind them, that are important. Not the implementation. Code is (and should be) throw-away.
>There's nothing wrong with publishing old code for educational purposes, to learn from its successes and mistakes, but don't waste your time trying to make it into something it's not.
[More replies and discussion at the original post:]
Thank you for this call out. This idea, of whether computers are here to mechanize processes that people fit into, or whether computers are tools to augment & enhance our individual agency, is a huge question.
Ursala Franklin has some good material on Technological Society. There's a couple different points of view she proposes, but I really enjoy the distinction she makes between Holistic technologies, where the capabilities of the user are expanded & opened, the user gains control, versus Prescriptive technologies, which relate more to macro-level control, to enforcing set-down processes[1].
[1] https://en.wikipedia.org/wiki/Ursula_Franklin#Holistic_and_p...
In these contexts, it's been a difficult age to live through. There has been so much promise, so much potential, so many more capabilities growing about us. But the ends we put tech to are constantly disappointing, constantly feel controlled/controlling, less intertwingularized, less open. The industrialization has directly led to dis-interest, to taking for granted, to intensive massification of software. The realm of design feels dominated by low end concerns, by the big massive low end of making sure software is safe, inert, undangerous, has bigger & better training wheels. This era has been crushingly sad to see, for it's felt like no one has tried to foster a better expert relationship (or constructivism/constructionist-ness in general), has not tried to ennoble & enrich. Even within the computing ranks, it's incredibly hard to run into anyone who believes humanity might ever even want an engagement with computing. Almost universally the belief that humanity doesn't care, doesn't want to be involved, is actively dis-interested in tech rules. Which I am so sympathetic to, for a wide range of reasons: computing just doesn't work sometimes, and we are left at ends, confused, with few remediations, few awarenesses. It's no surprise we cannot imagine the consumer becoming more, beginning positive growthful relationships, when we have so rarely tried to build a richer environment than the consumer swill we push.
Along comes AI. AI feels like the exact opposite end of the spectrum of computing, not low but high, mightily high, and yet it still is a manifestation computing that does not directly empower us. It's ultra elite computing; a complete power house of computing, using massive massive massive number crunching beyond anything we could imagine. Unimaginably complex optimizers & learning networks. But again it's computing that lives within it's own world, that barely is understandable by even the elite of computing; before, computing was hard because more of it was moving behind the firewall, into the cloud, into deeper and deeper applications. This new frontier of computing is, on the other hand, not just proprietary & complex, but fundamentally far less legibile.
This is all to say, my church of computing also includes humankind in the relationship. It worships interrelations, is humanistic in it's core, not machinistic, machineist. I think there's definitely better possibilities for AI, but today, I would regard a Church of AI as the enemy of the good.
It's a near & dear book to me (although due for a re-read at this point), & I think many others. A history of many of the ideas circulating, and how many overlapped & reinforced on the way to building what ended up being the internet. There's more internet-centric accounts like Where Wizards Stay Up Late or Dealers of Lightning, but Dream Machines remains the favorite of many[2].
I just cant emphasize enough how much benefit I think there is to government granting good hard working big idea people, with not a lot of oversight or expectations. The counter though, is that these were relatively small organizations, all in all, and the goal is not to create jobs for life (as I feel like most other research institutions tend to do) but to fund projects, ideas, for a duration, and then move on, re-allocate funds.
[1] https://www.wired.com/2001/10/the-dream-machine-j-c-r-lickli...
