Got students learning Python?
Buggy Racing is the software, documentation and supporting material for running a practical Python programming project: see the overview.
See the demo race server at demo.buggyrace.net.
Configurable for your institution and teaching environment including links to supporting sites and control over which student data is included
Project broken into tasks and phases, all fully customisable (although the defaults are tried and tested!)
Support for student reports/lab notes: collecting task-based texts as-they-go (or not: you configure how the project is run)
“Tech notes” supporting material on key technical concepts encountered in the project (can be replaced with your own)
Can run with GitHub: server forks repo into students' accounts and injects tasks as issues (or use GitHub without automation, or just Git... or no Git at all — download zip and go!)
Main project website:
students' buggy uploads / race results / staff admin features
Submission and assessment of projects is not included (because how you do that depends enormously on your institution and the course of study it’s part of, if any)… although we have guidance on how to handle that too.
Buggy Racing was originally created in 2020 as the final term project of the CompSci Foundation programme at Royal Holloway, University of London (RHUL). It ran as a 6-week course of weekly lab sessions with students who’d done at least one full term of introductory Python.
Since then we’ve made it very configurable so you can run it in a way that works for your institution or course — university department, FE College, or local code club. Available for free under the GNU GPL license.
The race server and buggy editor is made available under the the GNU Affero General Public License: a free, copyleft license (see gnu.org for details).
In practice this means: you and your institution don’t have to pay to use it — there’s nothing to buy, because the whole thing is made freely, explicitly available for you — and you can modify it and even improve it (but if you do, you should make those improvements available to other people too).
See the race server’s LICENSE.txt
“Free as in speech, free as in beer”
Remember to teach your students about Open Source software :-)