Interview with Barth Netterfield about kstThe Free Software community is constantly inundated with interesting new projects, but occasionally something crops up which is really special. Kst is just such a project. Started by Barth Netterfield, an astrophysicist, as a personal project to plot data from his experiments, it has now taken on a life of its own, being used in academic projects including BLAST, Boomerang and Planck. It is finding widespread use in Universities and in the European Space Agency, and its development is funded by the Canadian Space Agency.
Intrigued by this project's success, as well as its origins in the astrophysics community, rather than in the KDE Free Software community per se, I took the opportunity to interview Barth, and George Staikos, a famous KDE hacker who is now paid to work on it.
Tom Chance: Barth, first, could you introduce yourself to our readers?
Barth Netterfield: My name is Barth Netterfield, and I am an associate professor of Astronomy and Physics at the University of Toronto. My research is in observational cosmology (i.e. geometry, content, and history of the Universe).
TC: Why did you start developing kst?
BN: Two reasons:
1. Our experiments needed a program to view data, both during data acquisition, and after the fact. I had (and still haven't) seen any existing programs that I liked. There was one (based on XForms) that I had written as a PDF, but it was pretty rough.
2. As a hobby. I wanted a project I could work on, hands on and alone, unrelated to all of the other administrative, managerial, and advisory roles I have as a professor. Coding is just plain fun.
The first motivation has been fulfilled. Kst works very well for our needs now. The second has been stymied by the success of the first. The Canadian Space Agency has funded us to develop kst to become the official QLA software for the Planck cosmology satellite. We now have hired two programmers. Alas, over the past few months, my kst coding has dropped precipitously.
TC: What made you choose KDE as its basis?
BN: QT and the KDE libraries. I looked at gtk+ and felt ... queasy. I am very glad about the choice.
TC: And George, when did you start working on kst, and why?
George Staikos: I started in May 2003. I was contracted by the University of Toronto, which was convenient since I'm a former student there and I live nearby.
TC: Barth, where, to your knowledge, has kst been used?
BN: Various experiments: at least BOOMERANG, BLAST, Planck, and by students and labs from these experiments. We have only begun to advertise it at all recently. It's getting pretty good 'good' scores on kde-apps now, and downloads are growing.
TC: George, do you take an interest in the projects in which kst are used?
GS: Definitely! I did a major in astronomy and astrophysics, and I have always been interested in these things. I was aware of some of the projects Kst is used on before I even knew about Kst, and I'm particularly interested in the Planck project now.
TC: What was it like for you, as an experienced KDE hacker, joining a project used and developed primarily by physicists?
GS: It's been a different experience than other free software projects in the sense that many of the people involved are not used to this model of development. Encouraging people to use the mailing list, bugzilla, CVS, etc is not particularly easy. I think we have started to convince people of the value of these tools and this development model though.
TC: Barth, have the other projects using kst contributed ideas, feature requests or code? (author's note: in an early document discussing technologies to be used in Planck, modifying kst was mentioned)
BN: Users from the above experiments have made feature requests, and a student from BOOMERANG has made some code enhancements. Most of the work has been done by me, and our two programmers (George and Andrew Walker.)
TC: How does kst compare to commercial offerings (if any)?
BN: I know of no equivalents. Kst has the best zooming and scrolling capabilities I have ever seen, and is optimized for quickly viewing large (up to millions of points on current hardware) data sets. To my knowledge, for these tasks, kst stands alone.
For quickly viewing a data file from the command line, I have heard that 'grace' (not commercial) is similarly convenient, and more powerful, but I have not tried 'grace'.
kst is capable and improving at making presentation of publication ready plots, but SM or IDL are probably better at this. kst is improving at more complex data analysis tasks, but IDL is certainly much better here as well.
|kst plotting some demonstration data from BOOMERANG|
TC: Is Free Software widespread in the astrophysics community?
BN: A mix. Linux is very common, as is OS/X. Many astrophysics researchers like to keep some proprietary control over their creations, in order to enforce academic acknowledgements. For example the commonly used HEALPIX package requires an explicit acknowledgement in any research paper that uses it, and prohibits re-distribbution. IDL (commercial) and SM (semi-commercial) are very common packages, but other packages are open source (FITSIO, etc).
TC: Is Free Software widespread in the European Space Agency?
BN: Linux is, but when we announced that kst was GPL, there was some hesitation. But it has been fully accepted now.
TC: Why did you decide to license it as free software?
BN: Because I wanted people to use it, and be able to contribute to it. Closed source really made no sense to me.
TC: Has the license (GPL) been useful in the academic community, which is itself based upon open sharing of information?
BN: I think it is the right way to distribute software. As I mentioned above not everyone agrees fully.
TC: Disagreements in the academic community between proprietary and Free licensing seem to reflect a growing disagreement in the scientific community about the role of open, community-based research and of closed or corporate research. What are your thoughts on this?
BN: It is related only in that people are involved in both cases.
Some people approach science as a competition - and in fact this is a perfectly reasonable response to the existing granting, tenure, and promotion and award systems, which are in turn a perfectly reasonable response to human nature. Competition makes people work harder.
An anecdote: A few years ago, there were several groups in competition to be the first to make a particular exciting measurement - tensions were a little high, as the results were going to (and eventually did) make front page news. My educational schedule caused me to change experiments mid-course. When I moved to the new experiment, I wanted to keep using some of the code I had co-developed on the old experiment. I was told that I could use whatever I had explicitly written, but not the parts that my former collaborators had written, because, after all, we were in competition. I was annoyed, and re-writing the code took several weeks of my time.
So the question might be: should I have been able to use someone else's work to compete against them?
But more fundamenally, the question is, should these sorts of experiments really be considered competitions? If not, what is the alternative?
TC: Do you think Free Software will come to be a standard in the academic community, a niche market, or simple an alternative licensing model?
BN: For the above reasons, there will continue to be a range of licensing terms. People who get their academic kudos from producing generally useful libraries (e.g., FFTW) or who have been tasked (via grants, etc) with providing the community a product (e.g., FITSIO) will probably continue to release results as open source. Others, may not.
Of course the growth of things like the GSL, or FFTW which are GPL means that people will increasingly be forced to release as open source or not use GPLed libraries. If the project in my anecdote above had used qt and had distributed a binary (which, of course, they didn't anyway), I would have been able to just use it on the new project... whether one thinks it is 'fair' or not.
TC: George, what are your thoughts on this?
GS: Of course everyone has a right to choose how they will develop their software. If the software is being paid for by my government, however, I would hope it's being done in a free and open manner. People have to realize by now that many of these things will be rewritten in an open manner if they are too restrictive with their work.
|because charts are interesting...|
TC: Barth, for those interested in astrophysics, what kind of data will you be / are you plotting on kst for BLAST?
BN: We plot our time ordered data, both real time, and archival. So things like, detector time traces, instrument temperatures, gondola pointing sensor time traces etc, and power spectra of all of the above.
TC: In Planck, is kst used for anything more than orbit mechanics?
BN: I didn't know kst was used for orbit mechanics? Is it? The primary uses that I know of currently is to display bolometer detector data during the instrument integration and callibration.
TC: Barth, thank you very much for your answers and your time
BN: My pleasure