Acknowledgments

WHAT IF is a project running over multiple decennia. And throughout the years people have helped me. It is absolutely unthinkable that these acknowledgements are complete. As with every big project like this, documentation is done Friday afternoon shortly before somebody gets the beers from the fridge... If you think I missed you, mail me, and the next release will see you properly acknowledged in this chapter.

The acknowledgments are in a completely random order. I thank:

W.Kabsch and C.Sander for writing the DSSP program, and letting me interface to it. DSSP normally does the secondary structure evaluations for WHAT IF. DSSP is the de-facto world-wide standard for this work.

H. Berendsen and W. van Gunsteren for writing the molecular dynamics and energy minimization program GROMOS. Although several other MD/EM programs are more user friendly, GROMOS is according to me the best and most flexible one once you know how to work with it. WHAT IF and I learned how to do that, and we are both not sorry for investing this time. It was mainly Daan van Aalten, with help from Bert de Groot, Rob Hooft and Pieter Stouten who managed to make WHAT IF understand how to make GROMOS do what we want it to. Daan van Aalten en Bert de Groot wrote the ESSDYN (essential dynamics) menu, and all the other molecular dynamics trajectory analysis tools. Later essential dynamics went into GROMACS, and WHAT IF got a GROMACS interface (instead of a GROMOS interface) that was written by Olivier Lange.

M. Carson and C. Bugg for writing RIBBONS, the nicest pretty plot graphics program in its time, and for letting me interface WHAT IF to it. This interface was removed when YASARA saw the light.

G.T. Sande for writing the fourier kernels, L.F. Ten Eyck for making them multidimensional, and the CCP4 for distributing them.

David J. Thomas wrote the fancy code for the SPLINE option (and this paragraph of the acknowledgements). This option draws arrows for strands, allows for flexible manipulation, and makes smooth but accurate fits to the secondary structure. Every WHAT IF user will one day come to the conclusion that splines are the clearest way to look at overall secondary structure characteristics. David was also instrumental for some DG and X-ray options.

The "getline" package, that is used on some machines to give WHAT IF a so-called arrow history, contains the following message at the top of the code:

    Copyright (C) 1991, 1992, 1993 by Chris Thewalt 
    (thewalt@ce.berkeley.edu)

   Permission to use, copy, modify, and distribute this software for
   any purpose and without fee is hereby granted, provided that the
   above copyright notices appear in all copies and that both the
   copyright notice and this permission notice appear in supporting
   documentation.  This software is provided "as is" without express
   or implied warranty.

R. Schneider and C. Sander wrote HSSP. They allowed me to interface to their files, so WHAT IF now has a reliable mutant predictor, based on sequence homologies, available to it.

P. Goodford allowed me to interface to his program GRID. This provides the possibility to see potentials around molecules. This is a very important tool for those people who are designing drugs.

Barry Honig allowed us to interface to his DelPhi program. Jens Nielsen wrote this interface, and used its results to add many more nifty things such as pKa calculations.

B. Dijkstra and several others from the X-ray group in Groningen have contributed programs and subroutines to WHAT IF. These have mainly to do with the MDF-handling and regularisation of proteins. The individual contributors to this code are listed in the code itself. Several other X-ray specific modules would not have gotten their present form without help from the crystallographers in Groningen. B. Dijkstra, R. Read, and W. Hol are especially acknowledged for helpful discussions.

J. Hauptbruck and T. Metzler from Evans and Sutherland in Munich actively contributed to the PS300 specific part of WHAT IF. Interactive torsion angle manipulation, CPK models and stereo in WHAT IF on PS300 and E and S workstations are mainly their work. Actually they wrote almost half of the function network stuff. The function networks that they wrote for WHAT IF were better/faster than most commercial packages on the E and S machines. Even though WHAT IF is no longer distributed on E & S machines (they don't sell them any longer, and the latest versions of WHAT IF no longer support their machines), their thinking has helped shape the graphics philosophy of WHAT IF.

Daniel Banek is the brains behind all SGI graphics. Without him stereo, anti-aliasing, depth-cueueing, atom picking would not be in WHAT IF on Silicon Graphics machines, and on top of that, he improved my code so that it now rotates molecules 10 times faster than it did before. He has also helped me adapt the program to every new release of the operating system (with slightly changed GL semantics).

Michael Scharf wrote an X-windows driver for WHAT IF (SUN and Bruker machine). He did a splendid job. He used an object oriented paradigm without using an object oriented programming language: in fact his code compiled using a Kernighan and Ritchie C compiler. Rob Hooft later fixed a few bugs, converted it to ANSI C, and added depth cueing and perspective views. Those changes got WHAT IF going on several other platforms. The full-window-stereo facility was added by Rolando Rodriguez. Rolando later ported the graphics to truly open-GL (glut). He used a library that comes with this note:

Freeglut Copyright
------------------
Freeglut code without an explicit copyright is covered by the following
copyright:
Copyright (c) 1999-2000 Pawel W. Olszta. All Rights Reserved.
Permission is hereby granted, free of charge,  to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction,  including without limitation the rights
to use, copy,  modify, merge,  publish, distribute,  sublicense,  and/or sell
copies or substantial portions of the Software.
The above  copyright notice  and this permission notice  shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE  IS PROVIDED "AS IS",  WITHOUT WARRANTY OF ANY KIND,  EXPRESS OR
IMPLIED,  INCLUDING  BUT  NOT LIMITED  TO THE WARRANTIES  OF MERCHANTABILITY,
FITNESS  FOR  A PARTICULAR PURPOSE  AND NONINFRINGEMENT.  IN  NO EVENT  SHALL
PAWEL W. OLSZTA BE LIABLE FOR ANY CLAIM,  DAMAGES OR OTHER LIABILITY, WHETHER
IN  AN ACTION  OF CONTRACT,  TORT OR OTHERWISE,  ARISING FROM,  OUT OF  OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice,  the name of Pawel W. Olszta shall not be
used  in advertising  or otherwise to promote the sale, use or other dealings
in this Software without prior written authorization from Pawel W. Olszta.
For the free Windows version we use a lot of open source stuff. I think/hope the following text properly acknowledges this fact. By the way, we fully abided by their rules. You are NOT paying anything extra because of GnuWin32 etcetera.
When running in Microsoft Windows, WHATIF make use of some of the binaries of
the GnuWin32 project, http://gnuwin32.sourceforge.net/ and hence the programs
are included in the windows distribution.
There are neither charges associated with  GnuWin32 in anny manner,  nor on
it's inclusion in the regular WHATIF distribution.
 WHATIF only make external system calls to the precompiled executables as it
does in the UNIX version, no GnuWin32 library, dynamic or static is called by
WHATIF, and no GnuWin32 code was used as a part the WHATIF program.
Hereby we reproduce a verbatim copy of the GnuWin32 licence available
at http://gnuwin32.sourceforge.net/license.html
GnuWin32 License
There are no royalties or other fees to be paid for use of software from
GnuWin32. But you may not sell the binaries; if you wish to redistribute any
of the programs, you must do so for free. If you develop programs using
libraries from GnuWin32 you may sell these programs; in this case you might
consider making a donation to the GnuWin32 project.
Bundling GnuWin32 binaries with other software and distributing these as a
single work, e.g. on a CD-ROM, is permitted. If you sell such a bundle, then
the price should not be raised because of the GnuWin32 binaries and you must
clearly document inside the bundle as well as on the website where the bundle
is sold, the source of the binaries; on its website you must also provide in a
clear way a link to the GnuWin32 site.
Read carefully the copyright or other licenses included in the package;
usually in the directories contrib or src. For example if the license of a
package is the GPL (GNU General Public License), you MUST provide the source
code of any program you have made with the help of this package. Other
licenses may have similar clauses.
The open source license used most often, as measured by the use of licenses on
Freshmeat, is the GNU General Public License (GPL). Some other licenses are
the GNU Lesser General Public License and the BSD License. More open source
licenses may be found at the Open Source Initiative.
Does the use of GPL'ed DLLs from gnuwin32 project in your program need you to
release your program under GPL too?
There seem to be two different strands of opinion. The FSF holds that dynamic
linking creates a derivative work, and so any program designed to run with a
GPL-ed DLL, must be GPL itself; see
http://www.fsf.org/licenses/gpl-faq.html. The only exception they make is for
DLL's that come with the compiler and the kernel, such as the MS VC run-time
DLL's; see http://www.fsf.org/licenses/gpl-faq.html#WindowsRuntimeAndGPL
On the other hand some OpenSource lawyers hold that dynamically linking does
not make your program GPL. See
http://www.nusphere.com/products/library/gpl_0401openmag.pdf and the
discussion in http://www.linuxjournal.com/article.php?sid=6366
There is no doubt that programs that link dynamically to DLL's from libraries
with the LGPL or with the GPL with special provisions, may be GPL free.
D.Huckriede wrote the R2D2 part of WHAT IF while he was working for me as a student in Groningen in 1988. Today these options are no longer in WHAT IF.

The water position prediction module of WHAT IF is written by F.Knol when he was working for me as a student in Groningen late 1987 and 1988.

R.Read donated some subroutines to test symmetry matrices, and his program MUTATE. This code has been adapted for usage in WHAT IF. Especially MUTATE is of crucial importance for WHAT IF (presently I don't think any of Randy's code is still inthere, but his ideas shaped this part of WHAT IF).

Mathias Rose stimulated the creation of the SCNCON and SCNGRN options in the SCAN3D menu. Without his criticism, these options would today still not work properly.

B.v.Eyck and P.Stouten donated the program PROMTI. Without this program it was for a long time not possible to quickly add small molecules to GROMOS topology files. Later Daan van Aalten wrote a better version especially for WHAT IF, called PRODRUG, this software is now famous, also as stand-alone version. Nowadays, Alexander Schuettelkopf works on PRODRUG.

TA Jones donated some communication subroutines, and some of the very VAX specific routines. He claims that he took those routines just from the manuals, but I am sure that it would have taken me weeks to do just that. Also, the ideas behind all DG*** options come from Alwyn and Soren Thirup.

Rob Hooft wrote all symmetry related options in WHAT IF. On top of that, he ported WHAT IF to DEC-alpha workstations, and to IBM-Pc's running under the LINUX operating system. Additionally, Rob removed more bugs from WHAT IF than I put in in the first place. Much of the smart PDB file verification stuff comes from him. He also added LaTeX to WHAT IF's repertoire, which helped in many directions. He also created the automatic installation procedure. Rob cleaned up the internal SOUP administration, made most options about twice as fast, and thought WHAT IF what protons are. He also started revision control making it possible to reconstruct old versions and review code changes. And he constructed a test suite to make the developers version of WHAT IF much more stable. (Jens Nielsen later made this testsuite usable from the WWW).

Actually, in the years that Rob worked with me he has been doing more programming for WHAT IF than I, so he should be thanking me for helping him.... `'-)

Elmar Krieger did his PhD with me, and used his time wisely to get YASARA up to strength, and incorporated WHAT IF in it (calling the combined program the Twinset). Elmar also removed many bugs from WHAT IF, and provided advice that made modelling and structure validation work better. Elmar cleaned up DSSP, and the PDBFINDER. The PDBFINDER is used in the SELECT menu of WHAT IF.

A. Moussavi cleaned up the regularisation option and the PDB file input modules. He also started the incorporation of protons in WHAT IF.

G. Tuparev has at several stages contributed to porting WHAT IF (SGI and NEXTSTEP). He also adapted RIBBONS for usage with WHAT IF.

R. Abagyan contributed the code that is used to fit straight lines through points in space; his algorithm is the basis for some of the fancy graphics (like cylinders through helixes) and for the motifs searching database options.

A few people have been instrumental for the alignment part. Reinhard Schneider wrote the core of teh Smith-Watermann routine. Florence Horn has been testing the WAL* menus while making the GPCRDB. Bob Bywater, Friedrich Rippmann and Laerte Oliveira suggested many of the options.

Milo Scheeren ported WHAT IF to DOS based PCs. I can ensure you that this was an heroic job. Small PCs in 1994 were not designed to run 300000 line FORTRAN programs with 35MB memory requirements. Compilers crashed. Library bugs were exposed. Etc. His suggestions also helped improve other parts of WHAT IF. Emma Scheeren Groot helped in many different ways with the DOS conversion.

Robbie Joosten has had his fingers in the X-ray parts and in some details of the structure validation menu.

Suhaib Siddiqi ported WHAT IF (and everything around it) to the Windows operating systems. This was later re-done by Rolando Rodriguez.

Chris Sander deserves a special place in this list. He managed to suggest five years work in every year that we worked together. It is thanks to all his good ideas that I am now twelve years behind schedule with implementing new or improved features.

Many other people have made contributions to WHAT IF. Some of them were users who found bugs, or had good ideas. With other people, mainly colleagues, I had (sometimes long and enthusiastic) discussions about ideas and (im)possibilities.

Many ideas that are implemented in WHAT IF are not from me. As always in science 90 percent is old stuff, and 10 percent is added by me. I have tried to indicate in the text who the major people were from which I got the initial ideas for certain algorithms. The list below covers probably most of them....

Dirk Huckriede stood at the basis of the teaching module.

Jolanta Stouten and Brigitte Altenberg were the driving forces behind the tutorial. Brigitte has also been teaching many WHAT IF courses.

Over the years people have been testing WHAT IF for me. They were: Jolanta Stouten, Duncan Cochran, Stephan Schnabel, Serguei Melnichuk, Brigitte Altenberg, Vincent Breukels. They did more then just testing...

Other people who contributed code, ideas, criticism, support etc. are: Anna Tramontano, Georg Tuparev, Pieter Stouten, Annalisa Pastore, Alfonso Valencia, Christos Ouzounis, Uwe Hobohm, Reinhard Schneider, Michael Nilges, Laerte Oliveira, Mike Singer, Wilma Kuipers, Ingrid Warny, Glay Chinea, Enzo de Filippis, Roy Omond, Peter Rice, Vincent Eijsink, Johnny Weare, Michael Nilges, Nellita Lopez, The partners in the EC sponsored GPCRDB, CRITQUAL and PROMOD projects, the EC for sponsoring those projects, You?...

Most likely I forgot to thank or mention just you, the most important external contributor to WHAT IF, but please forgive me, and know that I did not do that deliberately. After all, to me, YOU are the most important person in the whole (WHAT IF) world.