mage: Fluid Moves Between Code and Graphical Work in Computational Notebooks
This addresses the need for more flexible tooling in data work, though it is incremental as it builds on existing notebook environments.
The paper tackled the problem of data workers needing to switch between code and graphical interfaces in computational notebooks by introducing mage, a new API that allows tools to represent themselves as both code and GUI, and they implemented six client tools based on feedback from nine professional practitioners.
We aim to increase the flexibility at which a data worker can choose the right tool for the job, regardless of whether the tool is a code library or an interactive graphical user interface (GUI). To achieve this flexibility, we extend computational notebooks with a new API mage, which supports tools that can represent themselves as both code and GUI as needed. We discuss the design of mage as well as design opportunities in the space of flexible code/GUI tools for data work. To understand tooling needs, we conduct a study with nine professional practitioners and elicit their feedback on mage and potential areas for flexible code/GUI tooling. We then implement six client tools for mage that illustrate the main themes of our study findings. Finally, we discuss open challenges in providing flexible code/GUI interactions for data workers.