TA Tools

These tools have been useful to me in automating parts of TAing large classes. Please let me know if you have any questions.
-Geoff

BBVista :: Extract recursively

A small python script to extract all archives recursively. This is useful after you have downloaded all assignments from BBVista. I keep this script in my PATH, specifically in /usr/local/sbin. You'll have to run it twice (once to extract the main zip, then again to spider all of the assignments and extract them).

MOSS :: Submit recursively

First of all you'll need moss. This program requires that you have the moss script in the same directory (MOSS/ in my example below). You can get the latest here .

This program is a small bash script that will copy and rename all .h and .cpp files with the students' ID numbers. I keep this script in a folder next to my assignment folders. For example, I might run it like:

$ pwd
/home/gao25/TA/HW2
$ ../MOSS/makeMoss

If all goes well this should send your files to the moss server which will respond with a URL. If it complains that some file is not ASCII, then you'll have to convert it. This can be done by using iconv on the original student file, then rerun makeMoss. The script tries to call iconv for you, but it may not detect all changes.

# file FILE.cpp
FILE.cpp UNICODE text
$ iconv -f UNICODE -t ASCII FILE.cpp > NEW.cpp
$ mv NEW.cpp FILE.cpp

MOSS :: Results Sorter

To sort moss results by % match or by number of lines matched, use my Greasmonkey script . If you have Greasemonkey installed, it should prompt you to install when you click the link. Greasemonkey is a Firefox plugin.

BBVista :: Release All

If you ever upload homework grades via the "Import from spreadsheet" option on BBVista you'll have to manually release each student's grade. Instead you can use this iMacros script . iMarcos is a Firefox plugin. Once you have the script installed use it like this:

  1. Go to the proper assignment;
  2. Click on the "Submitted" tab;
  3. Right click somewhere in the list of assignments and choose "This Frame > Show Only This Frame";
  4. Open the iMacros toolbox (F8), then find the script in the list; and
  5. Use the loop settings at the bottom to have it submit that many grades, click "Play (Loop)."