HKN holds weekly office hours that are rescheduled each semester as new officers and committee members roll in.
Build this project with Gradle:
gradle buildIf you don't have Gradle installed, the bundled gradlew wrapper script will
download a copy of Gradle and run as normal (gradlew.bat on Windows):
gradlew buildThe output Scheduler.jar will be located in build/libs.
Gradle 4.9+:
gradle run --args='data.json'
Gradle older than 4.9:
gradle run -Pdata="['data.json']"
For @bri25yu, I had to install Java Development Kit (JDK) via https://www.oracle.com/java/technologies/downloads/ and download the most recent version of gradle from https://gradle.org/install/ (I chose manual installation). For Sp23, I also had to run the updated post processing script on the output.
Modified by Artem:
Running with the new rooms requires additional input/output mapping.
- Download the scheduler params from https://hkn.eecs.berkeley.edu/admin/tutor/params_for_scheduler?which=officer into a file in this directory named
base_params.json - Inside
process_input.pymodify start and end hours(these are tutoring hours, they must not include prodev hours) inside of python file as well as people doing review sessions and execs. To add people just doexecs = ["First Last", ...]where First and Last name are from hkn.mu website, also do this for other variables, leaving them empty is fine. - Run
python process_input.py. - Use the output
scheduler_input.jsonfile as input to the scheduler (see the Java instructions above) - Rename the scheduler output file to
output.json - Run
python change_output_ids.py - Upload
upload_ready_output.jsonto https://hkn.eecs.berkeley.edu/admin/tutor
There is also a process_output.py file which might be useful, but I havent used it.
For tutoring/debug purposes print_number_available_assignments.py can be helpful. It prints total number of hours available for assignment.
Run this after running process_input.py. You can manually calculate number of hours needed for slots and see how many extra you need/have.