Building bridges between software ecosystems: Parselmouth, a Python interface for Praat

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 int...

Full description

Saved in:
Bibliographic Details
Published inThe Journal of the Acoustical Society of America Vol. 148; no. 4; p. 2791
Main Author Jadoul, Yannick
Format Journal Article
LanguageEnglish
Published 01.10.2020
Online AccessGet full text
ISSN0001-4966
1520-8524
DOI10.1121/1.5147768

Cover

More Information
Summary: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.
ISSN:0001-4966
1520-8524
DOI:10.1121/1.5147768