srichter | th1a: ok | 00:00 |
---|---|---|
th1a | Got it? | 00:00 |
srichter | yep | 00:01 |
srichter | ok, do you want to discuss any part? | 00:06 |
srichter | What else should be included? | 00:06 |
th1a | Well, I've got to go somewhere right now... I should probably look at it tomorrow... actually, put sample data for the gradebook in there for one thing. | 00:12 |
th1a | And sample data for the terms, etc. | 00:13 |
th1a | And do the gradebook sample data first. | 00:13 |
srichter | ok | 00:13 |
th1a | So if you want something to start, you can do that. | 00:14 |
srichter | ok, cool | 00:15 |
th1a | make fake assignments for every section every three days or so. | 00:15 |
th1a | Do the whole first semester. | 00:16 |
srichter | every three day? Wow! | 00:16 |
th1a | Evaluate all of them. | 00:16 |
th1a | This is high school. | 00:16 |
th1a | So homeworks (pass/fail) | 00:16 |
th1a | quizzes & tests. | 00:16 |
th1a | In some reasonable proportion. | 00:17 |
srichter | ok | 00:17 |
th1a | We won't find the UI & performance problems with small data sets. | 00:18 |
srichter | ok | 00:18 |
th1a | OK, I gotta run. | 00:19 |
th1a | ttyl. | 00:19 |
srichter | bye | 00:20 |
*** Travis_ has left #schooltool | 00:27 | |
*** Travis_ has joined #schooltool | 02:25 | |
*** Travis_ has left #schooltool | 02:49 | |
*** tiredbones has quit IRC | 03:53 | |
*** th1a|inux has quit IRC | 03:53 | |
*** th1a|inux has joined #schooltool | 03:54 | |
*** tiredbones has joined #schooltool | 03:54 | |
*** kitblake has joined #schooltool | 09:31 | |
*** Aiste has joined #schooltool | 09:34 | |
*** jinty has joined #schooltool | 09:58 | |
*** strichter has joined #schooltool | 12:06 | |
*** srichter has quit IRC | 12:34 | |
*** mgedmin has joined #schooltool | 13:03 | |
povbot | /svn/commits: * mg committed revision 5683: | 13:20 |
povbot | /svn/commits: Added a utilites subdirectory for random useful little scripts. | 13:20 |
povbot | /svn/commits: Added xpathgrep.py to utilities. | 13:20 |
*** thisfred has joined #schooltool | 13:30 | |
*** alga has joined #SchoolTool | 14:40 | |
*** ignas has joined #schooltool | 14:40 | |
*** mgedmin has quit IRC | 14:45 | |
*** strichter is now known as srichter | 14:57 | |
*** charlotte has joined #schooltool | 14:58 | |
*** mgedmin has joined #schooltool | 15:46 | |
*** erchache has joined #schooltool | 16:07 | |
erchache | hi | 16:07 |
erchache | why on wizard timetable on schooltool....has two types, week day and cycle day? | 16:08 |
erchache | and how i can delete a timetable? | 16:10 |
erchache | delete button arent made? | 16:10 |
erchache | jinty | 16:10 |
erchache | th1a | 16:10 |
mgedmin | you can't | 16:10 |
mgedmin | it's a limitation | 16:10 |
erchache | and why? | 16:10 |
mgedmin | things will break if you delete a timetable schema when there are classes scheduled according to it | 16:11 |
mgedmin | we could write an event handler to clean up after that | 16:11 |
mgedmin | but this got postponed | 16:11 |
erchache | ok | 16:11 |
mgedmin | because tom wanted some new features first | 16:11 |
erchache | i undestand it | 16:11 |
erchache | but i dont know how to finish my howto... :-( | 16:12 |
erchache | arrgghh i dont know what to do! | 16:18 |
erchache | im going to test ubuntu ppc on my powerbook....bye | 16:20 |
*** erchache has quit IRC | 16:20 | |
*** charlotte has quit IRC | 16:27 | |
srichter | are we meeting? | 16:35 |
srichter | th1a: meeting? | 16:35 |
srichter | mgedmin: metting? | 16:35 |
srichter | mgedmin: meeting? | 16:35 |
ignas | meeting! | 16:35 |
* mgedmin is here | 16:35 | |
srichter | well, so maybe we can start with a topic that Tom is not so involved in anyways | 16:36 |
srichter | archiving | 16:36 |
srichter | Tom and I brainstormed a bit and we have made the following observations: | 16:36 |
srichter | - Archiving is academic year centric; in other words I should be able to look up all archived data from a certain year | 16:37 |
srichter | - Archiving happens on containers | 16:37 |
srichter | - Archiving needs to hide archived objects without making them inaccessible | 16:38 |
srichter | (in other words, they do not have to be accessible via the common API, but must be accessible somehow) | 16:38 |
srichter | So here is my initial thought: | 16:38 |
srichter | implement an IArchiving interface; implementations are adapters to IContainer | 16:39 |
srichter | IArchiving provides a simple mapping/container API from academic_year -> adapterd container type instance | 16:40 |
srichter | some additional API is provided to make the archiving task easier | 16:40 |
srichter | for storage I am not so sure: should we store the archive as an attribute annotation or in a separate database making use of ZODB's multi-database support | 16:41 |
srichter | The questions are now: Is the archiving API sufficient? Any ideas about storage? | 16:41 |
srichter | <over> | 16:41 |
mgedmin | what about relationships? | 16:41 |
* srichter awaits comments | 16:41 | |
srichter | mgedmin: they are just references nothing should happen to them | 16:42 |
mgedmin | all the application containers are implemented on top of relationships | 16:42 |
mgedmin | um, no they aren't | 16:42 |
srichter | that's the beauty of the ZODB; as long as there is a reference the ZODB does not care what other references exist | 16:43 |
srichter | they are not? | 16:43 |
mgedmin | anyway, do you want the 'students' group to contain just the people that are currently students, or all people (archived or not) that were students? | 16:43 |
srichter | I think in that particular case I would remove the student from the group first | 16:43 |
mgedmin | my basic point is this: the relationships also change over time; how should archiving deal with that? | 16:44 |
srichter | it would be part of archiving to change the relationshipd | 16:44 |
srichter | it would be part of archiving to change the relationships | 16:44 |
ignas | what about section/student/teacher relationships ? current students should not see the Sections of the last year, and they allways have relationships with their old sections | 16:44 |
srichter | ignas: sections are created from scratch every term | 16:44 |
ignas | yes | 16:44 |
ignas | but old ones are left in place | 16:45 |
srichter | in the case of sections, yes | 16:45 |
ignas | because else attendance would not really work out iirc | 16:45 |
srichter | no, old sections are not left in palce | 16:45 |
srichter | here is an example: | 16:45 |
srichter | Math 101 meets for the entire academic year 2005/2006 | 16:46 |
srichter | thus section Math101-A is assigned the term year 2005/2006 | 16:46 |
srichter | this section will be archived after the academic year is over | 16:46 |
srichter | for 2006/2007 a new section will be created | 16:46 |
srichter | (Math101-A 2006/2007 edition) | 16:47 |
srichter | the point is that we (a) cannot reuse sections, because data will be changing, and (b) we need to keep a reference of the old section, so that the references in attendance data and grades will not break | 16:48 |
ignas | i am not talking about reusing them | 16:48 |
srichter | mgedmin: when I talk about archiving I am talking more about what are we doing with the data to be archived, not so much the workflow attached to that task | 16:48 |
srichter | mgedmin: though you made a good point and I will add this to the requirements and try to come up with tasks that must be done beofre archiving, such as unregistering a withdrawn/graduated student from the Students group | 16:49 |
mgedmin | ok | 16:51 |
mgedmin | seems sane | 16:51 |
mgedmin | how do you deal with name conflicts? | 16:51 |
mgedmin | e.g. we had a teacher with username 'john' in 2004, and another one in 2006 | 16:51 |
srichter | very good question that I also thought about already | 16:52 |
srichter | usually name uniqueness is not that interesting, *except* for persons | 16:52 |
mgedmin | and for URLs | 16:53 |
mgedmin | although you could come up with sequential numbers for URLs | 16:53 |
srichter | so we have to handle this case in a special way and keep a list of usernames | 16:53 |
mgedmin | /archived/persons/00000001234 | 16:53 |
srichter | yeah, that would work | 16:53 |
mgedmin | archived users cannot log in, I assume | 16:53 |
srichter | I agree | 16:53 |
srichter | I wonder whether the archive by year distinction makes so much sense for persons | 16:54 |
srichter | it certainly makes sense for students, but for admins and teachers? | 16:54 |
srichter | I guess we could consider everyone who quit in a given year as archived in that year | 16:54 |
srichter | so you would have: persons/archived/2006/john | 16:55 |
srichter | what about storage | 16:57 |
srichter | as I have recently learned, the ZODB keeps an index of all objects in memory | 16:57 |
srichter | this is kinda bad, once we get several years of data | 16:57 |
srichter | (we have seen how slow Zope comes up with a term worth of attendance already) | 16:58 |
srichter | it would be nice, if the archived objects would not always be in memory (their index I mean) | 16:58 |
srichter | I thought of ZODB's multi-database support | 16:59 |
srichter | do you think its worth persuing? | 16:59 |
srichter | do you think its worth pursuing? | 16:59 |
mgedmin | I'm not all that familiar with ZODB and large amounts of data | 17:00 |
mgedmin | if you used multiple databases, would ZODB keep all of their indexes in memory? | 17:00 |
th1a | Hi. Sorry I'm late. | 17:00 |
ignas | srichter, what about the scenario - Persons A and B are members of Tennis Group, they have references (relationships) to the group, and the group has references to them too, if we'd archive either A or B would the relationship be destroyed ? | 17:00 |
srichter | mgedmin: only if I opnened it | 17:00 |
srichter | mgedmin: another choice might be directory storage, which I heard does not have the index problem | 17:01 |
ignas | or is there some way to archive old relationships | 17:01 |
srichter | ignas: if the relationship is sotred by object reference, no | 17:01 |
ignas | srichter, but then ['groups]['tennis'].members will list both A and B | 17:02 |
mgedmin | there was an interesting thread about Really Large amounts of data and Zope 3 | 17:02 |
srichter | ignas: object references are kept among several databases | 17:02 |
mgedmin | people seemed to suggest RDBMSes | 17:02 |
srichter | ignas: part of the archiving *workflow* (not that data mechanism) should be to remvoe some of those relationships | 17:03 |
ignas | srichter, i was thinking of archiving relationships, but if removing relationships is good ... | 17:03 |
srichter | mgedmin: yeah I read that, but I don't think our data will be that large; if Boston.com can run on the ZODB, we can too :-) | 17:03 |
srichter | ignas: I think a lot of relationshpis are very temporal; once you graduate, you are not a member of the Tennis Team anymore | 17:04 |
srichter | ignas: if you want to keep a list of all previous tennis team members, then the application will have to add support for that | 17:05 |
th1a | Right. Groups in schools often dissolve at the end of the year. | 17:05 |
th1a | But managing *groups* from year to year isn't such a high priority. | 17:05 |
srichter | I think it 95% of the cases an entry in the students historical records will be sufficient: | 17:05 |
srichter | I think it 95% of the cases an entry in the students historical records will be sufficient: "Person A was member of the Tennis team iduring the academic year 2005/2006 | 17:06 |
th1a | I don't think that's even a strict requirement at this point. | 17:07 |
* mgedmin is wondering about timetables and terms | 17:07 | |
srichter | mgedmin: I think this is a non-problem, since the references are not destroyed | 17:08 |
mgedmin | objects that have timetables refer to timetable schemas and terms by name | 17:09 |
mgedmin | not by direct reference | 17:10 |
srichter | ooh, good to know!!! | 17:10 |
mgedmin | and a bit painful | 17:10 |
mgedmin | objects have a dict of timetables | 17:10 |
mgedmin | and the key of that dict is a string "%s.%s" % (term_name, timetable_schema_name) | 17:10 |
mgedmin | it is one reason why timetable/term deletion is disabled in the web UI | 17:10 |
srichter | which object is that? | 17:10 |
mgedmin | the ITimetabled adapter, I think | 17:11 |
srichter | darn | 17:11 |
srichter | I think I will have to rewrite this to use a keyreference | 17:12 |
srichter | (IKeyReference(term), IKeyReference(timetable_schema)) | 17:12 |
mgedmin | that might be a Good Idea | 17:13 |
mgedmin | I wish we knew about IKeyReferences back then, when we implemented timetabling | 17:14 |
mgedmin | did IKeyReference even exist back then | 17:14 |
mgedmin | ? | 17:14 |
mgedmin | I remember we had a hacky PersistentKeysDict and PersistentKeysSet | 17:14 |
mgedmin | and had to push some feature into ZODB to make it implementable | 17:14 |
srichter | it came with the intid utility | 17:14 |
srichter | which was after 3.0 but before 3.1 | 17:14 |
srichter | (I think) | 17:15 |
mgedmin | ah, ok, I think we worked on timetabling before 3.0 | 17:15 |
srichter | I fell in love with keyrefeence 2 weeks ago :-) | 17:15 |
mgedmin | I wish people would blog about interesting and useful, but not widely-known parts of Zope 3 | 17:15 |
srichter | yeah | 17:16 |
srichter | and its so easy to write a stub for it too :-) | 17:16 |
srichter | th1a: other topics? | 17:18 |
th1a | Oh, speeding up the attendance form? | 17:18 |
th1a | It seems like the sparklines take a long time to generate with a full set of sample data. | 17:19 |
th1a | Agree/disagree? | 17:21 |
mgedmin | haven't actually tried | 17:21 |
mgedmin | but I believe you :-) | 17:22 |
th1a | Well, take a look at that. | 17:22 |
srichter | I guess you could make a cache of the images already generated | 17:23 |
srichter | and make the key the string representation of the sparklines | 17:23 |
mgedmin | that's a really good idea | 17:23 |
srichter | '..^V...^.....V' or something like that | 17:24 |
mgedmin | actually, I think it is not the time to render images that takes time | 17:24 |
mgedmin | but the extraction of attendance data | 17:24 |
srichter | ahh | 17:24 |
mgedmin | the DayAttendance probably still has a linear search for every single query | 17:24 |
* mgedmin checks | 17:24 | |
srichter | then the caching is a bit more involved | 17:24 |
mgedmin | yep, the change to a BTree wasn't checked in yet | 17:24 |
mgedmin | ah, sample data in trunk doesn't have daily attendances yet | 17:25 |
mgedmin | so if sparklines are slow, there's another reason | 17:25 |
srichter | mgedmin: I wonder whether we should seriously think about implementing an index/catalog facility for SchoolTool | 17:25 |
srichter | we are trying very hard to avoid it, but maybe it is time | 17:26 |
ignas | srichter, won't any kind of such facility increase problems that we are already experiencing with zopdb size ? | 17:27 |
* mgedmin likes 'zopdb' | 17:27 | |
*** jinty has quit IRC | 17:27 | |
srichter | :-) | 17:27 |
srichter | ignas: well, as far as the people on the mailing lists said, size does not slow the ZODB down | 17:28 |
srichter | (other than on startup) | 17:28 |
srichter | but clearly searching does | 17:28 |
mgedmin | (if your system starts swapping, you *will* notice slowdowns) | 17:28 |
mgedmin | oops | 17:28 |
* mgedmin tried to generate some sample data, and got an Out Of Disk Space exception | 17:29 | |
srichter | LOL | 17:29 |
srichter | swapping: true | 17:29 |
srichter | that's the reason I do not want archived data necessarily in a open DB all the time | 17:30 |
mgedmin | do you have concrete suggestions where an index might improve performance? | 17:30 |
srichter | not right now, but here is an example | 17:31 |
srichter | I used to store evaluations in a container using a (artificial) name | 17:32 |
srichter | later I noticed that the system would be dog slow, if I do not key by the activity (assignment, homework, exam, ...) | 17:32 |
srichter | so in this case I changed the implementation | 17:32 |
srichter | which I think was the right choice | 17:33 |
srichter | but I also could have solved the issue with an index | 17:33 |
srichter | something that could easily come up is the search by a specific type of activity or date/time | 17:34 |
srichter | I would immediately need an index to make it efficient | 17:34 |
srichter | the thing is that the cost of developing an index at this point is fairly large and thus we shy away from it :-) | 17:34 |
th1a | I guess there isn't a heck of a lot of reason to discuss it in the abstract. | 17:34 |
th1a | We'll know when we've hit a wall. | 17:35 |
srichter | btw, is there any time scheduled to make relationships not a linear search | 17:37 |
th1a | Not specifically. | 17:37 |
srichter | I have a strange feeling that this could increase the speed our app as well | 17:38 |
th1a | Probably, although I think the hard part is things like attendance events and grades that have hundreds of thousands of instances, which mostly don't use relationships. | 17:39 |
mgedmin | iirc relationships never showed up high when we profiled various tasks | 17:39 |
ignas | srichter, profile, it's the only way to find out what would make ST faster | 17:40 |
* mgedmin sometimes wonders if he is taking Don't Optimize Now and Profile Before Optimization too far | 17:40 | |
mgedmin | (probably not) | 17:40 |
mgedmin | yep, currently calendar events and attendance have the most objects | 17:40 |
th1a | Well, let's not drag this out. Definitely take a look at how the attendance form is performing with the sample data. | 17:42 |
mgedmin | 43 seconds from pressing Ctrl+R until the "loading" animation stops in Firefox | 17:55 |
mgedmin | I'd call that "slow" | 17:55 |
mgedmin | /home/mg/src/schooltool/Zope3/src/zope/tal/talinterpreter.py:634: DeprecationWarning: /home/mg/src/schooltool/src/schooltool/course/browser/coursesviewlet.pt (line 22): Automatic translation of message id's is deprecated and will be removed in 3.3. Use explicit i18n:translate="" instead. | 17:55 |
* th1a upon returning from his shower, bangs the virtual gavel. | 17:57 | |
th1a | srichter: I need the easiest way to add comments to the gradebook. | 17:58 |
th1a | One comment per student per section will do. | 17:58 |
srichter | th1a: make a comments adapter for ISection | 17:59 |
srichter | th1a: make the comments a mapping from username to the comments | 17:59 |
srichter | th1a: make the comments a mapping from username to the comment | 17:59 |
th1a | a mapping = a dictionary? | 18:00 |
*** jinty has joined #schooltool | 18:14 | |
*** th1a has quit IRC | 18:34 | |
*** jinty has quit IRC | 18:37 | |
*** jinty has joined #schooltool | 18:39 | |
*** jinty_ has joined #schooltool | 18:56 | |
*** jinty has quit IRC | 19:02 | |
srichter | th1a: yeah | 19:04 |
srichter | th1a: but use a persisting dictionary | 19:04 |
srichter | persistent.dict | 19:04 |
*** kitblake has quit IRC | 19:18 | |
*** jinty_ has quit IRC | 20:17 | |
*** th1a has joined #schooltool | 20:19 | |
th1a | srichter: ayt? | 20:25 |
*** jinty has joined #schooltool | 20:26 | |
povbot | /svn/commits: * ignas committed revision 5684: | 20:35 |
povbot | /svn/commits: Opening new windows is impolite, unless i specifically ask for it. | 20:35 |
*** jinty has quit IRC | 20:42 | |
th1a | I see it is a bit warmer in Vilnius today. | 20:51 |
povbot | /svn/commits: * mg committed revision 5685: | 21:06 |
povbot | /svn/commits: Shut up another deprecation warning. | 21:06 |
povbot | /svn/commits: Will someone please make section.label into a property that returns zope.i18n.translate(self.label)? Or would that be a Bad Idea? | 21:06 |
*** thisfred has quit IRC | 21:17 | |
*** ignas has quit IRC | 21:24 | |
povbot | /svn/commits: * mg committed revision 5686: | 21:42 |
povbot | /svn/commits: Fix ftest. | 21:42 |
povbot | /svn/commits: * mg committed revision 5687: | 22:11 |
povbot | /svn/commits: I think we're supposed to use i18n:domain="schooltool" nowadays? | 22:11 |
povbot | /svn/commits: Please tell me if I'm wrong. | 22:11 |
povbot | /svn/commits: * mg committed revision 5688: | 22:14 |
povbot | /svn/commits: Another case of i18n:domain. | 22:14 |
*** mgedmin has quit IRC | 22:41 | |
*** ffsnoopy has joined #schooltool | 22:49 | |
*** alga has quit IRC | 22:51 | |
*** pcardune has joined #schooltool | 22:51 | |
*** jelkner has joined #schooltool | 23:01 | |
jelkner | hi all | 23:01 |
jelkner | pcardune: welcome to second semester | 23:02 |
jelkner | anybody here? | 23:02 |
ffsnoopy | im here | 23:02 |
jelkner | has anyone else said anything? | 23:03 |
jelkner | i see pcardune logged in, but he is not responding | 23:03 |
pcardune | i'm here | 23:03 |
pcardune | I was just looking at another monitor (playing with opengl and c++ (yucky) | 23:03 |
th1a | Hey. | 23:04 |
jelkner | th1a: hi tom! | 23:04 |
th1a | Hi jelkner. | 23:04 |
jelkner | ok, let's figure out where we are. | 23:04 |
jelkner | i upgraded the test server to dapper | 23:04 |
jelkner | jinty isn't here | 23:04 |
jelkner | so we can't talk about a package | 23:05 |
jelkner | when can i begin testing? | 23:05 |
jelkner | and how? | 23:05 |
pcardune | jelkner: do you have a fresh check out? | 23:05 |
pcardune | The proper way you should test is directly from the svn repository | 23:06 |
jelkner | ok | 23:06 |
jelkner | no i don't | 23:06 |
jelkner | we could do that now | 23:06 |
pcardune | I don't think it is worth making a new package every week | 23:06 |
jelkner | good point | 23:06 |
pcardune | yes, let's do that now | 23:06 |
jelkner | i should make you an account on the server... | 23:07 |
jelkner | pcardune i presume? | 23:07 |
pcardune | it would also be a good idea to write up a small howto for setting up a sandbox from svn | 23:07 |
pcardune | jelkner: you could do that, unless you want to know how to set it up yourself | 23:07 |
jelkner | well, if you tell me step by step now | 23:07 |
jelkner | we will have the log to use for notes | 23:07 |
th1a | There's not much to it. | 23:08 |
pcardune | ok | 23:08 |
pcardune | go to the folder you want above where you want the cando root to be... | 23:08 |
pcardune | then, "svn co http://svn.schooltool.org/cando/" | 23:08 |
pcardune | woops, i meant... | 23:09 |
pcardune | then, "svn co http://svn.schooltool.org/cando/ cando" | 23:09 |
jelkner | hold on... | 23:09 |
jelkner | where do i want the cando root to be? | 23:09 |
jelkner | i guess in my home directory, yes? | 23:09 |
jelkner | btw. the new version of gobby support sobby | 23:09 |
jelkner | a server version | 23:10 |
jelkner | so we can run sobby on a server and all connect to it with gobby | 23:10 |
pcardune | oh, cool | 23:10 |
pcardune | yeah, home directory is fine | 23:10 |
jelkner | question: should mitchell have an account on this box too? | 23:11 |
pcardune | sure | 23:11 |
jelkner | pcardune: login to cando.yhspatriot.net using pcardune and our favorite fruit ;-) | 23:11 |
pcardune | he he | 23:12 |
jelkner | ffsnoopy, do the same, with ffsnoopy as user | 23:12 |
jelkner | then please change your passwords | 23:12 |
pcardune | ok, i'm in | 23:12 |
ffsnoopy | wait, where is this? | 23:14 |
jelkner | cando.yhspatriot.net | 23:15 |
jelkner | pcardune: lets say i want cando in my $HOME/cando2006 directory, how do i check out? | 23:16 |
pcardune | "svn co http://svn.schooltool.org/cando/ cando2006" (in your $HOME directory) | 23:16 |
ffsnoopy | brb | 23:17 |
jelkner | hold on... | 23:17 |
jelkner | now how does this work, is zope3 being installed? | 23:18 |
jelkner | it's done | 23:18 |
pcardune | no | 23:19 |
jelkner | At revision 453 | 23:19 |
pcardune | that's correct | 23:19 |
jelkner | so, do i need zope3 first? | 23:19 |
pcardune | now, go into the cando2006 directory | 23:19 |
pcardune | no | 23:19 |
pcardune | and type make | 23:19 |
pcardune | (this checks out schooltool) | 23:19 |
jelkner | note: i don't see a Make file | 23:20 |
jelkner | make: *** No targets specified and no makefile found. Stop. | 23:20 |
jelkner | perhaps you mean trunk? | 23:20 |
pcardune | oh, right... woops | 23:21 |
pcardune | go into the trunk | 23:21 |
jelkner | wait, while we are righting up directions | 23:21 |
pcardune | the original svn command should have been "svn co http://svn.schooltool.org/cando/trunk/ cando2006" | 23:21 |
jelkner | why don't i try again, doing this: "svn co http://svn.schooltool.org/cando/trunk cando2006" | 23:21 |
jelkner | lol | 23:21 |
pcardune | because you don't need the other directories | 23:21 |
jelkner | let me try again | 23:21 |
jelkner | a lot faster | 23:22 |
jelkner | now let me try make | 23:22 |
jelkner | is schooltool part of zope yet? (or is it still the other way around?) | 23:23 |
pcardune | still the other way around (it's going to stay that way) | 23:24 |
jelkner | ?? | 23:24 |
pcardune | there isn't the need | 23:24 |
jelkner | i thought it was going to change, so you could add schooltool to your zope3 | 23:24 |
pcardune | th1a can better explain the reasoning behind this | 23:25 |
jelkner | well, it means if you already have zope3, you run it twice | 23:25 |
jelkner | and doesn't it also mean it will be harder to take advantage of other zope3 addons? | 23:25 |
jelkner | like the fsck editor, for example? | 23:25 |
th1a | We had been supporting adding SchoolTool as a Zope 3 content object, but | 23:25 |
th1a | that takes extra development time, which we don't really have. | 23:26 |
th1a | It shouldn't be a big deal to make it possible again in the future, but we have no pressing reason to do it now. | 23:26 |
jelkner | ok, i'll by that | 23:26 |
*** flint has joined #schooltool | 23:26 | |
th1a | It doesn't have much impact on how easy or difficult it is to integrate other Zope 3 objects. | 23:27 |
jelkner | ok, make finished | 23:27 |
pcardune | now type "cd SchoolTool" | 23:27 |
pcardune | and run make again | 23:27 |
pcardune | (this checks out zope3 and builds it) | 23:27 |
jelkner | flint: hi paul! | 23:28 |
jelkner | q: will a single 'svn up' now get all 3? | 23:29 |
jelkner | or do i need to: | 23:29 |
jelkner | 1. cd $HOME/cando2006 | 23:29 |
jelkner | 2. svn up | 23:29 |
jelkner | 3. cd SchoolTool | 23:29 |
jelkner | 4. svn up | 23:29 |
jelkner | 5. cd Zope3 | 23:29 |
pcardune | ok, this is where it is a bit complicated | 23:29 |
jelkner | 6. svn up | 23:29 |
jelkner | you see why i like the packages! ;-) | 23:30 |
pcardune | usually you don't need to update zope3 | 23:30 |
pcardune | and that takes a really long time anyways, and with rebuilding and all... it's painful | 23:30 |
jelkner | hmm, Zope3 now comes with twisted | 23:30 |
pcardune | you only need to update cando and schooltool | 23:31 |
jelkner | steps 1 - 4? | 23:31 |
pcardune | close | 23:31 |
pcardune | you want to run svn up in two places: | 23:31 |
pcardune | cando2006/SchoolTool/, and cando2006/SchoolTool/src/cando/ | 23:31 |
jelkner | ahh yes, because cando now *is* part of schooltool, yes? | 23:32 |
jelkner | ok, make finished | 23:32 |
pcardune | you could think of it like that | 23:33 |
jelkner | what next? | 23:33 |
jelkner | ffsnoopy: did you ever get in? | 23:33 |
pcardune | actually it doesn't matter, cando just needs to be in the path that schooltool uses to look for things | 23:33 |
jelkner | got it | 23:33 |
jelkner | what next? | 23:33 |
ffsnoopy | i dont know the password | 23:34 |
pcardune | next, go to cando2006/SchoolTool | 23:34 |
jelkner | our favorite fruit | 23:34 |
pcardune | and you can run ./schooltool-server.py | 23:34 |
ffsnoopy | yeah, and i have no clue what that is | 23:34 |
jelkner | and if you don't know that, ask flint ;-) | 23:34 |
ffsnoopy | i can do it tomorrow in class | 23:34 |
jelkner | banana | 23:34 |
ffsnoopy | oh, okay | 23:34 |
jelkner | change it now, please | 23:34 |
ffsnoopy | done | 23:35 |
jelkner | on which port will it run? | 23:35 |
jelkner | ImportError: No module named PIL | 23:35 |
th1a | Oh yeah, that's a requirement now. | 23:36 |
th1a | What's the deb called? | 23:36 |
ffsnoopy | python imagint library? | 23:36 |
ffsnoopy | imaging* | 23:36 |
pcardune | yep | 23:36 |
pcardune | it's pretty awesome, i highly recommend looking at it in your free time | 23:37 |
ffsnoopy | [random note] i worked with it over the summer | 23:37 |
pcardune | (if only i had known about it back in my yhs days) | 23:37 |
jelkner | ffsnoopy: in preparation for your cando work! | 23:38 |
jelkner | ;-) | 23:38 |
ffsnoopy | ahaha, right | 23:38 |
jelkner | cool, it is running | 23:39 |
pcardune | so, it runs on port 7080 as usual | 23:39 |
jelkner | yup | 23:41 |
pcardune | the default login is username:manager password:schooltool | 23:41 |
jelkner | hold on, you said i could use my old Data.fs file, yes? | 23:41 |
jelkner | so if i restart it, i should have my same login | 23:41 |
jelkner | and my student data should be there? | 23:42 |
pcardune | try it | 23:42 |
jelkner | hold on... | 23:42 |
jelkner | oh, there was a traceback before i even tried anything | 23:43 |
jelkner | Unauthorized: (Competencies('SchoolTool'), '__name__', 'schooltool.view') | 23:43 |
pcardune | did you log in? | 23:44 |
jelkner | no | 23:44 |
pcardune | oh wait... that was me | 23:44 |
pcardune | i hadn't logged in | 23:44 |
pcardune | well, go ahead and log in | 23:44 |
jelkner | where is the Data.fs, in schooltool-skel/var ? | 23:44 |
pcardune | yep | 23:45 |
th1a | pcardune: Are you using our sample data generator? | 23:46 |
pcardune | no, i'm not | 23:46 |
pcardune | i haven't looked at it, but was eventually planning to | 23:46 |
jelkner | zope.app.generations.interfaces.UnableToEvolve: (5, u'schooltool', 8) | 23:46 |
th1a | It works pretty well, although I've found the test setup of sample data to be rather painful. | 23:46 |
jelkner | and a looong traceback | 23:47 |
pcardune | jelkner: ok, i think that is a residual effect from our original separation of schooltool and cando | 23:47 |
th1a | jelkner is the canary in the coalmine for data backward compatability. | 23:47 |
jelkner | so what do i do? | 23:48 |
pcardune | we ended up having different evolve scripts and they are probably conflicted | 23:48 |
pcardune | you will have to live without that original data for now | 23:48 |
pcardune | I will look into getting it to cross over properly | 23:48 |
jelkner | oh no, you mean i have to enter it all again! | 23:48 |
jelkner | ;-) | 23:49 |
th1a | You need to make pcardune write sample data generation methods. | 23:49 |
jelkner | and import/export routines | 23:49 |
th1a | Although that's a good way to forget about data migration. | 23:49 |
jelkner | pcardune: this might be the time to discuss this | 23:50 |
pcardune | well, you want me to a) make data migration work between 2005 and 2006, and b) add sample data generation, and c) have import export functions | 23:50 |
jelkner | dwelsh will need to save data from this year and get it into next year's program | 23:50 |
pcardune | that's the most important thing | 23:50 |
jelkner | yes, so i can be the test case for that | 23:50 |
jelkner | i'm not in a rush, but we need a plan | 23:51 |
jelkner | i would like to get my data back if i could | 23:51 |
jelkner | and welsh will need to | 23:51 |
jelkner | so that sounds like our first stories: | 23:51 |
th1a | I would say a) is most important. | 23:51 |
jelkner | 1. I want to be able to get my data from cando2005 insto cando2006 | 23:51 |
th1a | Then b). | 23:51 |
th1a | Then c). | 23:52 |
th1a | When we say a), we mean, firing up our old Data.fs in the new database, and it just works, right? | 23:52 |
pcardune | yes | 23:52 |
jelkner | cool! | 23:52 |
jelkner | so that's the only story i care about now | 23:53 |
th1a | I think that is actually easier than trying to export/import. | 23:53 |
jelkner | we should meet again when that is ready | 23:53 |
pcardune | yeah, i agree | 23:53 |
pcardune | i agree with th1a that is | 23:53 |
jelkner | ffsnoopy can tell me | 23:53 |
jelkner | sounds good to me | 23:53 |
pcardune | jelkner: is there more of a traceback to that error? | 23:53 |
th1a | jelkner: There's lots of new stuff in that SchoolTool checkout, too. | 23:54 |
jelkner | yes, it is huge! | 23:54 |
jelkner | would trying to start up have changed the Data.fs file? | 23:54 |
jelkner | i don't think so, it's data is still from 2 days ago, when i copied it | 23:55 |
pcardune | probably not, if the evolve script breaks, then it probably doesn't change the Data.fs | 23:55 |
jelkner | pcardune: i just copied the Data.fs file into your directory | 23:55 |
jelkner | so you can use it for testing | 23:56 |
pcardune | ok great | 23:56 |
jelkner | ok, a few business issues and we are done | 23:57 |
jelkner | 1. getting paid by aps | 23:57 |
jelkner | 2. estimated time to get this story finished | 23:57 |
jelkner | you and mitchell should be sending in invoiced to aps | 23:58 |
pcardune | ok | 23:58 |
pcardune | I have an invoice from a couple weeks ago that i haven't sent | 23:58 |
jelkner | do you still have chris martini's email? | 23:58 |
pcardune | do we know how much funding we are getting? was that resolved? | 23:58 |
pcardune | yeah | 23:58 |
pcardune | i should | 23:58 |
jelkner | actually, i'll send a quick email to him, you and ffsnoopy (cc'ing dwelsh) to get that moving | 23:59 |
pcardune | jelkner: actually, i don't | 23:59 |
jelkner | no problem, i'll send the first email | 23:59 |
jelkner | then you and mitchell will need to work with him on getting whatever info he needs in to him | 23:59 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!