[UI] UI attributes

Adrin adrin at ic.cz
Thu Sep 13 15:13:24 UTC 2007


A little more about GUI


How to cook GUI

In process of building GUI, there is most frequent way how to do that: 
prepare ingredients in forms of graphical control elements – it is 
entity which could be visualized and used for catching events. The 
better this entity will be prepared, the better final GUI will be. For 
example like elemental spice works buttons, scrollbars and menus, but 
there are more sophisticated elements for file choosing or printing.

With these ingredients applications are cooked – programmer is cook in 
this association and from ingredients he makes at first text editor and 
then video player for example. Right choose in right amount leads to 
delicious and different stimulants.

This concept has many advantages. It is simple understandable and quick 
in uses. Final applications offer a number of canned functions that are 
accessible by one click. Thanks to this set of graphical entities, every 
applications are similar and there is no big problems for users to learn 
the basics.

But, similar approach to GUI is sometimes really mismatched. User has 
no, or just little, control to graphical interface. All graphical entity 
are purposeless and exist just for reason to allow some functionality. 
They are in memory even in the case of no editable data exists. User 
primarily does not work with data, but with application – with 
interface, which some other prepared for him. And for that reason, the 
output of data editing is fully in applications will. Primary 
application purpose is to view and communicate with user – there is no 
need for programmer to do something else. Outputs are understandable for 
user, but no for other programs. In CLI and even in batch processing, 
output data could be transformed to other application. And whole things 
get worse... Users does not understand data, they understand 
applications. I see systematic trend to hide data before users and make 
a machines from them – click that, use this, never ask anything how does 
things inside works...


Well, stop getting paranoid. Best solution for many problems is this 
entity-centric GUI. But why solve everything by this. Some data-centric 
GUI could be better in lot of cases.

Cheers,
    Adam



More information about the UI mailing list