Print

Print


> Date: Mon, 17 Jun 2002 10:48:18 +0100
> From: Matthew Dovey <[log in to unmask]>
>
> > The user needs to type in the [result set] name don't they? *If*
> > (and it is a big if) this is the case, then I think result set
> > names need to make sense to users, hence I think the client needs
> > to propose it. If its not the case, the server can allocate the
> > name no problems.
>
> No, No, No, No, No (you've stopped being sensible now
> Alan!). Typically users shouldn't be typing in CQL. There should be
> a nice easy to use interface allowing them to build queries,
> manipulate previous sets etc.

I just wish to place on record my fundamental disagreement with this
stance.  Or at least, I agree with it as stated, with the word
"Typically" in front, but not when that word is deleted, which is what
Matthew implies.  For sure, some users will want a "friendly"
(i.e. dumbed down) UI for querying.  But in any serious application,
there will be "professional" users who need access to the power of
CQL.

We saw this all time in my old job, when we made Collections
Management Systems for museums.  Users would start off with form-based
queries, but soon find legitimate reasons to use the formal query
syntax (i.e. the moral equivalent of CQL).  In the same way, however
much Index Data claim that their Prefix Query Notation (PQN) is for
computers and not for humans, the world is nevertheless full of
systems that let people type PQN straight into the UI -- because
people want to be able to do it.

... Which is surely, early in the design of CQL, one of the big issues
that kept coming up is that it should be human-readable (and, by
extension human-writable.)

To be completely clear: I am absolutely NOT saying that all users
should be forced to deal with CQL; but that those who need to use it
should have their path smoothed.  That means designing it so that
educated humans could use it, and that in turn means having result set
names like "1" and "foo" rather than "VG8gYmUgY29tcGxldGVseSBjbGVhc".
(Quick!  Was that a lower-case "L" or a digit "1" in the sixteenth
character!  :-)

I guess that means I think either that clients should supply result
set names, or that servers should generate nice simple ones in
conjunction with a hard-to-guess session-ID that the user need never
get involved with.

 _/|_    _______________________________________________________________
/o ) \/  Mike Taylor   <[log in to unmask]>   www.miketaylor.org.uk
)_v__/\  "I have challenged the entire quality assurance team to
         a Bat-Leth contest.  They will not concern us again." --
         Klingon Programming Mantra