*** axp2 has joined #schooltool | 02:22 | |
*** axp2 has quit IRC | 02:25 | |
*** axp2 has joined #schooltool | 03:16 | |
*** yvl has joined #schooltool | 08:52 | |
axp2 | yvl: hi | 08:58 |
---|---|---|
yvl | hi axp2 | 08:58 |
axp2 | not sure if th1a has spoken to you but I'ev been emailling him about helping out with schooltool and he thought i might be able to assist with a RESTful API | 08:59 |
yvl | ah, hi Aaron | 09:00 |
yvl | yes, th1a mentioned your conversation | 09:01 |
yvl | is there anything I can help you with? | 09:01 |
axp2 | yvl: excellent. I've been just taking a look around the code at the moment, trying to get my head around Zope3. | 09:01 |
axp2 | yvl: he mentioned there was an existing REST API that might be a starting point for me to have a look at. wondering if you could point me in the right direction | 09:02 |
yvl | hmm | 09:02 |
yvl | we wiped out REST API a while ago | 09:03 |
axp2 | i'm happy to start from scratch if there's nothing useful in the old one. i was wondering whether lazr.restful would be a good option? | 09:03 |
yvl | I could search for an old revision that still has traces of it, not sure if that would help | 09:03 |
axp2 | (i'm coming from django so just struggling to figure out Zope3 at the moment!) | 09:04 |
yvl | oh | 09:05 |
yvl | a friendly warning - this will be tough at first | 09:05 |
yvl | zope 3 is unusal | 09:05 |
yvl | ZODB is also unusual | 09:05 |
yvl | by chance, do you know anything about ZODB? | 09:06 |
axp2 | yeah i'm already finding it difficult - but that's never stopped me before! :-) | 09:06 |
yvl | good :) | 09:06 |
axp2 | zodb - only what i've read in the past few days :-) | 09:06 |
axp2 | my main concern would be if i spend so much time trying to learn the basics that i end up taking up time of you guys with all my questions - that you might as well write it yourself! | 09:08 |
axp2 | but i think th1a may have suggested the API because it may not require me to get down into the complex stuff too much | 09:08 |
yvl | right | 09:08 |
yvl | so... | 09:09 |
yvl | These few paragraphs cover the rough basics of ZODB: http://www.zodb.org/en/latest/documentation/tutorial.html | 09:09 |
yvl | (I guess you might have read them already :) ) | 09:09 |
yvl | it's also a good place to start | 09:09 |
axp2 | yep | 09:10 |
axp2 | thanks | 09:10 |
yvl | just make your own database, store an object or two | 09:10 |
yvl | just to feel the difference between object DB and SQL | 09:10 |
axp2 | cool | 09:10 |
yvl | if you inherit objects from perisstent.Persistent | 09:10 |
yvl | they will update automagically | 09:11 |
axp2 | yep | 09:11 |
yvl | as for lazr... | 09:11 |
yvl | I haven't checked it out yet | 09:12 |
yvl | gimme 10-15 minutes :) | 09:12 |
axp2 | no worries, thanks alot. it seems to be a fairly simple way to expose zodb objects as an API without alot of wheel reinvention. but i'm not sure if it fits the requirement or not | 09:13 |
yvl | ok | 09:19 |
yvl | so yes :) | 09:19 |
yvl | lazr.restfull looks very useful | 09:20 |
axp2 | excellent | 09:22 |
yvl | btw | 09:22 |
yvl | do you have some of your code online somewhere? | 09:22 |
yvl | just to get the rough feel | 09:23 |
axp2 | yeah sure. most of my contributions have been to software center and it's review server (written in django) | 09:23 |
yvl | oh, cool! | 09:24 |
axp2 | so all my code is in launchpad launchpad.net/~aaronp | 09:24 |
yvl | ah, thanks | 09:27 |
axp2 | np | 09:29 |
yvl | looked some of your commits | 09:31 |
yvl | I think you're skilled enough | 09:32 |
yvl | apoplogies if I sound somewhat arogant | 09:32 |
yvl | but Zope is... well... interestingly different from others | 09:33 |
axp2 | lol no that's ok | 09:33 |
yvl | so for beginners it would be plain hell | 09:33 |
axp2 | yes I went into it thinking that it was going to be like django in a different flavour | 09:33 |
axp2 | but can tell there are a few more things to figure out! | 09:33 |
yvl | true :D | 09:34 |
yvl | btw | 09:34 |
yvl | you're in Australia, right? | 09:34 |
axp2 | yep | 09:34 |
yvl | (as in - it's 4:30 PM) | 09:34 |
yvl | cool | 09:34 |
axp2 | yep that's right | 09:34 |
yvl | it's not very late then | 09:35 |
yvl | let me make a cup of coffee :) | 09:35 |
yvl | need to wake up ;) | 09:35 |
axp2 | no problems | 09:35 |
yvl | ah, much better now | 09:51 |
yvl | ok, some questions :) | 09:51 |
yvl | have you checked out schooltool yet? | 09:51 |
yvl | did you take a look at how the data are stored? | 09:52 |
yvl | for example by connecting to db and inspecting it in interactive python shell? | 09:53 |
yvl | also, are you familiar with paste? | 09:55 |
yvl | http://pythonpaste.org/deploy/ | 09:56 |
axp2 | yep, i've built it and run it and had a play on the web front end | 09:59 |
axp2 | i haven't looked at the data yet, but i'll give that a go | 09:59 |
yvl | ok | 10:00 |
yvl | hmm | 10:00 |
yvl | I guess it would be better to make REST API run separately from ST | 10:01 |
yvl | at least at first | 10:01 |
yvl | we now have (via paste): | 10:01 |
yvl | schooltool (Zope) | 10:01 |
axp2 | and re: paste i've just used it in running through some zope3 tutorials so far | 10:01 |
yvl | task results (bottle / json) | 10:02 |
yvl | and celery (remote / delayed tasks) | 10:02 |
yvl | I think we can squeeze one more in | 10:02 |
yvl | and maybe splice it into ST itself later on | 10:03 |
yvl | it's easier to develop a separate egg | 10:03 |
axp2 | cool | 10:03 |
yvl | then again, separate ZEO connection eats RAM for caching | 10:03 |
yvl | also, loading up all of ZCML (for security and such) would eat a lot more of RAM | 10:04 |
yvl | but anyway, the first impl doesn't have to be optimized | 10:04 |
yvl | so how about this | 10:04 |
yvl | I could whip up an egg for you | 10:04 |
yvl | with some basic setup | 10:04 |
yvl | also maybe a few useful scripts | 10:04 |
yvl | maybe zodbbrowser | 10:05 |
axp2 | yeah that would be great, if you have the time | 10:05 |
yvl | and some simple lazr.restful query | 10:05 |
yvl | allright then | 10:06 |
yvl | and you can take it from there :) | 10:06 |
axp2 | excellent, thank you | 10:07 |
yvl | np | 10:07 |
yvl | I'll do that at some point today | 10:07 |
yvl | and subscribe you to a branch in LP | 10:08 |
yvl | also, you can look at src/schooltool/securitypolicy/README.txt | 10:08 |
yvl | it's not very verbose | 10:08 |
yvl | but we do have a custom security mechanism | 10:08 |
yvl | so that might be useful to know :) | 10:08 |
axp2 | ok thanks i'll take a look | 10:09 |
axp2 | i appreciate your help | 10:09 |
yvl | my pleasure | 10:09 |
axp2 | :-) | 10:12 |
*** axp2 has quit IRC | 13:28 | |
*** menesis has joined #schooltool | 14:22 | |
*** axp2 has joined #schooltool | 14:42 | |
axp2 | yvl: hi | 14:56 |
*** axp2 has quit IRC | 15:47 | |
*** pgulley has joined #schooltool | 16:02 | |
*** replaceafill has joined #schooltool | 16:11 | |
*** th1a has joined #schooltool | 16:30 | |
th1a | hi replaceafill, menesis, yvl. | 16:31 |
yvl | good morning | 16:32 |
menesis | hi | 16:34 |
replaceafill | good morning | 16:34 |
th1a | Ah. | 16:35 |
th1a | Has freenode been a bit wonky this weekend? | 16:35 |
th1a | Anyhow... | 16:36 |
th1a | Man has it been hot here. | 16:36 |
th1a | That's pretty much dominated my (lack of) brain activity over the weekend. | 16:36 |
th1a | OK... I do have to remember to discuss one thing. | 16:36 |
th1a | This guy has a bunch of old data that would logically go into report sheets. | 16:37 |
th1a | https://answers.launchpad.net/schooltool/+question/231867 | 16:37 |
th1a | Is there any particular reason writing a script that would create the report sheets and populate them from a spreadsheet would be more difficult than I'd think? | 16:38 |
th1a | I guess we'd have to create the sections and then remember their ID's. | 16:39 |
th1a | This would not be the universal fix. | 16:39 |
th1a | This would be the first pass on an individual case. | 16:39 |
yvl | well | 16:41 |
yvl | we can leave proper section and student creation to the user | 16:41 |
yvl | we do have spreadsheets for such import | 16:41 |
th1a | Well, yes, he has been working on the spreadsheets. | 16:42 |
th1a | So we can give him the heads up on that. | 16:42 |
yvl | other than that... I can't see any immediate rakes we could step on | 16:42 |
th1a | replaceafill: If we get him to clean up the data do you think this would be about a 1 day project, assuming he also gives us access to the data so we can test it ourselves? | 16:42 |
replaceafill | th1a, i think so | 16:43 |
th1a | OK... so since he seems at least half clueful, I should ask him to incorporate the section ID's in his import sheet if possible. | 16:44 |
replaceafill | this kind of confuses me though: | 16:44 |
replaceafill | "Another relevant complication is that the marking scheme has also changed | 16:44 |
replaceafill | during the time period covered by the data" | 16:44 |
th1a | Probably a different score system. | 16:44 |
th1a | We support that! | 16:44 |
replaceafill | oh, i understood an activity would have a score system in one point, and a different one in another point in time | 16:45 |
th1a | Yes. | 16:46 |
th1a | There will just be different report sheets for different years to reflect that. | 16:46 |
replaceafill | got it | 16:47 |
th1a | OK, I'll get back to him on that. | 16:47 |
th1a | yvl, go ahead. | 16:47 |
yvl | allright | 16:47 |
yvl | I pushed out updates to attendance | 16:47 |
yvl | score system changed from ranged to the discrete | 16:48 |
yvl | so dev sandboxes will be somewhat broken again | 16:48 |
th1a | OK. | 16:48 |
yvl | attendance has split cells with homeroom info, where such info exists | 16:48 |
yvl | background color is to be changed | 16:49 |
yvl | now some aquaish tealish thing | 16:49 |
yvl | and some other fixes and changes we discussed | 16:50 |
yvl | like move a link to help->scoresystems | 16:50 |
yvl | also made Journal tab function properly for techer-clerk | 16:50 |
yvl | *teacher | 16:50 |
th1a | Ah, right. | 16:51 |
yvl | and I think some more minor changes | 16:51 |
yvl | basically pushed out everything I had ;) | 16:51 |
yvl | also | 16:51 |
yvl | I spoke to axp2 (Aaron) today | 16:52 |
yvl | on ST REST API | 16:52 |
th1a | Ah, good. | 16:52 |
yvl | and I'm now hacking up a schooltool egg with lazr.restful | 16:52 |
yvl | want to make a somewhat simple starting point | 16:53 |
th1a | Is the old code useful or revivable at all at this point? | 16:53 |
yvl | I don't think so | 16:53 |
yvl | well, we could if we wanted to | 16:53 |
yvl | I just have serious doubts if it's worth it at all | 16:54 |
th1a | Sure. | 16:55 |
yvl | oh, and I'm also thinking on hooking up some tools - at least zodb browser | 16:55 |
th1a | I'm assuming lazr.restful is the more modern approach. | 16:55 |
yvl | it should help with exploring DB | 16:55 |
* yvl done | 16:56 | |
th1a | OK. So is there anything pending with attendance at this point or should I be looking at it as if your part is "done." | 16:57 |
yvl | let's consider it done | 16:57 |
yvl | please report bugs | 16:57 |
yvl | I may have forgotten something | 16:58 |
th1a | Right. | 16:58 |
th1a | I will. ;-) | 16:58 |
yvl | :) | 16:58 |
yvl | so next... | 16:58 |
yvl | make the REST branch | 16:58 |
yvl | and move on to statuses | 16:58 |
th1a | Yes. | 16:59 |
th1a | menesis: axp2 also has some experience with the Software Center, so hopefully he can help us get more info (logo, screenshot) in there. | 17:00 |
replaceafill | translations! :) | 17:01 |
th1a | Oh! For the software center? | 17:01 |
replaceafill | yes | 17:01 |
th1a | I hadn't thought of that. Good point. | 17:01 |
replaceafill | i think we still don't have that, right? | 17:01 |
menesis | who is axp2? | 17:01 |
th1a | I guess not? | 17:01 |
th1a | Aaron. | 17:01 |
th1a | He's a developer who worked on the software center and some other things who was looking for a new project. | 17:02 |
yvl | https://launchpad.net/~aaronp | 17:02 |
th1a | I suggested he work on implementing a new REST API, since there is actually some more or less standard API's coming out now in the US. | 17:02 |
th1a | That map very closely to what we had before. | 17:02 |
menesis | interesting. | 17:03 |
th1a | And I periodically have these email exchanges with people asking for an API, and basically say "Tell us exactly what you want and how you want and we'll give it to you," and they NEVER get back to me. | 17:03 |
th1a | So... | 17:03 |
th1a | I guess we should just pick one. | 17:03 |
th1a | But it isn't high enough priority to put you guys on it. | 17:03 |
th1a | And it is relatively easy to do without grokking the whole system. | 17:04 |
th1a | Hopefully. | 17:04 |
th1a | OK, replaceafill? | 17:05 |
replaceafill | ok | 17:05 |
replaceafill | last week th1a and i worked on styling the report card | 17:06 |
replaceafill | th1a, i have a question here | 17:06 |
replaceafill | i noticed the request dialog for the report card | 17:06 |
replaceafill | has options for the "whole" school year and each term | 17:06 |
replaceafill | asking you what you want, right? | 17:06 |
replaceafill | but, if you select the "whole" school year | 17:07 |
replaceafill | i was expecting the report card to show me "all the terms" in that year | 17:07 |
replaceafill | but it always shows only one | 17:07 |
th1a | That sounds like a bug. | 17:08 |
replaceafill | ah ok | 17:08 |
replaceafill | i thought so | 17:08 |
*** th1a has left #schooltool | 17:08 | |
replaceafill | how should we display that? | 17:08 |
replaceafill | oops | 17:08 |
replaceafill | :D | 17:08 |
*** th1a has joined #schooltool | 17:08 | |
th1a | Well... | 17:08 |
th1a | Wait, what are we talking about exactly? | 17:08 |
th1a | I don't even know if that makes any sense. | 17:09 |
replaceafill | multi term report card | 17:09 |
replaceafill | when you select the school year as the option | 17:09 |
th1a | Shouldn't that be determined by the layout? | 17:09 |
replaceafill | th1a, it kind of doesn't make sense to me either, because of the layout view | 17:09 |
replaceafill | correct | 17:10 |
th1a | So, I think really the pretense that there is a single term report card is wrong. | 17:10 |
replaceafill | but then, giving the user opportunity to select the terms doesn't make much sens | 17:10 |
th1a | That's the bug, really. | 17:10 |
replaceafill | right | 17:10 |
th1a | You should just be able to remove that. | 17:10 |
th1a | ? | 17:10 |
replaceafill | sure | 17:10 |
replaceafill | that's way easier :) | 17:10 |
th1a | Alan doesn't have that filter where he won't code something that doesn't make sense. | 17:11 |
replaceafill | ok, i'll do that | 17:11 |
th1a | He just plows ahead. | 17:12 |
replaceafill | and i have the insecurity of not knowing if this is on purpose or not :D | 17:12 |
th1a | Yes. | 17:12 |
replaceafill | so, the flourish view works and i left last week in the middle of using the journal trunk branch | 17:12 |
replaceafill | i used selenium IDE again, in case of breakages like the one yvl just mentioned :P | 17:13 |
replaceafill | th1a, i'll be paying attention to the report sheet question now | 17:13 |
replaceafill | ah | 17:13 |
replaceafill | also, i'm kind of helping jelkner and pgulley | 17:14 |
replaceafill | more of a "on the side" support :) | 17:14 |
th1a | Yes, I saw. That's ok. | 17:14 |
replaceafill | ok, i think i'm done | 17:14 |
replaceafill | couple of "shaky" days around here: http://earthquake.usgs.gov/earthquakes/eventpage/usb000i8nx#summary | 17:15 |
replaceafill | ;) | 17:15 |
th1a | It's hotter here! | 17:15 |
replaceafill | it's windy here :P | 17:16 |
th1a | OK. Hold on tight replaceafill. | 17:16 |
th1a | Thanks. | 17:17 |
th1a | menesis? | 17:17 |
menesis | I have been working on zope packages in both Debian and Ubuntu | 17:18 |
menesis | synced what I have in Ubuntu to Debian | 17:18 |
menesis | need to ask someone to upload that | 17:19 |
menesis | there are now automated tests for installed packages | 17:19 |
menesis | some of them were failing | 17:19 |
menesis | fixed some, new errors appeared | 17:20 |
menesis | I upgraded zope.testrunner to the latest version (in trunk) | 17:20 |
menesis | there are now more features, e.g. ability to skip tests | 17:20 |
menesis | there are some schooltool tests failing | 17:21 |
menesis | not because of the upgrade, they failed before | 17:21 |
menesis | will try to fix the easy ones – Decimal("5") vs ('5') and ScoreSystemError that I introduced | 17:22 |
menesis | but there are more failures, see http://source.schooltool.org/buildbot/builders/schooltool_trunk | 17:23 |
menesis | many ftests fail because of permissions remap | 17:24 |
menesis | but ftests still tests the old skin... so I ignore them. | 17:24 |
menesis | but the number of failures is growing | 17:25 |
th1a | Ah... well, is pruning them out worth the bother? | 17:25 |
menesis | it was in my plan to nuke the old skin | 17:26 |
menesis | and make the ftests use the flourish one, if feasible | 17:26 |
th1a | OK, use your judgement. | 17:27 |
menesis | but I haven't done much about it | 17:27 |
menesis | removed IBasicPersonLayer and old schooltool.person views, but even that is not merged | 17:28 |
menesis | ... | 17:28 |
th1a | Don't be afraid to just rip stuff out if it is getting to the point where obsolete test failures are making us ignore our tests. | 17:29 |
yvl | +1 | 17:30 |
menesis | I will | 17:30 |
menesis | but last week I only cared about packages in Ubuntu to have them in good shape | 17:31 |
th1a | Sure. | 17:32 |
menesis | one potential blocker to land the celery work is a very old supervisor | 17:32 |
menesis | I have an updated package in the ppa, but still have to submit it for sponsors | 17:32 |
th1a | OK. Do that. Does the old one not have essential features for us? | 17:33 |
menesis | and of course I'll get asked why not do that for Debian? so I'll try there first | 17:33 |
th1a | OK. | 17:34 |
menesis | it has one bug where a line in config file "environment=CELERY_CONFIG=blah REDIS_PORT=7079" is not parsed correctly | 17:34 |
menesis | so supervisord fails to start | 17:35 |
th1a | Huh. | 17:35 |
menesis | maybe adding some quotes can help workaround that | 17:35 |
th1a | So it is just a bug? | 17:35 |
menesis | but the first try was unsuccessful | 17:35 |
th1a | OK. | 17:36 |
th1a | Well, trying workarounds is probably quicker than pushing packages through, so give it a shot. | 17:36 |
menesis | it is one bug that was fixed in later versions. not sure what else, because it fails to start ;) | 17:36 |
th1a | True. | 17:36 |
th1a | OK. | 17:37 |
* menesis done | 17:37 | |
th1a | You know the situation better than I do. | 17:37 |
th1a | Just don't wait around on the political parts of the process. | 17:37 |
th1a | OK. | 17:37 |
th1a | Thanks guys. | 17:37 |
th1a | I have to go get fingerprinted and photoed today for my visa application. | 17:37 |
th1a | See you Wednesday. | 17:38 |
th1a | I'll be turning 44... | 17:38 |
* th1a drops the bag of gravel. | 17:38 | |
replaceafill | thanks everybody, see you wed | 17:38 |
yvl | happy birthday then :) | 17:39 |
yvl | all right | 17:39 |
yvl | thanks guys | 17:39 |
yvl | see you soon | 17:39 |
*** yvl has quit IRC | 17:39 | |
pgulley | replaceafill, could I get your thoughts on my approach on this story? | 17:48 |
*** replaceafill has quit IRC | 17:55 | |
*** pgulley has quit IRC | 18:58 | |
*** pgulley has joined #schooltool | 19:12 | |
*** menesis has quit IRC | 19:26 | |
*** pgulley has quit IRC | 19:46 | |
*** menesis has joined #schooltool | 20:07 | |
*** replaceafill has joined #schooltool | 23:10 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!