Advice to developers, by Robert Dodier
Disclaimer: I have no special authority to tell other people what to do.
- Participation in the mailing list is encouraged.
Modifying maxima/src
- First, do no harm.
- Exercise care and good taste.
- Changes which modify the way something or anything works from the point of view of the user need to be mentioned on the mailing list.
- Don't be afraid to make changes, but don't be surprised if other people ask you to redo / undo changes you've made. Changes which cause make / make install / run_testsuite to fail are always unpopular.
- When you commit something, make an informative log message. If you change more than one file, commit them all with one "cvs commit" and mention each file in the log message.
User documentation style guide
- Get to the point. Make the text clear and concise.
- Describe what Maxima does. Do not describe what the user can do with Maxima. Do not address the reader as "you".
Organize documentation as follows.
- First sentence summarizes the topic.
- Put the exposition before examples. Do not mix examples into the exposition.
- Put an examples section after the exposition. It is often useful to recapitulate the exposition in the examples section.
- Make each documentation unit self-contained. Don't define one item in terms of another. Repetition is OK because people rarely read computer manuals from beginning to end.
- References to books, articles, etc are good.
- To make a texinfo document for a share package, copy maxima/share/template.texi and paste in your text. See also README.developers-howto on this point.
- The Common Lisp Hyperspec is a suitable model for Maxima documentation. I don't mean to suggest slavish imitation.