Every three months or so I get really annoyed about Jupyter Notebook being so limited, and I usually spend half a day browsing alternatives like Spyder, PyCharm and Rodeo. Usually my search phrase is “Rstudio for python”, but wasting half a day or more I still end up with jupyter notebook. Although many good alternatives, the fact that you can work in the browser directly on the server makes it very simple to set up.

The last two weeks I have been testing out jupyter lab as a substitute for jupyter notebook for development work. Jupyter lab comes from the jupyter team, and is currently in their “Very early developer preview Alpha”, whatever that means. I have mainly used the notebook part of it, and that works more or less the same as jupyter notebook. Except for changing the locations of some buttons, jupyter lab does not (even in very early preview alpha) limit the use for a normal notebook user.

However, they have taken it much closer to an IDE by including tabs, window locations, a shell and a text editor. By doing that, it is actually possible to develop in a .py file and simultaneously run the code in a console. This is much closer to what my beloved Rstudio does for R, and is highly appreciated.

The main thing I feel is missing is all the keyboard shortcuts.

  • A Ctrl+Enter to execute a selected code block in the .py file onto the console is my main loss.
  • Also, I find myself reorganising the tabs all the time. Shortcuts to arrange the different tabs in different ways like ShiftIt would speed up development.

Of course, I do not hold grudge against the team since they are only in its early preview developer alpha stage. I look forward to the time they move from “very early developer preview alpha” to just “early developer preview alpha”!