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.
Metadata
Release files for elearning-grading 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| elearning-grading-0.2.2.tar.gz | 17.9 kB | Without provenance | Details |
Release files / elearning-grading-0.2.2.tar.gz
| Download URL | elearning-grading-0.2.2.tar.gz |
|---|---|
| Size | 17.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
065853c216c8cd5fbf5d55f1bea2a24eaf80352b87ef477ed70e7c434c1c3758
|
|
BLAKE2b-256 checksum How to use checksums |
54d5fa49c692e51cb753733755e2304988c64662b8e5fb39f7e37510f5071149
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Security for elearning-grading 0.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.