Jed is right to point out the distinction between the implementation of the mechanism for fetching tiddlers from remote wikis, and the application logic that we have at the moment. The reason that we’re so collectively excited about federation is that fetching remote tiddlers is actually very difficult in current browsers, and so it’s quite an accomplishment to get it working. In terms of the application logic, we’ve barely scratched the surface of what’s possible. The current prototype gives us a solid baseline for exploration.
It’s a matter of the community agreeing the protocols that we’ll use to communicate together, developing conventions that are then reflected in the code running in the federation nodes. My observation on the great GUID debate is that, as Dragon points out, the tried and trusted solution is to use UUIDs: https://en.wikipedia.org/wiki/Universally_unique_identifier <https://en.wikipedia.org/wiki/Universally_unique_identifier> The thing about UUIDs isn’t that they are displayed in a particular format but that they can be generated in such a way that clashes across space and time are vanishingly unlikely. We can use the PRNG built into the Stanford JavaScript Crypo Library to generate good random numbers. To be clear I don’t think we need to use a hash to produce the UUIDs. In TiddlyWiki, our unique ID is the title field, so we would store the UUID there. There would be a number of other changes: * in the UI, de-emphasise the title and introduce default display of the “caption” field, which would be used as the human readable title for the tiddler. In the edit template, add a prominent means of editing the caption field, and again de-emphasise the title * to be durable, links between posts must use the UUID of the target tiddler. To simplify creating links we might want a variant of the current “link” toolbar button that inserts a pretty link incorporating the current “caption” field * to permit buttons for things like “new blog post” or “reply”, a way of creating new tiddlers with a generated UUID for the title I’d advocate the “applications” built on the federation mechanisms to be separate plugins. I envisage communities sharing plugins as a means of sharing the conventions that they’ve adopted for their discourse. So, we’d publish a plugin for “TiddlyWiki discussions” that would contain canonical templates creating a UI for the modes of discussion we want to support (eg, threaded by “parent” field, or just a list of the unread stuff in reverse chronological order). I plan to write more about the meetup over the next couple of days, Best wishes, Jeremy > On 19 Jul 2016, at 12:01, Jed Carty <[email protected]> wrote: > > I think one of the problems that we are having with twederation is that we > aren't making a distinction between the process of technology of fetching > tiddlers from remote wikis and the application I built to use and test it. > > They are separate things. The fetching part is designed to be modular so you > can build your own handler code for communication between wikis. If doesn't > have to be fetching tiddlers, I am not sure what else it would be, but you > can have it do something different. > > For the application I built on this there is just a simple blogging/threaded > discussion forum. One thing people keep getting wrong is that none of the > handlers I wrote change anything about the tiddlers. The titles are made > unique when the tiddler is created on the original wiki, not when it is > fetched by another wiki. That is all in the application side of things. What > tags and other metadata are included are also all on the application side. > > How you handle tiddlers with the same title is entirely on the application > side of things and already taken care of in what I made. If someone builds > some other application than how they handle potential conflicts is entirely > up to them and should be based on the specific use case. There is nothing > forcing anyone to do anything, just that if you want to use the application I > made you either follow the conventions established or you break something. > And the way I have it set now the titles visible to users aren't the titles > used by tiddlywiki when you use what I made so duplicate post titles don't > cause any trouble. Posts without titles don't cause problems either, they > look strange when they are displayed but if you don't want a title that is up > to you. > > The way just about any tiddler in the twederation application is displayed > users templates, look at any of the twcards, they have no content in the text > field but they have visibly displayed data using templates. You can create > new templates to display them without modifying any of the days Inn the > tiddlers themselves. I have created multiple plugins that use this idea for > bookmarks, a library tracker and a contacts database. > > -- > You received this message because you are subscribed to the Google Groups > "TiddlyWiki" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/tiddlywiki. > To view this discussion on the web visit > https://groups.google.com/d/msgid/tiddlywiki/8cf68863-0102-4ead-a260-b1a27125e6e4%40googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "TiddlyWiki" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/tiddlywiki. To view this discussion on the web visit https://groups.google.com/d/msgid/tiddlywiki/BB8D26BA-85D7-436D-B193-5F7D9F4A0AD7%40gmail.com. For more options, visit https://groups.google.com/d/optout.

