4

I am looking for a peer review software for college programming assigments. Open source.

The students would submit their programs through an online form and then would get a peer's solution to evaluate, strictly unnamed.

If it could do some automatic testing of the code it would be the better.

  • 1
    "If it could do some automatic testing of the code it would be the better" - do you even understand what you are saying there?? IF there is only one single, or a few, assignment(s) with a strictly defiend API, then you could code unit tests & have them run; but if it is open ended, than nothing can "do some automatic testing of the code" - in the accepted understanding of testing. Do you perhaps mean some static code analysis? – Mawg Jun 18 '15 at 7:10
  • 1
    Don't forget codereview.stackexchange.com ,-) – Mawg Jun 18 '15 at 7:11
6

I had a pretty good experience with Reviewboard https://www.reviewboard.org

  • free, MIT license
  • entirely web-based (used it locally hosted)
  • primarily oriented towards reviewing code diffs with general and inlined comments and replies support
  • it can be used to review non-diffs items as well (as regular file attachments)
  • logging in is required, the submitter and all reviewers are clearly identified - might be an issue for you if by "strictly unnamed" you mean "anonymity", but it also has a pretty extensive user and group access control
  • it supports integration with revision control systems (used it with GIT and FishEye) and issue management systems (used it with Jira)
  • doesn't do any code testing/verification

The UI wasn't extremely intuitive, but with the co-workers' help and the occasional digging into the documentation the learning curve was quite acceptable. IMHO an initial demo/presentation from an experienced user can get new users up and running very fast.

According to the tool's admin the installation and setup were not trivial, especially the integration with the other 3rd party tools.

1

A new option, under development, would be to use iPythons nbgrader for your assignments - this can give the students assignments in rich text format to fill in and can then use a mix of auto-grading and manual.

While the examples have simple tests of python code is should be possible to develop tests which compile then test the code, also to run tools like lint on the code.

1

Try Oxcoder https://www.oxcoder.net A coding evaluation platform for tech recruitment but meets your requirements. Open source, Solution needed, Automatic analyzing and scoring.

  • 1
    Please disclose any affiliation you have with oxcoder. – RockPaperLizard Oct 17 '17 at 6:33
  • Yes, I'm an oxcoder team member and I just want our product to be known. I'm very sorry if my answer has offended you. Thank you anyway for leaving a comment! – Jasper777 Oct 18 '17 at 5:39
  • No offense taken at all. Please just update all your answers to include the fact that you are one of the team members. – RockPaperLizard Oct 18 '17 at 6:16
  • OK. Thank you for your advice! – Jasper777 Oct 18 '17 at 6:23
1

You may want to check out what the course management systems do for peer review on submissions (papers, etc) - no reason to not use it for code.

Moodle is all Open and has a peer review assignment type - https://docs.moodle.org/19/en/Peer_Review_Assignment_Type

My personal favorite is Canvas, and you can get a free course to teach in on their servers, or look at a hosting/support contract (Canvas is AGPLv3 IIRC)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.