TAC Portal – T. Reichardt

I began my internship at ADACS in September 2019, shortly after the submission of my PhD thesis. Given that I had been using Python and Fortran for my research over the previous 4 years, I was looking forward to applying my knowledge and expanding my skills with a project at ADACS. Given the flexible nature of the internship, I was initially unsure of exactly what the work would entail.

To start with I was set the task of learning about Django, an open-source Python web framework commonly used for the creation of database-driven websites. I was then assigned to work on the Time Assignment Committee (TAC) portal (or proposal management system), which is the website through which ADACS can send out a call for proposals that researchers can respond to, applying for software support or supercomputer time.

There was a long list of tasks to undertake to improve the TAC portal. To test the waters, my first improvement was to prevent users who were registered with their Australian Access Federation (AAF) credentials from being able to reset their passwords from our site, as this should be handled externally. Though this was slightly more difficult than initially expected, it didn’t take long before I was submitting my first pull request. My first genuine contribution to the project!

The frontend of the website was written with React (a common JavaScript library for creating user interfaces). Being inexperienced with JavaScript in general, I had to learn a lot to be effective. At this point, I was more comfortable and learning quickly. I spent the next few weeks fixing several small issues and implementing features requested by the user base, such as splitting the list of call for proposals into open and closed calls. I had to learn how to use the Django REST Framework to provide these separate lists of calls.

As the proposals submitted by each researcher are scored, it is necessary to be able to easily compare all of the scores and comments for proposals from the same call. My final task during the internship was to be able to download the score and comment summaries from the website in a format which could be easily read by the committees in charge of evaluating the proposals.

I definitely felt like the work that I did contributed in a meaningful way to ADACS. Furthermore, very little of the work I was doing had been familiar to me before the internship. Everything I learnt was new! I certainly gained a lot of knowledge to do with creating database-driven websites, and I have continued my work in this domain. While there is still much to be understood, the skills I have acquired are proving to be very valuable.

– Thomas Reichhardt