Today’s interview is with Ivan Idris, author of NumPy 1.5 Beginner’s Guide a book for developers or scientists with a little Python experience and wanting to test NumPy’s capabilities. We talk about the book, how it came to be and the experience writing it. Enjoy!
F4S: Welcome Ivan. Please, give us a brief introduction about yourself.
Ivan: My name is Ivan Idris and I have a MSc in Experimental Physics. My graduation thesis had a strong emphasis on Applied Computer Science. It involved building a state of the art real-time measurement system for a nuclear Physics lab. After graduating I worked for several companies as Software Developer using Open Source software.
As a Developer I have been part of a number of projects involving large scale, high performance numerical computations:
- Financial securities (mostly bonds) models.
- Real-time optimization and monitoring of network traffic for High Frequency Trading.
- Propensity/Engagement models in the context of web marketing in the cloud.
F4S: How did you get involved with open source software?
Ivan: In University I was introduced to Unix/Linux and I have been an avid user ever since. All the companies I have worked for use Open Source frameworks. The number of Pythonistas in IT is astonishingly high, especially amongst more experienced developers.
F4S: Tell us the story behind your book “NumPy 1.5 Beginner’s Guide”.
Ivan: The story behind my book is a bit funny. As a Senior Developer, I have a lot of freedom, when it comes to the implementation of solutions to complex problems, we face as a company. I frequently do spikes to investigate the feasibility of proposed approaches. When I am really enthusiastic about a certain Open Source project, that I have been experimenting with, I sometimes also blog about it.
One of those blogs must have triggered Packt Publishing. I got an offer by an acquisition editor at Packt to write the book and then the ball started rolling.
F4S: Who will benefit from reading it?
Ivan: NumPy 1.5 Beginner’s Guide is aimed at people interested to learn about NumPy with basic Python skills. The code in the book is pretty simple Python code. You can download the code from the publisher website or from the unofficial book website, that I created.
Another prerequisite is to have freshman year level mathematics knowledge or at least affinity with mathematics. Most of the mathematics needed in the book can also be learned from Wikipedia or Khan’s academy. I definitely recommend a refresher course from Khan’s academy, if necessary. Particularly the material about linear algebra and statistics.
On my blog there is a post entitled “Christmas NumPy Book Giveaway”, where 30+ people mentioned their reasons to want to read the book. I highly recommend reading those comments.
F4S: How will you describe your experience writing the book?
Ivan: The process of writing the book itself was very streamlined and professional. I worked together with a lot of Packt employees, such as acquisition editors, account managers, technical editors and now that the book is published with marketers.
The book had five technical reviewers who did not work for the publisher directly. They all work in the field of scientific computing. Some of them are scientists or they used to work at universities. At times it felt like I was back in university having my work checked by my professors. Thanks to the comments of the reviewers, the text achieved a much higher quality. Needless to say that going from the first drafts to the finished work took many iterations.
F4S: Have you published other FLOSS related books?
Ivan: I only have published one book thus far.
F4S: Do you have plans for other books?
Ivan: I don’t know exactly how much of the material I wrote for the book was published. My estimation is that twenty percent or more was edited out. I have received a lot of feedback on my book. New ideas emerged after publishing the book. Obviously, I would love to write another book on NumPy. There are no plans, however.
F4S: Why is free/libre open source scientific software important for your field?
Ivan: The commonly accepted wisdom is that Open Source software has many benefits:
- No vendor lock-in
- Fast issue detection (many eyes watching the code)
- Cost benefits
- Easier to get support
People in my field tend to be enthusiastic and knowledgeable about Open Source software.
F4S: Which projects, books, blogs or sites related to open source software for science can you recommend?
Ivan: I have been reading the online documentation of NumPy, SciPy and Matplotlib a lot. When it comes to blogs, I would recommend the blogs on Planet SciPy and the blogs of the technical reviewers. About a month ago I discovered SciPy Central with SciPy related content.
F4S: Is there any other topic you would like our readers to know about?
Ivan: The marketers are still looking for people to review the book. In exchange for your review on your blog or Amazon, you will receive a free copy. From time to time the publisher will organize contests where they will give away the book. One such contest is currently running at the time of writing (till end January 2012). If you are interested, please check my blog and book websites for announcements and ways to become a reviewer.
F4S: Where people can contact or learn more about you and the book?
- Website: http://ivanidris.net
- Blog: http://ivanidris.net/wordpress
- Twitter: @inningPalmer
- Facebook: http://www.facebook.com/numpybeginnersguide
- The unofficial book website on http://numpybeginnersguide.wordpress.com/social/ has a Social section listing more ways to get in touch.
- Amazon author bio: Ivan Idris
- Amazon book page: NumPy 1.5 Beginner’s Guide
F4S: Thank you Ivan.