[GRASS5] Re: Developing a New Grass UI

Thanks again David. These are the kinds of issues I'd like to make sure we
discuss BEFORE we set out building the next generation UI.

Michael
__________________________________________
Michael Barton, Professor of Anthropology
School of Human Evolution and Social Change
Arizona State University
Tempe, AZ 85287-2402

phone: 480-965-6213
fax: 480-965-7671
www: http://www.public.asu.edu/~cmbarton

From: David Finlayson <dfinlays@u.washington.edu>
Reply-To: <dfinlays@u.washington.edu>
Date: Sun, 06 Nov 2005 21:45:46 -0800
To: Michael Barton <michael.barton@asu.edu>
Subject: Re: Developing a New Grass UI

On 11/6/05, Michael Barton <michael.barton@asu.edu> wrote:

This way you are issuing a set of commands to the UI, rather than having the
UI run a set of independent display commands, a subtle, but significant
difference.

Indeed, it cuts both ways. By creating a display driver that is
fundamentally object-oriented with a hierarchy of display objects
(lines, points, rasters, map decorations, view points, etc.) you will
need to create a mini-language to access these objects from a script.
Alternatively, you can expose the graphics objects to a scripting
language like Python (think about how you manipulate Tk with Tcl).
Rather than working with a high-level command, users will need to
learn an API to the monitor display. It can be powerful, of course,
but now simple map automation requires mastering both the API and a
real programming language.

I didn't get into it too much in my previous post, but this is exactly
the problem that ESRI faces with ArcGIS. They have a very powerful
object-oriented API that serious programmers can access at low level.
But it requires a lot of boilerplate code to get at even simple
functions and way too much understanding of the underlying
architecture. I once replaced a 10 line script in AML (the old command
line language of ArcInfo) with more than 1000 lines of visual basic to
do exactly the same thing in ArcGIS. That project drove me to start
using GRASS. I wanted a GIS without the object oriented design
patterns.

Anyway, I hope you understand that I DO think a new GUI is a good
idea. I am really excited about Q-GIS and hope that it develops into
something as good as ArcGIS is currently. (personally, I think Q-GIS
should be the GUI to grass). I just worry that we will throw the baby
out with the bath water "modernizing" the GRASS UI.

David