| *** dlobo has quit IRC | 02:58 | |
| *** replaceafill has quit IRC | 02:59 | |
| *** lisppaste5 has quit IRC | 03:11 | |
| *** lisppaste5 has joined #schooltool | 03:19 | |
| *** ignas has quit IRC | 04:03 | |
| *** dlobo has joined #schooltool | 04:04 | |
| *** dlobo has quit IRC | 04:05 | |
| *** dlobo has joined #schooltool | 04:52 | |
| *** replaceafill has joined #schooltool | 07:08 | |
| replaceafill | aelkner, ping | 08:03 |
|---|---|---|
| *** mgedmin has joined #schooltool | 09:00 | |
| *** pcardune has quit IRC | 09:18 | |
| *** alga has joined #schooltool | 09:26 | |
| *** replaceafill has quit IRC | 10:10 | |
| *** pcardune has joined #schooltool | 10:25 | |
| *** mgedmin has quit IRC | 10:32 | |
| *** mgedmin has joined #schooltool | 11:06 | |
| *** yvl has joined #schooltool | 11:17 | |
| *** pcardune has quit IRC | 13:01 | |
| *** Aiste has joined #schooltool | 13:06 | |
| *** Aiste has quit IRC | 14:08 | |
| *** yvl has quit IRC | 14:27 | |
| *** ignas has joined #schooltool | 14:53 | |
| *** ignas has quit IRC | 14:53 | |
| *** ignas has joined #schooltool | 14:54 | |
| *** ignas has quit IRC | 15:06 | |
| *** ignas has joined #schooltool | 15:08 | |
| *** Aiste has joined #schooltool | 15:24 | |
| *** th1a has joined #schooltool | 15:34 | |
| *** replaceafill has joined #schooltool | 16:16 | |
| th1a | How's it going, replaceafill? | 16:17 |
| replaceafill | hey th1a, i've implemented the checkbox to deactivate the email service | 16:18 |
| th1a | Ah. Good. | 16:18 |
| replaceafill | found a remaining bug in the gradebook | 16:18 |
| replaceafill | and it seems like i have to merge fsufitchi work into a branch from yvl | 16:19 |
| replaceafill | i've been thinking about the states too | 16:19 |
| replaceafill | question about that btw: | 16:19 |
| replaceafill | should the states be independent from school years? | 16:20 |
| th1a | Yes. | 16:20 |
| th1a | Ah... I wrote this up somewhere... | 16:21 |
| replaceafill | oh, maybe it's in the blueprint | 16:21 |
| replaceafill | "The enrollment state of a person is not set by year." | 16:23 |
| replaceafill | "It represents the *current* status of the student." | 16:23 |
| th1a | Yes. | 16:24 |
| replaceafill | th1a, i've been thinking about using relationships for this | 16:24 |
| replaceafill | like courses <-> sections <-> enrollment | 16:25 |
| replaceafill | global status <-> substatus <-> student | 16:25 |
| replaceafill | or something like that | 16:25 |
| *** alga has quit IRC | 16:58 | |
| th1a | replaceafill, back from the shower... | 17:00 |
| replaceafill | :) | 17:00 |
| th1a | That should be fine. | 17:00 |
| aelkner | replaceafill: how do you envision the relationship model? | 17:02 |
| replaceafill | aelkner, kind of like the relationship with courses and sections | 17:02 |
| aelkner | those are lists | 17:03 |
| aelkner | is yours also? | 17:03 |
| replaceafill | lists as in python lists? | 17:03 |
| aelkner | as in more than one | 17:03 |
| replaceafill | ah | 17:03 |
| aelkner | what is a status object? | 17:03 |
| replaceafill | yes, but for courses for example we use to use only one, right? | 17:04 |
| aelkner | i only remember it being a list | 17:04 |
| aelkner | but that doesn't mean a relationship has to be to a list | 17:04 |
| aelkner | i'm just wondering what the possible structure of the relationship would be | 17:05 |
| replaceafill | courses = RelationshipProperty(relationships.URICourseSections, | 17:05 |
| replaceafill | relationships.URISectionOfCourse, | 17:05 |
| replaceafill | relationships.URICourse) | 17:05 |
| replaceafill | aelkner, i was thinking of the same way competencies are associated with courses and sections in cando | 17:05 |
| replaceafill | they use relationshipproperties too | 17:06 |
| aelkner | but once again, they are multiple | 17:06 |
| aelkner | i'm just wondering if there is an example of a relationship to a singleton | 17:06 |
| replaceafill | no that i know, but again, ST is using only one course for sections | 17:07 |
| replaceafill | when it's a list | 17:07 |
| replaceafill | i think it's a UI thing not to allow them to be many | 17:07 |
| replaceafill | right? | 17:07 |
| aelkner | ST allows mulit-course sections | 17:08 |
| aelkner | isn't that the reason you changed the gradebook to use a join? | 17:08 |
| aelkner | for course title | 17:08 |
| replaceafill | no, the reason of the change is when you DONT HAVE courses | 17:08 |
| replaceafill | associated with the section | 17:09 |
| aelkner | oh | 17:09 |
| replaceafill | and you use list()[0] | 17:09 |
| replaceafill | i havent seen a title being "course1, course2" in st | 17:09 |
| replaceafill | ever | 17:09 |
| replaceafill | because the UI doesn't allow it i guess | 17:09 |
| aelkner | for some reason i thought we allowed it | 17:09 |
| replaceafill | i remember ignas explaining that *in theory* you could have a section related with many courses | 17:10 |
| replaceafill | what i like about relationships is the membership handling | 17:11 |
| ignas | yeah, multi course sections were kind of planned some time ago, you should ask th1a once more what he thinks about it ;) | 17:11 |
| aelkner | :) | 17:11 |
| replaceafill | :) | 17:11 |
| replaceafill | aelkner, you had some thoughts about the enrollment status? | 17:13 |
| aelkner | no, i was just curious about it | 17:14 |
| aelkner | i was wondering if you could have more than one status | 17:14 |
| replaceafill | ah | 17:14 |
| aelkner | and what the technical advantage was in using a relationship | 17:15 |
| replaceafill | it shouldn't be neccessary i guess according to the blueprint | 17:15 |
| replaceafill | for me it is relationship handling membership | 17:15 |
| replaceafill | but i'd have to test things out | 17:15 |
| replaceafill | to find out | 17:15 |
| aelkner | if it were just one possible status, i would just add an attribute to IBasicPerson | 17:16 |
| aelkner | no evolve script necessary | 17:16 |
| aelkner | just a class attribute like status = None | 17:16 |
| replaceafill | aelkner, but the user can set custom sub-status | 17:16 |
| aelkner | is that contained in the status? | 17:17 |
| replaceafill | i was thinking of: basic status and extended status | 17:17 |
| aelkner | or is it in addation | 17:17 |
| aelkner | addition | 17:17 |
| replaceafill | i was thinking of two attributes | 17:17 |
| replaceafill | basic_status and extended_status maybe | 17:17 |
| replaceafill | the first one, its values are not supposed to change i guess | 17:18 |
| replaceafill | and the second one, the user can define new values | 17:18 |
| aelkner | those could also be basic person attrib utes | 17:18 |
| aelkner | i'm just wondering if we want to create a relationship every tme we add an attribute to an aobject | 17:18 |
| aelkner | i mean, just to avaoid over-engineering | 17:18 |
| replaceafill | again, i like the membership handling of relationships | 17:18 |
| * th1a wakes up again. | 17:19 | |
| aelkner | it handles membership well | 17:19 |
| replaceafill | but it's just an idea anyway :) | 17:19 |
| *** Aiste has quit IRC | 17:19 | |
| replaceafill | yes | 17:19 |
| aelkner | but is it necessary for this case? | 17:19 |
| th1a | Relationships are more robust. | 17:20 |
| aelkner | the whole point of the word membership suggests an open ended group of objects of a certain type | 17:20 |
| th1a | Each person *must* have one and only one basic status. | 17:20 |
| replaceafill | i even envision the same membership form you use for enrollment :) | 17:20 |
| aelkner | a section can have any number of students | 17:20 |
| replaceafill | when you are assigning multiple people to some status | 17:21 |
| aelkner | a student any number of advisors | 17:21 |
| aelkner | etc. | 17:21 |
| th1a | Each person *may* have one extended status. | 17:21 |
| replaceafill | a section any number of courses (but we dont allow it) | 17:21 |
| aelkner | still, a singleton | 17:21 |
| th1a | I guess in theory it could be multiple. | 17:21 |
| th1a | But if we want to add logic later we'd better keep it to one. | 17:21 |
| aelkner | well, if it could be multiple | 17:22 |
| aelkner | then how about having both status and substatus as members of the same relationship | 17:22 |
| replaceafill | aelkner, the other option is a single attribute with a constraint to a vocabulary or something | 17:22 |
| th1a | Isn't one of the main reasons to use relationships that it is easier to do clean up if the global status object is deleted? | 17:22 |
| aelkner | then, when you ask for the status' you get the list | 17:22 |
| replaceafill | kind of like categories in the gradebook | 17:23 |
| aelkner | th1a: yes | 17:23 |
| replaceafill | th1a, yes | 17:23 |
| th1a | I think it is mostly a matter of style. | 17:23 |
| aelkner | that's also what i was asking about before | 17:23 |
| replaceafill | that's what i value in cando | 17:23 |
| replaceafill | you get rid of the competencies and the courses get cleaned automatically | 17:23 |
| aelkner | i agree | 17:23 |
| th1a | Fewer bugs down the road. | 17:23 |
| aelkner | once again, i'd suggest just having the one relationship | 17:24 |
| aelkner | and put the status, sub-status, and any future status ideas there | 17:25 |
| aelkner | rather than creating one relationship for EACH status type | 17:25 |
| aelkner | that would seem like overkill | 17:25 |
| aelkner | whereas if you have an open-ended number of status' | 17:25 |
| aelkner | you will always code with the assumption that the list could contain any combination | 17:26 |
| aelkner | right now, that simply being: | 17:26 |
| aelkner | 1) nothing | 17:26 |
| aelkner | 2) status alone | 17:26 |
| aelkner | 3) status and sub-status | 17:26 |
| aelkner | but that could change in the future | 17:26 |
| aelkner | and using the one relationship would stay viable | 17:27 |
| th1a | Huh? | 17:27 |
| th1a | Is anyone arguing the opposite? | 17:27 |
| aelkner | i thought replaceafill was suggesting having two relationships | 17:27 |
| th1a | Oh, I see. | 17:27 |
| th1a | Yes, replaceafill is right. | 17:28 |
| aelkner | about what? | 17:28 |
| th1a | aelkner's strategy is more complicated. | 17:28 |
| th1a | One basic relationship. | 17:29 |
| th1a | One extended relationship. | 17:29 |
| th1a | That's all you need. | 17:29 |
| replaceafill | i have thought of two global containers app['schooltool.basic_status'] and app['schooltool.extended_status'] | 17:29 |
| replaceafill | both with status objects inside | 17:29 |
| replaceafill | or whatever you want to call them | 17:29 |
| replaceafill | the basic_status container should have only three objects | 17:30 |
| aelkner | what does a status object look like? | 17:30 |
| replaceafill | pre, during, post | 17:30 |
| replaceafill | the user can modify the contents of the second container | 17:30 |
| replaceafill | two attributes (maybe in ibasicperson) would point to both containers | 17:30 |
| th1a | It is ok to bake this into basic person | 17:31 |
| replaceafill | the part that i still dont get is the history | 17:31 |
| replaceafill | th1a, you want something like: (datetime, status_changed) | 17:31 |
| th1a | Yes. | 17:32 |
| replaceafill | or (datetime, from_this_status, to_this_status) | 17:32 |
| th1a | Oh, probably the second is safer. | 17:32 |
| replaceafill | we use something like the second in competencies in cando | 17:32 |
| th1a | Also, you should probably store the statuses as strings rather than object references. | 17:32 |
| replaceafill | yes | 17:32 |
| replaceafill | for me the status objects are not that complicated | 17:33 |
| replaceafill | just a title attribute maybe | 17:33 |
| replaceafill | and an id | 17:33 |
| replaceafill | maybe | 17:33 |
| *** dlobo has quit IRC | 17:33 | |
| replaceafill | status_id and status_description | 17:33 |
| * replaceafill not sure about the names yet :/ | 17:33 | |
| *** alga has joined #schooltool | 18:25 | |
| *** dlobo has joined #schooltool | 18:54 | |
| *** dlobo has quit IRC | 19:21 | |
| *** dlobo has joined #schooltool | 19:22 | |
| *** mgedmin has quit IRC | 19:38 | |
| *** mgedmin has joined #schooltool | 20:20 | |
| *** ignas has quit IRC | 20:29 | |
| dlobo | hey th1a a quick q, does schooltool use ZODB or does it use mysql as the database? | 20:32 |
| replaceafill | dlobo, zodb :) | 20:33 |
| dlobo | replaceafill: thanx | 20:33 |
| dlobo | getting a few more requests on drupal + civicrm + SIS, so i suspect i'll take a look at schooltool and figure out integration this summer | 20:34 |
| replaceafill | dlobo, theres a schooltool.xmlrpc branch if you're interested | 20:34 |
| dlobo | cool. i'll be back on the channel actively when i start looking. tackling a few non-SIS issues at the school this year :) | 20:35 |
| *** krushik has quit IRC | 21:01 | |
| *** krushik has joined #schooltool | 21:10 | |
| *** dlobo has quit IRC | 21:45 | |
| *** dlobo has joined #schooltool | 21:46 | |
| *** dlobo has quit IRC | 21:47 | |
| *** pcardune has joined #schooltool | 21:48 | |
| *** pcardune has quit IRC | 21:56 | |
| *** mgedmin has quit IRC | 22:08 | |
| *** pcardune has joined #schooltool | 23:29 | |
Generated by irclog2html.py 4.0.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!