Meet ODI Code Fellow Stephen Fortune
Stephen Fortune tells us a bit about his journey from ODI Labs intern to code fellow, how embracing the 'developer's mindset' and collaborative maintenance helps him look after the ODI Toolbox and how he'd like the community to pitch in
Who am I and why am I here?
I’m Stephen Fortune, the inaugural ODI Code Fellow, here with the goal of supporting and developing the ODI Toolbox – a suite of open source software applications that enable publication, assessment of and collaboration on open data – until October 2017. I’m pursuing a PhD studying the personal data practices of self-trackers. My Doctoral Training Centre – CHASE – is funding my fellowship as part of their industrial placement programme, which was established to showcase the skills and expertise that arts and humanities researchers can bring to organisations across sectors. It also offers researchers insights into the various career options available outside of the academy.
I see my current stint with the ODI as the latest chapter in my longstanding exploration of how we interact with data technologies of all kinds – a shaggy dog tale that’s previously featured intervals of tech reporting and bioart experiments, consistently guided by the value I see in the enquiring work of digital artists.
This is as good a point as any to express my gratitude for my first experience with the ODI. When I first came to the ODI in 2015 I had never been part of a software development team. Developing code in that environment is very different to the type of coding I’d done before in digital art projects, and I’m grateful for the education they gave me.
The role I initially applied for has changed somewhat from the role I am now working in. I’d like to introduce the ODI Toolbox to you by expanding that backstory.
How I joined the ODI, from intern to code fellow
Back in the Summer of 2015 I was one of three interns who worked with the ODI Labs Team. During that period, I contributed to CSVlint, a continuous validation service for tabular data, and Comma Chameleon, a desktop editor for CSVs powered by Electron. Comma Chameleon (unlike the other interns I was old enough to get the pun) was a prototype that developed out of the Lab Team’s use of Innovation Week software sprints. Labs used these sprints to spin up MVP provocations that addressed gaps they saw in the open data software ecosystem.
Tabular data tools and the unique development culture characterised my first stint with ODI Labs. When I returned to the ODI as its code fellow, I found two additions to ODI Labs’ prototypes: Octopub and Bothan – the latter an API for time-series data. Open Data Certificates and Open Data Pathway had both graduated to mature ODI data assessment services, and members of the brilliant ODI Labs team had moved onto new ventures. That left the ODI Toolbox in need of both maintenance and contributors to help it grow, which is an exciting challenge.
When I returned to my doctoral work after my internship with ODI Labs in Autumn 2015 I approached research software (such as nvivo and reference management software) needed to support my scholarship differently, thanks in a large part to the ODI Labs philosophy. I believe the question of how non-proprietary software is sustained is one that any serious digital culture scholar has to reckon with. Addressing the needs of the ODI Toolbox gives me unrivalled insight into just that question.
What I’m working on
My role here has two halves: the first is to maintain the toolbox suite, the second is to grow the community around it. Three months in, the second half is coming into sharper focus.
I’ve had to approach ODI Toolbox with familiar yet fresh eyes, reacquainting with the developer’s mindset, having been out of software development for nearly a year. I’ve been mostly making additions to Bothan, Octopub, Pathway and CSVlint. It’s been refreshing to get back into the rhythm of test-driven development and incremental, well-composed, additions to an open source codebase.
This gradual reacquaintance has had tangible benefits. Everything required to get each one of the tools up and running for local development is now documented in their respective repositories READMEs. Furthermore, this process has fed into a Contributor's Guide for the overall toolbox. Our global network has pitched in too – Stephen Gates and Matthew Mulholland from our ODI Queensland node providing sage advice on how to use labels for managing issues in the toolbox. ODI Queensland have also been busy thinking through future directions for Comma Chameleon; more on that to come but if you’d like a sneak peek of their ideas then check this out. My former colleague Stuart Harrison has provided us with excellent guidance for the two recent additions to the toolbox: Bothan and Octopub. If you’ve ever wanted to build a data-driven dashboard or get started with publishing open data, you should check them out.
Before working on my thesis saw my coding skills get a little rusty, our former Head of Labs James Smith pointed me towards several sites for contributing to code bases such as up-for-grabs. Up-for-grabs is a site where people new to programming can contribute to open source software projects and develop their skills while incrementally improving open source software products. Those sites pointed out the open source contributor ecosystem, which is where I am now attempting to move the ODI Toolbox into.
While this is the biggest draw of this ODI Code Fellowship, it’s also completely new terrain for me. So I can think of no better way to wrap up this update than to ask for your help!
How you can help
James often spoke of ‘building with’ the software ecosystem. That philosophy is exemplified in CSVlint, a ruby gem which anyone can include in their ruby project and which powers the CSVLint.io, Comma Chameleon and Octopub applications. As a set of applications the toolbox is the living legacy of that spirit – a suite of experiments that either address gaps in open data software or serve as provocations for how those gaps might be filled. We’d love to hear of others who are filling those gaps in different ways, so we can learn from them, point to them and use them in our own tools.
We are also keen for people to contribute to what we’ve already done to make each tool better. Our contributors guide is live and soon to be embedded into each of the tool’s github repositories. The ODI Labs blog has been given a lick of varnish, so you can read more about the history of ODI R&D over there. Our public roadmap is also live, offering an overview of potential new features or improvements to each of the tools. I’ll be blogging about my experience and posting regular updates on the process on my personal blog.
Stephen Fortune is ODI Code Fellow. Follow @stephenfortune on Twitter.