
Getting to Xanadu - mimixco
http://mimix.io/getting-to-xanadu/
======
Animats
Basic problems with Xanadu, from someone who visited there a few times when it
was under development:

\- Everything is pay per view in Xanadu. There isn't that much content people
will pay for. Especially user-editable content. One proposal was expensive
investment newsletters. The Bloomberg terminal is the exemplar of that model.

\- Ted Nelson had strong ideas about how the implementation should work, and
he's a terrible database architect.

\- Nelson was very text-oriented. Pictures? _Video?_ Not even considered.

\- Search? What's that? This was pre-Alta Vista, let alone Google.

\- The original design was very centralized. This was pre- world wide web.

\- If you're not doing the micropayments thing, trying to pay every
contributor for their few words, a wiki does most of what you need. Git does
the rest.

\- In a distributed implementation, keeping all those "transclusion" links in
sync requires elaborate distributed database synchronization. A dead link in
Xanadu means a gap in the text.

\- Disk got a lot cheaper and the incentive to have only one copy of something
is gone.

~~~
Fnoord
> Disk got a lot cheaper and the incentive to have only one copy of something
> is gone.

Not only that but thanks to simple regexp (such as 's/source/target/g/') it is
much easier to replace copies of the same text. With proper tools (which
Wikipedia undoubtedly has) it should be easy to change text with one click of
a button.

~~~
mimixco
Exactly! Today we have room for everyone to have his or her own copy of every
document he or she needs to access. Client/server has changed and now you can
serve-up your own copies of stuff. RegEx, though hateful, is functional and it
can be used to grab and quote or grab and manipulate any piece of an existing
document. We don't need to invent those parts. :-)

------
BenoitEssiambre
This is a somewhat interesting discussion about reviving Xanadu if you ignore
the silly attempt at shoehorning blockchain into an application that doesn't
need it.

A decade ago, I also tried and failed to create a compelling transclusion
based system: [http://www.bookvoid.com](http://www.bookvoid.com)

I'm not sure why transclusion isn't popular. I think partly, it's because you
get 90% of the benefits from using existing hyperlink based systems, partly
because having visible URLs at the top of pages identifying a unique source of
trust is necessary and mixing content from different sources into a single
page would be too confusing and introduce too many security issues, and partly
because it is too much of an effort for typical readers to navigate a
hierarchical and intertwined structures of information.

While I may like to explore information by uncollapsing fragments and
hyperlinked documents to reveal a level of details and collection of sources
that I choose myself, a lot of people seem to prefer to be shepherded through
linear top to bottom narrative tailored to their level of proficiency and
purpose. This explains the popularity of video sources like Khan academy.

Reference websites such as wikipedia would be prime candidates for the use of
transclusion and Xanadu like layouts and I suppose they use some of it
already. For example, last time a used wikipedia's mobile app, it collapsed
sections and allow them to be opened inline. But for some reason I can't
pinpoint, more genuine Xanadu like integrations fail to catch on.

~~~
mimixco
I mention the blockchain because it (potentially) serves a purpose. It's a
verifiable, write-only storage method that can be easily shared among people
yet still remain privately controlled. Those are unique attributes!

If we look beyond cryptos to blockchain apps that store textual data (as they
all really do), there _might_ be a use case for blockchain with what we call
canonical documents in Mimix. I'm not married to the idea and there's no
buzzword fishing here. Mimix does not involve a token economy or altcoin.

I must disagree that linking is a 90% substitute for what Ted called
tranclusion. Linking is nothing more than the electronic version of the
library card catalog. Linking does not help the user find the context of the
referenced material nor help him or her to "link" back to his or her own
writing later from that reference material. These were the goals of Nelson's
transclusion and they're also part of what we're building with Mimix.

As to the paucity of modern education, I agree with the results but not the
reason. I don't think people prefer low-quality information. But I do think
that corporations and governments prefer to supply that. We need tools to help
us Think Better, as we have since Vannevar Bush first proposed his Memex in
the 40's. The opportunity to give students and teachers more fine-grained and
more accurate access to information can only help raise up the individual to a
more powerful place in society.

You are 100% right about Wikipedia. It's low-hanging fruit for canon. Many
other datasets are, too, such as the legal documents, free books, and artworks
offered by academic institutions. The trick is to integrate those works into
the Mimix users' new, original, writing and the purpose of Mimix is to enable
and simplify that integration in a way that was never before possible.

------
jonathankoren
The author makes two errors in his analysis. First, cryptographic signing and
identity management exists today, and long before blockchain was ever even
proposed. It’s SSL and other public key encryption systems.

However, that’s relatively minor when compared to equating “Permission to link
to a document is explicitly granted by the act of publication”, to copyright
enforcement. It’s not. It’s literally no different from the web today. You
give something a URL, I can link to it without your permission. It may be
couched in legalese, put it’s defining existing behavior and existing norms.

Fine, the author doesn’t like micropayments. That’s their right. But it seems
like the author’s frequent stark pronouncements of “copyright enforcement
should not be in a tool for readers or writers” is a bit naïve in light of
digital distribution, or honestly distribution by any method. A physical
bookstore selling physical books, can be considered a tool for readers and
writers as well.

Perhaps the author can weigh in, and illuminate what forms for monetary
compensation would be acceptable. Patreon style tip jars, and advertising, but
nothing more?would that even scale? I personally doubt it.

~~~
no_identd
>First, cryptographic signing and identity management exists today, and long
before blockchain was ever even proposed. It’s SSL and other public key
encryption systems.

Which fail to provide the capability based security required for a Xanadu-like
project.

You might want to read about the Confused Deputy Problem for starters:

[https://en.wikipedia.org/wiki/Confused_deputy_problem](https://en.wikipedia.org/wiki/Confused_deputy_problem)

There exist other approaches for avoiding the confused deputy problem, but
these don't have mutual exclusivity with capability based security, one such
approach consists of something like this:

[https://github.com/phvogt/NoMoXSS](https://github.com/phvogt/NoMoXSS)

Which basically uses this concept:

[https://en.wikipedia.org/wiki/Taint_checking](https://en.wikipedia.org/wiki/Taint_checking)

However, that leads us right back into another Xanadu related problem:

[https://en.wikipedia.org/wiki/Trademark_(computer_security)](https://en.wikipedia.org/wiki/Trademark_\(computer_security\))

Think about why we call this a "Trademark", and what that means for concepts
like transcopyright licensing such as the one required for Xanadu.

If you look into who advised on & worked on Xanadu, you'll find names like
Mark S. Miller:

[https://en.wikipedia.org/wiki/Mark_S._Miller](https://en.wikipedia.org/wiki/Mark_S._Miller)

...whose name you'll find popping up all over the object capability security
literature. That ain't a coincidence.

The shortcomings Xanadu tries to address and which conversely Xanadu requires
to have addressed before it can come about pervade computer science,
everywhere.

------
em-bee
_8\. Permission to link to a document is explicitly granted by the act of
publication. This is the first example of a Xanadu feature we don’t need. A
tool for readers and writers should not get involved in the concerns of
platform or content providers._

i disagree. the idea of a link tax that is becoming law in europe shows very
much that this permission needs to be spelled out explicitly. it is a crucial
component of an open network.

~~~
skreutzer
What about a tax for citations? Or a tax for reading! Why can't we pass some
more copyright legislation?

~~~
em-bee
"link tax" is not actually a tax but something to be paid to the copyright
owner. just like we already pay them for reading.

i wonder if citations are covered too. i didn't check. would be quite ironic.
when is a citation a link, and when is it not?

------
skybrian
This is a pretty weird idea: "Much of the data that children would find in a
library could be called canonical in computer terms, or simply 'correct.'"

Has the author ever read an old encyclopedia or textbook? Most supposedly
canonical information gets revised.

At best we can have a immutable version of a file (such as when using git),
but you hardly ever want a hard link to a particular version. Dependencies
inevitably change and need to be updated.

~~~
mimixco
I would say that most canonical information is not actually revised very
often. Yes, the dashboard facts of a business operations are revised. Your
novel in progress is revised. But the distance to the Sun and the chemical
formula for water are not revised.

A surprising amount of our everyday writing is comprised of these shared,
canonical facts. Walt Disney's birthday will never change, and neither will
Apple's market cap for November, 2018. When we write about those facts, we can
rely on our own copy of correct, canonical data -- not a link to anything. An
ideal research and writing program, as we aim Mimix to be, would also be able
to alert you when and if your canonical information changes. In that case,
you'll be able to retain and reference _both_ versions in your writing. Most
importantly, your future readers will, using the Mimix software, also be able
to see where you got your facts. These capabilities simply don't exist in any
of today's software.

------
PaulHoule
That "screenshot" showing the two linked documents is actually a terrible
example.

It might have made sense in the early 1970s when Gerald Salton was doing text
retrieval experiments with punchcards and those two pages of text were about
what computers could handle.

In real life if you had a page of text you might have bidirectional hyperlinks
to 20 or so paragraphs which might be spread out through a book-sized document
or perhaps 10 books.

A demo of that user interface produces an entirely different reaction than
that mockup. (eg. "When can I buy it?" as opposed to "Isn't that swell?")

Building an entirely new format and server architecture for text almost might
have seemed rational in 1970s when we hadn't even settled over ASCII or EBDIC
but today if you can't find the Xanalogical structure that is hidden in plain
text, HTML and PDF you are blowing smoke.

~~~
mimixco
The examples are from Nelson and, yes, they're terrible. Mimix will have an
entirely different and modern UI which we look forward to showing soon!

------
unhammer
Re: atomicity and the regex hack,
[https://github.com/abingham/spor](https://github.com/abingham/spor) (based on
[https://www.researchgate.net/publication/259892218_Metadata_...](https://www.researchgate.net/publication/259892218_Metadata_Anchoring_for_Source_Code_Robust_Location_Descriptor_Definition_Building_and_Interpreting)
) seems like a better solution that manages to keep annotations "stuck to" a
logical piece of text (well, code) even if it changes position/form throughout
history.

There's a very short presentation about the method at
[https://doc-00-24-docs.googleusercontent.com/docs/securesc/d...](https://doc-00-24-docs.googleusercontent.com/docs/securesc/drn1oeqmqt9qharu08n1nvbk8hafj051/nen3tohdnpsbm639pcjv7bbq54ol1gkp/1544306400000/09050650420115732226/15997936449637379399/1MVT681oFGyioL-57c1AWFIyhD-
OUkoMQ) (or
[https://drive.google.com/drive/folders/167z6GWl_mehmUdi6Qlkj...](https://drive.google.com/drive/folders/167z6GWl_mehmUdi6QlkjQu1IcBa8BEEW)
if those google docs download links aren't stable)

~~~
mimixco
Mimix atoms are based on the actual, typed text -- not the logical values, and
changes to that text or its formatting are kept separate from the original
text by virtue of the MSL, Mimix Stream Language, which is used to describe
them. Although I hate RegEx, I can't see any compelling advantage in the Spor
toolkit. In any case, I'm predisposed to use things that folks already know
for simplicity and lowering barriers to entry.

------
alex_g
After watching some of Nelson's videos a while back, and now reading this, it
sounds like the real goal is just:

1\. Document Versioning 2\. A universe in which all content creators properly
cite their source material. 3\. A better way of publishing text so that it's
easier to parse.

~~~
no_identd
> it sounds like the real goal is just

No.

I suspect you have the kind of point of view where we might better first
discuss the proposed data structure and THEN what we'll do with it. First,
you'll want to learn about zzstructure/hyperthogonal structure:

[http://xanadu.com/zigzag/](http://xanadu.com/zigzag/)

[https://scholar.google.com/scholar?q=zzstructure](https://scholar.google.com/scholar?q=zzstructure)

for a comparison of the above with Ubergraphs (a generalization of
Ultragraphs, themselves a generalization of Hypergraphs), you'll want to check
here:

[https://github.com/JeffreyBenjaminBrown/digraphs-with-
text/i...](https://github.com/JeffreyBenjaminBrown/digraphs-with-
text/issues/11)

Once you think you comprehend the above, consider spending some time thinking
about how you could come up with a 'canonical', graphical user interface AND
user experience for a Ubergraph that uses hyperthogonal structure.

Then imagine how you'd implement such a data structure in a distributed, peer
to peer, UNCENTRALIZABLE (not just decentralized!), secure manner.

If you can imagine all of that and think you comprehend at least one tiny part
of the implications of such a thing, then you comprehend about 1/10 of "the
real goal" of Xanadu, and I invite you to consider continuing to ponder the
possibilities.

~~~
mimixco
You are entirely right that the data structure is paramount. But I'm not using
Xanalogical documents nor any front or backend designs from Ted. I actually
think he didn't do a very good job with those. Instead, Mimix records a user's
interactions in MSL, a domain-specific language (not Turing complete on
purpose) which describes a forward-write-only experience of reading and text
composition.

I'm glad you brought up the UI because it's an area ripe for innovation and
one we're seriously excited about. UI is one of my specialties and I'm looking
forward to sharing our designs for interacting with canonical documents in a
modern and approachable way. HN is my favorite place to post this kind of
stuff, so you'll "Hear it here first."

------
jteppinette
> 6\. Every document can contain links of any type including virtual copies
> (“transclusions”) to any other document in the system accessible to its
> owner.

What does this mean? What are the different “types” of links? What is a
“virtual copy”/“transclusion”? Why are these links only accessible to the its
“owner” (the “its” at the end seems like it could refer to 5 different
things)?

~~~
mimixco
Nelson suggested that everything you quoted would be linked back to where you
got it _and also linked back to you, from there_. The first part of this idea
is fantastic. The second part, ludicrous.

In Mimix, your writing is linked to your reference materials and these are
available for your readers to see, too. But your writing is only linked _back_
from those materials when you are viewing them -- not for anyone else in the
world.

Ted's suggested system would have the Declaration of Independence linked _to_
every schoolchild's paper that wrote about it. In Mimix, you would see the
relationships only between your writing and the documents you referenced --
not anyone else's.

------
miguelrochefort
IPFS and Filecoin could solve many of the persistence and distribution
problems.

~~~
no_identd
Neither of those use TIGHT Proofs of Replication, and neither of these have
not just a decentralized startup configuration but an uncentralizability
__guarantee __, that makes them significantly less useful than they seem. This
so far affects pretty much all DLT implementations in general.

And none of them have certified deletion from untrusted devices.

~~~
miguelrochefort
> And none of them have certified deletion from untrusted devices.

We don't want that.

------
miguelrochefort
I don't understand why transclusion has to be so hard.

Any developer can probably implement it on the web in a weekend by adding some
metadata to some <blockquote> tag and creating a browser extension that
displays the source page on the side, locate the copied text in it, and scroll
to it.

Heck, you probably could brute force it by doing a Google search for every
<blockquote> or "some text" patterns in a document, and link to whatever is
the #1 result.

------
no_identd
Some things people interested in Xanadu likely would wish to look into:
[https://github.com/JeffreyBenjaminBrown/digraphs-with-
text](https://github.com/JeffreyBenjaminBrown/digraphs-with-text)

Why?

See here: [https://github.com/JeffreyBenjaminBrown/digraphs-with-
text/i...](https://github.com/JeffreyBenjaminBrown/digraphs-with-
text/issues/11)

See also here:
[https://en.wikipedia.org/wiki/Topic_map#RDF_relationship](https://en.wikipedia.org/wiki/Topic_map#RDF_relationship)
(Why the W3C didn't standardize on this, a bloody ISO standard, and instead
decided to roll their own, weaker system, well... I'll leave you to boggle
your mind about this one.)

See also this video by Ted Nelson on transcopyright:

[https://www.youtube.com/watch?v=x3l7CpnpyGw](https://www.youtube.com/watch?v=x3l7CpnpyGw)

See also:
[https://en.wikipedia.org/wiki/Miller_columns](https://en.wikipedia.org/wiki/Miller_columns)
(Previous HN discussion:
[https://news.ycombinator.com/item?id=18118798](https://news.ycombinator.com/item?id=18118798))

See also this:
[https://en.wikipedia.org/wiki/Tumbler_(Project_Xanadu)](https://en.wikipedia.org/wiki/Tumbler_\(Project_Xanadu\))

Which, as an addressing scheme, strongly resembles the enumeration scheme
Niklas Luhmann used for his infamous Zettelkasten, which I'd strongly
encourage you to look into if Xanadu interests you at all.

And to stick with the Zettelkasten comparision for a moment, see also "Martha
Stewart’s File Cabinet" here: [http://bit-player.org/wp-content/extras/bph-
publications/AmS...](http://bit-player.org/wp-content/extras/bph-
publications/AmSci-2001-11-Hayes-ternary.pdf)

(Note that the information, like most information, about "Radix economy" [an
extremely ill-defined concept] given there by Hayes ignores the fact that
Balanced Ternary in fact has a higher capacity than unsigned ternary, for a
demonstration of this basically ignored-everywhere fact, see here:
[https://web.archive.org/web/20090312094241/http://abhijit.in...](https://web.archive.org/web/20090312094241/http://abhijit.info/tristate/tristate.html),
and before you think that page looks weird, here, have Marvin Minsky
commenting positively on it:
[https://archive.fo/gL2Bv;](https://archive.fo/gL2Bv;) OR simply try to think
about how digit sums & digital roots work in Balanced Ternary vs. in Ternary)

Why bring up "Martha Stewart's File Cabinet"? Because one of the mistakes with
the Xanadu Tumbler scheme consists, in my opinion, of the fact that it doesn't
use balanced ternary for the addressing, making the addresses unnecessarily
long AND more difficult to handle in general. (Cf. the properties of the file
cabinet as outlined by Hayes in the article)

See also here:

[https://en.wikipedia.org/wiki/Enfilade_(Xanadu)](https://en.wikipedia.org/wiki/Enfilade_\(Xanadu\))

And here:

[https://en.wikipedia.org/wiki/Docuverse](https://en.wikipedia.org/wiki/Docuverse)

My current hope for a Xanadu-like system rests, in a way, on this new feature
of Pijul 0.11, which basically "solves" transclusion & versioning:

[https://discourse.pijul.org/t/patching-
patches/212](https://discourse.pijul.org/t/patching-patches/212)

For a newer status on the above issue, see here:

[https://discourse.pijul.org/t/preparing-
pijul-0-11-0/203](https://discourse.pijul.org/t/preparing-pijul-0-11-0/203)

~~~
mimixco
All of these implementation methods that Ted proposed have failed. Mimix will
not include transcopyright, tumblers, or enfilades. It will, however, address
many of the original goals of Xanadu and some Ted didn't think of.

------
harel
Why is Html ugly?

~~~
jonathankoren
It’s inappropriate for data. It’s basically text layout and controls, no
matter how many DIVs you put.

JSON (which has its own problems) would be a more appropriate format.

~~~
dsr_
This could be partially fixed by promoting "data" to be a new general HTML
word:

<DATA type=application/foobar encoding=base64> .... </>

which could include application/json, application/epub+zip, application/pdf,
whatever. If the browser knew how to handle it natively, great; if it knows
how to invoke a helper for that, good; if nothing else a link appears to save
it as an individual file.

If you give a DATA entity a name tag, you can use it inside the same page
anywhere a suitable use occurs:

<DATA name=parrot.jpg type=image/jpeg encoding=base64> ... </DATA>

<IMG SRC=#parrot.jpg>

Best if you make all the attributes of the original tag follow along, so:

<DATA name=#parrot.jpg alt="Parrot Rights Now!">...</>

~~~
jonathankoren
Why would you embed an image file, instead of just link to it? That’s not the
problem at all.

The problem is just simply knowing that “1935” is a number, and a date.
Microformats somewhat address this, but it has limited uptake.

But relying on people to tag stuff correctly, isn’t going to work. Just look
at the mess that META tags are, especially those outside of share card
population. I’m not talking about reading the spec. I’m talking about seeing
how they’re actually used. People can’t even get “tags” right, let alone
“author” or “date”

~~~
dsr_
Not just an image file. A spreadsheet. A database extract. A genealogical
record.

The tagging problem is constant across all formats.

~~~
no_identd
Type theory.

