One of the things most people complain about notebooks is the order of cells execution. I was wondering what was the feeling of the community/contributors about this - I imagine this is a very long-term feature to implement. Inspiration could be drawn from people at hex (who just released the version 2.0) or Pluto in Julia.
There is some exploration in this direction:
- by @davidbrochart in reactive akernel GitHub - davidbrochart/akernel: Asynchronous, reactive Python Jupyter kernel. (see Jupyter Community Call - August 31, 2021 - YouTube)
- discussion in notebook repo: Cell dependency graph · Issue #1175 · jupyter/notebook · GitHub
- was also brought up in January on jupyterlab meeting: Weekly Dev Meetings: Jan-Jul 2021 · Issue #117 · jupyterlab/team-compass · GitHub, there are links to older exploration projects in there
- one more: Discussion on implementing directed acyclic graph-like structure in notebooks · Issue #118 · jupyterlab/team-compass · GitHub
Thanks Michal! I know this has pros and cons of course - say you update the grid for hyperparameter search: this will trigger cross validation again. Of course, in most of these DAG notebooks there are ways to switch this off - I guest most of the work for this feature would be providing a pleasant an functional UI. This seems more of a thing for JupyterLab 5, while it would be better to focus on things like inline variable insertion.
Maybe that is one of the reasons why other implementations of observable notebooks are based on extra kernels?
- Cell dependency graph · Issue #1175 · jupyter/notebook · GitHub
- Noob: Can you run your own Observable server - #37 by stefaneidelloth - Community Help - The Observable Forum
- An Unofficial ObservableHQ Compiler 💻 / Alex Garcia / Observable