summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--README.md49
1 files changed, 10 insertions, 39 deletions
diff --git a/README.md b/README.md
index 3490771..6600119 100644
--- a/README.md
+++ b/README.md
@@ -5,47 +5,18 @@ This is my internal assessment for the IB Diploma Programme's Computer Science
by the IB, while the `docs` directory contains the documentation that I
actually plan to distribute for the production system.
-## Configuring, building and running
+## Repository mirrors
-1. Copy `docs/cca.scfg.example` to `cca.scfg` and edit it to taste. The
- configuration file is well-documented. You probably need to add a client
- secret, change some paths, and change some listening options.
-2. `make`
-3. `./cca`
+* [Upstream repo](https://git.runxiyu.org/ykps/cca.git)
+* [SourceHut mirror](https://git.sr.ht/~runxiyu/cca)
+* [Codeberg mirror](https://codeberg.org/runxiyu/cca)
+* [GitHub mirror](https://github.com/runxiyu/cca)
-## Problems with the existing system
+## Other links
-There are various issues with Schoolsbuddy, the current system our school uses
-for CCA registrations:
+* [Issue tracker](https://todo.sr.ht/~runxiyu/cca)
+* [Demo instance](https://dev.runxiyu.org)
+* [Admin handbook](https://git.runxiyu.org/ykps/cca.git/plain/docs/admin_handbook.html)
+* [IA cover page](https://git.runxiyu.org/ykps/cca.git/plain/iadocs/cover_page.htm)
-* There are various race conditions and locking issues that occur when too many
- students use the system at the same time. Course member caps are enforced by
- kicking random users out of the system while over-filling some courses,
- instead of having the course choice fail gracefully. The number of remaining
- seats in each course is also not updated live.
-* If a lot of people are trying to load the Schoolsbuddy page, it takes ages.
-* The web interface is extremely bloated and contains more than 10 megabytes of
- unnecessary JavaScript.
-* The main interface displays three CCA periods, and inside each CCA period you
- can choose between Monday/Wednesday and Tuesday/Thursday. That's a bit
- unintuitive.
-* It seems to only support authentication by PowerSchool single sign-on, which
- is problematic because PowerSchool only supports a limited number of students
- logging on at the same time.
-* The selection system does not enforce CCA hours requirements, and the CCA
- office's staff must manually verify that students have completed CCA choices
- to the year group's requirements, by literally printing out the spreadsheet
- to paper and reading through them.
-* The school has to pay Schoolsbuddy a subscription fee, while something as
- simple as CCA selection could be easily accomplished on cheap hardware and
- minimal software.
-## Key questions
-
-* How does the CCA staff enter available courses, teacher information, member
- caps, and timing information into the system? Would it be okay if I just
- accept a CSV spreadsheet?
- Apparently they use the Schoolsbuddy web page to do so. I'd add a CSV upload
- as that would be more convenient for most purposes.
-* How do they get student choices out of the system and into PowerSchool?
- It looks like they export an Excel sheet. See `docs/fields.txt`.