{"id":24528947,"url":"https://github.com/saezlab/scheduling","last_synced_at":"2025-03-15T17:44:36.549Z","repository":{"id":186769613,"uuid":"675682041","full_name":"saezlab/scheduling","owner":"saezlab","description":"Repository to collect issues for events to be scheduled","archived":false,"fork":false,"pushed_at":"2023-10-31T12:23:14.000Z","size":121,"stargazers_count":2,"open_issues_count":9,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-22T07:37:29.503Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/saezlab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-08-07T13:33:30.000Z","updated_at":"2023-08-21T12:22:55.000Z","dependencies_parsed_at":"2023-08-07T17:30:51.887Z","dependency_job_id":"fc3d7f79-c398-4ee9-a3a3-a3664b159d0d","html_url":"https://github.com/saezlab/scheduling","commit_stats":null,"previous_names":["saezlab/scheduling"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saezlab%2Fscheduling","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saezlab%2Fscheduling/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saezlab%2Fscheduling/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/saezlab%2Fscheduling/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/saezlab","download_url":"https://codeload.github.com/saezlab/scheduling/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243769947,"owners_count":20345215,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-22T07:34:10.659Z","updated_at":"2025-03-15T17:44:36.529Z","avatar_url":"https://github.com/saezlab.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Club Scheduling\n\nThis repo implements a BioCypher pipeline that grabs all of the repo's issues,\nwhich are organisational units of individual club meetings, and schedules them\ninto the available timeslots. The clubs to be scheduled are represented by\nissues on a GitHub [project\nboard](https://github.com/orgs/saezlab/projects/18/views/1), which can also be\ndisplayed as a [time\ntable](https://github.com/orgs/saezlab/projects/18/views/2). Personal schedules\nfor the upcoming meetings can be found at the bottom of this README.\n\n## Usage\n\nThe workflow in `.github/workflows/calculate_schedule.yaml` is run periodically\non each Monday evening. It clones the repository, installs the dependencies, and\nruns the `calculate_schedule.py` script, which uses the BioCypher GitHub adapter\nin `scheduling/adapters/adapter.py` to get the data and then computes the\nschedule from the data.\n\nThe pipeline can also be run locally and subsequently updated online by pushing\nthe results to the repository. \n\n### Scheduling\n\nThe scheduling algorithm is a simple greedy algorithm that iterates through the\nclubs (i.e., the issues) in *random order* and assigns them to the first\navailable timeslot, given that all attendants (i.e. assignees) of the club are\navailable at that time. If no such timeslot exists, the club is postponed (to\nthe `Unscheduled` column) to next week. \n\nIf the club has been successfully assigned, the corresponding issue is updated\nwith the assigned time and moved to the `Scheduled` column. The schedules of\neach person are also appended to the bottom of the README file.\n\n### Preparing for the next week\n\nAfter the club meetings, cards that were successfully scheduled are\nautomatically removed back to the `To be scheduled` column for the next week.\nIf a club should not be scheduled for the next week, it can be moved to the\n`Closed / Parked` column.\n\nAssignees should be updated to reflect those that wish to attend the club in the\nfollowing week.\n\n### Parking Clubs\n\nIf a club should not be scheduled for the coming week(s), the card can be moved\nto the `Closed / Parked` column. The club will then be ignored by the scheduling\nalgorithm.\n\n## Current Schedule\nLast updated: 2023-10-31 12:23:13\n| id                | schedule   |\n|-------------------|------------|\n| saezrodriguez     | []         |\n| slobentanzer      | []         |\n| roramirezf        | []         |\n| martingarridorc   | []         |\n| smuellerd         | []         |\n| jtanevski         | []         |\n| loicchadoutaud    | []         |\n| arezourahimi      | []         |\n| barbarazpc        | []         |\n| demian1           | []         |\n| JanLanzer         | []         |\n| yardenko          | []         |\n| schae211          | []         |\n| LeonieKuechenhoff | []         |\n| MCHeinz           | []         |\n| pablormier        | []         |\n| ivanovaos         | []         |\n| adugourd          | []         |\n| tdrose            | []         |\n| koalive           | []         |\n| miguel13hh        | []         |\n| PauBadiaM         | []         |\n| r-trimbour        | []         |\n| LornaWessels      | []         |","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaezlab%2Fscheduling","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaezlab%2Fscheduling","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaezlab%2Fscheduling/lists"}