Recently I had the great pleasure of attending the SciPy 2016 conference. SciPy is an annual conference focused on the use of the Python programming language for scientific applications. The conference program consists of two days of tutorials, three days of presentations, and a final two days of code sprints.
During the tutorials, I spent my time at the two-day Software Carpentry Instructor Training Workshop. I learned a great many tips and techniques (based on peer-reviewed literature) to improve my teaching in our Python workshops. This is also the first step towards becoming a certified instructor for Software Carpentry. I feel like our workshops will really benefit from these tips, and I cannot wait to be able to start putting them into practice in Unidata’s Annual Python Training Workshop this fall.
The conference program itself had a plethora of interesting talks, both demonstrating new technology broadly applicable to scientific Python applications and showing how people from various science domains are applying Python to their own problems. Fortunately, all of the talks and tutorials are recorded and uploaded to YouTube for your own viewing pleasure: SciPy 2016 YouTube Playlist (As of 7/19 some recordings are still being uploaded.) My personal highlights include:
A demonstration of JupyterLab, the next incarnation of the Jupyter web-browser based interface: JupyterLab Building Blocks for Interactive Computing
A talk on the use of Python, Jupyter Notebooks, and a few more tools to create electronic teaching resources for geophysics: Using Open Source Tools to Refactor Geoscience Education
Nbdime looks like it could vastly simplify the process of diffing and merging Jupyter notebooks — really important as we put more notebooks up on GitHub: Diffing and Merging Jupyter Notebooks with nbdime
I also presented on my own work setting up automated infrastructure for MetPy (under the provacative title “Bootstrapping an Open Source Library: How MetPy Got Up and Running with Lazy Developers”), and I was very pleased with how it went: Bootstrapping an Open Source Library
The last part of the conference was the code sprints, and as always it was by far my favorite part. For those not acquainted with the term “sprint” in this context, a code sprint is an event where you have a bunch of developers in the same room, presenting the opportunity to work together and quickly advance a project in some way. These are great times for various community projects to fix issues and improve the project, or at a conference like SciPy, they are an opportunity for projects to gain new developers. The best part is that the projects are very welcoming and always interested in helping spin new developers up on how to contribute, regardless of experience. For MetPy, we had three people (including myself) working on advancing the project; I look forward to being able to include those contributions in future releases, and hope the people who joined in at SciPy contribute more to MetPy in the future.
Overall, SciPy is always the highlight of my professional calendar in any given year. It’s an opportunity to meet and interact with other members of the scientific Python community, many of whom have written code that I rely upon. I never fail to come away with new tools to try, as well as learning bits and pieces that make me a better programmer. I encourage anyone interested in using Python for science to attend, regardless of how much or how little you know; beginners are absolutely welcome, and I promise that even the most seasoned Python veteran will come away with something. The next SciPy conference will be 10-16 July 2017, so mark your calendars now. I hope to see you there!