Astronomy at PyCon US 2011
The PyCon 2011 Atlanta conference featured several talks on the use of Python in science, engineering, and data analysis. Two of the talks were related to astronomy.
Maciej Fijalkowski, one of the developer of PyPy, works at SKA South Africa and he talked about how SKA South Africa is using Python for the day to day functioning of the KAT7 array at Karroo. The KAT7 array is a prototype for the MeerKAT array, which in turn is a precursor for the SKA.
Some of the tasks for which they use Python are:
- A simulator for the entire telescope system.
- Checking status of telescope instruments.
- Checking weather status.
- Pointing the telescope (from an iPython prompt!).
- Introspect features of an antenna.
According to him the system will scale to 1000s of antennas, which is the aim of SKA. The project has already released portions of the code base under open source license (links at the bottom of this URL).
Michael Sims from NASA AMES gave a talk on his experience in using Python for designing an automation system for the Mars Exploration Rovers. Among many other roles at NASA, he is a co-investigator on the Mars Exploration Rovers project, and is part of the science team and the operations team for the rovers.
The system he designed is called AutoPUL: Auto Payload Uplink Lead. This system was designed to generate a set of "commands" for the operations of the on-board cameras, deliver these commands to the rovers, create web pages as reports, and for many other operations. AutoPUL, and other automated components, reduced the time needed for generating these commands from 8-12 hours to about 15 minutes.
Based on his experience in building AutoPUL, he mentions the following as the pros and cons of Python:
- Maintenance has been mostly trivial, with one exception. Bugs were small in number, approximately 1 per year, and gets fixed in an hour or so.
- Python is good at interacting with the operating system.
- https (urllib2) processing was problematic.
According to him the utility of Python comes from the way it saves programmer's time, the correctness of programs due to the its' simplicity, its' robustness, and facilities for user interactions. He points out that optimization for execution speed is done only when it becomes an issue.
He concludes with the following observations:
"Python for me is a tool for creating sculptures of interaction. It is not particularly interesting in and of itself. A sculptor's clay. Overall, I'm amazingly pleased at what I can easily build with Python."
As a bonus, the video shows a great virtual reality simulation, starting at 24:40!
In addition to the two talks, Miguel de Val-Borro mentions that he has a poster on Herschel data reduction and visualization using Python tools.