replaceafill | th1a, you around? | 00:15 |
---|---|---|
th1a | hi replaceafill. | 00:42 |
replaceafill | th1a, still there? | 01:42 |
*** replaceafill has quit IRC | 02:39 | |
*** robb_nl has joined #schooltool | 11:52 | |
*** replaceafill has joined #schooltool | 16:44 | |
replaceafill | hey th1a | 16:44 |
th1a | hi replaceafill. | 16:51 |
th1a | just a sec... | 16:52 |
th1a | OK. | 16:53 |
th1a | Good work on the script. | 16:53 |
replaceafill | i just replied to Fran's email | 16:54 |
replaceafill | can we talk about the 2nd point? | 16:54 |
th1a | Yes. | 16:55 |
replaceafill | what do you think about my "advanced view" suggestion | 16:56 |
replaceafill | to edit level history | 16:57 |
replaceafill | i think it'd solve some related issues | 16:57 |
th1a | I'm not sure what you mean in terms of editing the history at will. | 16:57 |
th1a | You mean, add changes in arbitrary points in the past? | 16:58 |
replaceafill | yeah | 16:58 |
th1a | Sure, yeah. | 16:58 |
th1a | What is Fran's bug exactly? | 16:58 |
*** robb_nl has quit IRC | 16:58 | |
replaceafill | i think it's related to the edge cases i mentioned yesterday | 16:59 |
th1a | I mean, does her suggestion also make sense? | 16:59 |
th1a | Using an earlier backup? | 16:59 |
replaceafill | most of the unenrolled students they have | 16:59 |
replaceafill | had weird history like | 16:59 |
replaceafill | level 2, inactive, 2015-10-27 | 17:00 |
replaceafill | level 2, active, 2016-01-11 | 17:00 |
replaceafill | and they were unenrolled | 17:00 |
th1a | OK, so it is really a problem with their data. | 17:01 |
th1a | Not the script. | 17:01 |
replaceafill | yeah | 17:01 |
th1a | OK. | 17:01 |
th1a | And we should say we don't want to start trying to programmatically correct these errors. | 17:02 |
replaceafill | definitely | 17:02 |
th1a | OK. | 17:02 |
replaceafill | that's why i suggest that view | 17:02 |
th1a | Maybe I can explain that point a little more then. | 17:02 |
replaceafill | cool | 17:02 |
th1a | Or... | 17:02 |
th1a | Was that weird behavior possibly caused by the graduation view? | 17:03 |
th1a | That wouldn't have reactivated their level. | 17:03 |
replaceafill | i don't think so | 17:03 |
replaceafill | i think, and i haven't checked yet | 17:03 |
replaceafill | that the promotion view took unenrolled students into account | 17:04 |
replaceafill | if we are really interested on how they got there... i could dig | 17:04 |
replaceafill | btw | 17:05 |
th1a | OK, but the script did not cause the issue. | 17:05 |
replaceafill | this is not the first problem rising has had with dates | 17:05 |
replaceafill | i don't think so | 17:05 |
replaceafill | oh another thing | 17:06 |
replaceafill | if we add this new view | 17:06 |
replaceafill | i think it should allow you to DELETE status/dates | 17:07 |
replaceafill | like if you have a relationship like: | 17:07 |
replaceafill | level 1, 2016-01-01, enrolled | 17:07 |
th1a | Yeah... | 17:07 |
replaceafill | level 1, 2016-02-01, inactive | 17:07 |
th1a | I was thinking the same thing. | 17:08 |
replaceafill | level 1, 2016-03-01, inactive | 17:08 |
replaceafill | the 3rd status is redundant | 17:08 |
replaceafill | and rising data has had this problem | 17:08 |
replaceafill | in any case, the script should have taken a snapshot of the db | 17:09 |
replaceafill | in case Fran wants a different solution | 17:09 |
replaceafill | (comparing from a different date, etc) | 17:09 |
*** robb_nl has joined #schooltool | 17:15 | |
replaceafill | that's all i got th1a | 17:19 |
*** robb_nl has quit IRC | 17:25 | |
replaceafill | th1a, you around? | 17:51 |
*** robb_nl has joined #schooltool | 18:39 | |
th1a | hi replaceafill. | 19:05 |
replaceafill | can you take Fran's last email | 19:05 |
replaceafill | now i understand what she meant from the beginning | 19:06 |
th1a | Ah. | 19:06 |
th1a | What then? | 19:06 |
replaceafill | but this is your area of expertise | 19:06 |
th1a | I don't know the problem. | 19:06 |
replaceafill | so, students were promoted | 19:07 |
replaceafill | beginning of year, right? | 19:07 |
replaceafill | then they were unenrolled from the END OF LAST YEAR | 19:07 |
replaceafill | that part doesn't make sense to me | 19:08 |
th1a | Are we talking about this scenario: | 19:08 |
th1a | level 2, inactive, 2015-10-27 | 19:08 |
th1a | level 2, active, 2016-01-11 | 19:08 |
replaceafill | Fran's argument is that people didn't know they were not coming | 19:08 |
replaceafill | beforehand | 19:08 |
replaceafill | yeah | 19:08 |
replaceafill | so, the unenrolled view took the active level | 19:08 |
replaceafill | and set it inactive | 19:08 |
replaceafill | but from the date of unenrollment | 19:08 |
replaceafill | unenroll view* | 19:09 |
th1a | I don't understand the sequence of events. | 19:09 |
replaceafill | ok, student enrolled in level 1 | 19:10 |
replaceafill | starting 2015-01-01 | 19:10 |
replaceafill | ok? | 19:10 |
th1a | OK. | 19:10 |
replaceafill | beginning of 2016 comes | 19:10 |
replaceafill | they promote the student | 19:10 |
replaceafill | student old level data is deleted | 19:10 |
replaceafill | (by the bugged promote view) | 19:10 |
th1a | DELETED? | 19:10 |
th1a | Oh. | 19:10 |
th1a | OK. | 19:11 |
replaceafill | then level 2 is set from the start of the new year | 19:11 |
replaceafill | level 2, 2016-01-01, active | 19:11 |
replaceafill | then school realizes student won't come back | 19:11 |
replaceafill | uses unenroll view with date 2015-12-31 (or whatever last day is) | 19:11 |
replaceafill | they used october iirc | 19:12 |
replaceafill | get it? | 19:12 |
th1a | So, the fact of the matter is they promoted a student who had already withdrawn. | 19:13 |
replaceafill | then script runs | 19:13 |
replaceafill | yea | 19:13 |
replaceafill | h | 19:13 |
th1a | OK, what does the script do? | 19:13 |
replaceafill | but Fran's argument is that they didn't know | 19:13 |
replaceafill | so, script runs | 19:13 |
replaceafill | sees level 1, 2015-01-01, active | 19:13 |
replaceafill | and sets it back | 19:13 |
replaceafill | then see the student is unenrolled, no more states for level 1 in old data | 19:14 |
replaceafill | and sets level 1 as inactive | 19:14 |
replaceafill | imho the script did the right thing | 19:14 |
replaceafill | but the student should have been set as graduated | 19:15 |
replaceafill | from level 1 | 19:15 |
th1a | Which has no actual practical significance at this point? | 19:15 |
replaceafill | no, but all promoted students have been set as graduated | 19:15 |
replaceafill | and the unenroll student graduated from the last level imo | 19:16 |
replaceafill | they just retired *this* year | 19:16 |
replaceafill | in the regent school case | 19:17 |
replaceafill | this affected like 5 students | 19:17 |
replaceafill | so imho manual fixing works | 19:17 |
th1a | OK. | 19:17 |
th1a | Whew. | 19:17 |
replaceafill | > And did the script pick them up because, I would have thought that | 19:17 |
replaceafill | > student wouldn’t have had any level associated on the date the | 19:17 |
replaceafill | > comparison was run? | 19:17 |
replaceafill | the student had history | 19:17 |
replaceafill | on the third paragraph | 19:18 |
replaceafill | i already published the dashboard fix | 19:18 |
replaceafill | it seems like Fran is missing some of my emails | 19:18 |
replaceafill | i'm not sure what she refers to with "and fixes to the other roll over pieces" | 19:19 |
replaceafill | th1a, can you take that one, i need to go get Camila? | 19:19 |
th1a | Whew. | 19:19 |
th1a | Do you have five more minutes? | 19:19 |
replaceafill | sure | 19:19 |
th1a | OK, so it is the end of the year. | 19:20 |
th1a | You promote everyone. | 19:20 |
replaceafill | no no | 19:20 |
th1a | ? | 19:20 |
replaceafill | it's the beginning of the new year | 19:20 |
th1a | OK, yes. | 19:20 |
replaceafill | promote works with new year's start date | 19:20 |
replaceafill | graduate works from last year end date | 19:20 |
th1a | But those can be reset. | 19:20 |
th1a | Those are just the defaults? | 19:21 |
replaceafill | yes, but promote uses a single date for setting last level graduate and new level active | 19:21 |
th1a | OK. | 19:21 |
th1a | I think as far as recommendations go, I would recommend schools *generally* try to actually have events happen on the *real* calendar date. | 19:22 |
th1a | Unless they have a good reason otherwise. | 19:22 |
replaceafill | we're going back in time in my head :D | 19:22 |
replaceafill | this is where i recommended promote to have 2 dates | 19:23 |
th1a | Well, yeah. | 19:23 |
replaceafill | but anyway | 19:23 |
th1a | I mean, not so much even the promote/graduate views here. | 19:23 |
th1a | But the problem is unenrolling an individual in the past. | 19:23 |
replaceafill | correct | 19:23 |
th1a | OK. | 19:23 |
replaceafill | that's what i don't agree with | 19:23 |
th1a | Let's go with that. | 19:23 |
replaceafill | you just realized they're not coming back | 19:23 |
replaceafill | set them as unenrolled the date you realized | 19:24 |
replaceafill | ok | 19:24 |
replaceafill | ok, i need to go | 19:24 |
replaceafill | brb in ~45-60 | 19:24 |
th1a | OK, I'm not going to answer this yet. | 19:24 |
replaceafill | do you need anything else from me? | 19:25 |
th1a | I need to talk this through a bit more if I'm not just going to say "OK, we'll fix it." | 19:26 |
th1a | I don't completely understand it. | 19:26 |
th1a | I'll tell her you pushed the changes. | 19:26 |
replaceafill | ok | 19:26 |
replaceafill | later | 19:26 |
replaceafill | back th1a | 20:14 |
th1a | hi replaceafill. | 20:15 |
th1a | Just a sec... | 20:15 |
th1a | OK. | 20:19 |
th1a | So, is this at least in part a question of how unenroll should handle existing future (next year) changes? | 20:19 |
th1a | So if you promote someone, they get a new level in the second year. | 20:20 |
th1a | If you unenroll them for the first year should that level be removed by unenrol? | 20:20 |
th1a | Is that the underlying issue here? | 20:20 |
replaceafill | i guess | 20:21 |
th1a | I would say it is too aggressive for unenroll to try to undo a lot of future events. | 20:22 |
replaceafill | i agree | 20:22 |
th1a | OK. | 20:22 |
th1a | Otherwise, the *but* part of it you're saying is just that potentially students who graduated a level ended up as just inactive? | 20:22 |
th1a | the *bug* | 20:23 |
replaceafill | hm? | 20:23 |
replaceafill | i don't understand your question | 20:24 |
replaceafill | what bug part? | 20:24 |
replaceafill | one conclusion i've come to | 20:24 |
replaceafill | we need to document all this crap | 20:24 |
replaceafill | in the book | 20:24 |
th1a | so, script runs | 20:25 |
th1a | sees level 1, 2015-01-01, active | 20:25 |
th1a | and sets it back | 20:25 |
th1a | then see the student is unenrolled, no more states for level 1 in old data | 20:25 |
th1a | and sets level 1 as inactive | 20:25 |
th1a | imho the script did the right thing | 20:25 |
th1a | but the student should have been set as graduated | 20:25 |
th1a | from level 1 | 20:25 |
replaceafill | ah right | 20:25 |
replaceafill | that's the bug part | 20:25 |
replaceafill | correct | 20:25 |
replaceafill | becuase the script is checking against their *current* enrollment/unenrollment state | 20:26 |
replaceafill | so those 5 people were already marked as unenrolled | 20:26 |
th1a | OK... | 20:26 |
th1a | Oh, what about her last email? | 20:29 |
th1a | This was your announcement: I fixed the issue (schooltool.ark 2.10.16) with the dashboard. The | 20:30 |
th1a | problem was that the weekly attendance chart was taking "future" dates | 20:30 |
th1a | into account and failing silently. | 20:30 |
th1a | ? | 20:30 |
replaceafill | yeah | 20:30 |
th1a | OK. | 20:30 |
replaceafill | it's not an announchment | 20:30 |
th1a | I mean, that's what she missed? | 20:31 |
replaceafill | yeah | 20:31 |
th1a | OK. | 20:31 |
th1a | We need a template for this... | 20:31 |
th1a | Do you understand this question? | 20:34 |
th1a | Also can you tell me if the Uganda team should use the date for comparison of the level history before the end of term to account for anyone who has been unenrolled since then? | 20:34 |
replaceafill | date to use with repozo | 20:35 |
replaceafill | to get the comparison database | 20:35 |
th1a | OK, so we're saying that's not the problem? | 20:35 |
replaceafill | ok, question from me | 20:36 |
replaceafill | what should the script do in those conditions | 20:36 |
th1a | ... | 20:36 |
replaceafill | in the edge case i described earlier today | 20:36 |
replaceafill | the rising edge case | 20:36 |
th1a | I terms of graduated versus inactive? | 20:36 |
replaceafill | yeah | 20:36 |
th1a | Can you tell which they are supposed to be? | 20:37 |
replaceafill | the script assumes you graduated | 20:37 |
replaceafill | only if you have an active level in the next year | 20:37 |
replaceafill | and you're not unenrolled | 20:37 |
replaceafill | that is UNENROLLED IN THE PRODUCTION DATABASE | 20:38 |
replaceafill | and the script just restores old data | 20:38 |
replaceafill | doesn't change current year's level memberships | 20:38 |
th1a | Well, I think it is correct and the date for the repozo backup should be as close to the date that the promotion was run as possible, right? | 20:39 |
replaceafill | yeah | 20:39 |
th1a | Plus, that's not really an issue that shows up anywhere. | 20:39 |
th1a | OK. | 20:39 |
th1a | So... | 20:40 |
th1a | Can you please take a look at how the unenrol link handles everything in the next year? | 20:40 |
th1a | What, if anything, does it try to undo? | 20:40 |
th1a | Although I guess level isn't tied to year anyhow... | 20:41 |
replaceafill | level-wise unenroll only deactivates the active level | 20:42 |
replaceafill | section-wise it removes the student only if the date is in the term or it's before the term | 20:43 |
replaceafill | future sections i believe | 20:43 |
th1a | future sections are...? | 20:43 |
th1a | removed or not. | 20:43 |
replaceafill | sections which term start after the unenroll date | 20:44 |
replaceafill | removed | 20:44 |
replaceafill | i mean, the student is removed (withdrawn) from the sections | 20:44 |
replaceafill | and groups | 20:44 |
th1a | As of? | 20:45 |
replaceafill | unenroll date | 20:45 |
th1a | Even though it might be before the enrolment is active? | 20:45 |
replaceafill | correct | 20:46 |
th1a | That's a bug then... | 20:46 |
th1a | OK, and level is different because it isn't by year. | 20:46 |
replaceafill | what's the solution to the bug? | 20:47 |
th1a | Not unenrolling them before promoting them. | 20:47 |
replaceafill | ok | 20:48 |
th1a | The thing is, you'd have to dump Added on Errors on top of future level changes, which would be ugly if the student came back. | 20:48 |
th1a | OK, so... what about the student attendance report and gradebook view? | 20:49 |
replaceafill | i'll try | 20:49 |
th1a | OK. | 20:49 |
replaceafill | but i don't promise | 20:49 |
replaceafill | sorry | 20:49 |
th1a | I'd do the gradebook first. | 20:49 |
replaceafill | ok | 20:49 |
th1a | Yeah, no problem. | 20:49 |
replaceafill | the gradebook one | 20:49 |
replaceafill | tell me what the tab should o | 20:49 |
replaceafill | do | 20:49 |
replaceafill | i was thinking | 20:50 |
replaceafill | from that context makes sense | 20:50 |
replaceafill | from the School context | 20:50 |
replaceafill | to redirect dynamically | 20:50 |
replaceafill | but it's added complexity | 20:50 |
replaceafill | what the tab currently does is take the active year | 20:50 |
replaceafill | and run from there | 20:50 |
replaceafill | since the new year in rising didn't have sections | 20:50 |
replaceafill | the tab didn't know where to go to | 20:50 |
replaceafill | "go to previous year sections"? | 20:51 |
th1a | Oh... | 20:51 |
th1a | if there are no sections... do you not have a gradebook tab? | 20:51 |
th1a | Is that why this came up? | 20:51 |
th1a | That is | 20:51 |
th1a | If you are not an instructor of any sections, there is no tab at all. | 20:52 |
replaceafill | yeah, but this is for admins too | 20:52 |
th1a | The obvious thing would be to just redirect to a year with sections? | 20:53 |
th1a | Or have a "This year has no sections (or whatever)." | 20:53 |
th1a | Page. | 20:53 |
replaceafill | we kind of dropped that page in flourish | 20:53 |
th1a | I don't have a strong feeling about it... | 20:54 |
replaceafill | ask Fran? | 20:55 |
th1a | How do you navigate to it in this case? | 20:55 |
th1a | I don't really understand what we're talking about. | 20:55 |
replaceafill | from the School tab | 20:55 |
replaceafill | ok | 20:55 |
th1a | You go to... ? | 20:56 |
replaceafill | School | 20:56 |
replaceafill | as admin | 20:56 |
th1a | And? | 20:56 |
replaceafill | this won't affect you if you're a teacher | 20:56 |
replaceafill | for admins the view tries to load sections in the active year | 20:57 |
th1a | Which view? | 20:57 |
replaceafill | ok, the "tab" | 20:57 |
th1a | WHICH TAB? | 20:57 |
replaceafill | Gradebook | 20:57 |
th1a | TAB | 20:57 |
th1a | ? | 20:57 |
replaceafill | those things we have in the header navigation... | 20:57 |
replaceafill | Home | 20:57 |
replaceafill | CanDo | 20:57 |
replaceafill | Gradebook | 20:57 |
replaceafill | Student Attendance | 20:57 |
replaceafill | ... | 20:57 |
th1a | I thought this was from the School tab? | 20:58 |
replaceafill | lol | 20:58 |
replaceafill | it's from anywhere th1a | 20:58 |
th1a | OK. | 20:58 |
th1a | Seriously. | 20:58 |
th1a | What is the sequence of events which leads to the bug. | 20:58 |
th1a | I'm on the School page. | 20:58 |
th1a | Then I... ? | 20:58 |
replaceafill | click Gradebook tab | 20:58 |
replaceafill | boom server error page | 20:58 |
replaceafill | that's it | 20:58 |
replaceafill | that's the sequence | 20:58 |
th1a | OK, so I don't need to be on the school page. | 20:58 |
replaceafill | not really | 20:59 |
th1a | OK... | 20:59 |
th1a | Do we have a running demo of this? | 20:59 |
replaceafill | nope | 20:59 |
th1a | I'm completely at sea now. | 20:59 |
th1a | OK, hangout. | 20:59 |
replaceafill | hold on | 20:59 |
th1a | OK, working. | 21:03 |
th1a | Well, slowly... | 21:04 |
replaceafill | so, no sections in active year | 21:04 |
replaceafill | yeah | 21:04 |
replaceafill | Camila's youtubing... | 21:04 |
replaceafill | :S | 21:04 |
th1a | lol | 21:04 |
replaceafill | i'll block the tablet ;) | 21:04 |
th1a | I don't think it is the bandwidth. | 21:04 |
replaceafill | try again? | 21:04 |
th1a | OK. | 21:05 |
th1a | OK, so it has the year selector. | 21:06 |
th1a | If there are no sections this doesn't appear? | 21:06 |
th1a | No sections in the system = no Gradebook tab? | 21:07 |
replaceafill | the year seector? | 21:07 |
th1a | The gradebook view has a year menu. | 21:07 |
th1a | OK, sorry. | 21:07 |
th1a | Starting over. | 21:07 |
th1a | If there are no sections in the system, the Gradebook tab does not show up? | 21:08 |
th1a | (for the admin?) | 21:08 |
replaceafill | no, it always tries to show | 21:08 |
th1a | OK, that's irrelevant anyhow. | 21:08 |
replaceafill | yeah | 21:08 |
th1a | So yeah, just set it to the existing year. | 21:09 |
th1a | If the new year has no sections. | 21:09 |
replaceafill | kk | 21:09 |
th1a | Sorry that was so nuts. | 21:10 |
replaceafill | ST is nuts :) | 21:11 |
th1a | No... just me not looking at what we're talking about is nuts. | 21:11 |
th1a | Also me feeling like "Is there some reason why the obvious thing is not obvious here... ?" | 21:12 |
th1a | OK. | 21:12 |
th1a | I"ll email Fran. | 21:12 |
replaceafill | cool | 21:12 |
replaceafill | can i stop the instance now? | 21:13 |
th1a | yes. | 21:13 |
replaceafill | ok, i'll go get lunch | 21:14 |
*** robb_nl has quit IRC | 21:35 | |
*** robb_nl has joined #schooltool | 21:57 | |
*** robb_nl has quit IRC | 23:23 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!