1 | This is a list of the OLC-related things I've been working on recently, plus |
---|
2 | some ideas for the future. The general format is a overview of each of the |
---|
3 | ideas (the ones finished have a "*" next to them), followed by a list of |
---|
4 | some of the issues that need to be decided. I'm sure there are more idea of |
---|
5 | things which need to be developed, as well as more issues to be decided; |
---|
6 | this is just my first pass at it. |
---|
7 | |
---|
8 | Server: |
---|
9 | - Parameterize clients so that they can be easily adapted for OLTA, OLRL, |
---|
10 | and so on (in the past, they had to be re-compiled for each different |
---|
11 | application). Currently, they read their configuration (what to call the |
---|
12 | "consultants", "users", what to put up as a banner) out of an include |
---|
13 | file at compile time. This should be done by asking the daemon for |
---|
14 | a set of strings to use instead |
---|
15 | |
---|
16 | ? - Statistics generated as the questions are asked, instead of by |
---|
17 | ? groveling over the discuss logs at a later date. By having the daemon |
---|
18 | ? keep these logs, they are up to date minute-by-minute, and require no |
---|
19 | ? human effort to collect (vs. the fair amount of effort that went into |
---|
20 | ? extracting them from the logs the last time I did it). There is |
---|
21 | ? rudimentary support for this in the daemon already. |
---|
22 | |
---|
23 | - The number/names of queues and the rules for how questions get |
---|
24 | automatically moved between them should be parameterized in a file, instead |
---|
25 | of being hardcoded into the binary. |
---|
26 | |
---|
27 | - A better load_data() needs to be written for olcd that reads the |
---|
28 | information from the queue list file and the individual info files instead |
---|
29 | of the backup.dat file; this way, the expensive calls to backup_data can |
---|
30 | be avoided. At the same time, a more comprehensive check of the data |
---|
31 | integrity and the check of the logs that are actually present can be done. |
---|
32 | |
---|
33 | - Additional (non-user visible) optimizations can be made in the main |
---|
34 | daemon: |
---|
35 | - hash table instead of linked-list for "knuckles" (user records) |
---|
36 | - tuning of memory allocation |
---|
37 | |
---|
38 | |
---|
39 | Clients: |
---|
40 | - Simplify adding people to acl's - most of them are redundant, and |
---|
41 | should be the same things as existing lists. Perhaps getting the lists |
---|
42 | from moria instead of maintaining them locally? Or just having a batch |
---|
43 | procedure for entering masses of volunteers/consultants to the "right" |
---|
44 | acls? (This comes up most in OLTA, when batches of TA's need to be |
---|
45 | added at the beginning of the semester). (low priority) |
---|
46 | |
---|
47 | - Some sort of broadcast message to all users in a certain |
---|
48 | category- for example, the ability to tell all users with unseen |
---|
49 | questions "xxxx is down right now; to find out if your home directory |
---|
50 | is on xxx.... otherwise, a consultant will be with you soon". The |
---|
51 | issues of how to select/narrow down the category needs to be worked out. |
---|