2i2c-org / features

Temporary location for feature requests sent to 2i2c
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Plan for Real Time Collaboration roll out #19

Open colliand opened 1 year ago

colliand commented 1 year ago

Context

The recent release of JupyterLab 3.6.1 may offer a stable and relatively bug-free real-time collaboration (RTC) feature. RTC is frequently requested and will have applications in the research and education communities that 2i2c serves.

Following guidance on a related discussion in Slack, I've created this issue so that we can focus on next steps.

Proposal

Channeling some of the discussion from Slack, here are some proposed next steps:

  1. Determine if RTC is really ready for wider deployment?
    • A suggestion from @yuvipanda was to have @fperez test out the feature set in stat159.
    • Another possibility is to try it out in CryoCloud or another hub in a time-boxed scenario.
  2. Prepare for the roll-out
    • What documentation do we need on RTC?
    • Can we identify the most impactful scenarios where RTC may help communities advance? Improve science and education?

Updates and actions

Who should own this issue and guide 2i2c toward a deployment of RTC features across our hubs?

What's the natural time frame here? Can we complete experimentation and aim for launching RTC widely over Summer 2023?

jmunroe commented 1 year ago

Is JupyterLab RTC a feature purely of the image or is there something in configuration of JupyterHub / k8s that would also need to be set up?

If it is a part of JupyterLab itself, I see that primarily as a decision for each hub admin team to make based on its own needs as opposed to something we roll out widely.

I agree that RTC has been a frequently request feature but I am not yet clear on the way it would work in a research scenario.

The use case is much clearer for me in education context: allowing an instructor/TA to "join-in" on a student's notebook in real time.

I'll try and get this new version of JupyterLab deploy on researchdelight so that we can explore it more internally.

fperez commented 1 year ago

Funny you should ask @jmunroe :) This comment by @ryanlovett describes the (small) config changes in the server needed to kick it off.

We just merged that PR thanks to Ryan's fixes. I'm doing some light testing of just 3.6.1 and the new mystjs stuff in isolation. If things go smoothly now, we'll activate the startup flag and I will begin testing it with my stat159 students this week.

This semester will be a good place to test that out, and I'm happy to keep reporting on how things go. Folks can look at our campus datahub repo for any issues and we can share info back and forth between the teams.

fperez commented 1 year ago

I'll update how I imagine this going on in Berkeley in a later post on our campus repo, but the timeline I have in mind is that, if my spring'23 stat159 experiment goes well, then we could test (assuming a summer instructor is up for it) with the summer session of Data 100 on campus, which has typically a few hundred students (I have ~70 in stat159). If that goes well, then I'm willing to run a larger test in the fall with Data 100 (~1,200 people). At that point, we can then consider a potential campus-wide rollout for spring'24, which would reach O(10,000) people.

I see this as a reasonable staggered testing path/rollout, but ultimately that would need to be discussed with the Berkeley team in charge. For now consider this only as my personal ideas, that don't commit anyone to anything :)

rebeccaringuette commented 12 months ago

Is this effort now focusing on the 4.0.x version of JupyterLab? And will it include the jupyter-collaboration feature? related discussion on slack Jupyter collaboration Jupyter 4.0

yuvipanda commented 4 months ago

Tracked in productboard: https://2i2c.productboard.com/feature-board/7803674-product-ideas/features/26044513/detail