Why AgileWiki? What advantages does it bring to the table? And why have a
desktop UI for AgileWiki? There is a lot of work here, and a big learning
curve for developers, so these questions are important. I also believe now
that the answers to these questions are intertwined.
From a user's perspective it is all about good presentation, easy
navigation, appropriate functionality, configurability and flexibility.
AgileWiki provides the basis for this with a flattened implementation model,
implementing user objects directly in a uniform way without constraints on
size, complexity or function. This means that developers are working very
closely to the user's own model of what the software does, resulting in a
much more natural implementation.
The current web UI focuses on a single user object at a time. Various
relations with other objects are listed, together with the state of the
object and its journal. Supporting views are also provided for various
operations the user can perform on that object. But the focus is all about a
single object.
Navigation from object to object with the current UI can be problematic at
times, especially as the number of objects grows from hundreds to hundreds
of thousands of objects. From the sidebar there are links to a few top-level
objects, but navigation is from object to object, tracing various relations
between the objects. A clever user can use keyword tags and links from the
user profile rolon to assist in this process, but for a new user it can be
tedious, especially if several tasks are at hand and there is a need to
switch between locations. A single rolon focus can make things very awkward.
What would an AgileWiki desktop look like? A new user would see icons for
the ark (the top-level rolon), users, groups and the user's home rolon.
These icons can be thought of as shortcuts to the rolons in the database.
You can drag them about the screen and if you delete one, you have not
deleted the underlying rolon. Double-click on an icon and you open a window.
Among other things, the window can show the icons of other rolons to which
the rolon for that window are related. Now you can double-click on an icon
in the window to open its window, or you can drag an icon to the desktop,
creating a shortcut for easy future reference.
The difference now is that a user can rapidly switch contexts from rolon to
rolon, opening/closing/minimizing windows as needed. The point here is that
AgileWiki can better support the normal work processes of a user, quickly
switching contexts to provide a quick answer to a question from the boss.
A final question in closing. I need to implement an application suit and I
want to use a desktop to make it easier for users. Why should I use
AgileWiki? Because AgileWiki allows you to directly implement all the user
objects represented on the desktop, be they content, access control, or
processes. The same interface then can be used for running the applications,
managing the system and for operations.
Bill