For many years I tried to pick the best possible book or manual on different computer algebra systems. This post is a personal account of different sources I used as manuals.

The first computer algebra system that I was extensively using for numerical and symbolic computations was Maple. Various attempts to find a book (in Russian) that would suit my needs actually failed; all of the books I saw were written in the manner: ‘this function requires these parameters and can serve for this particular purpose’, i.e., those books were simply rewritten helps from the program itself, which wouldn’t go into intricacy of the usage of this software. However, after some time I realized that actually there is a perfect manual on using Maple – the set of lessons on the Maple Application Center. Maple Programming by Dr. Roger Kraft is much better than any book I saw on the subject. On his personal webpage, Dr. Kraft has a much extended set of Maple worksheets, which can be used to master the program.

For some reasons, at some point I had to switch to Matlab (mostly due to the fact that numerical computations can be performed much faster compare to the Maple version I used). Here I was lucky from the very beginning: The perfect manual is given by MATLAB guide, which represents an example of what I expect of a good manual: Deep, concise, coherent, with a lot of interesting examples.

Finally, now I am mainly using the third big player on the commercial computer algebra system market – Mathematica. And the book that I was using to learn the program is Introduction to Programming with Mathematica. A new, forth edition, of this text recently appeared on Amazon. This new edition has fewer authors, but significantly thicker. The most interesting addition (for me) is the chapter on the optimization of Mathematica programs; the most of the book, however, is a clear decedent of the previous edition.

Other resources that can be used for mastering Mathematica:

- Mathematica Stack Exchange
- A very informative thread from Mathematica SE: Good Mathematica programming
- Mathematica in Action by Stan Wagon – a collection of elegant examples of Mathematica functional programming
- Mathematica programming by Leonid Shifrin – a free book on the secrets of good Mathematica programming

If the sources above look slightly too involved, a good starting point might be