No Project Scope Survives Contact with Users
2026-04-26 , Barn

Sometimes we set out to create a project with clearly defined scope, with the best of intentions for maintainability, usability, and clarity. Then, if we’re lucky, users show up and want to do something else. It starts small - a feature here, an edge case there. How do we navigate ‘scope creep’ in open source projects and the tension between what we set out to build, what we can competently maintain, and what users actually want? Told through the history of JupyterHub, a project for hosting Jupyter notebook servers targeted explicitly at small single-machine groups, which is now used routinely to serve thousands of students and researchers; something which was explicitly and deliberately out of scope for the project from day 1. But users want what they want.

Min is a co-founder of Project Jupyter, and contributor to the Jupyter project since 2006 (when it was all under IPython). Min got his PhD in computational plasma physics at UC Berkeley, while working on Jupyter on the side. Since 2013, working on Jupyter in some form or other has been most of his job. Min co-created and currently leads the JupyterHub project, starting in 2014. Min just returned to the Berkeley Institute for Data Science (BIDS) to work on JupyterHub after 10 years in Norway at Simula Research Laboratory. Min contributes to Conda-Forge and various Jupyter subprojects, along with scattered open source work.