RTC sync for workspace / layouts

Hello! I’m interested in discussing whether there is interest or intent around enabling RTC collaboration for workspace layouts in JupyterLab. I opened RTC sync for workspace / layouts · Issue #135 · jupyterlab/rtc · GitHub to discuss but I realized that perhaps the issue is better housed in the jupyterlab/jupyterlab repo instead of jupyterlab/rtc. I figured I’d check here in Discourse before making any other issues :grinning_face_with_smiling_eyes:

If it was an opt-in it would be nice addition. It makes sense for some tutorials, but not in every situation (the same as sync of theme). I can see it as a both a great feature for the presenter who wants everyone to see a mirror of everything they do, and as an annoyance to a participant who wanted to go in their own pace and opened a next notebook, unknowingly disturbing the layout of everyone else. So maybe it should be opt-in on per-user basis (via two toggles: “sync my workspace to others”, “do not listen to workspace changes of others”)?

1 Like

Hey Mike, thanks for chiming in. Interesting points about use cases! Are you thinking about live in-person tutorials, or live online tutorials, or another interaction mode?

I was originally thinking about it in the context I’m familiar with, which is live online video classrooms with students going into breakout groups to do collaborative code exercises. There, it’s typical in our classes for students to interact on a shared document space (more or less pair- or mob- programming) and I could imagine a consistent shared UI being appropriate. It’s interesting to think about the more asynchronous modality where there’s the option of a disconnect between publishing and subscribing to layout changes.

Thinking about a general question that comes up during online collaboration of “do you see what I am seeing?” it may be important to clearly indicate whether the UI layout is in a shared mode versus non-shared mode.

I’ll think some more about this. Curious if other folks have other use cases for fully or partially sharing the UI layout in JupyterLab RTC.