Generate personalized student reports in an open and secure manner. With one-click updates through Gradescope.
To update the student reports simply click regrade all submissions
under the appropriate Gradescope assignment.
Ensure you have python3 and pandas install.
pip install pandas
Create a new Programming Assignment
under Gradescope. If you don't wish to publish the assignment yet set the release date for far in the future.
git clone [email protected]:CS70/student-reports.git
Create a file called config.json
. This file will contain all the information needed to setup your report.
Create a copy of the following Sample Report Google Sheet. Ensure that the Google sheet is viewable to anyone with a link.
Copy this viewable public link over to the Sheet:
attribute in the config.json
file.
In the second sheet copy the same SALT that you have in your config file.
The script will only pull the very first sheet. This is your report. You may add additional sheets to you spreadsheet, to help organize and process for the first sheet.
You can paste the following code to create a hash function to ID all the entries for the report. This will use the SALT provided.
Fill out the data.
Compress the contents of the source/
directory.
This is the script that Gradescope runs to "grade" the students' "submission" and allows us to display the report as their autograder report.
IMPORTANT: Do not compress the directory itself, just the contents. So, this means you should select all the files inside of the source/
directory and then compress those.
Upload this compressed file under Gradescope to setup the autograder.
TODO
It is a frequent need to share general information with student, where the structure and format may be identical but data is different across students--think grade reports, attendance, exam format, etc. This allows to do this using the Gradescope Autograder
You can always use mail merge to email these personalized reports out. This has the drawback that to update them you have to resend emails.