[lammps-users] Another take on PEBCAC

"Don't think of the user as making errors; think of the actions as approximations of what is desired"

http://en.wikipedia.org/wiki/Don_Norman

"Don't think of the user as making errors; think of the actions as approximations of what is desired"

Don Norman - Wikipedia

hi chuck,

i think this is hitting closer to home than many people would like.

users, particularly those with little or no programming experience,
expect computers (and thus software) to be "smart" and able
to "understand" their _intentions_ rather than their _words_.
the reality is however, that in order to produce exact results,
software has to be "dumb" and take everything _literal_.

programmers on the other hand, are so used to everything being
systematic and (somehow) logically build upon each other, that
they have trouble anticipating where somebody with a different
perspective on things will get confused. one important issue to
keep in mind is consistency, which is _really_ hard for large package
programs, since there are so many people contributing to it.
the issue is that users need to give feedback on what is easy
to understand and obvious and what is difficult and how one
would expect that to be handled instead. unfortunately, we
have developed a culture where people don't think anymore
about "how can i make that what happened to me doesn't
happen to somebody else?", which is usually very easy to
do since you just solved the problem.

at this point it is probably worth noting that that a good and
easy way for non-programmers to help fellow LAMMPS users
is to submit examples and how-tos at these two URLs:

a documentation cannot foresee and describe all possible
applications of a feature. examples are a much better way
to show how to achieve a more complex goal, but this is
something where users are often much more qualified than
the programmers of the individual features.

it is good for a person that is used to "think like a program"
to be occasionally reminded that this is not true for everybody.

but it is equally important to remind everybody else that
(scientific) software, regardless how powerful and sophisticated,
is at its core extremely dumb and without _any_ imagination.
it does what you say, and that may not be what you want.

thanks for the quote and reference,
     axel.

at this point it is probably worth noting that that a good and
easy way for non-programmers to help fellow LAMMPS users
is to submit examples and how-tos at these two URLs:
ttp://lammps.sandia.gov/scripts.html
LAMMPS Molecular Dynamics Simulator

Amen. I had hoped more folks would post their scripts
and lessons-learned to those WWW pages, but it hasn't
happened ...

Steve