Gemini Data Reductions - Saving Legacy Software With The Cloud
2023-11-07 , Talks

This version of the software has been deprecated - a phrase that has struck fear into the heart of every user. Naturally, scientific endeavours move at a slower pace than does software development. Moreover, research software development efforts are historically woefully underfunded, which is especially true for code modernization projects. And so, it is inevitable that every scientist will eventually be faced with having to install legacy software on modern platforms. The successful build of iraf from scratch on a modern linux machine need not be a right of passage. The data reduction software platforms of even modern facilities such as the Gemini telescopes rely on software that has been deprecated for so long that installation on some popular modern platforms is impossible. Some technological developments however, can greatly alleviate this problem. With the advent of software containers, even the most obsolete of software can be made to work without too much hassle, and even enable new compute capabilities not previously available with legacy systems. The Gemini team is undergoing the herculean effort of converting the most used iraf reduction routines into a modern python environment, though support for some legacy instruments is not planned. In the interim, the popularity of OSX means that many Gemini users cannot use the Gemini-provided tools to reduce their data. In this presentation I will discuss my use of Docker to provide an environment which contains many generations of the Gemini software stack. With the choice of an appropriate OS, installation of all three versions of the Gemini software stack – iraf, Dragons, and Dragons 3 – was a relatively painless process. Beyond the ability to launch otherwise incompatible software, the resulting container has the notable advantage of being usable in the cloud; I will demonstrate the use of the Gemini Docker container on the Canadian Advanced Network for Astronomical Research (CANFAR), accessible by the entire Canadian astronomical community. In this presentation I will advocate for the use of compute environments that utilize software containers over software environments that are common to all users like the Rubin Science Platform. A container-based environment can provide flexibility and access to critical and common pieces of legacy software that would otherwise be impossible to maintain on common software platforms. Moreover, with a small amount of education, the burden of maintenance does not solely fall on a small underfunded development team, but can largely be shouldered by the more abundant power users, like it is on CANFAR.