Hacker News new | ask | show | jobs
by DandyDev 535 days ago
Honest question: what is not modern about JupyterLab? I know JupyterLab has existed for a long time, but continuous development has kept it modern.
2 comments

My take:

- The UI is over bloated and bugged, sometimes things scroll, sometimes they don't, sometimes you have to refresh the page. You cannot easily change the UI as lots of CSS parts have hard coded fixed sizes.

- The settings are all over the place, from py files in ~/.jupyter to ini files to auto generated command line parameters.

- The overall architecture is monolithic and hard to break down, jupyter proxy is a good example of the hacks you have to go to to reuse parts of jupyter

- The front end technology (Lumino) is ad hoc and cannot be reused, I had to write my own react components basically reimplementing the whole protocol, come on its 2025.

- The whole automation around nbconvert is error prone and fragile

This is mixing quite a few different things (backend, frontend, auxiliary CLI utilities).

No time to write a lengthy reply here, but I think it's worth separating legitimate like-for-like comparison with a wider feeling on the ecosystem.

The need to start the server is really annoying. Especially when you have notebooks in multiple places, or multiple virtual envs.

This is why I moved to working with Jupyter notebooks in VS Code, there is no server to manually start.

Vscode will start the server for you, in practice. This is great if you just want to get going. It gives you a bit less flexibility though, if you want to do something fancy.

Vscode can also connect to existing servers. This can be very useful. For instance, you can put a ton of data and CPU in a server and work with vscode on a small laptop. If network latency is low enough, this works great.