I've enjoyed using TW for several years now. I think it is
fantastic. However, I find that I'm often dreaming up different ideas
for how TW might look if it were redesigned today, with all the tools
now available and all the things we've learned since it was started.
What if a new version was created, with no rules, and no concern of
backward compatibility? What would you include in the design?

   I'm not making a serious proposal here to start up a new project. I
just thought it would be interesting to explore some ideas and see
what people come up with. Here are a few of my favorite ideas.

1. Data-centric Design

   I see a lot of discussions here about how to include parts from
multiple tiddlers, how to loop through tiddlers, and how to produce
lists and tables. It seems that people want to work not just with
text, but with data. The solutions typically involve starting with
regular text, and trying to turn it into data.

   I would build the core of TW around a javascript based database
running in the browser. This could be done with Taffy DB (see
http://taffydb.com/ ), or it could be a custom built solution. This
database would be used to store system data such as tiddlers and
settings. It would also be available to the end user to set up their
own types of data. For example, the user might add a new table called
tasks, with fields such as title, priority, isComplete, etc. There
would then be simple syntax available to include this data into a
tiddler in different ways.

2. Saving Options

   I would create as much flexibility as possible for how a tiddly
document is saved. In addition to the default local file solution, a
standard API would be available for interacting with a server backend.
I wouldn't actually create server software, but this API would allow
for a variety of server solutions to be created. I would think through
different use cases to support, such as: What if I want to be able to
download from the server, edit locally, then merge my changes? What if
I want to support multiple users on the server?

   (I know that there have been a few solutions created for saving to
a server already. However, each solution has to hack the core and bake
its own ajax approach.)

3. Hierarchy Support

   Many people like to organize their tiddlers into a hierarchy, and
then present the hierarchy as a menu. This is typically done by using
a plugin, and by tagging each child tiddler with the name of its
parent tiddler. This leads to two problems. One, this setup can be
accidentally broken when a parent tiddler is renamed. Two, this gets
in the way of using tags for just regular descriptive tagging. By
adding a "parent" field to each tiddler, this type of organization
could be supported natively. Those users who don't need it could
simply leave the parent field blank.

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

Reply via email to