Information Services

Using Noteable for Assignments

How to use Noteable to create code-based assignments.

Assignments within Noteable

The Noteable service allows you to create notebook based assignments due to the addition of the nbgrader extension. These assignments can be authored, allocated to students, collected back and marked within the Noteable service. The notebook based assignments allow you to set computational assessments that require students to enter code that is automatically run and checked if it fulfils a specific function. This can help with large classes where marking many code based questions can become time consuming. Submissions can also be reviewed by markers, given extra marks and feedback before being returned to students.

In May 2019 The University of Edinburgh hosted a Hackathon to add new features and abilities to nbgrader. As part of this event the creator of nbgrader, Dr Jess Hamrick, gave a short introductionary talk that goes over the features of nbgrader - Nbgrader Presentation (Video)



In order to create an nbgrader assignment within Noteable there are some requirements:

Learn LTI Connection

You will need to ensure that you set up an LTI connection from Learn to Noteable, this will allow the course information to be passed across. This ensures that the assignments are sent tos those students enrolled on that course.

When creating assignments for a specific class you must ensure that you access Noteable from that specific Learn class.

You can create a LTI connection from Learn to Noteable by following this video guide: Creating Noteable link in Learn (Video)


Although nbgrader is language agnostic, as long as the language can a variation of the assert you can use nbgrader, it has been most extensively tested in Python. If you intend to use another language please Contact Helpline



For information on how to use nbgrader as an Instructor please use the following guide - Instructor Guide

For guidance on how to use nbgrader as a Student please watch the following video guide - Student Guide (Video)

For further detailed guidance you can also visit the nbgrader documentation, please be aware that there may be small configuration changes from source nbgrader - nbgrader documentation


Can I use nbgrader for purely manually graded assignments?

Yes,  you can mark all the cells where students write their answers as "Manually Graded Asnwer" cells and then during grading run nbgrader autograde and the formgrader as normal.

Can I hide the test cells in a nbgrader assignment?

Nbgrader includes the ability to hide tests in “Autograder tests” cells through the use of a special syntax such as ### BEGIN HIDDEN TESTS and ### END HIDDEN TESTS on either side of the code that needs to be hidden.

How does nbgrader ensure that students do not change the tests?

Nbgrader includes the ability to mark cells as "Read Only" in the cell menu in the creation phase. This means that the cell cannot be accidentally changed or removed by the student.

Does nbgrader protect against infinite loops?

Yes. nbgrader will stop executing a cell after a certain period of time, this amount of time is set at a system level and cannot be adjusted for each class. If you have issues with autograding timing out then please Contact Helpline

Do Students receive a submission receipt?

Students have a log showing all of their submissions with timestamps in the Assignments tab. We also keep detailed logs at a system level to check when students have submitted.

Can Students submit multiple times?

Students can submit as many times as they like until the submission deadline. When you, as an instructor, run the Collect Submissions function it will check if any new submissions have been made and show only the latest submission for you to mark.

Can multiple instructors mark assignments?

Currently each assignment is linked to the instructor that created and released that assignment. Only this instructor can collect and mark that assignment. We are currently working on a solution to allow this as main functionality.

I have made a mistake in a assignment that I released. Can I edit and re-release this?

Due to the way that nbgrader works we advise that you remove the original assignment and release a new assignment with a different name. This will ensure that any students that downloaded the original incorrect assignment will see the new version.

My Assignment tab says "No Course Found"

This is caused by not accessing Noteable via Learn. Please refer to the Requirements section of this page.