Introduction and Background
Luis Ibáñez, Matt McCormick, Jean-Christophe Fillion-Robin, and Aashish Chaudhary attended the Scientific Computing with Python (SciPy) 2014 conference in Austin, Texas, between July 6th – July 12th. This year’s conference was again the largest ever, with registration reaching its cap at over 450 attendants, a 50% increase over last year. The main conference was extended from two to three days, and it was again preceded by two days of tutorials and followed by two days of sprints.
Themes of this year’s conference were Geospatial Data in Science Track and Scientific Computing in Education. There was also general scientific Python content in addition to the domain specific mini-symposia.
Kitware was activily involved in the conference. Not only was Kitware a sponsor, but Luis, Matt, JC, and Aashish taught a tutorial on "Reproducible Science – Walking the Walk." In addition, Matt was a Birds of a Feather (BoF) Committee Chair, on the Program Committee, and Chair of the Vision, Visualization, and Imaging Mini-Symposium. JC presented a poster on CMake-ified CPython, and Aashish presented a talk on ClimatePipes and OpenClimateGIS, as well as a poster on UVis. Matt and Luis were co-authors on a SimpleITK talk. We also participated in BoF sessions, the software sustainability workshop, and sprints.
Luis, Matt, JC, and Aashish taught a tutorial on Reproducible Science – Walking the Walk. We co-taught the tutorial with Ana Nelson from dexy and Steve Smith from GitHub. The hands-on tutorial focused on training reproducible research warriors on the practices and tools that make experimental verification possible with an end-to-end data analysis workflow. Also, the the tutorial exposed attendees to open science methods during data gathering, storage, and analysis up to publication into a reproducible article.
In honor of one of the historical reproducible research participants, Antonie van Leeuwenhoek, we started by collecting images of tardigrades by transforming participants’ cellphones into microscopes with a drop of water. These lovable creatures, invisible to the naked eye, were discovered after magnified.
The images collected were uploaded to an open access data sharing service, and an exercise on how to retrieve the images via a REST API was completed via IPython Notebook. Next, we discussed how to set up a reproducible computation environment and a Docker image to analyze the images. The images were processed with IPython Notebooks and SimpleITK, and best coding practices were addressed such as methods for code re-usability. Next, version control via Git and GitHub and unique identifiers were discussed. The versioned scripts were instrumented with regression tests, and participants ran the example repository test suite. The data and analysis results were integrated into a narrative via the literate programming tool, Dexy, and the Docker container. Finally, the entire work was submitted to an open science publication, the Insight Journal.
Tardigarde (above moss clump) uncovered by a cell phone camera microscope.
We had over 60 enthusiastic participants, who worked in pairs. Following the tutorial, we had lunch with Fernando Perez and Brian Granger, of IPython fame, who gave us some great feedback. We published the tutorial repository on Zenodo to obtain a citable DOI for our work, which includes links to supplemental material including the website, videos, and data.
Full house of participants at the reproducible research tutorial.
We also attend excellent tutorials covering topics like the new interactive widgets in the IPython notebook and teaching techniques with the IPython notebook. All tutorials have videos online and most have GitHub repositories where their material is hosted.