JupyterHub and BinderHub Team Meeting - July#

Welcome to the Team Meeting#


If you are joining the team video meeting, sign in below so we know who was here. Roll call:

  • name / institution / GitHub handle

  • Min / Simula / @minrk

  • Sarah / Turing / @sgibson91

  • Hamel / GitHub / @hamelsmu

  • Chris / Berkeley / @choldgraf

  • Matthew / Illinois & PyHEP / @matthewfeickert

  • Tim / Binder/ @betatim

  • Steve / AWS / @blink1073

  • Darian / Two Sigma / @afshin

  • Georgiana / CIR / @GeorgianaElena

  • Richard / Aalto / @rkdarst

  • Erik / Sundell Open Source / @consideRatio

  • Rollin / NERSC / @rcthomas

  • Michael / Code for Philly / @machow

  • Simon Li / OME, University of Dundee / @manics

  • Zach Sailer / Jupyter Cal Poly / @Zsailer

Quick updates#

60 second updates on things you have been up to, questions you have, or developments you think people should know about. Please add yourself, and if you do not have an update to share, you can pass.

  • Hamel: repo2docker GitHub Action, allows you to dockerize your projects and cache them for Binder from GitHub!

  • We had a bunch of Binder usage over the last two weeks - first from SciPy and then from PyHEP 2020. Both have gone pretty smoothly, but brought up some questions about our process around catering to specific events. Can find a PR and several links to issues here: jupyterhub/mybinder.org-deploy#1524

  • Chris is going on paternity leave soon-ish. The babypocalypse is nigh! Expect him to be totally unreliable roughly mid-August through September (Chris promises to keep approving Numfocus payments for our Contributor in Residence :-) )

  • Chris has been working to launch a new non-profit with some others in the community. It’s called 2i2c (https://2i2c.org/) and is just getting started. It will try to find a way to sustainably offer jupyterhub environments to research and education organizations, and provide support for our repositories / communities as well.

  • Steve: Jupyter Server migration

  • Erik: long battle with a reliability issue with Z2JH’s automatic TLS certificate acquisition

Reports and celebrations#

This is a place to make announcements (without a need for discussion). This is also a great place to give shout-outs to contributors! We’ll read through these at the beginning of the meeting.

  • Sarah: mybinder.org federation is now upgraded in parallel by GitHub Actions! Thanks to Min for helping with the deploy and debug.

    • Chris reverses this “thank you” back to Sarah for doing all of this great work!

  • Chris: many thanks to Carol and Tim for helping debug what was going on with the xarray tutorial during SciPy!

Agenda items#

Let’s collect all potential agenda items here before the start of the meeting. We will then attempt to create a coherent agenda that fits in the 60m meeting slot. If there are similar items try and group them together.

  • Hamel Husain (10 min): Proposal to include the repo2docker Action in the Jupyter org: issue

    • Tim can move the repo in terms of permissions

    • check if there are paperwork issues to do first

      • contributing guide, COC, license, etc

    • people liked the idea of having it migrated to the JupyterHub org

    • conversation will continue in the issue

  • Chris Holdgraf (10 min): Moving Thebelab to the jupyterhub org #313 minrk/thebelab#214

    • used to take a HTML page and hook it up to a kernel running on a JupyterHub like mybinder.org

    • the tech stack for thebelab is more JS than Python/Kubernetes, does the Hub team have the skills to keep maintaining it?

    • not a huge amount of work to maintain

    • biggest source of “work” is keeping up with Jupyter Lab updates

    • some outstanding PRs and Issues that would be nice to adopt

    • people liked the idea of having it migrated to the JupyterHub org but basically split down the middle on executablebooks vs jupyterhub

    • discussion continues in the issue linked at the top

    • minrk/thebelab#214

  • Matthew (10min): Binder does PyHEP - retrospective

    • we bumped the limits for two or three repositories each day of this week

    • how did it go? What went well, not so well, random?

    • Feedback: it was hard to convey to the authors of talks what binder is and why they need to prepare links more than 5min before the talk (Matthew: I’ll note that this wasn’t really any problem with Binder or the way that the docs are - they’re great!. This was more just getting people to read, which I’m unqualified to offer solutions for.)

    • Q: What did the audience think/say about having a binder?

      • People asked interesting questions based on being able to run the code

      • takes a moment for people to warm up to the idea, kept telling them to give it a go (Matthew: People seem excited and happy to use it once they’ve done so. More just that when you have 1000 people that are connecting for different portions you need to repeat everything again and again for the first 3 days.)

    • Q: did people use the video links provided in a binder?

      • probably not so much as the conference already provided zoom, slack, etc

    • Matthew: Standing offer from the PyHEP organizers for a Binder keynote at future PyHEPs. :)

  • Tim, 5min: Microsoft Quantum Computing people make good use of mybinder.org

    • jupyterhub/mybinder.org-deploy#1538

    • the quantumkata repo shows up on my radar once in a while

    • should we use the request to bump resources as a way to ask for cloud credits/sponsorship on Azure?

    • we have several contacts and we should start having discussions with all of them

  • Min (5 min): JupyterCon proposals are due on Monday — CFP link, discussion issue

    • there might be talks from core projects already w/o proposals, but check with Jason Grout

  • Rollin (5 min): Does anyone run Prometheus+Grafana as part of their hub deployment with Grafana as a JupyterHub service (admin access only) and are there any potential gotchas (I have a test deployment…)

    • rkdarst: I do as part of my k8s hub, but I haven’t thought about it much and am interested in practices. I have an extra service that exports more data, and runs a periodic test job link - it’s very hackish.

      • Erik: (k8s) Yepp. Admin access only is not integrated with JupyterHub authentication or similar atm though, but simply as a pre-created admin user. The configuration of this Helm chart that depends on the JupyterHub helm chart, Grafana Helm chart, and the Prometheus Helm chart, and follow a structure as required by the tool called hubploy.

    • AWESOME thanks! Rollin will write something up and post it on discourse

  • At what point should things be offered for adoption by the jupyterhub organization?

    • Balance: increased visibility vs increased team maintenance burden

    • Are the people of JupyterHub interested in maintaining it?

    • Considerations for issue template:

      • are the people who created the project coming along to continue maintaining it?

      • Documentation appropriate

      • License

      • Does it have good tests?

    • TODO: create an issue template to help make this process more repeatable and easier

    • What about de-adopting projects if it turns out to be a bad idea… / it goes stale?

      • maybe use badges or a note in the README to signal that a repo is in need of new maintainers

    • check out https://repostatus.org