Autograding Python with understandable error messages using the friendly library
December 9, 2021

Friendly: Better error messages for Python

Friendly was recently brought to our attention and we knew immediately that we wanted to share this with our teachers. Friendly is an external module for Python that elaborates on what has caused an exception to be thrown in your Python program. To illustrate how Friendly works, they’ve handily provided a great example in their documentation. Say I’ve got this code:

-!- CODE language-py -!-# example.py
def get_last(seq):
    last_index = len(seq)
    return seq[last_index]

print(get_last([1, 2, 3]))

Running this program with vanilla python in CodeGrade, we get this error traceback:

Regular Python traceback.

While an experienced python programmer knows immediately where to look in the traceback and understands what an IndexError entails, a novice python programmer may not find this information very helpful if they don’t know how indexing works (or what indexing even is).

With Friendly, the error-traceback looks like this:

Student-friendly Python traceback.


Use CodeGrade, the most student friendly autograder available!

Continue reading

The Terminal Is Here: CodeGrade's Editor Grew Up

The Terminal is here in beta: a real Ubuntu command line in CodeGrade's redesigned browser editor. Email support for access and a guided setup session.

You Can Now Limit Copy-Pasting in the CodeGrade Code Editor

Prevent copy-pasting in coding assignments. CodeGrade lets you cap or block pasting in the code editor, per assignment. You set the limit. Start free.

Everything CodeGrade Shipped in Q2 2026

See all 14 CodeGrade releases from Q2 2026: simpler login and enrollment, faster AutoTest setup, a context-aware AI assistant, and exam fixes. Start free.

Sign up to our newsletter