What is peach³

peach³ is a system for the presentation of assignments, the collection, storage, and automated and/or manual evaluation of work submitted for assignments, and the administration of results. Originally, the system was developed with a focus on programming education assignments and programming contest problems, but nowadays it can be used for any kind of assignments that require submission of work in the form of one or more files.

Participants need to register with the system and join the "course(s)" of interest. Assignments can be grouped, availability of assignments can be timed, and there are group and individual submission deadlines. For each assignment it is possible to define an automatic evaluation chain, ranging from a simple check on file type/size to compiling submitted programs, running the executable with various input cases, capturing the produced output, checking the correctness of the output, and turning that into a numeric score.

Generations 1 and 2 (called PEACH/vs) have been in use for several years at various institutions, including the  Eindhoven University of Technology in the Netherlands where it was developed and the  University of Tampere in Finland. Generation 3 has been renamed to peach³ and has been in use since August 27, 2007.

peach³ is written in Python (server side) and JavaScript (client side) and uses  Django as the web server framework and  ExtJS for the web-based user interface. A new version of peach³ currently in development that replaces the ExtJS user interface with a  Bootstrap based interface.

Publications

A list of publications can be found here. There is also a  blog with posts about peach³.

Who is using peach³

peach³ is being used by:

Authors/Contributors

  • Erik Scheffers
  • Tom Verhoeff
  • Stefan Geuns
  • Marijn Kruisselbrink
  • Paul Wagener
  • Robert Leenders
  • Iosif Macesanu
  • Maikel Steneker

Acknowledgements