Python utilities to help Teaching Assistants grade assignments with eLearning
Project description
eLearning Grading
This repository contains python scripts and tools to help Teaching Assistants using eLearning's assignment download feature to organize and grade written, typed, and programming assignments.
How To Use
Installing from pip
pip install elearning-grading
Installing from GitHub
git clone https://github.com/Supermaxman/elearning-grading
cd elearning-grading
pip install -e .
Organizing code and reports
eLearning provides the Assignment File Download
feature for Teaching Assistants to download assignment files
for the entire class.
Sadly, this feature makes grading assignments extremely tedious,
as the .zip file provided usually looks like this (simulated):
With each student submission zip file populated with user-submitted content:
These archives could be .zip, .tar, .tar.gz, .rar, or more file types, and there could
be multiple files for each student in the eLearning zip file.
elearning-grading
helps manage this chaos by organizing files and folders
based on student netids, and splitting code and pdf reports.
The elg-org
tool works as follows:
elg-org --help
usage: elg-org [-h] [-i INPUT_PATH] [-c CODE_PATH] [-r REPORTS_PATH]
optional arguments:
-h, --help show this help message and exit
-i INPUT_PATH, --input_path INPUT_PATH
filepath to .zip file from eLearning.
-c CODE_PATH, --code_path CODE_PATH
output folder for code, organized by netid.
-r REPORTS_PATH, --reports_path REPORTS_PATH
output folder for pdf reports, organized by netid.
For example, the above simulated eLearning submission zip file is organized like so:
elg-org -i tests/gradebook_7366-LRWYV-CO-3865-SEC000_Test207_2022-02-24-11-32-57.zip
PDF or DOCX reports are organized into the reports
folder, while
everything else is considered potential code
and is moved into the
code
folder.
Each folder is organized by student netid as follows:
Where reports are included in reports
folder for each netid:
And code is included in the code
folder for each netid:
This organization structure makes grading much easier, as everything is organized by netid and written reports are clearly marked for grading.
Generating simulated eLearning .zip files
eLearning's Assignment File Download
feature provides extremely unpredictable
student zip files, as each student can upload whatever they want.
elearning-grading
provides the elg-gen
utility, which generates
synthetic, random files in the unpredictable format of eLearning.
elg-gen
ensures that utilities within this library are
tested against unexpected student file formats.
el-gen
documentation:
elg-gen --help
usage: elg-gen [-h] [-o OUTPUT_PATH] [-n NUM_STUDENTS] [-s SEED] [-t TYPE]
optional arguments:
-h, --help show this help message and exit
-o OUTPUT_PATH, --output_path OUTPUT_PATH
filepath to create test .zip file from eLearning.
-n NUM_STUDENTS, --num_students NUM_STUDENTS
Number of students to put in file.
-s SEED, --seed SEED Seed of RNG.
-t TYPE, --type TYPE Type of data to generate. Options: pdf: only generates
pdf files. pdf-zip: only generates pdf files inside zip
files.pdf-code-zip: generates pdf file and code files
inside zip files.pdf-code-full: generates pdf file and
code files inside various compressed files.
el-gen
usage:
elg-gen -n 5 \
--output_path tests \
--type pdf-code-full \
--seed 1
This will generate an eLearning Assignment File Download
file format filled with
random data, such as the following:
gradebook_7366-LRWYV-CO-3865-SEC000_Test207_2022-02-24-11-32-57.zip
With each student submission zip file populated with random content:
Identifying project members
TODO
Organizing project code and reports
TODO
About Me
My name is Maxwell Weinzierl, and I am a Natural Language Processing researcher at the Human Technology Research Institute (HLTRI) at the University of Texas at Dallas. I am currently working on my PhD, which focuses on COVID-19 and HPV vaccine misinformation, trust, and more on Social Media platforms such as Twitter. I am also a Graduate Teaching Assistant for the AI, NLP, and IR classes of Dr. Harabagiu.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file elearning-grading-0.2.2.tar.gz
.
File metadata
- Download URL: elearning-grading-0.2.2.tar.gz
- Upload date:
- Size: 17.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.6 tqdm/4.62.2 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 065853c216c8cd5fbf5d55f1bea2a24eaf80352b87ef477ed70e7c434c1c3758 |
|
MD5 | b56db55b34d18623d15ab0c532c5fb6f |
|
BLAKE2b-256 | 54d5fa49c692e51cb753733755e2304988c64662b8e5fb39f7e37510f5071149 |