jupyterhub / the-littlest-jupyterhub

Simple JupyterHub distribution for 1-100 users on a single server
https://tljh.jupyter.org
BSD 3-Clause "New" or "Revised" License
1.03k stars 339 forks source link

Collect notebooks from students #844

Open jrasero opened 1 year ago

jrasero commented 1 year ago

Hi,

I've set up a jupyterhub distribution for my class using this littlest jupyterhub option. Everything works great, so thanks a lot for having developed such an amazing project.

I have also been able to distribute different notebooks with my students using the nbgitpuller option and it all worked like a charm, so again, thanks a lot for this, as it's really easy to do.

Now, the question and doubt that came to my mind is how to collect these notebooks that I distributed from them. Say I distributed them a notebook vía nbgitpuller as I said above, then the students do some work on It and I want to evaluate this work. What's the best for them to send me back these notebooks?

I am on the process of trying to incorporate nbgrader to jupyterhub, which will simplify things a lot, but in the meantime I would need to have an option for them to send me their work if needed.

Any help will be really much appreciated!!

welcome[bot] commented 1 year ago

Thank you for opening your first issue in this project! Engagement like this is essential for open source projects! :hugs:
If you haven't done so already, check out Jupyter's Code of Conduct. Also, please try to follow the issue template as it helps other other community members to contribute more effectively. welcome You can meet the other Jovyans by joining our Discourse forum. There is also an intro thread there where you can stop by and say Hi! :wave:
Welcome to the Jupyter community! :tada:

westurner commented 1 year ago
westurner commented 1 year ago

Ottergrader is newer than OkPy is newer than nbgrader.

From: https://otter-grader.readthedocs.io/en/latest/

Otter Grader is a light-weight, modular open-source autograder developed by the Data Science Education Program at UC Berkeley. It is designed to grade Python and R assignments for classes at any scale by abstracting away the autograding internals in a way that is compatible with any instructor’s assignment distribution and collection pipeline. Otter supports local grading through parallel Docker containers, grading using the autograding platforms of 3rd-party learning management systems (LMSs), non-containerized grading on an instructor’s machine, and a client package that allows students to check and instructors to grade assignments their own machines. Otter is designed to grade Pyhon and R executables, Jupyter Notebooks, and RMarkdown documents and is compatible with a few different LMSs, including Canvas and Gradescope.

The core abstraction of Otter, as compared to other autograders like nbgrader and OkPy, is this: you provide the compute, and Otter takes care of the rest. All a instructor needs to do in order to autograde is find a place to run Otter (a server, a JupyterHub, their laptop, etc.) and Otter will take care of generating assignments and tests, creating and managing grading environents, and grading submissions. Otter is platform-agnostic, allowing you to put and grade your assignments anywhere you want.

Otter is organized into six components [...]

westurner commented 1 year ago