[Pipet Devel] Re: Meta-Application Interface: a proposal

J.W. Bizzaro bizzaro at bc.edu
Thu Jun 17 20:19:07 EDT 1999

Hello Ferdinando.

I think you described The Loci Project to the letter :-)

Loci is an Internet-based system of clients and servers, connected using a
highly graphical user interface.  Starting with a collection of the most basal
components, the user builds a "workflow diagram", connecting icons and lines. 
In this manner, Unix command-lines and pipes can be constructed, even across a
network.  The system was designed for computational biology, where command-line
programs are long-running processes and particularly abundant.

Loci is being developed with the python-gnome toolset and makes extensive use of
XML/DOM and (possibly soon) ORBit/CORBA.  It is licensed under the GNU GPL, and
is of course developed via the GNU model.  We have more than one dozen volunteer
developers and about two dozen on the mailing list.  We hope to unify some of
the scattered efforts to develop a free, comprehensive suite of computational
biology applications.


jeff at bioinformatics.org

Ferdinando Villa wrote:
> Hi guys and gals,
>         I'm not a GNOME developer and I've never posted here, so I
> hope you'll forgive my crossposting to a few different GNOME
> lists. While thinking about one of my ecological modelling projects
> I've come up with an idea for a general core GUI feature that I think deserves
> sharing and needs feedback - also because, fingers crossed, I might
> have funding by year 2000 to help its development, if done compatibly
> with the (non-commercial, open-source) project's purposes.
> You can read about the original project at
> http://iee.umces.edu/~villa/IMA.  Basically it's a proposal to develop
> a framework/set of tools to integrate independent ecological models by
> making their semantics explicit (using XML DTD's) and developing sw to
> perform connections on a graphical workbench, run models and 'probe'
> the information passing along the connections. It's a big thing with
> lots of difficulties, but very fascinating to me.
>         This leads easily to the idea of a 'meta-application
> interface' as a core desktop functionality, where users can 'patch'
> applications together graphically (connecting their icons with the
> mouse), save their meta-application to the desktop, and use it as a
> single app. At the very simplest level this allows to use the UNIX
> pipe mechanism graphically: e.g. to print text files as postscript, I
> create a new meta-app (a box with input and optionally output ports),
> drop the ascii-to-ps translator and the ps-printer icons into it,
> connect the meta-app input to the translator and the translator to the
> printer, assign an icon and save it. Now I can drop my ascii file on
> the icon and have it translated and printed in one step. It's not much
> of a deal but you get the idea - try and find something like that on
> Windows or MacOS. One of the most powerful features of Unix comes to
> the friendly desktop. Myself, I would love to have it.
>         Going up with the complexity, you can carry this to a very high
> and very new level of power. As a first stab at it: through an API,
> applications can notify their 'output ports' and make them available
> as outputs in a meta-application context. This translates in users
> being able to select graphically the ports from the application's icon
> in the meta-application editor. The 'semantics' of the info that
> passes through there can be described in XML and the connections, of
> course, can be based on CORBA, which makes it possible to use remote
> apps ('services') as well. An application in the meta-application can
> play a 'lead role' by showing its own interface when running the
> meta-app, and is notified of the connected apps through the API,
> adjusting its menus and functions (possibly directed from similar info
> set in the connected apps) according to what services are available to
> it in the meta-application context. Specific 'GUI' apps can offer
> specific services like e.g. interactive output port selection: you
> drop the Ascii file on the meta-printing app and you get the pop-up
> asking which printer/viewer you want it to print on (all printers are
> connected to the outputs of the switcher).
>         Never mind my silly examples, but the beauty of this is that
> the user does it all - if s/he wants - and can personalize the system
> to very high levels of proficiency and customization, all without
> writing a line of code. Think of the possibilities of using meta-apps
> hierarchically within meta-apps. In the long run I can see apps
> providing fundamental services (e.g. text composition, financial
> conversion, you name it) and 'real' apps being made by users by
> patching together the building blocks. And the development of this is
> certainly non trivial but very scalable: something encapsulating just
> UNIX pipes would be more than enough to make many people happy, and
> simpler to do than most GNOME core libraries.  I can't imagine
> anything more ideal than GNOME for a similar functionality, and it
> would be a smashy improvement over any other system, commercial or
> not, that I know of.
>         What do you think? When it comes to me: I'm paid to do
> research as a theoretical ecologist and I've submitted a proposal for
> the IMA project, which could be funded or not by the end of the
> year. I won't know about funding for a while. If we get the funds,
> I'll have to hire a programmer (since 2001 but possibly earlier) to do
> the job with me and another colleague, and this person could be
> developing the GNOME side as well if we make it fit in there. The
> whole modelling project is probably much more complicated than this,
> so it would be easy to fit it in ...:)
>         If I don't get the funds, I don't think I'll ever have the
> resources to do it, but I'd be happy to contribute if someone in the
> Gnome community decides it's worth the effort. For now just think
> about it and let me know what your feelings are (in case you decide to
> email me, know that I won't read email until July 1st. Best address is
> villa at cbl.umces.edu, i use this one for mailing lists only).
>         In any case, thanks for reading, and best to you all
>         ferdinando
> --
> Ferdinando Villa, Ph.D.                         Assistant Research Scientist
> Institute of Ecological Economics                     University of Maryland
> P.O. Box 38, 20688 Solomons MD                         Phone: (410) 326-7446
> URL: http://iee.umces.edu/~villa                         Fax: (410) 326-7354
> --
>         FAQ: Frequently-Asked Questions at http://www.gnome.org/gnomefaq
>          To unsubscribe: mail gnome-list-request at gnome.org with
>                        "unsubscribe" as the Subject.

J.W. Bizzaro                  mailto:bizzaro at bc.edu
Boston College Chemistry      http://www.uml.edu/Dept/Chem/Bizzaro/

More information about the Pipet-Devel mailing list