On Tue, 25 Jan 2011, Poul wrote:

I - of course - must recommend giewiki as an alternative to
tiddlyspace.

I think it is great that there are plenty of options, but this
message seems like an invitation to respond with some compare and
contrast, perhaps so all systems can improve, so here goes:

The pros and cons executive summary goes something like:
+ Better revision control, including diff and revert

This is a "simple matter of programming" at this point. Perhaps there
is code in giewiki that can be borrowed? TiddlyWeb (the guts
underneath TiddlySpace) stores revisions but does not provide in
itself tools for diff and doing revert. That's taken as the
obligation of the client side: TiddlyWeb provides the storage api.

+ Recent changes, recent comments, tree structure, SiteMap, page
templates, etc.

Ditto on the above. TiddlyWeb lets you use whatever tools you want
for doing those kinds of things. If you have tiddlywiki plugins
which do those things, magic.

- It's currently a fork of TW 2.4.1

tiddlywebwiki, the package the includes the empty.html used with the
wiki serialization tracks the latest stable release. TiddlySpace
itself has functionality that allows a request to optionally use
whatever the latest beta TiddlyWiki is.

+ It's only 320K before content, as compared to 770K for TiddlySpace

Yeah, this is a big problem with TiddlySpace. On a plain
tiddlywebwiki it's 421K, which is still too much.

+ It's cloud-based, which means Google will host it on redundant
servers for little or nothing.

TiddlyWeb can run on app engine[1] just fine, and it would be no big
deal to make TiddlySpace do the same. It's been useful thus far to
have it on its own server for the sake of tweakability.

All that said I think the biggest win for TiddlyWeb (and excuse me
if giewiki has this stuff too, I had a look round the code but it
wasn't immediately obvious) is that it is explicitly designed to
make Tiddlers first class entities on the web. They have their own
URIs, can be represented in multiple (and extensible) content-types
(common ones are text, json, in-a-tiddlywiki, html and atom), can contain any content (including images) not just wikitext, and
can be reused, by reference, across multiple wikis or other collections.

TiddlyWeb makes very few assumptions about how those tiddlers are
going to be used and who is going to use them. It's proven quite
remarkable, actually, taking the tiddler concept out of tiddlywiki
and thinking of them as free floating bits of content.

That makes it very flexible, but also means that it does not have
the level of focus that giewiki has: "giewiki tries to be a real
wiki". [3]

In specific context of tiddlywiki.org, right now I think the winning
proposition for TiddlySpace is the inclusion functionality that allows
the content to be distributed across multiple spaces. I've already include
the tiddlywikidev space into the tiddlywiki space, meaning that a large
collection of developer oriented content (mostly explaining available
methods in the core) is just there.

The one major piece still missing is server-side search (I have my
eyes on Whoosh-AppEngine for that solution). I don't know what
TiddlySpace has to offer in this department.

We experimented with plain whoosh for tiddlyspace[4], but versions
prior to 1.9 had some pretty severe concurrency problems, so have
ended up using the fulltext indexing in mysql. This has ended up
working out quite well as most of the searches that people want to
do are field based, and thus use column indexes, not the fulltext
index. A parser, modeled on the one in whoosh, compiles[5] queries
to SQL.

[1] http://cdent.tumblr.com/post/278948050/smooth-tiddlyweb-on-app-engine
http://cdent.tumblr.com/post/283065885/tiddlywebweb-to-app-engine

[2] For a simple example of tiddlers out of tiddlywiki context, I use
tiddlers as a sort of twitter, and then present them on my homepage:
http://burningchrome.com/ using a simple bit of javascript (itself a
tiddler) to get a JSONP representation of those tiddlers:
http://twpresent.tiddlyspace.com/twpresent.js
That stuff is described at http://twpresent.tiddlyspace.com/

[3] http://code.google.com/p/giewiki/

[4] https://github.com/tiddlyweb/tiddlywebplugins.whoosher

[5] 
https://github.com/cdent/tiddlywebplugins.mysql/blob/master/tiddlywebplugins/mysql2.py#L232

--
Chris Dent                                   http://burningchrome.com/
                                [...]

--
You received this message because you are subscribed to the Google Groups 
"TiddlyWiki" group.
To post to this group, send email to tiddlywiki@googlegroups.com.
To unsubscribe from this group, send email to 
tiddlywiki+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/tiddlywiki?hl=en.

Reply via email to