The web is fill of resources that help to understand diff files. Here are the two top hits: * [http://www.markusbe.com/2009/12/how-to-read-a-patch-or-diff-and-understand-its-structure-to-apply-it-manually/ How to read a patch of diff and understand its structure to apply it manually?] * [http://unix.stackexchange.com/questions/81998/understanding-of-diff-output Understanding diff output]] In general, the student output is the left side (<) and the expected output is the right side (>). If unsure, then look at the diff command used as it is included in the diff output. The diff output is ''not'' going to enable the student to recreate the input, but it gives insight to tests the student should consider in debugging the code. Ultimately, it is the student's responsibility to test and debug code. As a student, be creative and try to break the code. If a student uses the pass-off process as a test driver for debug, then it is going to be a long semester full of a lot of down time waiting for pass-off attempts and a high level of frustration.