IRC log of #schooltool for Friday, 2006-04-28

*** tiredbones has quit IRC01:03
*** jinty has joined #schooltool02:56
*** jinty has quit IRC04:23
*** fizzy has joined #schooltool04:28
*** fizzy has left #schooltool04:29
*** jinty has joined #schooltool04:40
*** jinty has quit IRC05:03
*** srichter has quit IRC10:00
*** povbot has joined #schooltool11:40
*** ignas has joined #schooltool11:46
*** faassen has joined #schooltool12:03
*** Aiste has quit IRC12:06
povbot/svn/commits: * faassen committed revision 5997:12:17
povbot/svn/commits: Fix one more annotation related issue, import from zope, not zope.app.12:17
povbot/svn/commits: * faassen committed revision 5998:12:19
povbot/svn/commits: zope.app.copypastemove -> zope.copypastemove12:19
povbot/svn/commits: * faassen committed revision 5999:12:29
povbot/svn/commits: Some more moving of stuff from zope.app.event to zope.lifecycleevent.12:29
*** Aiste has joined #schooltool12:32
povbot/svn/commits: * faassen committed revision 6000:12:35
povbot/svn/commits: Change import location from zope.component.site to zope.component.registry12:35
*** mgedmin has joined #schooltool13:09
*** alga has joined #SchoolTool13:19
povbot/svn/commits: * faassen committed revision 6001:13:22
povbot/svn/commits: Change the way registrations are looked up to the new API.13:22
*** mgedmin has quit IRC13:32
*** thisfred has joined #schooltool13:34
*** srichter has joined #schooltool13:37
*** jinty has joined #schooltool13:53
povbot/svn/commits: * faassen committed revision 6002:14:05
povbot/svn/commits: Use the new component registration API for the registration of the authentication utility.14:05
povbot/svn/commits: Note that it's still necessary to add the authentication utility to the site management folder, as it's using getNextUtility which relies on it being located.14:05
povbot/svn/commits: * faassen committed revision 6003:14:10
povbot/svn/commits: Get rid of some unused imports now, and some deprecation warnings as a result.14:10
faassenignas: I still have 1 functional test failure.14:14
faassenignas: to do with the error view lookup I believe.14:14
faassenI have one deprecation warning still, but that's in zc.resourcelibrary, so I'll fix that soon.14:15
*** jinty has quit IRC14:52
ignasfaassen: i have fixed the error view, now only the content type should be failing15:22
povbot/svn/commits: * gintas committed revision 6004:15:27
povbot/svn/commits: Typo.15:27
povbot/svn/commits: * gintas committed revision 6005:15:27
povbot/svn/commits: Cosmetic fixes.15:27
faassenignas: so any ETA on the content type issue?15:37
ignasfaassen: not really, i want to check some reource stuff and consult with srichter is possible15:38
ignass/check/chesk in/15:38
ignass/is possible/if possible/15:38
ignass/chesk/check15:38
faassenok.15:40
*** tiredbones has joined #schooltool15:46
*** jinty has joined #schooltool15:53
*** alga has quit IRC16:42
*** Aiste has quit IRC16:45
srichterignas: here17:00
ignassrichter: iirc you did the PluggableTraverser and AdapterTraversers17:01
srichteryep17:02
ignassrichter: from what i have managed to gather - an AdapterTraverser with factory set to ISchoolToolCalendar is being chosen instead of the CalendarView17:02
ignasand i can't visualize the whole thing t ounderstand what might have changed17:02
srichtermmh, does it use the right plugin?17:03
ignas"it" being ?17:03
srichterMaybe the code relied on the buggy multi-adapter lookup and it was fixed now17:03
srichterI remember having troubles with this17:04
ignasyes17:04
ignasbut we fixed that17:04
srichterright17:04
srichterso the pluggable traverser keeps trying names17:04
srichterI would debug it to see which plugin is used to provide an answer17:04
ignasAdapterTraverser17:05
ignasthe object is adaptable to ISchoolToolCalendar17:05
ignasand although it has a view for calendar.ics17:05
ignasAdapterPlugin with the same name is chosen over the view17:05
* ignas can't understand how this worked before17:06
srichterme too17:06
ignasi can work around the problem (move the view to some other place for example) that would fix the functional test17:06
ignasbut this might be indicating some problem with our setup or a new bug/feature of Zope317:07
ignasa.k.a. i like to know what caused the bug before working around it17:07
srichterI am in a totally different space right now, so I do not have time to think about it in great detail17:07
ignasi see17:08
srichterI think you need to have a close look at how the adapters are chosen, since this is what changed during the refactoring17:08
srichterI think the old way we had was already a fix17:08
srichterand not the right thing17:08
srichterI don't understand how the wrong thing can be picked up now17:09
ignasi see, probably i'll need an old Zope3/SchoolTool checkout to denbug the thing then17:09
srichtermaybe one of the plugins is not registered for the right request interface17:09
faassenhm.18:04
faassensrichter: can you point me to some working formlib based form in schooltool?18:04
faassenfor some reason some lookup isn't happening, and it almost looks like zope.formlib is not loaded.18:04
faassenaction/render18:06
faassenit is formlib not being loaded.18:08
faassenwhy not?18:08
faassenwhat causes zope 3 core packages to be loaded in schooltool?18:09
th1ajinty: ayt?18:16
jintyth1a: yep18:17
srichterfaassen: it is in my term branch18:17
th1ajinty Do you understand what needs to be done to get the development trunk into Rosetta so Nicolas can translate it?18:18
faassensrichter: ah, ok.18:18
th1aOr what we should tell him to do?18:18
faassenhow do zope core packages get loaded into schooltool, I mean, their zcml?18:18
jintyfaassen: site.zcml?18:18
jintyth1a: Yes, I uderstand what needs to be done, but I am not willing to do it because it means boring repetitive work.18:20
jintyunless launchpad chenged their interface to allow automation18:20
faassensite.zcml loads them all in?18:20
faassenoh, it loads them in manually.18:21
th1ajinty:  Well, what do we need to do?18:21
jintyth1a: firstly you need to create a new branch in launchpad for our stable release18:22
jintysorru, head release18:22
jintyand add a template (That was not automated when I did it last)18:22
jintythe template can be generated from the trunk with make extract-translations18:23
jintythen regularly upload the template to launchpad18:23
jintyand regularly download the .po files people generate and commit them to the repository18:24
jintyand then do that regularly as well18:24
jintyIf Nicolas knows svn and how to work with po files it might be much easier just to make him a committer18:25
jintyIf you want schoolbell translated, then the whole thing has to be done for the schoolbell template as well18:26
th1ajinty: I'm asking SteveA about elevating my permissions over on #launchpad.18:29
th1aOh, you already know that.18:29
jinty;)18:30
jintyth1a: once I wrote the update-rosetta-pot and get-rosetta-translations makefile rules as an attempted automation of the process. They might even still work, but I doubt it.18:36
*** SteveA has joined #schooltool18:37
th1aSteveA:  Where do I create a group?18:37
SteveAth1a: i need to pop away from the computer for a bit.  ping me by name if you need something...18:37
SteveAhover over "Launchpad", top left18:38
SteveAchoose "People"18:38
th1aSteveA:  Thanks!18:38
SteveAchoose register a team18:38
*** Aiste has joined #schooltool18:39
*** mgedmin has joined #schooltool18:39
*** jinty has quit IRC18:42
th1ajinty:  OK, you're a member of schooltool-owners.18:43
th1aSee if you can put the team in charge of SchoolTool.18:43
SteveAnah, he won't be able to18:44
SteveAi'll do it18:44
SteveAdone18:44
*** SteveA has left #schooltool18:45
*** srichter has quit IRC18:47
th1aSteveA:  Thanks.18:48
ignasth1a: do we still pretend that we support backwards compatible RESTive interface and csv views ?18:55
th1aI'm not sure exactly what you mean.  Do we claim that they are both stable across versions?18:55
ignasyes18:56
ignasdo we ?18:56
th1aNo.18:56
ignasthank you18:56
th1aYou're welcome.18:56
*** Aiste has quit IRC19:04
povbot/svn/commits: * faassen committed revision 6006:19:35
povbot/svn/commits: Include zope.formlib's ZCML.19:35
*** Aiste has joined #schooltool19:37
povbot/svn/commits: * faassen committed revision 6007:19:42
povbot/svn/commits: Beginnings of demographics integration.19:42
povbot/svn/commits: * new nameinfo attribute on person object. An attribute and not19:42
povbot/svn/commits: an annotation is chosen for reasons of simplicity and performance (lots of annotation lookups for lots of users is slow, and tabular19:42
povbot/svn/commits: sorting will cause such lookups to happen).19:42
povbot/svn/commits: * create evolution script to make nameinfo attribute exist, plus test.19:42
povbot/svn/commits: * nameinfo is a traversable attribute using schooltool.traversing.19:42
povbot/svn/commits: * formlib based form for editing nameinfo. The template is maintained in19:42
povbot/svn/commits: person package for now, but eventually this infrastructure will start to be integrated into schooltool.skin.19:42
povbot/svn/commits: * simple testbrowser based test to test editform functionality.19:42
ignasfaassen: premature optimization, no?19:55
faassenignas: no, I tried this out.19:57
faassenignas: it was too slow.19:58
faassenignas: I just haven't integrated it yet.19:58
ignasi see19:58
faassenit might be that int he new zope 3 trunk it's faster.19:58
faassenas there's faster lookup in genearl.19:58
faassengeneral.19:58
*** alga has joined #SchoolTool19:58
faassenalso I just think annotations are overkill. :)19:58
faassenthey're premature generalization.19:58
faassenlike, hey, we can add everything in as annotations.19:58
faassenattributes are much simpler.19:59
faassenso if I can do a bit of premature optimization by having stuff being simpler I certainly don't mind. :)19:59
ignasfaassen: well - as a person who will have to extract schoolbell from that mess20:00
ignasi want at least some premature generalization ... as i don't think schoolbell needs demographical data20:01
faassenthat's a reasonable argument, in schoolbell you'd not register the annotation?20:01
ignasfaassen: how slow were annotations ? what kind of speedup did you get from using the attribute ?20:01
faassenI haven't measured it.20:01
ignasfaassen: in schoolbell - i would not include the demographics package (in a perfect world)20:02
faassenoh, well, I was going to integrate the demographics into schooltool.person.20:02
faassenall this focus on generalization and backwards compatibility really negatively affects agility...20:03
ignasfaassen: tell me about it20:04
faassenwell, agility is important.20:04
faassenbackwards compatibility, for schooltool, to be honest, isn't. :)20:04
faassennot now.20:04
ignasif you will convince th1a i will follow :)20:04
faassenok. :)20:04
faassenanyway, imagine a theoretical world where demographics is a plugin to person.20:05
faassenand you can jsut leave it out.20:05
faassenthat means that the search system where you can find people20:05
faassenneeds to become a plugin to person too.20:05
faassenand that the table UI where you can browse people..20:05
faassenneeds to be plugged in too, if you are going to use anything from demographics in that table, that is.20:06
faassenand before you know it you're dying in a sea of viewlets and complexity.20:06
ignasfaassen: well we have a couple of seas already, i guess we'd need an ocean by then20:07
faassenanyway, just see me as draining a few lakes. :)20:07
algafaassen: I think I understand what you're talking about20:07
algafaassen: we've been there20:07
faassenI know, it makes it very hard to get into schooltool.20:07
algaand now we're trying to get schooltool really modular20:07
faassenwell, isn't the goal to make schooltool a great student information management system?20:08
algasrichter has spent a month or so trying to refactor the monolithic mess into dependent modules20:08
faassenI realize it needs flexibility points.20:08
faassenwell, I'm all for module dependency in a directed graph.20:08
algathere are people using schoolbell for calendaring20:08
algawe cannot just leave them outside20:08
faassenI'm not going to make a pluggable demographics search and display system. :)20:09
faassenit'd be much simpler to simply write a new user management system for schoolbell. :)20:09
faassenanyway, I was thinking about a strategy where you could just swap in a different factory for person objects.20:10
faassenso if you don't need all the extra data, you just plug in a much simpler object.20:10
faassenI don't really know how to do that.20:10
povbot/svn/commits: * ignas committed revision 6008:20:10
povbot/svn/commits: Work around for our functional test failure.  (revert it if you want to spend some intimate time with Zope3 adapters)20:10
faassenI can go back to annotations, but really, with my few experiments with a thousand students this brought tabular sorting to a halt.20:11
faassenI didn't measure anything as it just was sucky performance by clicking.20:11
ignasfaassen: leave it with an attribute then if profile told you that adaptation was at fault20:12
algabut how can you know you've made any improvement?20:12
faassenI switched it to an attribute and it was faster.20:12
algayes, sure!20:12
faassenI don't need a tool to tell me that something goes from unacceptabily slow to reasonably fast. :)20:12
algaI switched to GNOME 2.8.1.23 and it is clearly faster!20:13
faassenlook, alga, you're being ridiculous.20:13
faassenI can count seconds.20:13
faassena bit of pragmatism is helpful at times.20:13
algawell, we have to believe you20:13
faassenand again, I consider this to be simpler than annotations all around.20:14
faassenyes, you'll have to believe me. :)20:14
faassenI'm not going to do profiling and give you performance figures.20:14
algabut if you had numbers it would be much easier20:14
faassenwell, you're not going to get them. it'd be a complete waste of time.20:14
algaPUHLEASE!20:14
algaall the rules of whatever20:14
alga1) measure20:14
alga2) optimize20:14
faassenso?20:14
faasseni measured, I optimized.20:14
faassenit was slow as molasses, I changed it to an attribute, it was simpler and faster.20:15
faassenI shouldn't have mentioned a thing in my checkin comment.20:15
* alga gives up20:15
faassena bit of pragmatism would be helpful.20:15
algafaassen: profiling is easy and fun!20:16
algahttp://mg.pov.lt/blog/profiling.html20:16
faassendon't lecture me, please?20:17
algano, really20:17
algaone simple decorator for the function you want to profile20:17
faassenokay, alga, tell me all about the value of using a profiler. :)20:17
algait IS pragmatic20:17
th1aJeez, go to eat lunch and all hell breaks loose.20:18
faassenlet's just quit this discussion.20:18
faassenit's not like I can't change it back if we really need to.20:18
algafaassen: th1a should be aware of what you're doing20:18
faassenI don't think it'll be valuable in any way, and this isn't *more* complicated.20:18
faassenthe point about premature optimization is when people make life more complicated because they think they can make it faster.20:18
faassenI made it simpler and hey, it's faster too.20:18
faassenI don't see the issue with that.20:18
th1aPerhaps I should read the backlog...20:18
faassenI just stepped on some toes.20:20
th1aI see.20:21
th1aWell, are we talking about just names or the whole demographic/contact schemas?20:22
faassenI would really like to forgo an implementation discussion right now.20:22
faassenwe'll refactor if it needs to be extracted.20:23
algath1a: 20:09 < faassen> I'm not going to make a pluggable demographics search and display system. :)20:26
*** thisfred has quit IRC20:27
algath1a: I'm afraid schoolbell will be jeopardized real hard20:27
faassendoes schoolbell have a different skin?20:29
povbot/svn/commits: * ignas committed revision 6009:20:30
povbot/svn/commits: Resources booked by sections should be visible on their timetable events.  You can't book resources when creating timetables anymore (you should use the section resource views for that).  CSV and XML formats for timetables were modified accordingly.20:30
ignasth1a: ping me when you finish reading the backlog20:34
ignasth1a: what should i do with time spent on resource booking/conflicts improvements ?20:41
th1aWhat should you do with it?20:41
ignasth1a: the task is not 100% finished, but it ate way too much time already, and the conflict display will probably eat a lot more ...20:41
ignasi am not sure you would have asked these things if you were aware of the cost, so i just wanted to keep you informed20:42
ignasth1a: is conflict resolution important? and how important it is ?20:43
th1aWhat do you mean by conflict resolution?  A link to the calendar containing the conflicting event?20:44
ignaslinks to conflicting events/sectionms20:45
ignasin the section resource booking view20:45
th1aIt was definitely not ok to let you create conflicting events -- like booking two sections into the same room -- without some warning.20:46
faassenanyway, I shall try to integrate stuff in a separate package, I think that's possible.20:47
faassenso that schooltool.person stays fairly simple.20:48
ignasth1a: well - you can only view conflicts for student scheduling in a student scheduling view not in section members view20:48
ignasth1a: though yes i know it is important20:49
ignasth1a: when i think about, it something simmilar to the student scheduling view for resources is required20:51
th1aignas:  Yes, but I see that more as an argument that the section members view is broken ;-)20:51
ignasth1a: and in a perfect world, section membership view should check for conflicts too20:52
th1aWell, we should probably discuss with Aiste how much of this work should be considered fixing/completing the last contract.20:53
faassenalga: I realize that you can misinterpret what you quoted. What I mean is that I don't intend to make system where demographics and search forms are pluggable. I intend to make demographics screens and search screens so simple that you can easily maintain multiple ones, so you can have a customization that way.20:55
ignasth1a: i'll be a lot calmer after you discuss these matters with Aiste, it apparently the task is way more difficult than we had estimated :/20:59
ignass/it//20:59
th1aYes.21:00
th1aIt is necessary, though.21:00
algafaassen: sorry if I looked mean21:00
faassenalga: well, we have to adjust to each other.21:02
faassenI mean, I've used profilers in the past. :)21:02
faassenI also sometimes use the 'print' statement instead of a debugger.21:02
faassenas sometimes that's simpler.21:02
algaI love print statements21:02
algatoo21:02
faassenanyway, rest assured, I'm going to consider customizability when I write code.21:03
faassenbut I may go about it a different way than using adapters, or pluggable search forms, say.21:04
faassenwe'll see.21:04
th1aI could use some suggestions of what to discuss on Tuesday to resolve this question.21:04
th1aSo if you want to send an email on Monday, that might help.21:04
faassenwhich question exactly?21:04
faassenon customizability?21:04
faassenor is this for ignas?21:04
th1aWell, I'm not sure which questions need to be resolved, if any.21:04
faassenI just need to write some more code.21:05
faassen:)21:05
th1aOK.21:05
faassenno questions your honour.21:05
* faassen grins.21:05
faassensee you next week.21:05
ignasfaassen: do you mean plugability or customizability? as these two are a bit different in my vocabulary.21:05
th1aSee you faassen.21:05
faassencustomizability is obviously important.21:05
faassenpluggability is not the only way to accomplish customizability.21:05
th1aPerhaps that's something we could discuss on Tuesday ;-)21:06
faassenanyway, these are all vague concepts open to a zillion interpretations. :)21:06
faassenso we likely don't understand each other.21:06
faassensee you!21:06
*** faassen has quit IRC21:06
th1aThe one thing I want to point out in faassen's defense in this matter is that I was very explicit with him that we needed a working demographics system quickly that would NOT be the uber-portable system of our dreams.21:07
th1aBut would get us through next year.21:07
th1aHe's going to make some changes that should alleviate the potential SchoolBell headaches.21:08
*** srichter has joined #schooltool21:09
*** ignas has quit IRC22:10
*** mgedmin has quit IRC22:22
*** alga has quit IRC22:26

Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!