← DS-100 · Data Speak Louder than Words

JupyterHub: Getting Started

Summer 2026. How to log in to the course JupyterHub, clone your assignment repos, and make sure your work is backed up.

1. Accessing the server

Go to https://ds100.fishjump.com and log in.

  • If this is your first time logging in, just pick a password — whatever you enter the first time becomes your password going forward. There’s no separate signup step.
  • Your username is the username portion of your BU email address (the part before @bu.edu).
  • Once logged in, you’ll land in JupyterLab.

Note: use https://ds100.fishjump.comhttp:// (no s) may not work.

2. The basics

  • File browser (left sidebar, folder icon) — your personal home directory. Nothing here is visible to other students.
  • Launcher (+ button or File > New Launcher) — start a new notebook or text file.
  • Notebooks autosave periodically, but use Ctrl/Cmd+S before closing a tab.

3. Cloning a repo with the Git extension

The left sidebar has a Git icon (looks like a branching git logo, below the folder icon). Click it.

  • If you’re not currently inside a git repo, you’ll see a “Clone a Repository” button.
  • Click it, paste the repo’s clone URL (see below for where to get this), and it’ll clone into your current directory in the file browser.
  • After cloning, the Git pane shows your branch, changed files, and lets you commit/push/pull without leaving JupyterLab.

4. Finding your repo on GitHub

All course repos live under the course’s GitHub organization (linked from Blackboard; for Summer 2026 it is github.com/bu-cds-ds100-sum26).

  1. Go to the organization page (or click the org name under your avatar’s organization list if you’re a member).
  2. Click the Repositories tab near the top of the org page.
  3. Find your assignment/project repo in the list (use the search box at the top of the repo list if there are many).
  4. Open the repo, click the green <> Code button, and copy the HTTPS clone URL.
  5. Paste that URL into the JupyterLab “Clone a Repository” dialog from Section 3.

Remember, you can bring in your past work too — just go to the appropriate repo on GitHub, copy its clone URL the same way, and clone it here as well. Before cloning, make sure you navigate back to the root of your file browser (your home directory) so each repo ends up in its own top-level folder rather than nested inside another repo.

5. Saving your work — don’t forget to back up!

Saving a notebook (Ctrl/Cmd+S) only saves it on the server. To make sure your work is actually backed up to GitHub, run this in a cell after saving:

!./helpful-script.sh save 1>/dev/null

This commits and pushes your work for you. Get in the habit of running it after every save — if the server has a problem, anything not pushed to GitHub is at risk of being lost.

6. (Optional) Using GitHub Codespaces instead, with JupyterLab as the default

If you’d rather work in a Codespace (a cloud dev environment tied directly to your repo) instead of the JupyterHub server, you can set JupyterLab as your default Codespaces editor:

  1. Click your profile picture (top-right on github.com) → Settings.
  2. In the left sidebar, under “Code, planning, and automation”, click Codespaces.
  3. Under “Editor preference”, select JupyterLab.

With this set, opening a Codespace (green <> Code button on your repo → Codespaces tab → Create codespace) will launch directly into JupyterLab instead of VS Code.