By Mark Woodbridge, Bioinformatics Support Service, Imperial College London.
This year will mark my tenth anniversary as a software developer, most of which I have spent in academia. I started out developing a web application in Java using Eclipse on Linux. This much hasn’t changed, despite the rise of Android, NoSQL, HTML5, DVCS and many other technologies and tools. Neither have the basic principles of software architecture, testing, and usability. So I’m lucky that I was encouraged to pick up good habits at the start of my career.
But there have been other invariants. I’m still not sure whether I’m really a post-doc or a member of staff, whether I’m a researcher, an engineer or a programmer, and how my career should develop accordingly. As a computer scientist, I still often feel completely unqualified to communicate effectively with specialists in the department in which I work. And I still do a bad job of explaining my job to friends and family, who assume that all IT people in universities either lecture on programming or fix computers.
Initiatives such as the Software Sustainability Institute and DevCSI (thanks to JISC and the EPSRC) cannot by themselves solve these problems, but they can make a huge difference not only in pursuing their stated goals (such as promoting best practice, building communities around software and promoting the use of local developers) but, as part of this process, providing developers with the tools and resources necessary to advance their own work and careers. This must involve taking the initiative and proving to their institutions that they can cost-effectively develop flexible, high-quality software that exceeds users’ expectations. Having achieved this, the results must be shared and promoted to build a positive feedback loop that inspires more faith from universities and funding bodies.
The Collaborations Workshop, which I attended with the generous support of the DevCSI project, is a unique event in providing a discussion forum for all these issues. It’s a developer event that importantly isn’t a hackfest – instead its objective is to encourage collaborative funding applications. However, for me it was about meeting people (invariably experienced, knowledgeable and inspiring) and finding that they struggle with the same things, namely job security, promoting their software, keeping up to date and getting recognition. And I think the best thing we can do, in the spirit of the workshop, is at least try to form longstanding, informal collaborations where we begin to work on solutions to these issues.
For me, the foundation of these collaborations are built through discussion (and some serendipity), and the best way to enable this is by getting people together with diverse backgrounds but the same interests, and to let them set the agenda. This was definitely the case in Oxford. The collaborative ideas and break-out sessions were the perfect format: the Five Important Things list generated by the groups should be valuable to anyone working on academic software, and the lightning talks slides are a really interesting snapshot of the varied research and backgrounds of the attendees. This is the best reason for attending again next year – the workshop provides an opportunity to learn a huge amount in a very short time about relevant projects, technologies, initiatives, and, most importantly, other developers. This is the knowledge that enables developers to work more productively and justify their role in enabling and supporting research in academia and beyond.