IRC log of #schooltool for Friday, 2012-11-30

*** menesis has quit IRC06:36
*** khildin has joined #schooltool11:15
*** menesis has joined #schooltool12:20
*** yvl has quit IRC13:55
*** ignas has joined #schooltool14:12
*** replaceafill has joined #schooltool15:59
*** paulproteus has quit IRC17:00
*** paulproteus has joined #schooltool17:07
th1areplaceafill:  Can you do a hangout this morning?17:19
replaceafillsure, i'm eating now :)17:19
replaceafilli'll be done in ~2017:19
replaceafilland i'm testing the importer in the vps17:20
replaceafillthe fix works for glenda's old database17:34
th1aYeah, we just need to figure out exactly what she's doing.17:35
replaceafilli'm ready to hangout if necessary17:36
th1aDoes glenda just want a different order, replaceafill?17:42
replaceafillit seems like the change didnt propagate to the section skills17:43
replaceafillthe administrative view show the right order17:43
th1aIs it working for you?17:44
replaceafilli have that same order (from her last email)17:44
th1aIs it possible she's using the wrong repository?17:44
th1aOh, you have the same result.17:44
th1aYou've replicated her bug.17:45
replaceafilli mean17:45
replaceafilli mean, i have:17:45
replaceafillwork ethic17:45
replaceafillyou can log in to the vps to see it btw ;)17:45
th1aI'm usually not the one pushing for a hangout but right now we're fucked without one.17:45
replaceafilltrue :D17:45
th1aYou've replicated her bug?17:45
replaceafilli could just share my screen to see you the right order in my gradebook17:46
replaceafillno, the fix works in my instance17:46
replaceafillwith her *old* data17:46
replaceafillimho, something has happened between the time *old data* was taken and when she upgraded17:46
replaceafilli asked her for the files and she replied (to me only) that she's going to get them17:47
replaceafill"A picture is worth a thousand words"17:51
th1aAnd you get that in the gradebook too?17:52
th1aOh, that's the scoring form.17:52
* th1a is going to be out until about 1:00.18:19
th1aThe challenge is just figuring out the state of Glenda's instance.18:20
replaceafilli'll wait for the two files i requested18:20
th1aIf she's ready to hang out before I'm back, go ahead.18:20
th1aI won't scold you about chain of command.  ;-)18:20
*** ignas has quit IRC19:29
replaceafillsince i forgot to reply all in my last email to glenda :D20:09
replaceafilli did cc you th1a ;)20:09
replaceafillglenda's database already has the new skills imported20:09
replaceafillso, when she reimports20:09
replaceafillthe importer doesn't detect any changes20:09
replaceafillso, it doesn't force the update of the section skills20:10
replaceafillagain, if i go to a single course and reassociate its skills, the section update is forced20:10
aelknerreplaceafill, th1a, hey, i got the project skill copy fixed so that the scoresystem gets carried over20:52
replaceafillaelkner, great20:52
aelknerthe thing is, the score validation logic assumes a ranged values scoresystem20:52
aelknerso the logic of comparing the score to bestScore() for whether the socre is extra credit is off20:53
aelknerbecause B > A20:53
aelknerreplaceafill, can you look at that with me a sec?20:53
replaceafillimho score systems are still f***ed20:53
aelknerclass FlourishGradebookValidateScoreView(JSONViewBase)20:53
replaceafillbut i know what you mean20:53
aelknerreplaceafill, yes, they're f***ed :)20:54
replaceafilli'm there aelkner20:54
aelknerthe thing is, each score has a display value and a numeric value20:54
aelknerit's the numeric value that really matters in determining averages and extra credit20:55
replaceafillaelkner, you know that cando has it's own validation view, right?20:55
replaceafillit doesn't use the gradebooks20:55
aelkneryou would think that would be the case, but the pdb breakpoint in cando's code was not reached20:56
aelknerbut the gradebook one was20:56
aelkneryeah, weird, hugh?20:56
aelkneri guess the cando pne is only for student gradebook20:56
replaceafillyou're rigth20:56
aelknerthat's what i assumed20:56
aelknerok, good20:56
aelkneri can see why you would want it to go to the gradebook one, code reuse and all20:57
replaceafillthe name is different20:57
aelkneryou know historically, the gradebook average logic has changed over tme20:57
aelknerat one point we decided that only ranged values scoresystems were allowed20:58
replaceafillright, the section gradebook for cando uses the gradebook's logic, you're right20:58
aelknerbecause the idea of averaging A-F with 1-100 didn't make much sense20:58
aelknerwell, now i think we need to revisit that discussion if we are gong to have flexible skill scoresystems20:59
aelknerwhat will it mean to average, say, Competency (1-4) with Extended Letter Grade (A+-F)?20:59
aelknerth1a, we're back to that again21:00
th1aOh, yes, what?21:00
th1aThe activity gradebook and the cando gradebook are inherently different insofar as one always uses ranged score systems and as far as I'm concerned, the other only uses discrete ones.21:01
th1aAlthough I guess we might not have discussed that explicitly.21:02
aelknerwell, using discrete socresystems reintroduces the averaging problem21:02
aelknerthat we carefully eliminated by limiting gradebook to ranged values21:03
th1aIt isn't that much of a problem.21:03
aelknerwhat will it mean to average, say, Competency (1-4) with Extended Letter Grade (A+-F)?21:03
th1aFirst off, it isn't very important; second, there is no right answer, BUT21:04
th1ain a discrete score system you give each score a value, right?21:04
th1aSo, if you want them to make sense averaged together, it is up to the user to set those values in a sane way.21:04
th1aIf a A = 10 and 1 = 4, and they average to 7, which makes no sense, that's not really our problem.21:05
aelknerPass = 1, Fail = 021:06
aelknerA = 4, F = 021:07
aelknerso Pass + B / 2 = ...21:07
th1aThat's their problem.21:07
aelkner(1 - 0) / (1 - 0) the diff between lo and high + (3 - 0) / (4 - 0)21:08
aelknerall then devided by 221:08
th1aIs that how we do it now?21:08
aelkneractually, sorry, bad formula21:08
aelknerit's 1 + 3 / ((1 - 0) + (4 - 0) = 4 / 5 = .821:09
aelkner80 %21:09
th1aOr that.21:09
th1aI'm ok with that.21:09
aelknerthen that value needs to be translated to whatever scoresytem they se for average21:09
th1aI clearly thought more carefully about this the first time.21:10
aelkneryeah, we can give them that21:10
th1aAnyhow, this is not broken.21:10
aelknerso, replaceafill, we just need to use numerical values everywhere instead of display values21:10
aelkneri can play with this stuff this weekend and i've already set up some tests21:11
aelkneri can build on it and fix the calculations21:11
replaceafillaelkner, kk21:12
aelkneras long as i don't break existing tests it should be ok21:12
replaceafillwhere do we use display values?21:12
replaceafillah, i remember doing some int(...) in virginia21:13
replaceafilli put a big #XXX though :D21:13
aelknerin that validation routine, FlourishGradebookValidateScoreView21:13
replaceafill score = scoresystem.fromUnicode(score)21:14
aelkneryeah, it's great how XXX just fixes code all by itself :)21:14
aelkneryeah, that line does nothing21:14
aelknerit doesn't return the numerical value, it returns the display value21:14
replaceafillagain, the scoresystems... f***ed21:15
aelknerthat's why B > A21:15
replaceafilltake into account minium and maximum types for scoresystems21:15
replaceafillwhen fixing the validation logic21:15
aelkneryeah, it's (value - min) / (max - min)21:16
aelknerif it's just one score, ofc21:16
replaceafillgood luck aelkner :)21:16
replaceafilli know how messy that part is :(21:16
aelknerthe formula i stated above is an example of two scores with two different scoresystems21:16
aelknernp, i did work with it in the past, so it's not a new problem for e21:16
aelknerjust to give a example with two scores:21:18
aelkner((value1 - min1) + (value2 - min2)) / ((max1 - min1) + (max2 - min2))21:18
aelknermakes sense?21:19
* replaceafill is confused by aelkner's formula21:20
replaceafillbut nm :D21:20
replaceafilli trust stests :P21:20
replaceafillhhmm... although my stest didn't catch glenda's current case :D21:20
aelknerreplaceafill, you see, in theory, a scoresystem could go from 2-521:21
aelknerso a 3 is really worth (3 - 2) / ( 5 - 2)21:22
aelknerit's one rung up a four rung latter21:22
th1aI'm really not sure we should be taking the low value in to consideration.21:22
th1aIn fact, I'd say we shouldn't.21:22
aelknerah, yes, th1a, good point21:22
replaceafilldidn't we have a bug related to that?21:23
aelkneri think i saw a discussion about that21:23
replaceafillyou fixed it, right aelkner?21:23
aelknerthe low value is just to be generous to all students21:23
aelknerlike how we give trophies to the losers, too, here in america, soccer mom's that is21:23
aelknerbut seriously, the min value just means that noone can get a zero21:24
th1ait is not so much that.21:24
aelknerit does't mean that the min + 1 is only worth 121:24
th1aThe point is really that it makes raising a low grade later in the quarter too difficult.21:24
th1aThat is, an F and and A should average to a C or D.21:25
th1aBut if you can get a zero, they might average to an F.21:25
aelknernot sure what you're referring to there, perhaps if you stated it concretely, i.e., with numbers21:26
aelknerbut if you'd rather not bother, that's ok21:26
aelkneri'll just us the sum of the maxes as the denominator21:27
aelkneruse ^21:27
aelknerand use the actual numerical value, not value - min21:27
aelknerfor the nominator parts21:27
aelknervalue1 + value2 / (max1 + max2)21:28
aelknerinstead of more complicated formula stated above21:28
aelknerforgot parentheses in numerator, but you get the idea21:28
th1aWhat I'm saying that actually matters is that when a school uses in effect a 50-100 score system, they don't want you to calculate it as if 50 translates to 0 and 100 translates to 50.21:29
th1aThey're just setting a lower bound for valid numbers.21:30
aelkneryeah, that was what my trophie joke was about21:30
th1aBut the rationale is the general sense that the average of F and A needs to be a passing grade.21:30
th1aAnd using the floor of 50 to allow that.21:30
aelkneroh, yeah, that21:31
aelknerthat's like what i remember form groing up21:31
aelknerwe actually didn't have grades below 50 for the reason you just stated21:32
aelkneranyway, the calculation i just posted will do the trick21:32
aelknerenough said on the subject, thanks guys21:33
th1aYou don't want to start over on a more philosophical level?21:36
th1aSo where are we with Glenda at this moment, replaceafill?21:37
replaceafilli think we'll be ok21:37
replaceafillas long as nobody has used the new skills XLS yet21:38
replaceafillwhich i think is the case21:38
th1aHow many courses would she have to manually reset?21:38
replaceafilllet me see...21:38
th1aSo... is there anything we can do to help HER out... this is just her demo, right?21:39
th1aSome kind of quickie script for her...21:39
replaceafilli could run a hacked batch assignment view on her database21:40
replaceafilli don't know which one would be more difficult for her21:40
replaceafillto do21:40
replaceafillputting a fixed database in place or running a script21:40
th1aProbably putting the fixed database back is easier.21:41
replaceafillor... we could add the option to override in batch assign :)21:41
replaceafilli think so too21:41
th1aYes, but then we'd have to push an update.21:43
th1aAnd I don't want to stop for that again.21:43
th1aOne more thing Glenda...21:43
replaceafillthe importer is doing what is right i think21:44
th1aI don't think this is a real bug.21:45
th1aIt is a minor bug.21:45
replaceafillit's a data problem :D21:45
th1aA data model issue?!?21:46
* th1a goes to get Vivian.21:53
*** mobert has quit IRC22:00
* replaceafill goes to get lunch, bb in ~1h22:11
replaceafillth1a, sent instructions to glenda on how to replace the db, she said she'll work on it on monday23:26

Generated by 2.15.1 by Marius Gedminas - find it at!