Building bridges between software ecosystems: Parselmouth, a Python interface for Praat - Jadoul, Yannick (The Journal of the Acoustical Society of America, 2020)
The value of software depends on more than just the intrinsic quality of the algorithms it implements. In order to be useful, existing software needs to be combinable with functionality in other software libraries. In particular, this holds for research software: modularity and the ability to be integrated in prominent existing software ecosystems are key to correct and easy reuse. Over the last few years, I have created Parselmouth, a Python library for Praat, a software package widely used in speech science. Compared to previous projects offering a thin interface to Praat, Parselmouth's goal is to provide a full-fledged Python library that integrates efficiently into the larger Python ecosystem. In this talk, I will briefly demonstrate Parselmouth and its functionality, then discuss the motivation to create Parselmouth, what different goals had to be considered, and why I believe the current solution strikes a desirable tradeoff between these conflicting goals. Moreover, after working out a technical solution, another important aspect is documenting, distributing, and publicizing the new software package, especially for the wildly varying user base of Praat. While Parselmouth still has a long way to go here, I will also give an overview of how I have approached these aspects.