IRC log of #schooltool for Tuesday, 2008-03-04

*** mgedmin has quit IRC00:10
*** pcardune_vm is now known as pcardune_away00:24
*** alga_ has quit IRC00:37
*** nitromaster has joined #schooltool02:20
*** pcardune_away is now known as pcardune_vm02:39
*** eldar has joined #schooltool02:47
Lumierehi eldar02:50
Lumierehi pcardune_vm, nitromaster02:50
eldarLumiere: hey jason02:50
nitromasterhi02:51
Lumiere.nick Lumiere|SailorMoon02:51
pcardune_vmhi Lumiere02:51
pcardune_vm???02:51
Lumiereback in an hour? gonna watch some sailor moon ;)02:51
eldareh? the meeting is in 7 minutes02:53
Lumierelol I know02:54
LumiereI'm joking02:54
* Lumiere goes to get sharp stabby things for jelkner02:54
*** ccarey has joined #schooltool02:56
Lumierehi ccarey02:58
ccareygood evening02:58
Lumiereccarey: did you get my message?02:59
ccareyi got an email about blueprints and a message on launchpad02:59
Lumierethe message on launchpad is the one03:01
ccareyok03:02
ccareywhen you click on the skilldriver link03:02
ccareyit goes to adding and removing competencies03:03
Lumiereccarey: right, there are 2 ways to get to skilldrivs03:03
ccareyare the competencies what i'm supposed to separate?03:03
Lumiereway 1 is to go to the top bar03:03
Lumiereand click skill drivers03:03
Lumierethat takes you to the view where you manage, create, and delete them03:03
Lumierethe other is to go into a section and click skill drivers03:04
Lumierewhich is where you grade them03:04
Lumierethe place you really need to work is the manage/create/delete view03:04
Lumierethe section view needs to have the course/section lists separated, and the course lists made un-deleteable at the *section* level03:05
Lumiereif you click course skill drivers03:05
Lumiereyou can delete course skill drivers03:05
Lumiereeldar: if you have a few hours this week, can you go through all the blueprints and try and check off completed stuff03:05
Lumiereccarey: anything else on your end?03:06
* Lumiere stabs filip03:06
ccareyyes, ordering them by date?03:06
ccareyhow should i go about that?03:06
Lumiereccarey: I don't know if you can, that was a request of wbrady03:06
Lumiereif there is no easy way to do it, post a comment on the bug03:07
Lumiereand don't touch it03:07
Lumiere(I'll rewrite the bug to exclude that, and write a wishlist bit for it)03:07
ccareyalright, because i looked into it and i couldn't find a way to retrieve the original order03:07
Lumiereok, also please mark it in progress03:07
Lumiereso I can tell who's on what03:07
ccareyi don't think i can do anything with it though...03:08
ccareyso should i unassign myself from it?03:08
Lumieredo the part03:08
Lumierewhere you separate the section and course lists03:09
ccareyok03:09
Lumiereand mention in a comment03:09
Lumierethat order by date is non-trivial03:09
ccareyok so i've made a commit separating the section and course drivers at the section level03:10
Lumiereok03:10
Lumiereccarey: I'll look it ovecr03:11
ccareyso when you go into a section and click skill drivers, that's what i've done03:11
Lumiereok03:11
Lumieregrab another item and start on it03:11
ccareyso is the other part when i click on a skilldriver?03:11
Lumierethe other part03:11
Lumiereis when you go into it from the "Sections" link03:11
LumiereSections -> (choose a section) -> grade skill drivers03:12
Lumiereunfortunately, I cannot look over the commit till late this week03:12
Lumierealso, after this meeting03:12
LumiereI will be somewhat seriously incognito for this week03:12
ccareyi don't see the grade skill drivers link =\03:13
ccareyi'm at the (choose a section) part03:13
Lumiereok03:13
Lumiereyou have to have a section03:13
Lumierenitromaster: hi?03:15
Lumiereeldar: hi?03:15
ccareyi do, but the only link i see about grades is "Gradebook"03:15
LumiereoO03:15
Lumierethere should be "Evaluate Student Competencys03:15
Lumiere"Grade Skill Drivers03:15
Lumiereetc03:15
Lumiereand at the to03:15
Lumiereare tabs Evaluations Skill Drivers etc03:16
ccareyi'm at the section view and i don't have any of those...03:17
ccarey=(03:18
Lumierewhat do you see03:18
ccareysection view with links to students, instructors, booking resources, edit section, etc, and03:19
ccareyunder the actions bar is03:19
LumiereI guess I wasn't clear03:19
ccareyedit info, forum, student messageboxes, skill drivers, pending messages, add/remove members, etc.03:19
Lumierethe default interface for cando is the *go* interface03:20
*** fsufitch has joined #schooltool03:20
Lumieredo http://yourinstance/++skin++NewCanDo/03:20
Lumiereomg it's a fsufitch03:20
fsufitchLumiere: hi03:20
Lumiereonly 20 minutes late03:20
fsufitchsorry03:20
fsufitchwas teaching the constitution03:20
fsufitchgot carried away i guess03:20
fsufitchwhat's going on?03:20
LumiereI am working through ccarey's bug with him03:21
Lumierejust to find that he was using the admin interface03:21
Lumiereinstead of go03:21
Lumierefsufitch: what have you done this week?03:21
Lumiereif anything03:21
fsufitchi fixed that bug...03:22
fsufitchi emailed you about it03:22
ccareyLumiere: wow ok this makes a lot more sense03:22
fsufitchbut apart from that, nm else03:22
Lumierek03:22
ccareyi was wondering why my cando doesn't look like cando03:22
fsufitchheh03:22
Lumiereccarey: I use apache magic to make the ++ go away03:23
Lumierefsufitch: have you seen the email about blueprints03:23
fsufitchccarey: a little note though. if you don't use the schooltool default skin, you can't have admin rights03:23
fsufitchcando does not recognize the manager account03:23
ccareyi've noticed already03:23
fsufitchso if you ever want to brute force some knot, use the schooltool interface03:23
ccareyyou have to login as a teacher of the section03:23
ccareyok03:23
ccareyyeah it looks like my last commit didn't change anything in this interface03:24
fsufitchccarey: which bug is this?03:25
Lumiereanyways, I'll let you continue03:25
ccareyseparating course skill drivers from section skill drivers03:25
ccareyin the skill drivers view03:25
* Lumiere throws a sharp stabby object at jelkner and puts the rest away03:25
fsufitchLumiere: you're in a stabby mood today, eh?03:27
fsufitchnitromaster: ayt?03:32
nitromasterfsufitch, yes03:32
fsufitchdid you get my email about the high-priority bug?03:33
nitromasterno03:33
fsufitchthe "error deleting message from pending messages"03:34
fsufitchok then03:34
fsufitchare you working on that?03:34
fsufitchit's assigned to you03:34
nitromasterokay03:34
fsufitchi was looking for a yes/no03:35
nitromasteroh, sorry, i started working on it, but then got a bit sidetracked03:36
nitromasteri can resume working on03:36
fsufitchok03:36
fsufitchwere you working on something else atm tho?03:36
fsufitchbecause i'm out of a high-priority thing to work on03:36
nitromasternot really, i've been looking at bugs and such, but nothing really definite03:36
fsufitchah03:37
fsufitchare you familiar with jquery?03:37
nitromasteryes03:37
fsufitchthen could you take over bug 14561503:39
fsufitchthe competency number popup not staying on screen?03:39
nitromasterokay, will do03:39
fsufitchand i'll take over the high priority one03:40
nitromasterok03:40
fsufitchi've seen that stuff before03:40
ccareyLumiere: actually i see the change from my previous commit03:40
ccareyi just had to find it03:40
fsufitchnitromaster: on launchpad you're nitromaster101?03:41
ccareyand i found the page that i have to fix03:41
nitromasteryea03:41
fsufitchok03:41
fsufitchLumiere: may i run away?03:45
fsufitchi'll take that as a yes...03:46
fsufitchi'll bbl03:47
eldarah shit, i got carried away03:56
eldarand forgot about the meeting >.<03:56
*** pcardune_ has quit IRC04:01
*** th1a_ has joined #schooltool04:03
*** th1a__ has joined #schooltool04:04
*** ccarey has quit IRC04:09
*** eldar has left #schooltool04:20
*** pcardune_vm has quit IRC04:20
*** pcardune has joined #schooltool05:10
*** fsufitch has quit IRC05:59
*** pcardune has quit IRC06:15
*** nitromaster has quit IRC06:15
*** th1a_ has quit IRC06:54
*** th1a__ has quit IRC06:54
*** pcardune has joined #schooltool07:54
*** pcardune has quit IRC08:02
*** pcardune has joined #schooltool08:08
*** didymo has quit IRC08:16
*** aadvaark has joined #schooltool08:28
*** subir has joined #schooltool08:32
*** pcardune has quit IRC09:15
*** subir has quit IRC10:17
*** alga has joined #SchoolTool14:22
*** th1a_ has joined #schooltool15:06
*** th1a__ has joined #schooltool15:07
*** ignas has joined #schooltool15:31
*** th1a__ has quit IRC15:56
*** th1a_ has quit IRC15:57
*** mgedmin has joined #schooltool16:02
*** aelkner has quit IRC16:12
ignasth1a: ayt?16:24
th1aI am here.16:24
th1aWhat's up?16:24
ignasoh17:00
ignassorry, didn't see that :/17:00
ignasth1a: i have talked with lyceum about the UI redesign17:00
ignasth1a: it seems that they don't really like the idea of tab menu hybrid, and think it would be too confusing17:01
ignasand they want to be able to create new user specific tabs17:01
ignaswhich i think is doable17:01
ignaswe were discussing the journal tab17:02
ignasand Bronius suggested that he as a teacher would like to have all of his sections as Top level tabs17:02
ignasbecause he has only like 6-7 of them and all of his sections have ids 2 letter long17:02
ignasso the idea is to allow users to "hide" default tabs if they really want17:03
ignasand add "bookmarks"17:03
ignasthat would manifest as tabs17:03
ignaseven if links go to other websites, for easier integration with wordpress and moodle for example17:03
ignasif you don't like the idea, i can quite easily implement it for lyceum only17:04
*** aelkner_ has joined #schooltool17:09
ignasth1a: so I think i'll drop the last 2 parts (the ones after the dotted line) of my plan, and do the user manageable tabs instead17:16
ignasbecause I was planing to do the tab/menu thing for lyceum mostly17:16
th1aSorry, I was in the shower and then talking to jelkner.17:20
th1aignas: Hm... I think bookmark tabs are a good idea.17:23
ignasgood :)17:23
*** mattva01 has joined #schooltool17:23
th1aHow well it will really work in practice is hard to say.17:23
th1aBut it seems easy enough.17:23
ignasespecially if we will manage to do some ajax magic17:24
ignasif we'll have time of course17:24
th1aI do think you could argue that since we're overall reducing the amount of administrative space we're taking up at the top of the screen,17:24
th1athat it would be ok to just make "Journal" the default tab and the sections a second row of tabs.17:25
th1aBut I don't know what people would really prefer.17:25
th1aBut obviously the optimizations are different for cases where you're really only using one component compared to several.17:25
ignasin lyceum case17:25
ignasit is just a tad more convenient to have easy access to sections17:26
ignasfor quite a lot of teachers it seems17:26
th1aSure.17:28
ignasthough we can find a compromise, i don't want to discard the second level for sections idea completely17:28
ignasjust that - i want to be able to disable it17:28
th1aAlso, some schools may have up to 10 sections for a teacher or student and longer names, so that makes tabs problematic in the general case.17:29
th1aA drop down is probably safer universally to select sections.17:29
ignasa plain list of sections17:29
ignaswhen you click on journal17:29
ignasis the safest bet most of the time17:29
th1aYes.17:29
th1aThe bookmark tab idea is fine though.17:30
th1aEasy customizations are good.17:30
ignasone more thing, but i am not sure we can fit it in scope was the ability to add a custom "menu" instead of a tab17:31
ignasbut it would require more work17:31
th1aTo make your menu idea an option?17:31
ignascustom menu as in - a folder for bookmarks17:31
ignasnot a tab17:31
ignasfor a section, but a menu that can contain sections. Though it's useful only for a bit more power users.17:32
th1aRight.17:32
ignasand would require me to add a bit more complex tab list menu17:32
ignasnot more complicated, but more complex17:32
ignasso i think of leaving it for the time after the sprint17:33
th1aok17:34
*** pcardune has joined #schooltool18:48
mattva01http://pastebin.com/m6f615eba19:09
ignasmattva01: someone is sorting a list19:11
ignasthat contains decimals and strings19:11
ignasin schooltool.gradebook code19:11
ignasagain19:12
ignasor was it cando that did that the last time19:12
*** pcardune has quit IRC19:12
*** pcardune has joined #schooltool19:13
*** pcardune_vm_ has joined #schooltool19:14
*** pcardune_vm_ is now known as pcardune_vm19:14
*** lisppaste5 has quit IRC19:24
*** mattva01 has quit IRC19:30
*** lisppaste5 has joined #schooltool19:33
aelkner_ignas: ayt?19:47
*** wbrady has joined #schooltool19:49
ignasaelkner_: yes19:49
aelkner_hey there19:50
aelkner_i fixed the gradebook porblem19:50
ignashi19:50
aelkner_it was not handling UNSCORED grades well19:50
aelkner_anyway19:50
aelkner_i have some questions about my csap work here i'd like to bounce off of you19:50
ignasi see19:51
ignasok19:51
ignasi have only like 20-30 minutes though19:51
aelkner_basically, we have four types of objects that deal with csap, ITier1Message, ITier2BASE, ITier2Goal and ITier3Record19:52
aelkner_I could have different containers for these19:52
aelkner_off of the app root19:52
aelkner_schooltool.csap.iter119:52
aelkner_etc.19:52
aelkner_and I could just put all of the messages of the given types in the right containers19:53
aelkner_then I would just need the containers to have get functions for finding the objects that relate to a given student19:53
ignashmm, i don't really know, what objects are these items related to?19:54
ignasand are they related to each other?19:54
ignasstudents?19:54
aelkner_i need to call then all up for a given student19:54
aelkner_them19:54
aelkner_so each one of these objects will have the student as an attribute19:54
th1aThey represent different levels of intervention.19:54
aelkner_yes19:54
ignasis the relationship between student and each item 1:1  ?19:54
ignasor can student have multiple items of one time assigned to him?19:55
aelkner_there can be any number of messages or tier2 goals for a given student19:55
ignascan he have Tier1Message and Tier2goal without having tier2base for example?19:55
aelkner_no, there has to be a tier2base for there to be a goal19:55
ignasas in - are these 4 objects related somehow among themselves?19:55
aelkner_but tier1messages con't need tier219:56
ignasand how are they related19:56
aelkner_they all have the student as an attrubute19:56
ignasi understand, but what about themselves... is there something like - you must have tier1message to have tier2base19:56
ignasand you must have tier2base to have a tier2goal19:57
aelkner_no19:57
aelkner_wait19:57
aelkner_yes, you must have tier2base to have tier2goal19:57
ignasso it's 3 independent groups of objects19:57
ignasand tier2 objects are related to each other how? 1:1 1:many ?19:57
aelkner_1 tier2base to many tier2goal objects19:58
ignascan you have tier2stuff without tier1stuff and tier3 stuff without tier2 nor tier1 stuff?19:58
aelkner_could be19:59
aelkner_not likely in practice19:59
aelkner_but i have to allow for it19:59
ignasi see19:59
ignasso it seems that you need 3 containers keyed by person __name__ one for tier1 another for tier2base objects that have a list of tier2goals as their attribute and one for tier3 objects20:00
ignaswhether you put them in a top level object like app['sla.casp'].tier1  app['sla.casp'].tier2 and app['sla.casp'].tier320:01
ignasor as 3 top level containers20:01
ignasdoes not matter that much20:01
ignasi think you know possible directions and ways in which you might want to extend the system20:01
ignasso it's really up to you to decide20:01
ignasand - is it schooltool.csap ?20:02
ignasi mean - is that module in schooltool namespace?20:02
aelkner_tom wants it to be schooltool.csap20:02
aelkner_even though i'm doing it for sla20:02
ignashmm, i'd not go there at the moment20:02
aelkner_he wants this to be available for others20:02
ignasit will need to be refactored into a separate egg20:02
ignasbefore doing that20:03
ignasso i'd go with sla.something20:03
aelkner_why?20:03
aelkner_it's just a name20:03
ignasso you could install it20:03
ignasi just think that you should not use names of packages that do not exist20:03
ignasand use namespaces based on your current namespaces rather than introducing new ones20:04
aelkner_could we leave packaging issues for later?20:04
th1aI have no opinion about the top level namespace.20:04
aelkner_i wanted to tell you my idea for this20:04
aelkner_that's slightly different from yours20:04
aelkner_here's what would be easiest for me20:05
aelkner_i create a container called app['sla.csap']20:05
aelkner_in it are entries keyed by student_id20:05
aelkner_each entry would be the top-level csap container for the given student20:06
aelkner_in it would be a hetrogenous mix of Tier1, Tier2 and Tier3 objects20:06
aelkner_so20:06
ignaswell - it works too, it might be more comfortable as you have a csap container that you can register views for, though i would not put tier 2 objects in the same hierarchy level as their relationship is quite rigid20:07
aelkner_the tier2 object can itself be a container20:07
ignasyes20:07
ignasthat's my point20:07
aelkner_it's attibutes would describe the base20:07
aelkner_but its contents would be the goal objects20:08
ignasmakes sense20:08
aelkner_this is good news20:08
aelkner_tom didn;'t think you';d agree with this20:08
aelkner_but that's why i asked you20:08
aelkner_just in case20:08
ignasi mean - it's your code, you should decide, it's you who will have to live with it ;)20:09
aelkner_tom seemed to think that we like to keep everything at a top-level20:09
ignasif i make the decision and it makes it inconvenient to you - i won learn20:09
aelkner_find of a flat heirarchy20:09
ignasi won't learn the lesson ;)20:09
aelkner_hehe20:09
ignasas it's you who will face the consequences20:09
aelkner_but that's why i ask20:09
aelkner_what kind of consequences would you anticipate with my idea20:10
aelkner_see i love it for two reasons20:10
aelkner_everything is easy to find by student id20:10
ignashmm, listing only 1 type of objects becomes a task that requires iterating + filtering of all the objects in the container20:10
aelkner_i'll never need to create a catalog to speed up performance20:10
ignasso you can't say - give me tier 1 objects20:10
ignasand it does not make much sense unless all tier objects implement the same interface20:11
ignashaving 3 containers indexed by student id is just as fast20:11
aelkner_my container can have get method for each type of object20:11
th1aI guess one thing is that it isn't like you have to always have the list of csap containers exactly in sync with the list of students.20:11
aelkner_how do you mean?20:12
ignasaelkner_: they can have that, but it requires extending the container if you want to add another type of objects20:12
ignasaelkner_: which is not that easy if you are developing an extension20:12
th1aI mean, you don't have to make a csap folder as soon as a student is created and destroy it if they are deleted (which generally shouldn't happen anyhow).20:12
ignasth1a: he can do the same with his system, anyway20:13
aelkner_i only need to create the csap folder when the UI discates it20:13
aelkner_i.e., when a student gets in trouble20:13
ignasth1a: "write on read" and a subscriber for IObjectRemoved20:13
ignasth1a: what aelkner_ said20:13
ignasbut that works with 3 separate containers for different tier objects20:14
th1aI guess I'm just saying that as a general pattern, it would get hairy if every time a student was created, that 12 folders scattered around the system were created for them.20:14
aelkner_right20:14
ignasth1a: it is not going to be so20:14
aelkner_that's why i want just the one folder20:14
ignasth1a: most of the containers get created only when you try to access them20:14
aelkner_and if a student is removed20:14
aelkner_i can remove the folder20:14
ignasand it is not that hairy20:14
th1aSo... I'm not arguing against this.20:14
th1aI'm just kind of meekly justifying my initial concern ;-)20:15
ignasas for the tier containers20:15
ignasyou can have 3 of them in top level you can have 3 of them in the common container indexed by student id20:15
ignasit works both ways20:15
ignaswhat i don't like is having 3 types of objects in one container20:15
ignasunless they have a common interface20:15
ignasthat is actually being used20:15
ignasi mean groups and persons have common IContentObject interface, but we are not putting them in the same container20:16
ignaseven though we could filter them out20:16
th1aI just noticed flickr uses the same kind of "temporary tabs" I proposed two years ago for SchoolTool...20:16
aelkner_thing is, groups and persons clearly exist independently of one-another20:17
ignasth1a: i'll have to go see them, as I have never understood the proposal fully20:17
aelkner_in my case, all data related to a student kind of goes together in the UI20:17
ignasyes and it can go20:17
ignasmy point is20:17
ignasit should be app['sla.csap']['peter']['tier1']20:18
ignasapp['sla.csap']['peter']['tier2']20:18
ignasapp['sla.csap']['peter']['tier3']20:18
th1aOK, is this legible: http://www.flickr.com/photos/14049009@N00/sets/72157604046708333/20:18
ignasbecause in the context of a single student20:18
ignasjust like in the context of a single application20:18
ignasdifferent tiers are well - different20:18
aelkner_ignas: what would tier1, tier2, etc. be?20:18
aelkner_plain BTreeContainers?20:19
ignascontainers20:19
ignasprobably, if it's good enough20:19
aelkner_well, for tier2, i have the base and the goals20:19
aelkner_where would the base attributes go?20:19
aelkner_in app['sla.csap']['peter']['tier2']?20:20
ignas['tier2'] can be a PersistentList of bases20:20
ignasit seemed to me that you were planning to have app['sla.csap']['peter'] a PersistentList or a BTree20:20
ignasso instead of having 1 list or a btree20:20
ignasyou separate different objects into 3 lists or btrees20:20
ignasso you get an index for each type of tier20:21
aelkner_btrees make traversal easier20:21
ignasinstead of filtering every time20:21
ignasindeed, PersistentList does not make much sense20:21
ignasas for traversal you will probably have ICASPInfo(person) adapter20:21
*** wbrady has quit IRC20:22
ignasand access the info in some specific way on the person anyway20:22
aelkner_i mean when createing a link20:22
ignasnot traversing into the top level container directly20:22
ignasso you add an adapter traversal for "casp" on person that adapts person to ICASPInfo()20:22
aelkner_for instance: /localhost/interventions/aelkner/tier1/120:23
ignasand register different views on the ICASPInfo()20:23
ignasnope localhost/aelkner/interventions/tier1/120:23
ignasat least that's what i'd suggest20:23
aelkner_you have it backwards20:23
ignasthe actual location of interventions is an implementation detail20:23
aelkner_ /localhost/persons/aelkner is a person20:23
ignasif they are always related to a person20:24
aelkner_so: /localhost/interventions/aelkner/tier1/120:24
ignasyes /localhost/person/aelkner/interventions are his interventions20:24
aelkner_no20:24
ignasyes20:24
aelkner_that implies IBasicPerson is a container20:24
ignasno20:24
aelkner_i wasn't suggesting that20:24
ignasit implies that there is a traversal plugin20:25
aelkner_i wasn't thinkinbg traversal adapters20:25
ignasthat when traversing into ';interventions' on a person20:25
aelkner_i was figuring that using btrees20:25
ignasreturns the right object20:25
ignasno matter where it is20:25
aelkner_gives me the traversal for free20:25
ignaswell - it's up to you I guess, i just liked the simple indirection step20:25
ignasthat gives you freedom to move containers around20:25
ignasbecause the actual place20:25
ignaslike 'sla.foo' or 'schooltool.foo'20:26
ignasis an implementation detail20:26
ignasthat can be hidden in the adapter20:26
ignaswith like 4-5 lines of code20:26
aelkner_what would it take to move 'persons' around?20:26
aelkner_my point being, why allow for it?20:26
ignasnot 'persons'20:26
aelkner_i'm saying for instance20:26
aelkner_persons is a container of  of the root20:27
ignaswell - lyceum.person and schooltool.basicperson20:27
aelkner_would we be able to change the name easily?20:27
ignasand migration to sql database for persons20:27
ignasare 3 usecases20:27
ignasnot at the moment, because we are not using this pattern for persons and groups20:27
ignasbecause well - they are old20:27
aelkner_so you're saying that if you had it to do over again...20:27
ignasfor example localhost/person/aelkner/gradebook is lyceum.journal gradebook and localhost/sections/math/journal20:27
ignasare links to objects that are in app['schooltool.lyceum.journal']20:28
ignasaelkner_: yes, i would allow for easy switching to sql database for persons for example20:28
ignasaelkner_: or LDAP20:28
ignasaelkner_: or for migration of person container to another type of persons20:28
ignasaelkner_: while application is running20:28
ignasby accessing person container using20:28
ignasIPersonsGateway(app)20:28
ignasisntead of app['persons']20:29
ignasor even IPersons(app)20:29
ignaswhich is the same ammount of letters (actually 1 letter shorter)20:29
ignasbut gives use the ability to change the implementation of person container20:29
aelkner_we may need to do that kind of thing with persons20:29
aelkner_because one authenticates with them20:30
ignassame for all the top level containers20:30
aelkner_but what about sections20:30
ignasand even sections, i mean - who decided that sections will always be in the ZODB20:30
ignaswe did20:30
ignasdid we do it intentionally?20:30
ignasno, it was just the way we did it20:31
ignasto me the navigation to csap seems more natural if you do it through persons (on the url)20:31
ignasbecause it belongs to the person20:31
ignasdata structures do not have to match the way user sees the person20:31
ignasbut it's just my opinion20:31
ignasand i would suggest using a way of traversing to CSAP that is not relying on some internal structure20:32
ignasthus not exposing arbitrary implementation details20:32
ignasto the user20:32
ignaslike calendars20:32
ignasthey live in person/calendar20:32
ignasnot perons/__annotations__/schooltool.calendar20:33
ignasbecause the fact that calendar is in annotations is an implementation detail20:33
ignaslook at these top level containers as indirect annotations20:33
aelkner_so you have a traversal adapter for person -> calendar, right?20:33
ignasyes20:33
ignasbecause they are a fancy kind of annotations that does not "pollute" the person object20:33
aelkner_ok, so you suggest that it's ok to create the csap container by person in spp'interventions']20:34
ignasso isntead of IAnnotations(person)['schooltool.calendar'] you'd do app['schooltool.calendar'][person.__name__]20:34
ignasyes20:34
aelkner_but that i should traverse to the stuff using adapters20:34
ignasjsut that instead of the csap container having 3 types of items20:35
aelkner_to hide the impementation20:35
ignasi am suggesting 3 containers in ther20:35
ignasyes20:35
ignasso if you will suddenly realize that my suggestion is better (not necessary)20:35
aelkner_so even though i would hide implementation with traversal adapters20:35
ignasyou can just change the adapter20:35
ignasadapters can return LocationProxy objects that have the person as their __parent__20:35
ignasso that urls would look the way you want20:36
aelkner_it's still true that /localhost/interventions/aelkner/tier1/1 would traverse to the first tier1 message for aelkner20:36
aelkner_i just wouldn't use that in my pages20:36
aelkner_zpts20:36
ignasno, not necessary20:36
ignasif you will register20:36
ignasa traversal adapter20:36
ignasfor application to traverse to sla.csap20:36
ignaswhen traversing to 'interventions' then yes20:37
ignasbut it won't happen automatically20:37
aelkner_i'm just saying that i don't NEED the traversal adapters to get the job done20:38
aelkner_i just want to use them to hide the btree stuff20:38
ignasyes you don't NEED them strictly speaking20:39
ignasbut i am suggesting you to add a thin level of indirection to make urls a bit more sane and keep the tradition of app/container/object/stuff_related_to_object20:39
ignasinstead of app/calendars/john/2007-01-0120:40
ignasor app/journal/1/20:40
*** alga has quit IRC20:41
aelkner_ok, so i should feel free to develop everything without the traversal adapters and add them shortly before delivering to the user20:42
aelkner_sound ok?20:42
ignasyes20:42
aelkner_thanks for the input20:42
ignasi only care about the end result20:42
ignas;)20:42
ignasi don't really care about csap actually ;) i don't even know what it is20:43
aelkner_i knbew you didn't care about the modlue itself20:43
aelkner_i just wanted to make sure i coded to accepted practices20:44
aelkner_accepted by you, that is :)20:44
th1aThe important part is that we all love and care for each other.20:44
ignas:)20:44
th1aSo... is this legible?  http://www.flickr.com/photos/14049009@N00/sets/72157604046708333/20:44
aelkner_th1a: ignas suggests that i use sla.csap for the container name20:45
ignasth1a: why not just use screenshots as the base instead? ;)20:45
aelkner_but you said you wanted things to be called schooltool.csap20:45
ignasscreenshots of the new navigation branch20:45
aelkner_which way is right?20:45
th1aI was not really thinking about what the root module would be.20:46
ignasthe module is named sla.csap, it should use schooltool.csap *only* when/if it will be moved refactored into schooltool.csap20:46
aelkner_ok, i'll call all my containers sla.whatever for now20:47
ignasyou will need an evolution script if you will move the modules to schooltool.csap anyway, so changing the name of the container if you will change the name of the module will be the easy part20:48
aelkner_that's fine20:49
aelkner_th1a: you could maybe bring up the brightness and/or contrast on the photos20:51
ignasth1a: http://licejus.pov.lt/new/20:51
ignasth1a: you can even use firefox view-pagestyle->some style20:52
ignasto switch between 3 color sets ;)20:52
ignasjust print it and cut it to pieces ;)20:53
ignasth1a: should i leave it up or just turn it off?20:55
th1aYou can turn it off.20:55
ignasok20:55
* ignas is going home20:56
ignasbye20:56
*** ignas has quit IRC20:56
th1aThanks ignas.20:56
*** th1a__ has joined #schooltool21:30
*** th1a_ has joined #schooltool21:30
*** mgedmin has quit IRC21:36
th1ath1a_: http://www.careercenter.arlington.k12.va.us/cando/schooltool_ui/skills.htm21:43
LumiereoO21:49
*** pcardune_ has joined #schooltool21:49
*** th1a_ has quit IRC21:52
*** pcardune_ has quit IRC21:59
*** pcardune_vm has quit IRC22:05
*** pcardune has quit IRC22:06
*** pcardune has joined #schooltool22:50
*** pcardune has quit IRC22:53
*** pcardune_vm has joined #schooltool22:53
*** pcardune has joined #schooltool22:53
*** Ninno has joined #schooltool22:59
*** Ninno has quit IRC23:14
*** Ninno has joined #schooltool23:15

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