| *** th1a has quit IRC | 00:20 | |
| *** th1a has joined #schooltool | 00:23 | |
| *** replaceafill has quit IRC | 00:48 | |
| *** th1a has quit IRC | 01:09 | |
| *** menesis has quit IRC | 02:27 | |
| *** th1a has joined #schooltool | 02:28 | |
| *** th1a has quit IRC | 04:03 | |
| *** th1a has joined #schooltool | 05:33 | |
| *** th1a has quit IRC | 06:00 | |
| *** th1a has joined #schooltool | 06:10 | |
| *** th1a has quit IRC | 07:32 | |
| *** yvl has joined #schooltool | 09:23 | |
| *** menesis has joined #schooltool | 09:52 | |
| *** khildin has joined #schooltool | 10:54 | |
| *** menesis has quit IRC | 11:36 | |
| *** menesis has joined #schooltool | 12:33 | |
| *** menesis has quit IRC | 13:10 | |
| *** menesis has joined #schooltool | 13:48 | |
| *** menesis has quit IRC | 13:53 | |
| *** menesis has joined #schooltool | 13:53 | |
| *** menesis has quit IRC | 13:58 | |
| *** menesis has joined #schooltool | 14:00 | |
| *** menesis has quit IRC | 14:04 | |
| *** replaceafill has joined #schooltool | 14:53 | |
| *** jelkner has joined #schooltool | 14:53 | |
| jelkner | Good morning replaceafill! | 14:54 |
|---|---|---|
| replaceafill | good morning jelkner :) | 14:54 |
| jelkner | pgully isn't here yet, but you and i could start now and he could read the log... | 14:54 |
| replaceafill | ok | 14:54 |
| jelkner | things are going well, methinks | 14:55 |
| jelkner | my daily quizzes are working to help me figure out how the class is doing, and to reinforce the ideas students may have missed in reading and disucssion | 14:55 |
| jelkner | the automatic generation of skills seems to be working well also, aside from the bug i reported yesterday | 14:56 |
| jelkner | (which pgully did not say he fixed yet) | 14:56 |
| jelkner | do you know what the problem is with that one? | 14:56 |
| jelkner | the scores appear to be accurate | 14:57 |
| replaceafill | not really | 14:57 |
| jelkner | except for students who have not taken any quizzes at all. | 14:57 |
| replaceafill | i still consider that feature (the one developed in pycon) "beta" | 14:57 |
| jelkner | of course | 14:57 |
| replaceafill | since you just started using it "for real" | 14:57 |
| jelkner | but that is what we are here for now, right? | 14:57 |
| replaceafill | right | 14:57 |
| jelkner | to test it and make sure it works. | 14:58 |
| jelkner | anyway, i'll talk to pgully when he gets here, but we need to fix that bug. | 14:58 |
| jelkner | so, the real reason i requested this meeting is to figure out what comes next. | 14:58 |
| jelkner | i would say that the experiment so far has been a smashing success from my point of view. | 14:59 |
| jelkner | but i haven't entered in any skills scores directly yet. | 14:59 |
| jelkner | all skills scores have come from the ST quiz. | 14:59 |
| jelkner | I realize, however, that I will never have enough quiz items this Summer for all students to earn 3s on all the skills. | 15:00 |
| jelkner | And I don't need to. | 15:00 |
| jelkner | They are now at the point that they have demonstrated many basic skills through their daily activity. | 15:00 |
| jelkner | They don't need quiz items to measure them. | 15:00 |
| jelkner | So.... | 15:01 |
| jelkner | What happens when I enter a skill score, and then click on "Update Skills"? | 15:01 |
| jelkner | That's the issue at hand. | 15:01 |
| replaceafill | right | 15:01 |
| replaceafill | the "overwriting" part, correct? | 15:01 |
| jelkner | correct | 15:02 |
| jelkner | Paul suggested yesterday that the simplest thing that could work is this: | 15:02 |
| *** menesis has joined #schooltool | 15:02 | |
| jelkner | Create a new attribute on the skill that indicates whether it was machine or human generated. | 15:02 |
| jelkner | And don't allow machine generated to overwrite human generated. | 15:03 |
| jelkner | That would be the proper agile approach for now, I think. | 15:03 |
| jelkner | Since it would address the need from my current user story. | 15:03 |
| jelkner | It won't be the end of the story, however | 15:04 |
| jelkner | since it would prevent the kind of self initiated study we are aiming at for end of Summer. | 15:04 |
| jelkner | We'll have to think more about that. | 15:04 |
| replaceafill | by skill i think you mean "evaluation", correct? | 15:05 |
| jelkner | yes | 15:05 |
| jelkner | Although we say "Update skills" and not "Update evaluations" ;-) | 15:05 |
| replaceafill | :D | 15:05 |
| jelkner | Anyway, I start teaching at 8:30 am sharp. | 15:06 |
| jelkner | That's all I wanted to address this morning. | 15:06 |
| jelkner | Thoughts.... | 15:06 |
| replaceafill | i think we're already using a custom evaluation class for quiz | 15:07 |
| replaceafill | which at some point i considered a mistake | 15:07 |
| replaceafill | but we needed to store the answer to the question somewhere | 15:08 |
| replaceafill | so, i don't see any problem sticking the machine generated flag | 15:08 |
| replaceafill | i've learned through quiz that you can do crappy design decisions (like the ones i've made) as long as you make sure everything works (tests) | 15:09 |
| replaceafill | xp after all :) | 15:09 |
| jelkner | as long as you are committed to refactoring, that is ;-) | 15:10 |
| *** pgulley has joined #schooltool | 15:10 | |
| replaceafill | and for that you need the tests | 15:10 |
| jelkner | don't want those code smells to get too bad! | 15:10 |
| replaceafill | right | 15:10 |
| jelkner | i leave that up to you, my friend. | 15:10 |
| replaceafill | but my point is: users happy fast | 15:10 |
| pgulley | replaceafill, jelkner, good morning! | 15:10 |
| jelkner | good morning, pgulley | 15:11 |
| replaceafill | good morning pgulley | 15:11 |
| jelkner | we are just about done here, so pgulley's timing is perfect. | 15:11 |
| pgulley | Sorry I'm late, had to run an errand before I came this way, took longer than expected | 15:11 |
| jelkner | it always does ;-) | 15:11 |
| jelkner | this learn you must, young jedi! | 15:12 |
| * pgulley bows dutifully | 15:12 | |
| jelkner | ok, i told replaceafill what you and i discussed yesterday | 15:12 |
| jelkner | seems like i need to go teach class and the two of you need to figure out how to proceed. | 15:13 |
| jelkner | btw. did you figure out why the students with no quizzes have scores? | 15:13 |
| jelkner | i forgot to ask you that yesterday | 15:13 |
| jelkner | pgulley? | 15:14 |
| pgulley | I couldn't trace it, no. There is a lot more digging I could do on that subject | 15:14 |
| pgulley | I'll spend some time today sorting that one out | 15:14 |
| jelkner | perhaps replaceafill could help... | 15:14 |
| jelkner | please | 15:14 |
| jelkner | its a serious concern | 15:14 |
| jelkner | ok, anything else for me before i go? | 15:15 |
| replaceafill | jelkner, not from me | 15:15 |
| pgulley | likewise, jelkner | 15:16 |
| jelkner | sweet | 15:16 |
| jelkner | have at then, you uber hackers! ;-) | 15:16 |
| jelkner | have at it then, that is | 15:16 |
| jelkner | later | 15:16 |
| pgulley | vale | 15:16 |
| *** jelkner has quit IRC | 15:16 | |
| pgulley | So replaceafill, I'm fairly certain the bug jelkner is describing is sort of inherant in the way skills are currently updated. | 15:18 |
| pgulley | Like it's an unforeseen consequence of the way dreich and I wrote it, but an unavoidable one. That whole thing should be refactored at some point | 15:18 |
| pgulley | And I can commit to doing that. | 15:18 |
| replaceafill | pgulley, agree | 15:18 |
| replaceafill | it needs further testing imho | 15:19 |
| replaceafill | the current test for it is very basic | 15:19 |
| pgulley | alright. Should I focus on that next, then, rather than jelkners new feature? | 15:20 |
| replaceafill | jelkner also wants the feature to not overwrite scores entered by the teacher | 15:21 |
| replaceafill | maybe you can address both cases in one go? | 15:21 |
| replaceafill | i mean, the changes will probably be in the same area of the code | 15:22 |
| pgulley | right | 15:23 |
| pgulley | okay. I can do that | 15:23 |
| replaceafill | http://bazaar.launchpad.net/~schooltool-owners/schooltool.quiz/trunk/view/head:/src/schooltool/quiz/browser/cando.py#L512 | 15:23 |
| replaceafill | line 512 | 15:23 |
| replaceafill | i think that's what you need to focus on | 15:23 |
| replaceafill | to fix the issue "students with no quizzes being evaluated" | 15:23 |
| pgulley | right | 15:24 |
| pgulley | perfect. Thanks, you just saved me a lot of time | 15:24 |
| replaceafill | for the "not overwrite" part: | 15:24 |
| replaceafill | jelkner was suggesting adding a flag to the evaluation | 15:24 |
| replaceafill | i'm thinking that maybe we could use the fact the evaluator is None in that particular case | 15:25 |
| replaceafill | http://bazaar.launchpad.net/~schooltool-owners/schooltool.quiz/trunk/view/head:/src/schooltool/quiz/browser/deployedquiz.py#L879 | 15:25 |
| pgulley | Oh that's a really sneaky way to do that | 15:27 |
| pgulley | I like that | 15:27 |
| pgulley | wait no- | 15:27 |
| replaceafill | in any way, the answered evaluation class i where you'd need to stick whatever flag you need | 15:27 |
| pgulley | This is for skills, no? | 15:27 |
| pgulley | The skills are what need that flag, not the evaluation | 15:27 |
| replaceafill | skills? | 15:27 |
| pgulley | Right. jelkner's concern as he expressed it to me was that skills which he set at a certain level may be inadvertantly lowered by schooltool.quiz | 15:28 |
| replaceafill | i think he was using the wrong wording: | 15:29 |
| replaceafill | http://schooltool.pov.lt/irclogs/latest.log.html#t2013-07-19T15:02:20 | 15:29 |
| replaceafill | i think the route should be: | 15:30 |
| replaceafill | 1. add a more complete test for the update "skills" feature | 15:30 |
| replaceafill | which shows students with no quiz taken getting graded | 15:31 |
| replaceafill | 2. fix the feature to not do that | 15:31 |
| replaceafill | 3. add the "don't overwrite" part to the feature (with a separated/new test) | 15:32 |
| pgulley | Okay | 15:33 |
| pgulley | But I'm still unclear on how the "don't overwrite" part should work- | 15:33 |
| pgulley | We're concerned with skills there- | 15:34 |
| pgulley | don't overwrite a skill if it was set by a teacher | 15:34 |
| replaceafill | it's an evaluation | 15:35 |
| replaceafill | teachers set evaluations | 15:35 |
| replaceafill | not skills | 15:35 |
| replaceafill | skills are set by the manager | 15:35 |
| pgulley | ok. | 15:35 |
| pgulley | I clearly need to poke at that some more to see what's going on | 15:35 |
| pgulley | I can do that | 15:35 |
| replaceafill | a cell in the cando gradebook represents an evaluation | 15:35 |
| replaceafill | and remember | 15:35 |
| replaceafill | those cells (evaluations) have history too | 15:36 |
| replaceafill | that's important for this imho | 15:36 |
| pgulley | yes, definitely | 15:37 |
| pgulley | Okay, I think I have everything I need to get into this | 15:40 |
| *** replaceafill has quit IRC | 15:41 | |
| *** replaceafill has joined #schooltool | 15:41 | |
| *** replaceafill has joined #schooltool | 15:41 | |
| replaceafill | oops sorry, was disconnected :( | 15:42 |
| pgulley | It's all good! | 15:45 |
| pgulley | I was just saying that I think I have all I need to get started | 15:45 |
| replaceafill | ah cool | 15:46 |
| replaceafill | i'll go get some breakfast, bb in ~30 mins | 15:46 |
| pgulley | replaceafill, when you get back- is there any way I could get a snapshot of the current database in jeff's deployment? | 16:11 |
| replaceafill | pgulley, sure, let me get it | 16:11 |
| pgulley | thanks! | 16:12 |
| replaceafill | pgulley, done | 16:14 |
| replaceafill | http://dev.schooltool.org/hilt/ | 16:14 |
| replaceafill | 2013-07-19... | 16:14 |
| pgulley | danke schoen! | 16:14 |
| *** th1a has joined #schooltool | 16:31 | |
| *** th1a has quit IRC | 16:45 | |
| *** yvl has quit IRC | 17:02 | |
| *** th1a has joined #schooltool | 17:17 | |
| pgulley | replaceafill, should UNSCORED be in the skill scoresystem? | 17:33 |
| replaceafill | pgulley, no | 17:35 |
| pgulley | Okay. but is it okay if I pass UNSCORED as the score value to gradebook? | 17:36 |
| replaceafill | http://bazaar.launchpad.net/~schooltool-owners/schooltool.gradebook/trunk/view/head:/src/schooltool/requirement/scoresystem.py#L101 | 17:36 |
| pgulley | because it's storing that anyway before I change it. | 17:36 |
| replaceafill | pgulley, what are you trying to do? | 17:36 |
| pgulley | Well I figured out what was going on with the Update skills thing. There was a dict which wasn't being reset to zero everytime the function iterated | 17:37 |
| replaceafill | ah ok, sounds right | 17:38 |
| pgulley | I fixed that, but the consequence was that skills for which there are no evaluations get set to zero | 17:38 |
| pgulley | whereas they should be unscored by default | 17:38 |
| pgulley | (and they are) | 17:38 |
| replaceafill | why don't you just skip them? | 17:38 |
| pgulley | It's not efficient in the logic I have set up already | 17:39 |
| pgulley | because students who haven't taken certain quiz items won't have evaluations for skills where everyone else will. In that case they need to be set to zero, not unscored | 17:39 |
| pgulley | It would require generating a list of all the skills for which there are quiz items at the begining of the update_skills function. | 17:40 |
| pgulley | which I could do, it just seemed like it would be uneseccarily complex | 17:41 |
| pgulley | wait. I'm not thinking through this right. I'd need to do that anyway | 17:41 |
| replaceafill | well, i guess jelkner is ok with the 0 logic, right? | 17:41 |
| pgulley | no, he wants skills which haven't been evaluated to appear 'null' in the cando gradebook | 17:42 |
| replaceafill | in any case, you can import UNSCORED from the requirement.scoresystem module | 17:42 |
| replaceafill | and pass that to evaluate(student, activity, UNSCORED, evaluator) | 17:42 |
| pgulley | okay, that's what I wanted to do, i just wanted to make sure that wouldn't break anything. I seem to recall that the gradebook is a fickle thing, and I didn't want to get too deep | 17:43 |
| replaceafill | np, passing UNSCORED as the score is safe | 17:43 |
| replaceafill | that's what removeEvaluation does actually | 17:43 |
| replaceafill | http://bazaar.launchpad.net/~schooltool-owners/schooltool.gradebook/trunk/view/head:/src/schooltool/gradebook/gradebook.py#L297 | 17:43 |
| pgulley | okay, perfect. | 17:49 |
| pgulley | thanks! | 17:49 |
| *** th1a has quit IRC | 18:05 | |
| *** th1a has joined #schooltool | 18:11 | |
| *** khildin has quit IRC | 18:20 | |
| *** th1a has quit IRC | 18:49 | |
| *** th1a has joined #schooltool | 19:16 | |
| pgulley | replaceafill, I'm still having some problems with Selenium | 19:55 |
| pgulley | which aren't related to my tests | 19:55 |
| replaceafill | what happens? | 19:56 |
| pgulley | Error 111 - connection refused | 19:56 |
| *** menesis has quit IRC | 19:56 | |
| replaceafill | does this happens in both modes: bin/test and bin/test-headless? | 19:57 |
| pgulley | yes | 19:57 |
| replaceafill | and the test doesn't run at all? | 19:58 |
| *** th1a has quit IRC | 19:59 | |
| pgulley | It begins running | 19:59 |
| pgulley | but stops | 19:59 |
| replaceafill | at a specific part? | 19:59 |
| replaceafill | trunk tests run fine here btw | 20:00 |
| pgulley | yes, at a specific part- but the code in the test at that point is essentially identical to code that runs without error a few lines prior | 20:02 |
| *** th1a has joined #schooltool | 20:02 | |
| replaceafill | if you push your current state i could try running it here | 20:03 |
| replaceafill | although i'm not sure if that really helps | 20:03 |
| pgulley | It's still possible I've just made a stupid mistake I guess. | 20:03 |
| replaceafill | at least you could point me to the line | 20:04 |
| pgulley | okay, I'm running them again (I've just changed some things) | 20:05 |
| replaceafill | ok | 20:05 |
| pgulley | if it still fails to work, I'll push what I have | 20:05 |
| replaceafill | you didn't have this problem in pycon, right? | 20:05 |
| pgulley | nope, I did not. | 20:07 |
| pgulley | It didn't work, I've pushed to my branch | 20:07 |
| replaceafill | update_skills.txt? | 20:08 |
| pgulley | yep | 20:09 |
| replaceafill | on what line is dying? | 20:11 |
| replaceafill | line 126? | 20:13 |
| pgulley | 126 | 20:13 |
| pgulley | yep | 20:13 |
| replaceafill | well | 20:13 |
| replaceafill | you closed student1 | 20:13 |
| replaceafill | and then you're using it again | 20:13 |
| replaceafill | shouldn't that be student2.... | 20:13 |
| replaceafill | >>> student2.query.id("form-widgets-QuizItem-0").click() | 20:14 |
| replaceafill | >>> import time; time.sleep(100) | 20:14 |
| replaceafill | >>> student1.query.id("form-widgets-QuizItem-2-1").click() | 20:14 |
| pgulley | Oh lord | 20:14 |
| pgulley | yes | 20:14 |
| pgulley | that | 20:14 |
| pgulley | is what happend | 20:14 |
| replaceafill | :) | 20:14 |
| replaceafill | glad we found it quickly ;) | 20:14 |
| pgulley | :) | 20:16 |
| pgulley | danke schoen, again | 20:17 |
| replaceafill | francais seulement sil vous plait ;) | 20:17 |
| pgulley | Oui, monieur! | 20:22 |
| pgulley | *monsieur | 20:22 |
| replaceafill | :D | 20:22 |
| *** th1a has quit IRC | 20:48 | |
| pgulley | So one last thing, replaceafill | 20:55 |
| replaceafill | yes? | 20:56 |
| pgulley | with regards to pushing this fix to jeff's deployment | 20:56 |
| pgulley | is that a safe thing to do, do you think? | 20:56 |
| pgulley | It would also push the auto-save thing, etc. | 20:56 |
| replaceafill | i'd separate the fix from the other feature | 20:57 |
| replaceafill | unless you think the "auto-save" is ready? | 20:57 |
| pgulley | Well, it passes tests. | 20:57 |
| replaceafill | i saw you wrote a test for it, is it complete/strong? | 20:57 |
| replaceafill | i think using miliseconds is confusing btw | 20:58 |
| pgulley | I think so | 20:58 |
| replaceafill | i mean, in the settings | 20:59 |
| replaceafill | why don't you use seconds | 20:59 |
| pgulley | the feature is simple enough that there aren't any fringe cases. | 20:59 |
| replaceafill | and convert them in code | 20:59 |
| pgulley | That was a thing I thought about- it was just a secondary thing. | 20:59 |
| pgulley | worth doing now, you think? | 20:59 |
| replaceafill | i'd suggest you clean those secondary things today, if you still have time | 21:00 |
| replaceafill | and i'll review/merge during the weekend | 21:00 |
| replaceafill | so jelkner can start using on monday | 21:00 |
| pgulley | okay! I'll get on that then | 21:00 |
| replaceafill | ok | 21:00 |
| *** th1a has joined #schooltool | 21:09 | |
| pgulley | Okay, I've pushed for today | 21:22 |
| pgulley | I'm popping out, I think. | 21:24 |
| pgulley | Merci, replaceafill, I'll talk to you Monday! | 21:24 |
| *** pgulley has quit IRC | 21:29 | |
| *** menesis has joined #schooltool | 22:01 | |
| *** th1a has quit IRC | 22:10 | |
| *** menesis has quit IRC | 23:01 | |
| *** replaceafill has left #schooltool | 23:08 | |
| *** th1a has joined #schooltool | 23:43 | |
Generated by irclog2html.py 4.0.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!