W0438

There is No Such Thing as Free Software. J.W. Pflugrath, Rigaku/MSC, Inc. 9009 New Trails Dr., The Woodlands, TX 77381.

From a perspective of 25 years of writing scientific software while employed in both academic and commercial endeavors, I can state that there is very little difference between the two camps. Both academic and commercial software initiatives need to employ qualified developers and interact with scientists. Both must write, test, maintain, and distribute code. Both are essentially funded through the same sources: either directly from grants or by selling products (such as software) that is paid for from grants. I have found that commercial developers more often (but not always) employ standard industry practices such as source control, style adherence, memory leak testing, and validation than do academic developers which are often more ad hoc in their efforts.

Users have evolved to where they no longer know any programming language or even what (3I5, 2F10.2) means. Access to source code is of little use to a scientist who has no programming skills and no knowledge of the scientific principles embodied in the code. A result of this is that the programmers (for ANY type of scientific programming) are usually scientists themselves who work hand-in-hand with other scientists and who may be either academic or commercially employed. Both commercial and academic software developers must be equally responsive to user concerns and must rely on customer feedback. With little meaningful distinction between the two camps, industry-academic collaboration is vital to the success of our field.

For the future, a concern is who will do the programming required in our field? How are we training software developers who will write the programs used in 2005, 2010 and beyond? At Rigaku/MSC we have addressed this by employing scientists who can not only write code, but also teach programmers in the science of crystallography. After all, there is more to software than ‘push a button’.