OverviewAutolab is a CMU course management service that enables instructors to offer programming assignments (labs) to their students over the Internet. It is based on autograding, that is, programs evaluating other programs. Each time a student submits their work, the system autogrades it on a secure virtual machine instance running in the cloud, stores the rsulting scores in a gradebook, and returns feedback to the student. The autograded scores for each student can be displayed, rank ordered, on a real-time scoreboard. Autograding and the scoreboard are two key ideas in Autolab:
Autolab also provides the other services that instructors expect in a course management system, including gradebooks, rosters, handins/handouts, code annotation, manual grading, cheat checking, and bulk emails. The first Autolab prototype was written in 2002 by Dave O'Hallaron for 15-213: Introduction to Computer Systems. It was reimplemented in 2010 in a modern Rails form, with a secure and scalable backend, by Hunter Pitelka, Dave O'Hallaron, and Kelly Rivers, with contributions from some talented students, including Abhay Buch, Tom Abraham, and Steven Fackler. In a typical semester, Autolab serves over 1,400 students in 5-6 courses, handles over 1M page views, and autogrades over 60K jobs. We're actively developing the system, and we hope to make it available to other schools soon, using Amazon's EC2 as the backend host. If you are interested in using the system for your CMU course, send us an email. If you want to try a demo course first, be our guest!. |
Blogroll |
|
CMU Courses15-110: Principles of Computing15-112: Fundamentals of Programming 15-122: Intro to Imperative Programming 15-213: Intro to Computer Systems 15-381: Artificial Intelligence 15-411: Compiler Design 15-441: Distributed Systems 15-746: Storage Systems |
ResourcesInstructor Guide: Describes how to use Autolab for your course. Documentation: Complete info on the system. Includes an Instructor Guide, Lab Author Guide, Developer Guide, and a detailed Reference Guide. Autolab overview. Dave did an interview with IEEE Internet Computing that explains the background, motivation, and goals for the Autolab project. Bugtracker: Submit any bugs or feature requests you find, and watch for the development team to update the items you're waiting for. Job opportunities: We're always looking for top undergraduate programmers to work with us. If you're passionate about improving the learning experience for students and are good at design, Rails programming, Javascript, Python, or systems level programming, please contact us. |
The Autolab TeamDave O'Hallaron: Project Lead. He tries to stay out of the way of the people doing the real work. He hopes that Autolab will grow to form the basis for a new reputation-based community for teachers around the world, centered around the cool new labs that they create and then share with other teachers. Abhay Buch: Implementer of Cool New Gizmos. He gets the award for cleanest code, and is master of the dark arts of Rails. Thomas Abraham: Master of Gigantic New Features. You never know what he has hidden away in his branches... Steven Fackler: Warden of the Backend. He keeps your autograding jobs from crashing and ensures that there is enough room in the cloud for all to play. Hunter Pitelka: #1 Autolab Expert and Coding Ninja. He will answer your email in less than five minutes with a perfect solution- assuming he's not too busy with his real job. Kelly Rivers: Squasher of Bugs. She'll do all the quick and dirty fixes for you, and probably sneak some of her own work in in the process. |
