*** replaceafill has quit IRC | 00:44 | |
*** menesis has quit IRC | 02:01 | |
*** th1a has joined #schooltool | 02:59 | |
*** ignas has quit IRC | 04:35 | |
*** alga has quit IRC | 04:41 | |
*** aks has joined #schooltool | 05:13 | |
*** th1a has quit IRC | 06:43 | |
*** aks has quit IRC | 07:48 | |
*** aks has joined #schooltool | 07:48 | |
*** paulproteus has quit IRC | 08:37 | |
*** paulproteus has joined #schooltool | 08:49 | |
*** yvl has joined #schooltool | 08:54 | |
*** menesis has joined #schooltool | 11:29 | |
*** alga has joined #schooltool | 13:34 | |
*** ignas has joined #schooltool | 14:39 | |
*** replaceafill has joined #schooltool | 14:45 | |
*** alga has quit IRC | 14:55 | |
*** th1a has joined #schooltool | 15:03 | |
*** aks has quit IRC | 15:12 | |
*** menesis has quit IRC | 15:27 | |
*** menesis has joined #schooltool | 16:13 | |
replaceafill | yvl, you gone? | 16:37 |
---|---|---|
yvl | not yet, replaceafill | 16:37 |
replaceafill | do you have 5 mins? | 16:37 |
replaceafill | to waste :) | 16:37 |
replaceafill | i want your opinion on something | 16:37 |
yvl | sure! :) | 16:38 |
replaceafill | http://69.164.203.135:6662/schoolyears/2011-2012/2012-spring/sections/art_a_2012-spring_teacher004_000/activities/Worksheet/gradebook | 16:38 |
replaceafill | teacher004 | 16:38 |
replaceafill | cells are now regular <td>s | 16:38 |
replaceafill | until you click them | 16:38 |
replaceafill | if you change the value, they stay as <input />s | 16:39 |
replaceafill | if not, they're converted back to <td>s | 16:39 |
replaceafill | that means, less form data sent to the server | 16:39 |
yvl | nice :) | 16:40 |
replaceafill | did you see my message about jquery .data(...) | 16:40 |
replaceafill | being "broken" | 16:41 |
replaceafill | http://lookfirst.com/2011/12/dont-use-jquery-data-method-use-attr.html | 16:41 |
yvl | sorry, no | 16:41 |
replaceafill | ah np | 16:41 |
replaceafill | anyway, it scared me so much... | 16:41 |
replaceafill | that i'm using attributes to store the original value of the cell | 16:41 |
replaceafill | instead of using $('td').data(...) :) | 16:41 |
replaceafill | i want your opinion on these: | 16:42 |
replaceafill | 1. enter a value on the cell | 16:42 |
replaceafill | either valid (in the range of the score system), invalid (negative) | 16:42 |
replaceafill | or extra credit | 16:42 |
replaceafill | (above the maximum) | 16:42 |
replaceafill | do you see the cell background changing? | 16:43 |
yvl | yes | 16:46 |
replaceafill | that is done using a view and $.ajax(...) call | 16:46 |
replaceafill | checking the actual scoresystem | 16:46 |
replaceafill | of the activity | 16:46 |
replaceafill | instead of the old way of passing the huge javascript with data for all the activities | 16:46 |
replaceafill | but i'm not sure which one is better :( | 16:47 |
replaceafill | this one means hitting the server frequently and getting small payloads | 16:47 |
replaceafill | the old one means, passing a lot at the beginning | 16:47 |
replaceafill | and 2. | 16:48 |
replaceafill | the popups menus for the activity columns are also empty at the beginning | 16:48 |
replaceafill | they're loaded until you click on them the first time | 16:48 |
replaceafill | and they're also a view on the actual activity | 16:48 |
yvl | can you preload them? | 16:49 |
replaceafill | what do you mean? | 16:49 |
yvl | imagine a person has a slow connection | 16:49 |
yvl | and clicks on activity | 16:50 |
yvl | and nothing happens | 16:50 |
replaceafill | i set async=false on the call because of that | 16:50 |
replaceafill | to avoid the nothing happens part | 16:50 |
replaceafill | but it can fail easily | 16:50 |
replaceafill | i think | 16:50 |
yvl | -1 on async = false | 16:51 |
replaceafill | ah ok | 16:52 |
yvl | I think that's asking for trouble | 16:52 |
yvl | but I might be wrong :D | 16:52 |
replaceafill | yes, i feel the same way | 16:52 |
yvl | really :D | 16:52 |
replaceafill | no, really | 16:52 |
replaceafill | i dont like it either | 16:52 |
yvl | ideally... | 16:52 |
yvl | there could be something like load_menus after the document.ready | 16:52 |
replaceafill | ah! | 16:53 |
yvl | that loads the menus in a separate call | 16:53 |
replaceafill | you mean, like loading them in the background? | 16:53 |
yvl | yes | 16:53 |
replaceafill | hhmm, interesting :) | 16:53 |
yvl | and a spinner instead of a menu while menus not loaded | 16:53 |
yvl | but that's extra work | 16:53 |
yvl | feel free to not do it :D | 16:53 |
replaceafill | deal! | 16:53 |
replaceafill | :) | 16:54 |
replaceafill | but do you see a problem with stuff being called on other views | 16:54 |
replaceafill | like the menus or the validation | 16:54 |
replaceafill | they're are simple views, but separate anyway | 16:54 |
yvl | no | 16:54 |
yvl | that seems ok to me | 16:54 |
replaceafill | ah cool | 16:55 |
yvl | we'll... probably won't kill the server :D | 16:55 |
replaceafill | that was my biggest doubt :) | 16:55 |
replaceafill | hope so ;) | 16:55 |
replaceafill | ok, i'll stick with this approach then | 16:55 |
replaceafill | it's cleaner | 16:55 |
replaceafill | you can query the actual objects, instead of passing js around representing their states | 16:55 |
replaceafill | like scoresystems, etc | 16:55 |
yvl | right | 16:56 |
replaceafill | and i think it will make the gradebook view class simpler | 16:56 |
replaceafill | since it doesnt have to calculate all this stuff | 16:56 |
yvl | let's roll with this and see where it takes us :) | 16:56 |
replaceafill | anymore | 16:56 |
replaceafill | :) | 16:56 |
yvl | first make it work | 16:56 |
replaceafill | yes | 16:56 |
yvl | then make it --fast-- complicated :D | 16:56 |
replaceafill | yes drill sargent! | 16:57 |
replaceafill | ok | 16:57 |
yvl | :DDDD | 16:57 |
replaceafill | thanks yvl | 16:57 |
yvl | but seriously, great job, replaceafill | 16:57 |
yvl | thanks! | 16:57 |
*** alga has joined #schooltool | 17:05 | |
*** alga has quit IRC | 17:26 | |
*** alga has joined #schooltool | 17:29 | |
*** th1a has quit IRC | 17:48 | |
replaceafill | yvl, preloading works like a charm :) | 17:58 |
*** th1a has joined #schooltool | 17:59 | |
* replaceafill now inserts sleeps in the popup_menu views to simulate a slow connection ;) | 18:00 | |
th1a | replaceafill: You should show aelkner how to do that too. | 18:38 |
replaceafill | th1a, how to simulate a slow connection? | 18:38 |
th1a | YEah. | 18:38 |
replaceafill | kk | 18:38 |
replaceafill | i just insert a sleep(...) in the view | 18:39 |
replaceafill | since the view is called several times | 18:39 |
replaceafill | for each menu | 18:39 |
replaceafill | they take a while to load | 18:39 |
replaceafill | i'm inserting spinners while they load | 18:39 |
replaceafill | yvl's idea ;) | 18:39 |
th1a | We just need to make sure everyone gets the cool ideas passed onto them. | 18:49 |
replaceafill | true | 18:50 |
replaceafill | http://69.164.203.135:6662/schoolyears/2011-2012/2012-spring/sections/art_a_2012-spring_teacher004_000/activities/Worksheet/gradebook | 18:50 |
replaceafill | teacher004 | 18:50 |
replaceafill | reload and click on the Photo activity column | 18:50 |
replaceafill | every menu takes 5 to load | 18:50 |
replaceafill | 5 seconds | 18:50 |
replaceafill | you should see a spinner | 18:50 |
replaceafill | and then the menu | 18:51 |
th1a | I see a gray rectangle. | 18:51 |
th1a | Well, and the regular cursor spinner. | 18:52 |
replaceafill | yes | 18:52 |
replaceafill | it's not pretty | 18:52 |
replaceafill | i hope not many people sees it :) | 18:52 |
th1a | Um... | 18:52 |
replaceafill | anyway, it can be improved | 18:52 |
th1a | What's the gray rectangle? | 18:52 |
replaceafill | just the background of the popup title | 18:53 |
th1a | The regular spinner is just the regular spinner? | 18:53 |
replaceafill | ?? | 18:53 |
th1a | I don't know what you are showing me here. | 18:53 |
th1a | Is something new? | 18:54 |
replaceafill | ah never mind, sorry th1a | 18:54 |
replaceafill | i know i don't have to show you unfinished stuff | 18:54 |
th1a | I like to see unfinished stuff, but I get confused about where we are in the process. | 18:54 |
replaceafill | the new is that the menu is loaded dinamically | 18:54 |
th1a | But you're delaying it purposely? | 18:55 |
replaceafill | yes | 18:55 |
th1a | And if you hadn't done something I wouldn't have seen the regular spinning cursor? | 18:55 |
replaceafill | correct | 18:55 |
th1a | Ah. | 18:55 |
th1a | GOOD WORK! | 18:55 |
th1a | ;-) | 18:55 |
replaceafill | but the spinner should go away after a while | 18:55 |
replaceafill | it does right? | 18:56 |
th1a | Yes. | 18:56 |
replaceafill | and you see the actual menu | 18:56 |
th1a | OK... I have to go get Vivian now. | 18:56 |
th1a | Yes, it works! | 18:56 |
replaceafill | ok | 18:56 |
replaceafill | thanks th1a | 18:56 |
replaceafill | sorry for the confusion | 18:56 |
th1a | Catch you in a bit. | 18:56 |
replaceafill | :) | 18:56 |
th1a | np | 18:56 |
replaceafill | see u | 18:56 |
* replaceafill removes the intentional delay | 18:57 | |
*** paulproteus has quit IRC | 19:16 | |
*** paulproteus has joined #schooltool | 19:19 | |
*** ignas has quit IRC | 19:53 | |
replaceafill | th1a, zyt? | 19:59 |
replaceafill | ah never mind | 20:00 |
*** menesis has quit IRC | 20:00 | |
replaceafill | :) | 20:00 |
replaceafill | th1a, well, yes mind | 20:04 |
replaceafill | th1a, this gradebook ajax work is not landing in precise, correct? | 20:04 |
*** alga has quit IRC | 20:31 | |
* replaceafill goes to get lunch | 20:44 | |
*** th1a has quit IRC | 20:50 | |
*** ignas has joined #schooltool | 20:58 | |
*** menesis has joined #schooltool | 21:02 | |
*** th1a has joined #schooltool | 22:03 | |
th1a | replaceafill: David Ally is having trouble getting on to his demo instance. | 22:08 |
replaceafill | hhmm aelkner is running that one | 22:09 |
replaceafill | i guess it went down when linode repaired our vps | 22:09 |
th1a | Oh... do you know how to kick it? | 22:09 |
replaceafill | not really is a sandbox | 22:10 |
replaceafill | i'd have to mess with aelkner's /home dir | 22:10 |
th1a | Do yours restart automatically? | 22:10 |
replaceafill | cambodia's does | 22:11 |
replaceafill | not the other ones | 22:11 |
replaceafill | i can create an init.d for david's too | 22:11 |
replaceafill | just would need aelkner to point me to its directory | 22:11 |
th1a | I'll try calling aelkner. | 22:12 |
replaceafill | ok | 22:12 |
aelkner | th1a, it's started | 22:16 |
aelkner | replaceafill, hey | 22:19 |
replaceafill | hey aelkner | 22:19 |
aelkner | i can set up the init.d if i have sudo privileges | 22:20 |
replaceafill | i'll do it, just point me to the directory of the instance please | 22:21 |
aelkner | ok | 22:21 |
replaceafill | it's not an init.d, i have a cronjob | 22:21 |
replaceafill | that checks if goes down | 22:21 |
replaceafill | well, both :) | 22:21 |
aelkner | i'll private chat it to you | 22:21 |
replaceafill | sure | 22:21 |
aelkner | replaceafill, a question | 22:39 |
replaceafill | yes? | 22:39 |
aelkner | can you tell me where i can find the full api for the results of the query call in stests? | 22:40 |
aelkner | for now, the only examples we have are .type(text) | 22:40 |
replaceafill | schooltool/testing/selenium.py | 22:40 |
aelkner | we don't have any tests yet that select from a drop-down | 22:40 |
replaceafill | this one is also useful for me: http://code.google.com/p/selenium/source/browse/trunk/py/selenium/webdriver/remote/webdriver.py | 22:41 |
aelkner | hmm, looking at that api, i don't see anything for that | 22:41 |
replaceafill | for that? you mean selecting a drop-down? | 22:42 |
aelkner | yes | 22:43 |
aelkner | funny how we don't have any tests yet that change the contents of a drop-down | 22:43 |
replaceafill | look at this: https://lists.launchpad.net/schooltool-developers/msg00475.html | 22:44 |
replaceafill | and then at this: https://lists.launchpad.net/schooltool-developers/msg00476.html | 22:44 |
replaceafill | in yvl's response look for "At the moment, do what users do." | 22:45 |
aelkner | ah, the gradebook | 22:46 |
aelkner | i didn't bother to look there :) | 22:46 |
replaceafill | i'm not sure if that experiment landed in trunk | 22:46 |
replaceafill | i think it didn't | 22:46 |
replaceafill | at that point we were only testing the test runner | 22:47 |
aelkner | yes, there are no stests in the gradebook | 22:47 |
replaceafill | yep | 22:47 |
replaceafill | there are only like 4 stests in the whole codebase | 22:47 |
replaceafill | app, person, journal, and resources | 22:48 |
aelkner | journal has some? | 22:49 |
aelkner | how about this: | 22:49 |
aelkner | category.query.xpath('//option[text()="Exam"]').click() | 22:49 |
replaceafill | yes, that's the way | 22:49 |
aelkner | i'll try that a second | 22:49 |
aelkner | replaceafill, that did the trick, thanks | 22:54 |
replaceafill | np aelkner | 22:54 |
* replaceafill has fallen in love with http://jsperf.com | 23:37 | |
replaceafill | :''( | 23:37 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!