This is an interview with Mark Galassi, one of the core developers of the highly revered GSL (GNU Scientific Library) project. Mark took out time of his very busy schedule to answer our questions and we are very grateful for that. Enjoy!
F4S: Hello Mark. Please, tell us a little about yourself.
I am a researcher in astrophysics and non-proliferation in Los Alamos National Laboratory. Most of my work has involved developing satellites to detect Gamma Ray Bursts, those mysterious explosions that we see from cosmological distances. I have also been contributing to the GNU project since I first saw Richard Stallman’s posting to the Usenet group net.unix-wizards in 1983.
F4S: What is GSL?
GSL is the GNU Scientific Library. It implements a “foundation” set of
numerical analysis algorithms which are a fundamental part of a
scientists programming work. It does so with high quality algorithms
and a reasonably modern C API.
F4S: Why and when did GSL come to be?
In the 1990s I was looking at ways of replacing various proprietary
programs that scientists use for data analysis and plotting. I always
came back to one fundamental problem: the lack of a modern scientific
library that works well with very high level languages (Scheme, Python,
…) Many scientists were pasting in routines from Numerical Recipes.
While the book is a good pedagogical introduction to the algorithms, it
has fundamental licensing and quality problems.
I talked to James Theiler often about these issues and we thought it
would be good to have a high quality free numerical library with the
same scope as that offered by standard numerical analysis texts.
We set coding standards, started implementing a few routines, and set up
a source repository. With that framework in place we started asking
people to join. The project really took off when Brian Gough started
adapting netlib and Gerard Jungman wrote his ambitious special function
library. That critical mass prompted other collaborators as well as a
great investment in effort by Brian Gough.
F4S: In which language(s) and platform(s) is the project developed?
Platform: development was done on GNU systems and following the GNU
coding standards quite closely. It also ports easily to other platforms
since numerical software has few system dependencies.
F4S: Does GSL have sponsors?
Not currently, but Network Theory Ltd. has funded much of Brian Gough’s
F4S: How many users you estimate GSL have?
GSL is now deep infrastructure for many programs and is included in all
distributions. It’s hard to estimate how many users there are, but
there are many.
F4S: Do you know where is GSL used?
It appears that anywhere people are doing scientific computation in C they are using GSL.
F4S: How many team members does the project have?
Brian Gough is the lead maintainer; the project is mature and mostly complete so it does not have an active development team at this time.
F4S: In what areas of GSL development do you currently need help?
The main area is general maintenance and dealing with bug reports.
F4S: How can people get involved with the project?
Using, testing, writing add-on packages, writing high level language
F4S: Which projects, blogs or sites related to open source software for science can you recommend?
We have discovered your blog and we recommend it. I like John D. Cook’s blog “The Endevour” http://www.johndcook.com/blog/ and I would probably read many more science and free software blogs, but I seldom have time to. I barely have time to contribute to my own at http://programmingforresearch.wordpress.com/
F4S: Why do you consider free/libre open source software important for the advancement of your field?
It is absolutely vital for science. People cannot believe your results
unless they are reproducible, and software is a huge part of how those
results are obtained. I wrote a blog piece on this:
F4S: Where people can contact you and learn more about GSL?
The GSL home page is at http://www.gnu.org/s/gsl/
F4S: Thank you Mark.
Books you may like