Help me allow students to read each other's code anonymously.
July 19, 2012 11:25 AM   Subscribe

Help me find a system I can use to post student programs such that other students can easily read through different programs and provide feedback.

I am teaching an introductory programming course in a few months. In thinking about how I have taught the class before, I realized that while I provide comments to students about their code and post my solution for them to read, it might be helpful for students to see what others in the class have done. That way students can see good examples as well as provide comments that might help make others student's code better. Here is what I would like to be able to do.

Given a directory of program submissions for an assignment, each a uniquely named (based on the submitter's school id) single text file with Java or C++ code, I would like to create at the top-level a web page that will have a directory to each program. A directory entry should link to an individual page for each program. As a bonus, I would like to be able to mark entries on the directory page as well, so that I can highlight particular submissions for students to look at. Comments on this page, for general concerns, would also be welcome.

On each page, the code will be displayed in a neat code format (think something like Stack Overflow or doxygen output) with line numbers displayed. On each page there is also a comment system that allows commenting on the code. Comments should also allow code to be neatly displayed if the commenter has something they want to share.

What is the easiest way to set something like this up? A wiki? I also have access to Blackboard through my University, though I have never used it, so I don't know if that will help.

I have essentially unlimited access to computers and OSes and IP addresses, so I can set my own server up and install whatever I want there. I can handle the user management and scripting myself if I do this - lots of experience in shell scripts and Perl and Python and such, but haven't done much web-type integration with it. I don't have any money for this, so free-ware or open source only.

And please don't worry about anonymity. I will anonymize all the submissions before placing them online, and allow students to opt-out if they don't want their code posted. Commenters should not be anonymous, though, so some login mechanism is needed.
posted by procrastination to Computers & Internet (4 answers total) 2 users marked this as a favorite
What you're talking about is doing code reviews. You might look at Review Board as an open source code review tool.
posted by trinity8-director at 11:44 AM on July 19, 2012

I'm quite biased, but I think you should use GitHub for this. I have a lot of experience working with code, collaborating on code, and code review (or at least attempts at it), and nobody but nobody does it like GitHub.

And because this is a legitimate educational use, you can get an account that lets you use the nice privacy features for free.
posted by cardioid at 2:13 PM on July 19, 2012 [1 favorite]

Seriously . This also has the side effect of exposing students to github.
posted by gregglind at 5:57 PM on July 19, 2012

Ok, I requested a gihub account. I will see if I can make it do what I would like it to do.
posted by procrastination at 8:12 PM on July 19, 2012

« Older Make Your Own Retreat   |   Best bike to bobber for a girl? Newer »
This thread is closed to new comments.