Books for the "Learn" page

I agree strongly with the books already mentioned at the bottom of the learn page however the following have merit too for particular topics or techniques

Brainerd WS, 2015 Guide to Fortran 2008 Programming, 1st Edn, London, Springer-Verlag

Numrich RW, 2018, Parallel Programming with Co-Arrays, 1st Edn, Boca Ratan, CRC Press

Akin E, 2003, Object-Orientated Programming Via Fortran 90/95,1st Edn, Cambridge, CUP

McCormack D., 2009, Scientific Software Development with Fortran, 1st Edn, Marston Gate,

A related suggestion… would a book review page be appropriate, even just as a guide to people who want a particular book on a particular aspect or Modern Fortran?


Thanks for the suggestions @NormanKirkby, these look like they would be good additions to the list.
If you’re comfortable opening a pull request on github, then the data file to edit is learning.yml - alternatively, you can post an issue and we’ll update the site.

Great idea! In terms of format, the book reviews could be posted as blog entries with links from the learn page possibly?

1 Like

I second the recommendations for Breinerd and Numrich books.

I’d also like to add:

Rouson, Xia, and Xu, 2012, Scientific Software Design: The Object-Oriented Way, 2nd Edn, Cambridge, CUP.

It’s mixed Fortran and C++ and doesn’t teach the language, but is a great resource for OOP patterns used in science and engineering applications.

1 Like

Another good one is:

Chirila, D. B., & Lohmann, G. (2015). Introduction to Modern Fortran for the Earth System Sciences. Springer.


I will add:


And also those more general books:

  • Oliveira, Suely, and David E. Stewart. Writing Scientific Software: A Guide for Good Style . Cambridge: Cambridge Univ. Press, 2006, ISBN 978-0-521-67595-6.
  • Kernighan, Brian W, and Rob Pike. The Practice of Programming, Addison–Wesley, 1999, ISBN 0-201-61586-X, . The examples are mainly in C language, but it is about programming, not C.

Many thanks for all the great suggestions, for which I’ve now opened a PR.
The proposed additions to the Learn page can be previewed here; if you spot any spelling mistakes or inaccuracies you can comment on the PR on github:

1 Like