IRC log of #schooltool for Wednesday, 2012-03-28

*** th1a_ has quit IRC00:46
*** aelkner has quit IRC00:53
*** aelkner has joined #schooltool00:57
*** menesis has quit IRC02:14
*** replaceafill has quit IRC02:46
*** ignas has quit IRC03:22
*** ignas has joined #schooltool03:23
*** ignas has quit IRC03:48
*** alga has quit IRC04:42
*** aks has joined #schooltool05:55
*** aks has quit IRC06:08
*** aks has joined #schooltool06:08
*** alga has joined #schooltool08:20
*** alga has quit IRC08:25
*** yvl has joined #schooltool09:06
*** alga has joined #schooltool10:26
*** alga has quit IRC10:26
*** alga has joined #schooltool10:26
*** menesis has joined #schooltool12:10
*** menesis has quit IRC12:56
*** menesis has joined #schooltool13:00
*** ignas has joined #schooltool13:08
*** menesis has quit IRC14:40
*** th1a_ has joined #schooltool15:04
*** aks has quit IRC15:27
*** menesis has joined #schooltool16:04
*** replaceafill has joined #schooltool16:27
th1a_hi menesis, replaceafill, yvl, aelkner.16:30
* th1a_ is wondering what this means...16:30
th1a_FAIRFIELD, NJ, March 28, 2012 – Critical Links, a pioneer in delivering Information & Communications Technology (ICT) infrastructure solutions for School 2.0 —the next generation of schools, announced today that it is introducing its Education Appliance on the Microsoft Hyper-V/Windows 2008 R2 platform. This is generally available from March 1st 2012 and is a result of the collaboration with the Microsoft ‘Shape the Fu16:30
th1a_ture’ program.16:30
th1a_"Hyper-V is an integral part of Windows Server and provides a foundational virtualization platform that enables you to transition to the cloud. With Windows Server 2008 R2 you get a compelling solution for core virtualization scenarios – production server consolidation, dynamic datacenter, business continuity, VDI and test & development."16:31
yvlgood morning guys16:32
replaceafillgood morning/afternoon16:32
th1a_Ah, ok, so I guess what this basically means is you can get your education appliance in the cloud.16:34
th1a_The fact that the underlying host server is Microsoft is kind of beside the point.16:34
th1a_I don't think they've been re-packaging the whole stack for Windows over the past year.  ;-)16:35
th1a_All right.16:36
*** th1a_ is now known as th1a16:36
th1areplaceafill & menesis: I think I'm pretty much done with the svg background and would like to have it in the next release.16:38
th1areplaceafill:  Which server is it running on now?16:39
th1aAny concerns about that?16:40
th1aOK, settled then.16:41
th1areplaceafill, you're up.16:42
replaceafilli've been working on the gradebook, adding some missing things and stests16:43
replaceafilli found a bug yesterday because of the stests :)16:43
replaceafillrelated to the use of minimum scores of activities in total/average columns16:43
replaceafilli also tried yvl change about using utf-8 in stests16:44
replaceafilland it worked :)16:44
replaceafilli had a question on invalid scores16:45
replaceafilli was thinking of disabling the Save button16:45
replaceafillor show a Dialog when the user clicks the button instead16:45
replaceafillsaying something like "you have invalid scores and you can't save them" or something like that16:46
replaceafilli like the dialog better16:46
replaceafillit gives the user the actual reason, instead of him asking why the button is disabled16:46
th1aYes... although I'm not sure the correct action isn't to just save invalid scores and keep them highlighted.16:47
th1aAlso, should we be worrying about this before implementing per-cell saving?16:47
aelknerwe have never saved invald scores in the past16:47
aelkneri don't think our calculations would be too happy about having invalid scores in the db16:48
th1aThey could ignore them for scoring.16:49
th1a(would have to)16:49
replaceafillth1a, you mean for calculating totals/averages, correct?16:49
th1aI'm just saying that not saving them is not actually helpful to the user.16:49
th1aSaving, flagging, and otherwise ignoring them would be more helpful.16:50
replaceafilland marking them when the gradebook is loaded, correct?16:50
th1aI'd rather just save 9o so I can fix it later.16:50
replaceafillok thanks, i'll do that then16:50
th1aThe problem would be if you saved them and didn't keep reminding the user that they are invalid.16:51
th1a(or tried to do math with them)16:51
replaceafillgot it16:51
replaceafilli thought i had another question but i dont see any in my notes16:51
replaceafillso, i think i'm done16:51
aelknerreplaceafill, you'll need to check all the reports that do calculations to make sure they handle invalid scores16:52
replaceafillaelkner, right16:52
aelknerthere will be tests to write16:52
aelknersounds like a sizable task, so have fun :)16:53
replaceafilli'm doing that now (writing tests)16:53
* replaceafill done16:53
th1aThanks replaceafill.16:54
replaceafilli remembered the question!16:55
replaceafillquick one16:55
th1aI sent out a bug email I got last night from a new (actual) user.16:55
replaceafillyvl, is about query_all in browser/elements16:55
replaceafillif i want to check that an element is not present i'm using browser.query_all.css(selector)16:55
replaceafilland check for [] in the result16:55
replaceafillis that the appropriate way of doing it?16:56
replaceafillbecause i've noticed it takes some time to respond16:56
replaceafilli think there's the implicit_time taking effect, right?16:56
replaceafillsorry, implicit_wait16:56
yvlI think so16:57
replaceafillthe thing is that the tests pass, but if you don't set the implicit_wait it would take some time to finish16:57
replaceafillso, should i set the implicit_wait in the stests?16:57
replaceafillif i want them to be fast16:57
replaceafillor should i leave that to the developer's buildout config?16:58
aelknerreplaceafill, when i referred to needing to write tests, i waqs referring to tests for reports16:58
replaceafillaelkner, i know16:58
yvlthat is a very good question replaceafill16:58
aelknerok, never mind16:58
yvlin any case16:58
yvlit is quite dangerous to do query_all.css() and looking for empty16:59
yvlbecause if the html changes16:59
yvland there is a bug that displays an element16:59
yvlit will pass16:59
yvl(because the selector will be broken)16:59
yvland I can imagine that happening quite well17:00
* replaceafill tries to understand that part...17:00
replaceafillcan you provide a quick example please?17:00
yvlsay, you change both: class name of some div and the logic when that div is rendered17:01
yvlif there's a bug in the logic and the div is rendered, the test will pass17:01
yvlbecause it will be looking for the old class name17:01
yvlI meant css class name17:01
replaceafillgot it17:01
replaceafillshould i use try: excepts with default selenium exceptions, like no_element (or whatever is called)17:02
yvlcan you point me to the test?17:02
replaceafillcan we discuss it after the meeting?17:02
replaceafillso i dont stop the flow? :)17:03
th1aGod forbid we'd stop the flow.17:03
yvlthe spice must flow.17:03
th1aOK, so is there anything aelkner should know about including non-ascii strings in tests?17:03
th1aIt seems to be that the policy should be that every string in every test should have a non-ascii unicode character.17:04
th1aLike, say, an "n" with a little squiggle over it?17:04
th1aWould that catch more bugs?17:05
replaceafilli recommend this:
aelkneri saw that one17:05
replaceafillfor setting thinks like titles with non-ascii you just use unicode strings17:06
th1aI don't think we even need the only-ascii version.17:06
th1aAlthough you might want two anyhow, ofc.17:06
replaceafillth1a, you can pass a regular string if you want17:06
replaceafilland it's automatically decoded17:06
replaceafillthat's the way it was working, until i needed non-ascii17:07
replaceafillthe part that i like the most is that now you can print non-ascii in the test17:07
th1aRegardless... do we need to tell aelkner how to type a non-ascii character?17:07
replaceafilllike lines 50-51 in that test17:07
aelkneri saw the example, so i can work it out17:07
replaceafillnot really, you just type it :)17:07
replaceafilllike Año201317:08
yvlor Šiemet2013 ;)17:08
th1aAs long as aelkner knows how to do it.17:08
aelknergot it17:08
yvlhe can try using French ;)17:08
th1areplaceafill:  I think I'm going to just have you write some tests for the bug I just emailed when you get around to working on interventions.17:09
replaceafillline 7917:09
replaceafillth1a, ok17:09
replaceafillyvl, that is used in this stest:
replaceafillwhen you print a worksheet17:10
replaceafillbut that means a check for every <td></td> in the grades part17:10
replaceafillthat's the part that can take some time17:11
replaceafilli tried pure javascript and some execute_script :)17:11
replaceafillit was way faster ;)17:11
replaceafillbut seemed messier17:11
yvlthat's a pickle17:12
yvlfeel free to go with pure JS for now17:12
replaceafillreally? :)17:12
yvlor I can try putting wait=False for queries17:13
replaceafilli was thinking of using wait(...) somehow17:13
replaceafillbut couldnt come up with something17:13
yvlas in add td.query_all.tag('input', wait=False)17:13
replaceafillthat would be nice :)17:14
replaceafillso far, setting implicit_wait = 0.1 in buildout does the job17:14
replaceafillbut i can see a developer waiting a long for his tests to finish17:14
replaceafilland wondering why17:14
replaceafilldo you mind if i use jquery in the js for execute_script?17:15
aelkneryes, we should not need to change buildout.cfg to speed up tests17:15
aelknerexplicit wait=False sounds like a good idea17:15
yvlfeel free to, replaceafill17:16
replaceafillyvl, cool, thanks17:16
yvlI'll add wait=True by default17:16
replaceafillok, that's really it from me :)17:16
* th1a is studying his gantt charts.17:18
th1aSo basically we've kind of vastly expanded replaceafill's "gradebook(s) tempate performance" in scope.17:19
th1aPlus piled on distractions.17:19
replaceafillth1a, correct17:19
th1aOK, so the original plan/hope/wish/target was a working CanDo gradebook prototype essentially at the end of this week.17:20
th1aWhich isn't going to happen obviously, but we've been doing things that need to be done.17:20
th1aHowever, we *do* need to start having a little more urgency.17:21
replaceafilli could have something to show on monday17:21
replaceafill(on the cando gradebook)17:21
replaceafilli hope understanding yvl's stuff is not hard17:21
replaceafillah, thanks17:21
yvlthings that will interest you are in projects.py17:21
th1aBasically I'm saying focus on CanDo now and we can come back to the other gradebook/intervention tasks.17:21
replaceafillth1a, understood17:22
yvlclasses: Project and Projects17:22
yvluse them as Activities and Activity are used in gradebook ATM17:22
yvlI don't think you need course projects, but you can use them also17:23
replaceafillyvl, could we merge your gradebook branch to trunk?17:23
replaceafilli don't see anything big there, correct?17:23
yvlalso, you can use querySkillScoreSystem from skill.py17:23
yvlyes, we can merge IMHO17:23
yvlthose are small refactorings17:24
replaceafillit will be easier for me to work next to trunk (that's what i've been doing)17:24
replaceafillsince the new gradebook features are only in my branch17:24
yvlok, I'll merge17:24
replaceafilland i plan to use that for the cando prototype17:25
replaceafilla little suggestion too, we should have a central schooltool.cando soon17:25
replaceafilli don't plan to change any of your stuff, but it's easier than having to switch branches, in case it happens :)17:26
replaceafilljust my 0.0217:26
yvlno disagreement here :)17:27
replaceafillWorksheets is the object formerly known as Activities, correct?17:27
replaceafillah, i think that's in your gradebook branch17:28
yvlActivities now inherit from Worksheets17:28
yvlmerged to gradebook trunk17:29
replaceafilli shouldnt worry about equivalent skills for now, right?17:30
* yvl seconds17:30
replaceafillyvl, external_id?17:31
yvlif you find some security declarations or something missing, please add them17:31
replaceafill(sorry if i'm asking dumb questions, but it's the first time i read it) :)17:31
replaceafillyvl, ah ok17:31
yvlas in virginia skill id17:32
th1aAre we calling them skills internally?17:32
yvland SkillSets17:32
replaceafillyvl, the global id?17:32
yvlthere is no global id17:32
yvlintid is closest to that17:32
yvlor IKeyReference17:32
yvlor not17:33
yvlbut there is no need ATM for a global ID17:33
replaceafillremember skills have ids inside the skill group?17:34
replaceafilllike 001, 002, etc17:34
replaceafillthat it's shown in the gradebook17:34
replaceafillas the column label17:34
yvlwell, we can add that17:35
replaceafillis that what external_id is for?17:35
replaceafillah ok17:35
yvlbut is it really really necessary?17:35
replaceafilli think we should ask dwelsh, but i think the answer will be yes17:35
yvland maybe we should call them like short title or something?17:35
replaceafillactivities call it label17:36
yvlI'd like all of them to use the same notation17:36
replaceafillcourse projects is like the new course worksheets in the gradebook, correct?17:38
th1aIf it is primarily used as a label, call it label.17:38
yvlcorrect, replaceafill17:38
yvlcourse worksheets are actually course worksheet templates17:39
* yvl likes the "Ceci n'est pas une pipe" notation in gradebook ;)17:39
* replaceafill goes to google translate...17:39
yvljust google it ;)17:39
replaceafilli also shouldn't worry about layers at this point, correct?17:41
replaceafilljust give the ability to add projects and skills17:41
yvland use them the same way gradebook uses activities17:42
replaceafillthis will be fun :)17:42
yvloh yes17:42
replaceafillnew gradebook!!!17:42
yvlapologies in advance for my crappy code17:43
yvland I do mean it's crappy ;)17:43
th1aThis is a prototype.17:43
th1aOne we intend to keep.17:43
th1aBut it doesn't need all the bells and whistles running.17:43
replaceafilli definitely think i can have something for monday17:43
th1aOK.  Excellent.17:43
th1aThat's much better than I was expecting at this point.17:44
th1aOK, now, where is our flow... ?17:44
* yvl took half day off on Tue17:44
yvlrunning out of steam, frankly17:44
th1aLack of flow.17:44
yvlso I'll probably also take half or full day off Fri17:44
th1aYes, well, this is the danger zone now.17:45
th1aFinishing touches trailing off forever.17:45
yvlgood point17:45
th1aMaybe just switch tasks for a bit?17:45
yvlwell, that's the point17:46
* yvl want's some time not coding ST17:46
yvlas in, more than a weekened17:46
yvla weekend and 0.5 days :D17:46
yvlin any case.17:46
yvlwrote the relationhsip validation17:46
yvlrealised I need one more case to validate17:47
yvlit's, like, soooo near to "done"17:47
* yvl will keep pushing17:48
* yvl done17:48
th1aThat's what we tell Julia on the potty.17:48
th1aSame idea.17:48
th1aThanks yvl.17:48
yvlthanks th1a17:48
aelkneri've been working on the Teachers and Students sheets17:48
aelknerto recap, they will look the same as the Persons sheet, but have a year field at the top17:49
aelkneralso, the demo fields on the right side of the table will be limited to the group in question17:49
aelknerwe never discussed that, but it seems to make sense17:50
aelknerbtw, to help the user avoid confusion with lining up the demo fields, and for other reasons, actually17:50
*** alga has quit IRC17:50
aelknerwe should have Teachers and Students sheets in the export xls output, eght?17:51
aelknerand they would work off of the current year17:51
th1aI'm kinda leaning against exporting the student and teacher sheets.17:51
aelknerhow about the limiting of demos by the group?17:52
th1aYes, do that.17:52
th1aI just don't think our export should repeat the same data on different sheets.17:52
aelknerit would just be nice for the user to have some way of knowing what the columns should be17:52
aelknerfor the demos, i mean17:53
aelknerif you go to edit a student, you see them17:53
aelknerbut it may be confusing for the user to specify them in the xls file17:53
th1aWell, maybe we'll include student and teacher with no students.17:54
aelkneri was just about to suggest that :)17:54
th1aThat should be fine.17:54
*** ignas has quit IRC17:54
aelknerto be clear, we're talking about including Teachers and Students sheets in export, no rows, just labels?17:54
th1aaelkner:  It isn't really something we need to do at this point.17:55
th1aEither way.17:55
aelknerok, i'll leave it for now17:55
aelknerregarding the Sections sheet, we also want the year at the top, right?17:55
aelknerand the terms and courses will be referred to by id (__name__) but not defined there17:56
th1aDo that per row.17:56
aelknercome again?17:56
th1aThe thing to keep in mind here is that teacher & student are convenience sheets.17:57
th1aI don't see any reason not to just have the term and year as columns.17:57
th1aFor sections.17:58
th1aAnd just one section sheet.17:58
aelkneragain, no corresponding export?17:58
th1aYES EXPORT.17:59
th1aOtherwise that data would be lost.17:59
aelknerok, in the case of Sections, export17:59
th1apersons contains all the data also in students and teachers, so exporting all those sheets would be redundant.17:59
th1aAnd likely error prone once people started only changing one of them.18:00
aelknerwell, Persons does not include group membership18:00
aelknerso that data would be lost18:00
th1aWe may really only include students and teachers as completely separate sheets.18:00
th1athere is a groups sheet.18:00
aelknerah, yes, never mind18:00
th1aWe kind of have to separate export/import cycles from easier initial setup as use cases.18:01
th1aEssentially now you're working on making it easier to do initial setup with a series of individual sheets.18:01
th1aThat's the cando way.18:01
th1aWe're not really focusing on the export side except insofar as we're changing the formats around.18:01
aelknermind you, Sections will be redundant data to the other sections sheets we have18:02
th1aWe'd be replacing those.18:02
aelkneroh, you intend for us to get rid of the old Sections sheets?18:03
th1a(we'll have to keep the old import code around though and be able to differentiate)18:03
th1aBasic idea here is that we're improving our formats but will have to be able to read the older versions.18:04
th1aLike, say, Microsoft Word.18:04
th1aSo we might need to add a version number to the sheets or something.18:04
aelknerand we can support having both old and new Sections sheets in the same xls file18:04
aelknerit would just do the redundant work18:04
aelknerif the new Sections sheet is processed after the old ones, then its data would take precendent18:05
aelknerin that it would replace (if different) the data of the just processed old sheets18:06
th1aWell, generally we just do import additively.18:06
th1aBut if there was different data for the same section id, I guess the newer version should overwrite.18:07
aelknerthat's what i mean18:07
th1aJust making sure.18:07
aelknerok, that's it for me18:07
th1aOK, thanks aelkner.18:07
th1amenesis, Anything to report?18:08
menesisth1a: no18:08
th1aintelli project advancing?18:08
menesismostly talks and tasks, but starting coding today18:11
th1aOK.  Thanks guys.18:11
th1aLooks like I have some Gantt chart cleanup to catch up on...18:11
th1aHave a good week and weekend!18:11
* th1a drops the bag of gravel.18:11
yvlthanks guys18:11
yvlsee you Mon!18:11
replaceafillthanks everybody18:12
th1areplaceafill:  So I guess you should check the hex background into trunk?18:14
replaceafillth1a, ah ok, will do18:14
*** yvl has quit IRC18:26
replaceafillth1a, hexes added to trunk18:41
th1aDo you need to associate a branch or anything:
replaceafillnot really, just the status/milestone are ok18:43
*** menesis has quit IRC19:36
*** menesis has joined #schooltool20:08
replaceafillth1a, zyt?21:33
th1ahi replaceafill.21:47
replaceafillth1a, just a quick question21:47
replaceafillwe're putting a CanDo tab on the top navbar, correct?21:48
replaceafilland it will take you directly to your gradebook, right?21:48
replaceafillwith the same logic as the journal/gradebok (if you're instructor in a section, ect)21:48
replaceafillwill take you to your "current" section, etc21:49
replaceafillkk, just confirming21:49
th1areplaceafill:  What's the status of this "use formviewlet" task?22:37
replaceafillth1a, question22:46
replaceafilli remember we talked about it during the sprint, but i couldnt find it in my notes22:46
replaceafillhow is the user going to change between projects and skill groups for one section?22:46
replaceafillprojects being current "assignments"22:47
th1aI don't think we really settled on it.22:47
th1aJust do skill groups for this prototype.22:47
replaceafilli can do projects22:48
th1aIt fits in that undefined sheet management menu we need to add.22:48
replaceafillskill group would need the tree22:48
th1aOK, whichever.22:48
replaceafill"just do something!"22:48
replaceafillth1a, ah ok22:48
th1aI think we're just going to add a little gear menu sooner rather than later.22:48
th1aUnless someone gets a better idea.22:48
replaceafillcool, i'll make the CanDo tab to get you to your projects for now22:49
*** ignas has joined #schooltool22:49

Generated by 2.15.1 by Marius Gedminas - find it at!