For any programming class, and any language.

Autograder and Scoreboard

Autolab is a course management service at CMU that enables instructors to offer programming labs to their students over the Internet. The two key ideas in Autolab are autograding, that is, programs evaluating other programs, and scoreboards.

Loaded with Practical Features

All packaged into our free Course Management System

How it Works

- Autograding -

Each time a student submits their work, the system autogrades it on a secure Linux virtual machine, and stores the results in a gradebook. Autograders and the programs they evaluate can be written in any language and use any software packages. The model for a traditional programming class is that students work on their code, hand it in once, and then get feedback a week or two later, at which point they've already moved on to the next assignment. Autograding, on the other hand, allows students to get immediate feedback on their performance.

- Scoreboard -

The latest autograded scores for each student are displayed, rank ordered, on a real-time scoreboard. The scoreboard is a fun and powerful motivation for students. When coupled with autograding, it creates a sense of community and a healthy competition that seems to benefit everyone. Students anonymize themselves on the scoreboard by giving themselves nicknames. A mix of curiosity and competitiveness drives the stronger students to be at the top of the scoreboard, and all students have a clear idea of what they need for full credit. In our experience, everyone wins.

Who uses Autolab?

Each semester, Autolab serves over 5,000 students in over 50 different courses across 7 universities. In a typical semester it autogrades over 100K jobs.

Companies recruiting at CMU use Autolab for various programming contests.

The Autolab Team


Aatish Nayak
Project Lead
Full Stack

Billy Zhu

David O'Hallaron
Faculty Advisor

Devansh Kukreja

Jacob Buckheit

Tj Johansson

Rameez Remsudeen


See how Autolab can revolutionize your classroom

Get Started Using Autolab