[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: german article in the linux magazin online now



Ben Jackson wrote:
> They're both pretty bad.  There must be something about CAD programs that
> leads to wacky user interfaces.  

Interesting comment, in that on another list I was just in a discussion 
about 2D drawing tools.  I am a fan of QCad.  Many people complain about 
the "strange" UI on QCad.  But after you climb the considerable learning 
curve, you can absolutely fly with it... because you can think in 
geometry and operate like a draftsman, with no time spent doing 
squinty-eyed mouse nudging.

I think the point is that the familiar GUI paradigms are *not* oriented 
toward creating precise graphical work product. They are oriented toward 
common office applications like word processing, spreadsheets, and 
simple illustrative graphics as in a presentation manager.

When the fundamental work product is graphical in nature, it requires an 
entirely different metaphor. Documents have sheets -- often not all the 
same size.  Dimensions are important -- critically important if they are 
going to go through a CAM tool and create G-code.  And the whole concept 
of managing a database of attributes that is joined to graphical 
elements is just not there.

So anyway, it should not surprise us that the main stream GUI metaphors 
break down entirely, get in the way, and cause general pain and 
suffering for any application involving editing a graphical document.

So, where does that lead?  It says: Slavishly following any of the UI 
guidelines will likely lead to a klunky, hard to use tool.  Trying to 
invent an improved interface will be unfamiliar to new users, and every 
attempt will also implement a certain percentage of Bad Ideas along with 
the good, it can't be helped.  In any case, no two independently 
invented UI's are going to be consistent with each other without *lots* 
of hard work on the part of the developers.

For my part, I've sat through enough meetings listening to the intense 
debate between top-flight GUI designers trying to get a program right to 
last a lifetime.  Mind you, it has it's time and place.  But that 
experience gives me enough perspective to largely not give a rat's 
behind any more... gschem gets the job done for me, pcb also, and 
QCad... and all have different UI's, and while it would be nice if they 
were all consistent, I will *not* participate in any way in any 
discussion of what should change. :)

However, while I have personally "gotten over it", saying: "Get over it 
already!" to a new user is not the way to win friends and influence 
people. It seems to me that the approachability of the suite could be 
greatly improved simply by constructing a "new user's package".  This 
package would:
1. Have known stable versions all bundled nicely to work together, with 
reasonable defaults.
2. Come with well-documented, cruft-less libraries that don't try to do 
everything, but address a common baseline.
3. Come with "getting started" documents that are all self-consistent 
with the package.

(I think this all exists or nearly exists, but is not doggedly curated.)

New users may outgrow the "getting started" package pretty fast.  But 
that doesn't matter a whole lot, I think.  The point is to get quickly 
to the point of being self-confident with the tool.  Once upon a time I 
worked at an ill-fated EDA company where the complexity of the tool led 
to long pre-sales benchmark cycles.  I believe to this day that is what 
killed the product and the company.  The longer it takes to get results 
from the first benchmark, the less confidence in the tool -- I think the 
probability of closing the sale goes down exponentially with the time it 
takes to do a trial.

Gee, I've rambled on... maybe I can summarize:
1. The most productive graphical tools will always have 
out-of-mainstream UI's.
2. Retaining a trial user as a new user requires quickly completing a 
pass or two through the work flow with confidence and minimal confusion.
3. #1 implies a non-trivial learning curve.  But simply having the 
easiest ascent up the learning curve well marked helps.

-dave



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user