So, in summary, with JupyterHub we have an installation of Jupyter that will maintain a separate instance of the Jupyter software for each user and thereby avoid any collision on variable values. The software knows whether to instantiate a new instance of Jupyter since the user logs in to the application and the system maintains a user list.