IRC log of #schooltool for Monday, 2004-07-26

**** BEGIN LOGGING AT Mon Jul 26 13:28:10 2004
-->You are now talking on #schooltool13:28
---Topic for #schooltool is || IRC logs at
---Topic for #schooltool set by mgedmin at Fri Jul 16 18:15:52 200413:28
-TomLogging-This channel is logged -
algathisfred: hi15:57
-->th1a ( has joined #schooltool15:57
algamay I ask, why are you interested in Schooltool?15:57
th1aAre you asking me?15:57
algahi, Tom15:58
th1aGood morning, alga.15:58
-->gintas ( has joined #schooltool15:58
*th1a goes to feed his fish.16:01
alganicccce fishessss16:02
th1aSo juicy sweet!16:02
th1aNot really.  They're koi.16:03
th1aOK, shall we begin?16:03
th1aI added some little '+' marks to indicate more fine grained priorities on the wiki page.16:04
algauhuh, I noticed16:05
algaHTML Interface16:05
algawhat do we need to be able to do through it?16:05
th1aYou should be able to use the whole system without using an external client at all.16:06
algaAll the current functionality of schooltool?16:07
algaAnd moz cal does not count?16:07
th1aThis is the calendaring release.16:07
algaI mean, we should not rely on moz cal as the client for the hard parts? :)16:07
th1aYeah.  I don't want Moz Cal to be a requirement for using this product.16:08
algaso, add, remove, modify people and groups16:08
algaview, edit their calendars16:09
algaset up relationships16:09
algathat would be a good starting point, right?16:10
th1aI don't know how much interest you guys have in web design.16:11
th1aIt is not out of the question that some of the web design part could be done by someone else.16:11
algahm, I think, we will/can produce some clean minimalistic design, but nothing fancy.16:12
algasee -- that kind of thing16:13
th1aThat's fine,16:13
th1aIf it gets fancied up eventually we should be able to do that mostly with CSS.16:13
algaOK, making a web interface for groups, people, etc is about 1 man week16:14
algacalendaring is a separate issue16:14
algado you have a vision/example how you want the calendars to look/feel?16:15
thisfredalga: hi, sorry ;)16:15
-->sabdf1 ( has joined #schooltool16:15
th1aQuite frankly I don't have any strong feelings about it.16:15
sabdf1hi all, mark s here16:15
th1aHi Mark.16:16
algahi mark16:16
mgedminhi Mark16:16
thisfredhi mark16:16
gintashi Mark16:16
algaI imagine our first iteration of the calendar web UI will be quite lame16:16
th1aI'll have to look at existing implementations of HTML calendars.16:16
th1aIt isn't something I use.16:17
algabut we will be able to use it as a basis for improvement16:17
th1aI'd just like it to be clean and valid to start.16:18
algahm, I think a simple cal view with a table of one month, links next month, prev month, and being able to click on a day and edit (add, remove, modify) the events in that day16:20
th1aProbably a weekly view, too.16:21
algawould be something like 4 dev days16:21
algathe 4-day version would probably have rough edges16:22
algabut then we might go and improve it16:22
algawhat do you think?16:22
sabdf1yahoo claender has a great ui for display of week/day/month views16:23
algaok, we'll take a look at that16:23
*th1a wonders if we should have someone else work on the visual design.16:23
algamaybe, but anyway we have to have functionaliity done in HTML first16:24
algaso -- what do you think?  Story 1 -- groups, persons rels in HTML -- 1 week16:25
algaStory 2 -- simple calendar view -- 4 days16:25
th1aSounds reasonable to me.16:26
mgedminI'm trying to write down a more detailed list of UI bits that need to be done16:28
mgedmin* login page (username/password, "login failed" message)16:29
mgedmin* a user's home page (basic user's info, what groups she belongs to, a list of allowed actions, links to default calendar views)16:29
mgedminA manager's home page will contain buttons for actions (e.g. new user, new group)16:29
mgedmin* page for editing an existing user's info (name, etc.)16:30
mgedmin* page for creating a new user (mostly the same as above)16:30
mgedmin* page for creating a new group16:30
mgedmin* page for editing group's info16:31
mgedmin(actually I'm not sure if groups have anything worth editing, perhaps the last one isn't necessary)16:31
mgedmin* group's home page (list of parent groups, list of members, etc.)16:31
mgedminno, it should be just "group's page" -- home page is something a user gets when he logs in, and groups cannot log in16:32
mgedmin* pages for establishing/removing relationships16:32
mgedmin* three calendar views (monthly, weekly, daily)16:32
mgedmin* page for adding/editing a calendar event16:33
algawhat about timetable models, schoolday calendars and all that stuff?16:34
algawill we leave in in XML only for the time being, or a HTML interface is required too?16:34
mgedmingood question16:34
algaand timetables!16:35
th1aIt might not be a bad idea to leave that to the client interface.16:35
mgedminwhat do we from need timetabling for the calendaring release?16:35
th1aViewing a timetable is the same as a calendar right?16:35
mgedminwhat do you mean by "client interface"?  The GUI client?16:35
th1aYeah.  wx.16:35
algaso, the admins will have to use specialized clients, but students, parents, teachers won't?16:36
mgedminviewing a timetable might be different from viewing a calendar16:36
mgedminbut viewing a calendar derived from a timetable is the same16:37
algabut we have an HTML view for timetables already!16:37
th1aLet's look at it this way.  I wouldn't mind requiring the administrator of the system to use the wx client.16:38
th1aBut I'd like users to be able to do everything via the web.16:38
mgedminso stories like  'add a user', 'add a group' are less important16:38
th1aBy that approach we could cut down on the amount of web work to be done now.16:38
mgedminbecause only admins can create users and groups16:38
th1aPerhaps.  It seems like a reasonable approach.16:39
algath1a: what is the aim of this meeting?  what do you want done by the end of it?16:39
algaare we just clarifying stories?16:39
th1aAt minimum.  I think there is some clarifying to be done.16:40
th1aWe probably should do a clarifying pass before we calculate times, etc. in detail.16:40
mgedminth1a: how about adding my list of "UI bits" to the list of stories on the wiki?16:41
th1aThe second big area is delegation.16:42
*mgedmin is editing the page16:42
th1amgedmin: are you adding your list?  Someone has the wiki locked.16:43
mgedminit seems that I'm unable to save my changes: the page is locked16:48
th1aAnyone using external editor on the wiki page?16:49
mgedminI am16:49
th1aSo that shouldn't be happening.16:49
th1aI think I can break the lock.16:50
th1amgedmin: just save your version locally.  let's move on and I'll figure out how to break the lock later.16:52
th1aSo delegation...16:53
th1aWill require a fair amount of work on the security infrastructure of SchoolTool, I imagine.16:53
mgedminperhaps not16:55
mgedminthere will be a fair amount of work for managing the ACLs, though16:57
mgedmincould you clarify "A person should be able to delegate other people to manage their own events."?16:58
th1aQuestions about how this should work?16:58
mgedmindid you mean that a person should be able to delegate other people to manage his (or her) events?16:59
th1aSo the principal can allow his secretary to add and edit his calendar.16:59
th1amgedmin: yes16:59
mgedmin"their" confused me16:59
th1aMy English is perhaps not as proper as yours.16:59
algait seems that once we get 17:00
mgedminI'm reading "BUGS in Writing" now ;)17:00
mgedminhow granular is the delegation?17:00
algait seems that once we get ACL's to work most of those stories will be very easy?17:00
th1aIt doesn't seem like one is particularly harder than the others.17:01
th1aWell, editing and deleting should probably be different than adding.17:02
th1aFor resource scheduling you really don't want teachers erasing each other's reservations.17:02
th1aBut you'd like them to be able to add themselves.17:02
algacreate remove? update delete17:03
algacreate retrieve update delete17:03
algafour kinds of actions to define in an ACL17:03
th1aBTW.  Creating a reservation/event for a resource should probably only be allowed via the web.17:04
th1aBecause we'll need to handle conflicts.17:04
th1aAnd I don't think we'll be doing conflicts from ICal interaction.17:05
mgedminI think that currently resource calendars (iCal) are read-only for that reason17:06
th1aIs it even possible to handle conflicts from ICal -- is there a "sorry, there's a conflict" error code?17:06
mgedminICal itself is not a protocol for updating calendars17:06
mgedminAFAIU ICal has no special provisions for representing conflicts17:07
mgedminwe could simply reject the full update17:07
mgedminand return an HTTP error code17:07
mgedminbut I do not know how Mozilla Calendar would handle that17:08
th1aLet's assume that resource scheduling is via web only.17:08
th1aIf people double-book their personal schedule, that's their own problem.17:08
th1aAnything more to say about delegation?17:09
mgedmin"A manager should be able to delegate the manager role for a group or resource."17:10
mgedmincould you elaborate on that17:10
algaI think I get it17:11
*alga explains to mgedmin via air17:11
mgedmincan the delegatee delegate the manager role to a third person?17:11
th1aGood question.  I don't see why not, but in the long-term I guess it might be bad for security overall.17:13
algathe security is tighter if only managers can set up delegations17:13
th1aI'd think.17:13
algaonly real managers, I mean17:13
th1aThat seems reasonable.17:13
algaso, the delegation would just grant a user all create and update rights on a group17:14
th1aAnd they can add or remove members from the group.17:14
algathat's updating a group17:15
algait's creating relationships on a group in fact17:15
algaI think we can move on17:16
algathings are pretty clear here on the requirements level17:16
algawill the freebusy calendars be public on all objects?17:18
th1aCan anyone think of a compelling reason why they shouldn't?17:18
algait seems that you know most about the privacy concerns though17:19
alga>     When sceduling a resource, the system should by default assume that you want to book the resource for a block of time corresponding to the main timetable for the school, e.g., teacher's will be thinking, "I need the computer lab first period", not 9:03 - 9:51.17:20
th1aDo you need some clarification?17:20
algaMaybe all calendars should be available with hours:mins or periods??17:20
algasome UI switch?17:20
th1aYeah, I guess that does apply to events in general.  Meetings, etc.17:21
th1aSo yes, a UI switch of some sort.17:21
algahm, schooltool supports different timetable schemas at the same time17:22
th1amgedmin:  for whatever reason, the DAV lock on the wiki seems to be gone.17:22
mgedminI'm not using external editor now17:23
th1aHm.  Odd.17:23
mgedminI (thought that I) saved my local changes, closed the editor17:24
mgedminclicked on the external edit icon again17:24
mgedmintried saving the page without any changes17:24
mgedminit worked17:24
mgedmintried saving the page without any changes again17:24
mgedminit didn't17:24
mgedminI gave up17:24
th1aGood choice.17:24
mgedminthe only problem is that the file where I thought I saved my changes does not exist17:24
th1aFrom a development point of view, "Delegation" and "Access Control" are essentially the same thing, right?17:27
th1aAll CRUD.17:28
mgedminthe stories look very similar17:28
mgedmin"Each person can designate which group calendars will appear as part of their free/busy schedule when requested by another person."17:29
mgedminwhat happens to group calendars that are not designated?17:29
mgedminthey do not influence the free/busy schedule at all?17:29
th1aIf I am the basketball coach, I'm busy every time there is a basketball game.17:30
algaand membership+teaching are not good enough designators?17:30
th1aBut I also want to see the general school event calendar, but I only attent a fraction of school wide events.17:30
th1aI go to all the basketball events if I am a basketball player, too.17:30
algaso, in general you'd want all the groups you belong to, plus some others?17:31
mgedminI assumed that "group calendars" referred to calendars of groups that the person belongs to17:31
algaBtw, basketball players belong to a Basketball group that the coach 'teaches'17:31
th1amgedmin: right.17:32
th1aAll the teachers, for example, will often subscribe to the "teachers" calendar.17:33
th1aBut they won't be going to all those meetings necessarily.17:33
th1aWhen you are viewing a group calendar you should probably be able to check off if you'd like to add it to your calendar.17:34
algath1a, could you elaborate on17:34
algaConflict Resolution17:34
th1aI guess you guys don't play American football?17:34
mgedminmy, are you clairvoyant?17:35
th1aPunt means "give up," "kick it to the other team."17:35
th1aNot that there is another team...17:35
algaok, thanks17:35
th1aWhat do you think about hooks for running scripts pre/post event creation.17:37
mgedminespecially security-wise17:38
th1aI'd like to have a clear way for external developers to add functionality around event creation.17:40
algaif the scripts are on the FS, in a form of "plugins", o extensions, or whatnot, the security is not so dire17:40
mgedminoh, right17:40
mgedminwe have a notification model in SchoolTool17:40
th1aOh.  That's good to know.  Does it do anything now?17:41
mgedminit has 'events' that are completely unrelated to calendar events17:41
mgedmincurrently it sends notifications, e.g. when a relationship is created17:41
mgedminit would be easy to send notifications when calendar events are created17:42
th1aSends notification to whom?17:42
gintasit's low-level stuff17:42
gintasnotifications are sent to subscribers17:42
mgedminit's highly configurable in the code17:42
th1aAre subscribers other objects?17:43
mgedmindoc/events.rst in svn contains a description of this subsystem17:43
gintascallables I think17:43
mgedminsteve advocated switching to zope 3 event implementation17:44
mgedminwhich is somewhat simpler17:44
th1aWould that change the interfaces, or is it a straightforward refactoring?17:45
mgedminit probably would17:45
mgedminbut it should be straighforward enough17:45
mgedminour current event system is not used for much17:46
mgedminabsence tracking mostly17:46
th1aDoes ICal support locations for events?17:48
mgedminProperty Name: LOCATION17:49
mgedmin   Purpose: The property defines the intended venue for the activity17:49
mgedmin   defined by a calendar component.17:49
mgedmin   Value Type: TEXT17:49
mgedminin other words, it does17:49
th1aThanks.  Our events should definitely have locations.17:49
algaI thought location is something like URI... :-)17:49
th1aNo.  Where in meatspace.17:50
mgedminthat was my first though as well, but eventually I understood ;)17:50
th1aActually, the location will usually, but not always, itself be a resource.17:50
th1aIf rooms in the school are resources.17:50
th1aI'm feeling like resources need description properties soon.17:51
mgedminbtw our calendar events now have a property (owner) that refers to a person who created the event17:52
mgedminso "(+)Perhaps an event should have a property containing the name of the person who made the event." is already done17:52
th1aOK.  Scratch that one.17:52
algaare we coming to the end of the meeting?17:53
th1aFeels like it.17:53
th1aCan you guys work up time estimates among yourselves?17:54
algath1a: what do you think if now we will come up with a proposal and send it to you and SteveA in a couple of days?17:54
th1aSounds fine.17:54
algaI think we can17:54
algaI suppose you want everything done ASAP?17:55
algaOK, thanks for the meeting17:59
th1aThank you!17:59
mgedminthank you18:00
algath1a: what about an m6 release?18:18
algashould we announce it?18:18
th1aSure.  And announce the new website is live.18:20
<--gintas has quit ("Bye")18:37
-lilo-[Global Notice] Hi all. As you may be aware, O'Reilly's OSCON 2004 conference is in progress this week. If you're attending, or if you're just interested in knowing what's going on, please stop by freenode's unofficial #oscon channel. Thanks!19:21
*alga just announced m619:37
-->stockholm ( has joined #schooltool19:41
stockholmth1a: i read your mail on the debian-edu list19:42
stockholmth1a: do you have a url for the timetable generation requirements?19:43
stockholmth1a: i am a debian-edu developer19:43
th1aOh hello.19:54
th1astockholm:  I don't have a url for timetable generation requirements yet.19:55
th1aI should put up a wiki page.19:55
stockholmi was the one answering the mail claiming that i met the schooltood developer in brazil at debconf. (c:19:56
stockholmactually i thought timetable generation was working allready19:57
sabdf1hi guys, site is looking great, thanks tom!19:58
sabdf1do plane and zwiki work well together?19:58
th1aPlone and Zwiki do.19:58
sabdf1how about a wiki?19:58
th1asabdfl:  for timetable requirements?19:59
th1astockholm: you can make timetables now but the interface isn't sophisicated enough to do it on a large scale.20:00
th1aAt our school this year I'm planning on doing it on paper/in excel and importing it into SchoolTool.20:01
th1aOK, we can start collecting requirements here:
stockholmth1a: will you add that to that thread or should i?20:22
th1astockholm: go ahead and add what you'd like.20:24
th1aif you aren't sure where to put something just throw it in somewhere and I'll merge it together later.20:25
stockholmth1a: the thread on the debian-edu list. i expect the teachers to come and add feature requests.20:25
*stockholm id just a developer. (c:20:25
th1aGo ahead and add something yourself if you'd like.20:27
stockholmi would wish for interfaces to the software we use to keep track of users, groups and rooms. (c:20:28
th1aI don't want it to look like I'm the only person interested in this project!20:28
stockholmth1a: (c:20:28
stockholmi dont think you are, we are too20:28
th1aGood ;-)20:31
algath1a: do we need anti-events?21:02
algastuff that makes just a single event from a timetable disappear?21:03
algaI mean, a single occurence of a weekly event ant suchlike21:03
algathe story sais: A manager needs to be able to edit and cancel individual events in the timetable.21:04
algaor just nuking the whole recurrent event from the timetable is sufficient?21:05
th1aNow that you mention it, there are lots of cases that we probably haven't touched on.21:05
th1aOne frequent one is adjusting the schedule when there is an event21:05
th1aFor example, there is a pep rally (do you have those in Europe?) at the end of the day,21:06
th1aso all the other periods are shortened or one is eliminated to allow time for the special event.21:06
th1aThat's also a case that generally confuses everyone in the school, 21:07
th1aso it would be one time that everyone would really like to know where they can find21:08
th1aan accurate representation of the schedule.21:08
algaa tough one21:08
th1aIt is.21:09
algait might be quite hard on admins, but if they're willing to take pains, we can find several solutions21:09
th1aGive it some thought.21:09
thisfredMy thinking would be that recurring events are *all* single events that can be cancelled individually, but they are also members of a group that can be edited as a whole.21:10
thisfredbut that may create storage overhead21:10
th1aYeah.  That's not the way it is currently done.21:10
th1aAnti-events seems like a good idea.21:11
thisfredI was just thinking aloud, please ignore where inappropriate, or just plain dumb ;)21:11
algano, your idea makes a lot of sense actually21:12
th1aI encourage you to think aloud.21:12
algafor those corner cases, when all events are shrunk, and some removed, that's the model that does just fine21:12
algaIt's just that there's a lot of editing to do in a large school, so some automated tools might help21:13
th1aOne thing that would be nice is if the admin could say "I need to insert a 75 minute assembly at 2:00, without canceling any classes."21:14
th1aGive me a modifed schedule for the day.21:14
thisfredIn an abstract sense, each instance of a recurring event is an event in itself, and could have special properties. (Next thursday's English will start 15 minutes late/in another room than usual) In that case you would need an anti-event, and a replacing event.21:14
th1aWhen the timetable for a day is rendered, It would have to check first for corresponding anti-events.21:15
algaso, the question is: what happens more often:  changes in the timetable or single-day exceptions?21:18
algamy school was quite messy, and the timetable was not at all clear during the first two weeks of a term21:19
algabut if everything would have been run properly, the timetable should have been finalized before the start of term21:20
thisfredThat would seem to be a general pattern. Errors (as in real world incosistrencies, rather than things which the appliction could/should have caught) tend to crop up early in a term and get hammered out. Rarely do they not occur at all21:21
thisfredinconsistencies - application21:22
thisfredwill schooltool also teach spelling?21:22
thisfredwow,, that late already... sry all, I have to catch a train home. See you around21:25
<--thisfred has quit ("Farewell, cruel channel...")21:25
th1aI haven't seen many changes in the timetable once school started.21:38
th1aActually the teachers' union would never put up with that ahere anyhow.21:38
th1aSingle day exceptions are fairly frequent, though.  A couple times a month.  A lot more at the end of the school year and Christmas.21:39
<--stockholm ( has left #schooltool ("ping timeout by peer")21:46
---Disconnected ().22:10
**** ENDING LOGGING AT Mon Jul 26 22:10:54 2004

Generated by 2.15.1 by Marius Gedminas - find it at!