marp | theme | paginate |
---|---|---|
true |
default |
true |
- Compose
- Submit
- Run
- Output
- View
- Repeat
- The terminal is a user interface!
- Challenges:
- No narrative
- No memory
- No reproducibility and communication
- Maintain full interactive computing workflow
- Adds:
- narrative
- memory
- repoducibility
- communication
- Millions of users
- Millions of notebooks on GitHub
- Heavily used in data, science, education, finance...
- Client / Server Architecture
- Standard file format
- Kernels for execution
- Messaging in Jupyter: https://jupyter-client.readthedocs.io/en/stable/messaging.html
- Frontends and kernels speak the same protocol
- Released in 2015 as a successor to the IPython Notebook
- Built with jQuery, RequireJS, Bootstrap
- Next Gen Notebook Interface (and more)
- Extensible Computing Environment
- Built on modern web technologies
- Very few maintainers, very little time
- But new issues were still coming up on the
jupyter/notebook
repository, but rarely got any replies - New weekly meeting to triage issues
- [DISCUSS] How to improve supportability of the repo? jupyter/notebook#5360
- Simplicity is a feature (less is more)
- Still lots of users of the Classic Notebook, especially in education
- Document-centric interface helps remove the noise and focus on the content
- The "tabs-in-tabs" can be confusing (the web browser already has tabs)
- The Classic Notebook has been unmaintained for years
- It was very difficult to extend and make different extensions co-exist
- Built on "old" web technologies (jQuery)
- And still a lot of people using it!
- "Build Jupyter Notebook v7 off of JupyterLab components"
- Merged on Dec 24, 2021
- https://jupyter.org/enhancement-proposals/79-notebook-v7/notebook-v7.html
- Started end of 2020
- https://github.com/jupyterlab/retrolab
- Built with JupyterLab components and extensions
- But keep the Classic Notebook look and feel
- "RetroLab running on Jupyter Server will be the basis for Notebook v7."
- 🧪 Many coming from JupyterLab automatically
- 🧩 Mime extensions
- 🐛 Debugger
- 📁 Accessibility (CodeMirror 6)
- 🎨 Theming and Dark Mode
- 📑 Built-in Table of Contents
- 💡 Can be used in JupyterLite
- 👥 Real Time Colaboration (demo)
- Locally: http://localhost:8888/tree
- Try it on Binder:
- What about popular extensions like RISE and nbgrader?
- Most JupyterLab extensions are compatible with Notebook 7
- Popular Classic Notebook extensions have been ported to JupyterLab 4 / Notebook 7
- https://jupyterlab-contrib.github.io/extensions.html
- https://jupyterlab-contrib.github.io/migrate_from_classical.html
- JupyterLab 4, Notebook 7 and NBClassic 1 can be used together on the same Jupyter Server (demo)
- Migration guide available in the documentation:
- https://jupyter-notebook.readthedocs.io/en/latest/migrate_to_notebook7.html
- Describes several scenarios for running both the Classic Notebook and Notebook 7 on the same server
- NBclassic and Notebook 6.5.x show a banner to encourage users to migrate to Notebook 7
- Jupyter Notebook
7.0.0b0
is available - Install it with
pip
:pip install --pre notebook
- Install it with
conda
:conda install -c conda-forge/label/notebook_beta notebook
- Please test and report issues and feedback!
- Notebook 7 is being developed in https://github.com/jupyter/notebook (
main
branch) - The Classic Notebook UI has been moved to https://github.com/jupyter/nbclassic
- Notebook 6.5.x (security patches only) in https://github.com/jupyter/notebook/tree/6.5.x
- Blog post about Notebook 7 and the Migration Guides
- Notebook 7 Release Candidates
- JupyterLab 4 final release expected for JupyterCon 2023 early May 2023
- Notebook 7 final release expected after JupyterLab 4 (date TBC)
- If you are a user of the Classic Notebook and have concerns, please reach out!
- Please test the JupyterLab 4 and Notebook 7 betas and give feedback 🙏
- Report issues and feedback on the Notebook repository: https://github.com/jupyter/notebook/issues
- Start discussions on the Jupyter Discourse: https://discourse.jupyter.org
Special thanks to the Notebook Team and the authors of the JEP:
Eric Charles, Sylvain Corlay, Afshin Darian, Sharan Foga, Eric Gentry, Kevin Goldsmith, Brian Granger, Jason Grout, Fernando Pérez, Zach Sailer, Rosio Reyes, Jeremy Tuloup
And to the broader Jupyter Community!
You can find the slides on GitHub: