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

Re: gEDA-user: Solving the light/heavy symbol problem

On May 24, 2011, at 9:43 PM, DJ Delorie wrote:

> My flows are also heavily scripted, so yes, I'll remember.  The
> underlying data and low-level tools follow the scripting paradigm -
> stepwise progress from A to Z via simple apps that interact with
> simple data.  The GUI needs to *hide* that, not replace it, making the
> underlying data *seem* integrated and easy to manage, when in fact it
> is not.

This is where we disagree. The GUI needs to make the data easy to manage, but at the same time it needs to *reveal* its machinations. If it hides everything, the user winds up either:

1. stuck with the GUI, unable to use the toolkit as a kit, or

2. having to penetrate the GUI code to figure out how to use the kit.

It's like having a travel agent book a trip: you might say "I want to get from A to B", but the itinerary the agent delivers had better reveal the route. And that route had better be simple enough that you can understand it.

That one can hide complexity behind an interface does not excuse unnecessary complexity. When SUN created GUI for system administration, a sysadmin friend of mine complained bitterly that the result was they used it as a license to expand the admin databases in an undisciplined way, because the GUI could hide the chaos. But if you need to script admin tasks...

Back in the early days of NeXT, their GUI-building GUI, Interface Builder, was really easy to use. It emitted the Objective-C code to construct and connect the objects behind the interface, so it was easy to understand what was going on behind the scenes. That's important. While the GUI is very useful to get the appearance right, the functionality requires actual coding.

But they couldn't leave a good thing alone. Programmers are supposed to hide information regardless of its importance to the user these days, so they "fixed" IB to directly and invisibly create archived objects in a fully initialized state. The result was that what had been clear became mysterious, and you had to be much more of an expert to get results.

John Doty              Noqsi Aerospace, Ltd.

geda-user mailing list