question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Extend nbgrader.db to cope with multiple courses (and think beyond that)

See original GitHub issue

The current nbgrader.db database has no concept of a course: each course has to have it’s own database (configured in the config file)

In our environment, we have

  • multiple instructors on a course, and
  • one instructor doing multiple courses

We also want to consider how to move to an external database (postgresql/mysql/etc)… but we are also very conscious that the notebook-servers themselves should not have access to create databases in our server (that could be horribly abused :chuckle: )

Our initial thought is to add a courses table, and link assignments to that

Keen to hear who else has been down this route, and what solutions have been tried.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Reactions:3
  • Comments:7 (6 by maintainers)

github_iconTop GitHub Comments

1reaction
jhamrickcommented, Oct 7, 2018

It sounds to me like this is something that would be better served by a JupyterHub service which knows how to talk to LTI, rather than adjustments to nbgrader. As I mentioned above, even if you created a shared database for the different courses, you would still need to manually configure the separate course directories and nbgrader_config.py files. So it sounds like what you want is actually a set of scripts on top of nbgrader that perhaps form a JupyterHub service which can do that synchronization for you. I am not really familiar with LTI though, so I could still be misunderstanding.

0reactions
jhamrickcommented, Jun 11, 2019

Closed by #1099

Read more comments on GitHub >

github_iconTop Results From Across the Web

Advanced topics — nbgrader 0.8.1 documentation
The “Assignment List” extension is not currently compatible with multiple courses on the same server: it will only work if there is a...
Read more >
nbgrader A Tool for Creating and Grading Assignments in the ...
As usage of the Jupyter notebook in scientific computing becomes increasingly ubiquitous, so too does its presence in classrooms.
Read more >
nbgrader: A Tool for Creating and Grading Assignments in the ...
nbgrader is a flexible tool for creating and grading assignments in the Jupyter Notebook. (Kluyver et al., 2016). nbgrader allows ...
Read more >
JupyterHub and nbgrader in a small multi-class lab environment
Rename all files in /opt/jupyterhub/lib/python3.8/site-packages/nbgrader/- server_extensions/formgrader/templates. The extension tpl has to be replaced by html.
Read more >
MS Title Page - UC Berkeley EECS
fellow course staff members for making my time at Berkeley so much more ... them to look at each submission individually for an...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found