Jupyter's configuration system
3,663 views · Published 10 October 2018 · 39:14 · Indexed 27 October 2026
Channel: O'Reilly · 2018 · Science & Technology
Afshin Darian (Two Sigma | Project Jupyter), M Pacer (Netflix), Min Ragan-Kelley (Simula Research Laboratory), Matthias Bussonnier (UC Berkeley BIDS) Jupyter’s straightforward, out-of-the-box experience has been important for its success in widespread adoption. But good defaults only go so far. Jupyter’s modular design and powerful, flexible configuration systems inspire users’ creativity and enthusiasm. By enabling people to customize their tools, Jupyter’s configuration systems allow people to determine their own computational destiny. However, with great power comes great fragility; the same config files that enable user freedom and empowerment are a potential source of user frustration and confusion. Because of how Jupyter’s configuration systems work, tracing down the source of a configuration issue can be an arduous task. Join Afshin Darian, M Pacer, Min Ragan-Kelley, and Matthias Bussonnier to go beyond the defaults and make Jupyter your own, focusing on Jupyter’s config systems—how to use them productively and how to debug them when things (inevitably) break. This is all the more important to do today, as the number and diversity of configuration systems is continuing to grow. For instance, Jupyter’s Python applications use the classic traitlets system, a versatile typed system that allows defining a common interface across CLIs, APIs, and configuration files, while JupyterLab introduces new configuration systems, as well as user-friendly interfaces for viewing and setting those configuration values. And managed deployments present their own challenges. Through concrete examples and demos, you’ll explore the ideas needed to use, understand, and debug Jupyter’s configuration system. Some topics will be demonstrations of JupyterLab UIs, while others will show the role of configuration across a number of Jupyter libraries, including nbconvert, the notebook server, JupyterLab LaTeX, and traitlets.config. Topics include: Jupyter’s Python-based configuration systems (via traitlets.config) How to set configuration settings on the command line, in configuration files, or in programmatic code (and why you’d want to) The many scopes of configuration and how to use them to your advantage What server extensions are and how to install, enable, and disable them How to build configurable API handlers and nonconfigurable API handlers that can still use configuration files How to use jupyter_conf_search to help you hunt down configuration issues JupyterLab’s configuration systems How to use themes How to set custom keybindings How to save and manipulate user sessions (i.e., JupyterLab workspaces) How to enable and disable labextensions JupyterLab’s hierarchical semantics for creating defaults and allowing overrides Subscribe to O'Reilly on YouTube: http://goo.gl/n3QSYi Follow O'Reilly on: Twitter: http://twitter.com/oreillymedia Facebook: http://facebook.com/OReilly Instagram: https://www.instagram.com/oreillymedia LinkedIn: https://www.linkedin.com/company-beta/8459/
More from this channel
-
5:27
"The Worlds of Software and Hardware are Converging", Joi Ito and Jon Bruner
-
5:55
"Why Designers Must Understand Manufacturing", Joi Ito and Jon Bruner
-
2:24
Fluent Conference 2014: JavaScript & Beyond Complete Video Compilation
-
1:08:43
Detailed Look at Pandas' Indexes - O'Reilly Webcasts
-
50:19
The End of the Analytics Black Box - O'Reilly Webcast
-
1:03:17
Solid Conference Panel (Connected Meetup 2014)
-
2:36
Interview with Ben Jacobs of Whistle (Dog Monitor Device)
-
1:10:49
My Dog Ate My Slides: Overcoming Tough Presentations - O'Reilly Webcast