Pynblint: a Static Analyzer for Python Jupyter Notebooks
Jupyter Notebook is the tool of choice of many data scientists in the early
stages of ML workflows. The notebook format, however, has been criticized for
inducing bad programming practices; indeed, researchers have already shown that
open-source repositories are inundated by poor-quality notebooks. Low-quality
output from the prototypical stages of ML workflows constitutes a clear
bottleneck towards the productization of ML models. To foster the creation of
better notebooks, we developed Pynblint, a static analyzer for Jupyter
notebooks written in Python. The tool checks the compliance of notebooks (and
surrounding repositories) with a set of empirically validated best practices
and provides targeted recommendations when violations are detected.