My Modern Fortran book is now published

Hi All,

My book is now published–almost exactly 3 years after I started it.

If you buy it from Manning (or have pre-ordered in the past), you can now get the final PDF. The final versions of ePub and MOBI formats are being prepared and will be ready soon–I don’t know exactly when. The book is being printed and we expect it in stock on October 19. Amazon, Barnes&Noble, Target, and few other re-sellers will have it in stock 2-3 weeks after that date.

Here’s the book website:

And here’s the Amazon link:

And here’s the code:

Thank you all who bought it, read it, reviewed it, or provided corrections to the text or code. You made it better and helped me push it through the finish line.

If you want to help me further, please consider writing an honest review.

I will soon write about my experience writing it and working with Manning.

15 Likes

@milancurcic congratulations! A lot has happened since 3 years ago. I am happy about the progress on all fronts. Let us know when Amazon opens so that we can write a review.

1 Like

@milancurcic,

Kudos, great effort and contribution to Fortran.

2 Likes

Nice work :). And a nice looking book at that!

1 Like

Thanks @Arjen! You’ve helped me a lot by providing detailed feedback on every chapter as they were coming out.

@milancurcic just got my copy in the mail yesterday. Great book, it’s really helped me a lot this past year - not just with the modern examples and implementations, but also with the why. I feel like it perfectly fills a gap in what’s currently out there, serving as a strong stepping stone to more advanced texts (Metcalf and Rouson). Thanks again! (I’ll gladly write an Amazon review as soon as it’s open).

1 Like

Thank you so much, @dannytoearth, and welcome! I’m happy it was helpful, comments like yours remind me why all the work was worth it. I will let you know when Amazon reviews open–that will be a huge help so I appreciate it in advance.

It’s very similar to the style of the “head first” series books, and the illustrations are very beautiful. Can you tell me what software is used to make the illustrations that look like hand drawn? :joy:

1 Like

Thank you! Interesting that you mention Head First series: One of the Manning people that coached me early on in the process was Bert Bates who authored a few Head First books.

For most illustrations I used Libre Office Draw. For the ones that look more hand-drawn (e.g. Fig. B.2) I used Python matplotlib in xkcd mode.

3 Likes

@milancurcic yes, please let us know once the review opens, I would like to write a review too.

1 Like

I love that xkcd mode.

1 Like

Thank you, I learned something different again. :grinning:

1 Like


The book has appeared on well-known e-commerce websites jd in China.

3 Likes

Just received my copy today! The book reads extremely well. I’ve learned a few new things even in the beginning chapters. I also like how the theme of parallel computing with co-arrays is woven throughout the book. The last chapter on advanced co-array topics is also very helpful in providing some examples of how teams and events can be used, instead of just introducing the syntax like in most other resources. After reading it my first thoughts were, I should try and use co-arrays in a hybrid CFD solver (Chimera).

4 Likes

Thank you, @ivanpribec! Chapter 12 (Teams & Events) was the most challenging regarding Fortran itself (some other chapters were more challenging writing-wise), because:

  • I was not familiar with teams and events before writing this chapter.
  • Like you said, there haven’t been good resources to learn this. The red Metcalf-Reid-Cohen spell out the syntax but give no examples. There is only 1 (one!) page about events in MRC.
  • The only free implementation I know of (gfortran + OpenCoarrays) has an incomplete implementation of teams. Unfortunately, the missing feature is significant: Sending data to sibling teams by specifying team_number in the image selector. Intel’s implementation may work but I haven’t had chance to try it.
  • I found teams quite unintuitive and overall difficult to learn myself, specifically regarding the parent-child hierarchy and the change team semantics. There may be a common and important use case that motivated designing teams the way they are, but I don’t know what that is. Lack of existing learning resources + lack of free implementation made understanding teams even harder. I’m happy that my book helps at least somewhat in this area.
4 Likes

The book Amazon page is now open for reviews:

If you’re willing to write an honest review, it would be a great help to me. Thank you!

1 Like

Fortunately, gfortran and opencoarray are open source projects. Anyone can download and implement missing features. One might even get a rare “Thank You” for the effort.

1 Like

I wrote about my experience working with Manning Pubs:

4 Likes

Thanks for describing the publishing process. It is helpful for Fortran when programmer-oriented publishers such as Manning publish a book on it. I have two books from O’Reilly:

Migrating to Fortran 90 (1993)
UNIX for FORTRAN Programmers (1990)

I wonder if they would be open to a Fortran book (not by me).

You write that about 1000 copies of the book were likely sold through the summer of 2020. (I bought it.) How many people typically read your Medium posts on Fortran, such as Map, Filter, Reduce in Fortran 2018?

1 Like

Here are all the Medium stats. I think reads are what matters the most (rather than views). Read ratio goes down with post length.