Subject: Open Source scientific software

From: Jochen Kuepper <[email-masked]>
Date: Tue, 2 May 2000 21:42:19 +0200 (CEST)

I stumbled across this old message in my mailox and think it important
enough to reply, despite the messages "age".

>>>>> "alb" == alb  <[email-masked]> writes:

    > Eugene Leitl wrote:

    >> The only way to push open standards realistically, whether in
    >> GUIs or deep code internals, is Open Source.  ...  though
    >> typically the interactivity/GUI concept of free code is
    >> somewhat underdeveloped. However, this is nothing intrinsical,
    >> nothing which can't be fixed with a bit of effort.

    > A few discordant opinions, I am not at all optimistic about free
    > as opposite to commercial software and GUIs:

"Open Source" and "commercial software" are no opposites. A lot of
software matches exactly one of the two concepts, but that isn't the
concepts fault !
There are example of commercial Open Source software, and there are
even more Open Source products produced by commercial vendors.

    > More than a bit of effort would be needed ! Old academic
    > research ideas of free circulation of software are continuously
    > decreasing, in spite of Linux. And Linux will probably not stay

Sad enough, but I have to agree.

    > that cheap after its introduction on the Wall Street market...

Well, Linux will cheap. But people are not satisfied with a kernel by
itself, so, again, running Linux for production use will become more
expensive. 

    > Seems to me that the reason why free circulation is decreasing
    > is exactly because of GUIs. Graphical user interfaces are not at
    > all always necessary in old fashion calculations which just need
    > two files which can be edited by a simple ASCII editor : -
    > datafile - parameters and command file Your just have then to
    > run the program and obtain the result in new files, printable or
    > viewable by some displaying software.

- Writing reasonable good GUIs is a _very_ complex task not really
  well understood by CS today, a regular scientist has never been
  teached about it in his regular program, I guess.
- The calculation programs themselfes are getting to higher degrees of
  complexity, and many people simply want to use them like Word - beeing
  used to "supposed to be simple_ (TM) programs (e.g. Gaussian and
  alikes). So people don't understand the program, => no patches, ... .
- Writing a quick&dirty implemetation for yourself is usually done
  without a GUI or with a very minimalistic one, to get the stuff
  running soon. Usually nobody takes an old program and adds an GUI,
  unless he is paid for ;-)

    > Unfortunately, programs are bought by deciders. Deciders have
    > not necessarily any skill in the domain for which they are in
    > charge to buy software. They are very sensitive to shiny GUIs
    > and I suspect they make decision on that aspect of the programs.

As written above. Nowadays there are many users that are doing the same.

    > A lot of chemistry programs are more and more expensive (>1000
    > US$). Some are even inaccessible. For instance the Cerius2 suite

    > research, doing almost the same, if not better, but without any
    > GUI (running with a command line, in a DOS box and so
    > on). Having to buy programs, you also try to sell your own
    > programs... and this is a vicious circle.

Well, I can tell you, there are several programs out to
simulate/fit/explain rovibronic (or rovibrational) spectra. Several of
them do have nice GUIs, all I know are free ! (Our (my) one is
actually GPL licensed;-)
That's because the task is solved so much easier within a GUI. If you
don't need a GUI to accomplish your task, well, don't pay for it ;-)

    > Building a museum of more or less old and famous source codes in
    > crystallography shows that most are Fortran codes.

Well, I took old FORTRAN code and build a C++ GUI around, no problem
at all in a POSIX-like environment using pipes (or whatever), but you
could do simple communication through files - that should work on any
machine used for scientific software nowadays. And there are Tk and such.

Really no reason to keep the old FORTRAN code and build modern GUI
around. No need to rewrite the FORTAN code (despite maintainblity, but
that's a very differnt topic).

To my mind it is very much up to you to decide where we are going. If
we join efforts to make nice GUIs for our programs we do write anyway
(to be ahead), we will get them.

If we pay scientific software vendors (the money they need) for
support and enhancements of their product instead of paying fees to
obtain it, and also favor OpenSource software (not saying "free beer"
software !) to closed source products, we will get them !

If there are no customers, no-one can sell a product.
If we do not pay for software development, we have to do it by ourself
;-)

Cheers,
Jochen
-- 
Heinrich-Heine-Universität
Institut für Physikalische Chemie I
Jochen Küpper
Universitätsstr. 1, Geb. 26.43 Raum 02.29
40225 Düsseldorf, Germany
phone ++49-211-8113681, fax ++49-211-8115195
http://www.Jochen-Kuepper.de