Be aware, there is a subtle difference if you are working with git assignments. The following two subchapters will explain this in further detail.
12.1 – Working on Assignments
Before your students start working on any assignments, they should click the Moodle link to JupyterHub at least once. This will initialise their environment and ensure all future steps described here work correctly. For their convenience, they may also want to use this opportunity to create a new folder for the assignment in their own Jupyter workspace.
Once the assignment unlocks for your students, they will be able to get started by clicking “Get a copy of the assignment“.
This will open a file dialog similar to the one seen during the assignment Submission Type dialog. From here, they can choose a folder to copy their assignment to. This will copy the entire folder, including all files contained within, as they were when you submitted them during assignment creation. The name of the folder will be the same as the name you previously provided under “Submission Types”.
12.2 – Working with Git Assignments
Compared to a normal assignment, a git related assignment will appear empty from a students point of view, and it will look like it contains no files for them to work with.
However, once they click the link to JupyterHub, it triggers nbgitpuller to synchronise their Jupyter workspace with your git repository. Any files you have prepared will show up in their workspace automatically:
At this point, your students are free to work on the assignments using whatever files you provided. Once done, they can submit in Moodle using the “Add Submission” button.
12.3 – Handing in Assignments
Once your students have completed making their changes, they can reupload their solution from their workspace using the “Add submission” button, which opens the familiar Jupyter file dialog.
Note that, once again, only folders can be chosen. Once your students save these changes, their submission will be ready for grading by you.
Group functionality, please be aware:
All Moodle group functionality, e.g., assignment submission in groups, is not available for JupyterHub assignments! This is due to the nature of our JupyterHub setup; all JupyterHub spaces are personal and cannot be shared between students/collaborators.