Benefits of the classic UI and use cases for classic over JupyterLab (Was: Why is Tim not moving to lab?)

I want to pitch in some UI/UIX improvement ideas as someone who has set-up JupyterHub + JupyterLab for the Data Scientists and non-technical users (low on Python coding experience).

  • Add to the GUI toolbar:
    • “Move selected cells up/down”: ,
    • A drop-down arrow ˅ next to the + which enables options like “Insert (e.g. Markdown) cell above”: Especially helpful if there is no “Move cell up” button
    • Keyboard Icon in toolbar that opens “commands” which only shows “notebook cell operations” (pre-entered in search bar).
    • Add shortcut text behind the name or in de tool tip: Prevents the need of any tutorial or someone telling you, you can use “shift+enter” to run a cell. Take a look at Blender for inspiration.
  • Create a natural learning curve to go from “beginner that uses interface buttons” to “shortcut expert of often used function” design narrative. For every GUI change, think of how it can help beginners grow, while not impairing advance users.

Blender user interface

Take a look at Blender 3D creation suite (https://www.blender.org/) for insights how to create an UX/UI experience that caters to beginners and professionals alike. With v2.79 to v2.80 they went from a “program for the poor student and hobbyist 3D modeller”, to “we take over Maya and other industry giants while staying open source and free” (and even getting big companies to invest in them).

A big reason for this new success is their redesign of the interface (13:28): https://www.youtube.com/watch?v=MyxWDHy4ppY

  • It would be great to have a full interactive experience (graphs and sliders, maybe in combination with Panel Pyviz (cannot add more than 2 links)) without showing any code. I know this is already somewhat possible, but not so straightforward. The use-case would be that Data Scientist need only to make minimal changes, which than can be shown to less technical people who still want some data insights through a GUI, but are afraid of lots of code (also useful for mobile access, as mentioned by @betatim above).
  • Make a notebook read-only. When I had to set it up months ago, I achieved this by setting Unix permissions to not allow “write”. Not sure if anything changed already?
  • Show an error if a user presses “ctrl+s”, but it cannot be saved (e.g. due to permission errors).
7 Likes