
GitHub Classroom and Travis CI Improved Students’ Grades - rococode
https://github.blog/2019-02-12-how-github-classroom-and-travis-ci-improved-students-grades/
======
JCharante
Wouldn't this be the case for any class that supplies an auto grader or test
suite?

~~~
DanFeldman
Yup, but using Travis as the platform for an autograder makes it A LOT easier
for teachers/professors with less access to dev time to implement a great
iteration platform. At Berkeley our intro classes had world-class
infrastructure autograders (release I believe as ok.py
[https://okpy.org/](https://okpy.org/)) - but I imagine less staffed courses
could benefit from a workflow like this. Plus, it gives students the benefit
of familiarity with actual tools that are in use in the industry.

------
z3t4
How can they learn anything when there is no one looking at their code !? It
would probably be easy to cheat too.

~~~
livueta
> It would probably be easy to cheat too.

When I was in college a few years ago, one professor included this thing[1] in
his (shell, spit and duct tape) auto-grading system. It works by generating an
AST of the input and comparing it against a bank, e.g. other submissions from
the same class or prior years' classes. Apparently, it worked pretty well for
flagging potentially problematic portions for manual review.

In a well-designed implementation of an auto-grading pipeline, I doubt that
plagiarism is much more of a problem than in a purely manual grading scheme.

\---

[1]
[http://theory.stanford.edu/~aiken/moss/](http://theory.stanford.edu/~aiken/moss/)

~~~
Scaevolus
Minor correction: moss operates at the lexical/token level, not the syntax
tree. It matches fragments like IDENT EQUALS LPAREN NUMBER TIMES IDENT RPAREN
DIVIDE NUMBER -- so renaming and changing indents (the most common cheater
obfuscations) don't change anything!

