*** tpb has joined #melange | 00:00 | |
*** tansell-laptop has joined #melange | 00:09 | |
*** jamtoday has quit IRC | 00:24 | |
*** madrazr has quit IRC | 01:01 | |
*** tansell-laptop has quit IRC | 01:06 | |
*** tansell-laptop has joined #melange | 01:06 | |
*** dqminh has quit IRC | 01:35 | |
*** tansell-laptop has quit IRC | 01:53 | |
*** dhaun has joined #melange | 03:34 | |
*** sandy|lurk has quit IRC | 03:42 | |
*** sandy|lurk has joined #melange | 03:43 | |
*** forever has quit IRC | 03:53 | |
*** dqminh has joined #melange | 04:07 | |
*** solydzajs has joined #melange | 04:17 | |
*** ChanServ sets mode: +o solydzajs | 04:17 | |
*** SRabbelier has joined #melange | 04:32 | |
*** ChanServ sets mode: +o SRabbelier | 04:32 | |
*** mithro has quit IRC | 05:07 | |
*** solydzajs has quit IRC | 05:18 | |
*** jamtoday has joined #melange | 05:50 | |
*** schultmc1 has joined #melange | 06:12 | |
*** schultmc has quit IRC | 06:26 | |
*** mithro has joined #melange | 07:05 | |
*** ChanServ sets mode: +v mithro | 07:05 | |
*** dqminh has quit IRC | 08:17 | |
*** schultmc1 is now known as schultmc | 09:16 | |
*** mithro_ has joined #melange | 10:01 | |
*** ChanServ sets mode: +v mithro_ | 10:01 | |
*** mithro has quit IRC | 10:03 | |
*** dqminh has joined #melange | 10:14 | |
*** madrazr has joined #melange | 10:28 | |
*** madrazr1 has joined #melange | 10:38 | |
*** madrazr2 has joined #melange | 10:41 | |
*** madrazr has quit IRC | 10:42 | |
*** madrazr2 is now known as madrazr | 10:42 | |
*** madrazr2 has joined #melange | 10:54 | |
*** madrazr1 has quit IRC | 10:59 | |
*** madrazr has quit IRC | 11:11 | |
*** dqminh has quit IRC | 11:16 | |
*** solydzajs has joined #melange | 12:33 | |
*** ChanServ sets mode: +o solydzajs | 12:33 | |
*** arvind_khadri has joined #melange | 12:51 | |
*** SRabbelier has quit IRC | 13:37 | |
*** SRabbelier has joined #melange | 13:39 | |
*** ChanServ sets mode: +o SRabbelier | 13:39 | |
SRabbelier | jamtoday: ping | 13:54 |
---|---|---|
SRabbelier | solydzajs: ping | 13:56 |
SRabbelier | lh: ping | 13:56 |
*** Lennie has joined #melange | 13:57 | |
*** ChanServ sets mode: +o Lennie | 13:57 | |
SRabbelier | Lennie: ping as well | 13:57 |
Lennie | my IRC magically connected, I'm not here | 13:58 |
* Lennie slaps SRabbelier | 13:58 | |
Lennie | :0 | 13:58 |
SRabbelier | Lennie: amazing | 13:58 |
Lennie | :) | 13:58 |
SRabbelier | Lennie: seems like youŕe the only one there :P | 13:58 |
Lennie | I'm always there | 13:58 |
SRabbelier | heeh | 13:58 |
SRabbelier | Lennie: I thought that privilidge was reserved for deities/ | 13:58 |
SRabbelier | ? | 13:58 |
Lennie | I'm level 80 hush | 13:59 |
* madrazr2 holds Lennie's hands :D | 13:59 | |
madrazr2 | Lennie: I won't allow you to slap SRabbelier :D | 13:59 |
* jamtoday just came back with his espresso | 13:59 | |
SRabbelier | madrazr2: hehe, sweet :D | 13:59 |
SRabbelier | jamtoday: good morning ;) | 14:00 |
SRabbelier | jamtoday: did you get any sleep:? | 14:00 |
madrazr2 | SRabbelier: :D | 14:00 |
* jamtoday slept like a baby | 14:00 | |
Lennie | you mean you wet yourself? | 14:01 |
Lennie | woke up crying | 14:01 |
arvind_khadri | lolzzz | 14:01 |
jamtoday | Lennie: it gets cold at night | 14:01 |
SRabbelier | Lennie: lolol | 14:01 |
Lennie | :-) | 14:01 |
*** SRabbelier changes topic to "GSoC Discuss meeting in progress - Melange powers the Google Summer of Code 2009 site - Want to contribute? Start here: http://code.google.com/p/soc/wiki/GettingStarted - Be a Hero and Fix Some Melange Bugs: Easy Bugs: http://tinyurl.com/dax2j9 & Minimal Effort Bugs: http://tinyurl.com/d97z24 - Demo is running at http://melange-demo.appspot.com - Logs at http://www.thousandparsec.net/~irc/logm/" | 14:02 | |
Lennie | I had to take the oppurtunity :P | 14:02 |
Lennie | I always found it a weird saying | 14:02 |
SRabbelier | jamtoday: let's roll :) | 14:02 |
* madrazr2 change in topic reminds me that, I need to prepare some notes, since my new mentor is a horror movie actor :P | 14:03 | |
Lennie | :) | 14:03 |
SRabbelier | jamtoday: We were hoping that (given your experience with implementing surveys) you could focus on implementing simple survey support in Melange (before the midterm survey xD) | 14:03 |
jamtoday | Okay so we're scheduled to discuss my GSoC project, the details and the scope | 14:03 |
SRabbelier | jamtoday: I don't do official meetings if I can avoid it, freestyle ;) | 14:04 |
jamtoday | informal is good. | 14:04 |
jamtoday | and this would be the Quiz Adapter as described here - http://bit.ly/yS8ul ? | 14:04 |
tpb | Title: GSoC2009Ideas - soc - Ideas List for GSoC 2009 - Google Code (at bit.ly) | 14:04 |
SRabbelier | jamtoday: mhhh, we can do without the Quiz Adapters for now | 14:06 |
SRabbelier | jamtoday: (since those are meant as a bridge between old and new) | 14:06 |
SRabbelier | jamtoday: if thereś no new yet, then a bridge doesn make much sense | 14:06 |
jamtoday | Sure, so in the new surveys, each item is its own entity | 14:06 |
jamtoday | and actions can be programmed to be taken depending on answers. | 14:07 |
SRabbelier | jamtoday: I was thinking we can use Expando so we can store an entire quiz in one enitty | 14:08 |
jamtoday | So each item is a property.... | 14:08 |
* Lennie flicks his magic wand and says "Expando" | 14:09 | |
SRabbelier | jamtoday: right | 14:09 |
SRabbelier | jamtoday: it would save a lot of db queries if we do it like that | 14:09 |
jamtoday | and you could do a getattr() on the entity to get a list of its dynamic properties? | 14:09 |
SRabbelier | jamtoday: and it'd be easier (I'm guessing) to show the entire survey in one go | 14:10 |
jamtoday | I'll have to look at the expando docs, but that's definitely a possibility | 14:10 |
SRabbelier | jamtoday: thereś a dyannmic properties method in expando | 14:10 |
SRabbelier | jamtoday: no need to use getattr | 14:10 |
jamtoday | And there should also be a GUI for creating the surveys | 14:10 |
SRabbelier | jamtoday: are you willing to work on this as first part of your GSoC though? | 14:10 |
jamtoday | or else there won't be many surveys to administer :) | 14:10 |
jamtoday | Honestly, it sounds like it would be easier to start with than the news feed | 14:11 |
SRabbelier | jamtoday: true | 14:11 |
jamtoday | And I'm a fan of starting with the low hanging fruit | 14:11 |
jamtoday | Especially to give me a chance to become intimately familiar with the codebase | 14:12 |
SRabbelier | jamtoday: how long are you thinking this would take you ("no clue" is a valid answer) | 14:12 |
jamtoday | Well, it depends on the meaning of "this" :) | 14:12 |
SRabbelier | jamtoday: Yes, you could do it instead of writing tests if you prefer? | 14:12 |
jamtoday | For example, I'm looking at Google Forms right now, and you can drag and drop individual survey items | 14:12 |
SRabbelier | jamtoday: this = basic survey support, with a way to create surveys | 14:12 |
jamtoday | and there's a bunch of ajaxy goodness | 14:12 |
SRabbelier | jamtoday: would be nice, but not a requirement | 14:13 |
jamtoday | I'd imagine if it took me more than a week, I'd be "doing it wrong" | 14:13 |
SRabbelier | jamtoday: hehe, how much hours do your weeks have? :P | 14:14 |
* Lennie raises his eybrow, 1 week | 14:14 | |
Lennie | jamtoday, I'll buy you a drink if you pull that off :D | 14:14 |
jamtoday | There also needs to be an interface for viewing results. So a basic implementation would have an interface to make surveys, take surveys, and view survey results | 14:15 |
Lennie | with the ability to expand it to mentor(student) only for midterm eval | 14:16 |
SRabbelier | jamtoday: right, do you think thatś one week each, or are you going to do all that in one week (doubtful)? | 14:16 |
SRabbelier | jamtoday: Iĺl be helping you of course :) | 14:17 |
SRabbelier | jamtoday: if we schedule it during the community bonding period, there's no reason we can't code together on this ;) | 14:17 |
SRabbelier | (except my time restrictions of course) | 14:17 |
jamtoday | I'd imagine I would need to get all three going at the same time, and then including testing and improvements and permissions it would push it out to an extra week or two | 14:17 |
SRabbelier | jamtoday: So you are ok with working on this during the bonding period, and then working on news feeds as your gsoc (as planned, really) | 14:18 |
* jamtoday will brb | 14:18 | |
* jamtoday is sorry... "important phone call" | 14:27 | |
SRabbelier | jamtoday: hopefully nothing bad? | 14:28 |
*** MatthewWilkes has joined #melange | 14:31 | |
jamtoday | Nothing bad. Just the type of call where it would be very rude to tell the person you're busy on IRC and can't talk :) | 14:34 |
SRabbelier | jamtoday: heheh, ok :P | 14:34 |
jamtoday | I was planning on working on some tests, I believe for the cron jobs | 14:34 |
jamtoday | I can start off with the surveys instead | 14:34 |
jamtoday | ( and write tests for surveys, of course) | 14:35 |
SRabbelier | jamtoday: no worries, Iḿ nomming in the meanwhile anyway | 14:35 |
SRabbelier | jamtoday: that sounds like a good plan | 14:35 |
jamtoday | nom nom | 14:35 |
SRabbelier | jamtoday: to finish midterm surveys weĺl need to test that cron works properly anyway | 14:36 |
SRabbelier | jamtoday: but I hoping that by then Google will have released job support | 14:36 |
jamtoday | already released i think. cron.yaml | 14:37 |
jamtoday | You just specify the URL to hit and the frequency | 14:37 |
SRabbelier | jamtoday: thatś what weŕe using now | 14:37 |
SRabbelier | jamtoday: but theyŕe planning on real job support | 14:37 |
SRabbelier | jamtoday: (so using a Job API that calls a function, etc) | 14:38 |
jamtoday | I already coded up my own implementation of that :( | 14:38 |
SRabbelier | jamtoday: so did we :P | 14:38 |
jamtoday | uses memcache to go through a list of tasks | 14:38 |
jamtoday | As for the news feed, I've been looking into _onCreate/_onModify | 14:38 |
SRabbelier | jamtoday: ah, goo | 14:39 |
SRabbelier | +d | 14:39 |
*** florinciu has quit IRC | 14:39 | |
jamtoday | I just added a logging statement and it seemed to work as expected, so that should be fine for the news feed framework | 14:39 |
SRabbelier | jamtoday: ok, but what about ACL etc? | 14:39 |
jamtoday | right so i have in my notes that the permissions should be in logic/models/feeds.py | 14:40 |
jamtoday | I might want to think about all the special cases that my ACL pattern wouldn't cover | 14:41 |
jamtoday | but I suppose the whole point of ACL is that there aren't special cases | 14:41 |
jamtoday | I think django.contrib.auth should cover everything I need | 14:43 |
SRabbelier | jamtoday: mhhh, but weŕe not using that | 14:43 |
SRabbelier | jamtoday: we have our own ACL system (which uses the different roles in Melange) | 14:44 |
jamtoday | Oh, well then a similar has_permission() method | 14:44 |
*** MatthewWilkes has quit IRC | 14:45 | |
SRabbelier | jamtoday: what are your plans wrt caching of feeds/ | 14:46 |
jamtoday | I'll use a memcache wrapper function. If someone edits a document and then loads a page with a news feed that should be updated to show the latest change, then I'll use a kwarg to override the memcache | 14:48 |
Lennie | brb, you keep talking :) | 14:48 |
SRabbelier | jamtoday: what kind of kwarg/ | 14:48 |
*** MatthewWilkes has joined #melange | 14:49 | |
jamtoday | force_refresh, or something | 14:49 |
jamtoday | so if that's true, then it would bypass the memcache.get() call | 14:49 |
*** arvind_khadri has quit IRC | 14:49 | |
*** ajaksu has quit IRC | 14:49 | |
*** rwatson has quit IRC | 14:49 | |
*** ajuonline has quit IRC | 14:49 | |
*** r0bby has quit IRC | 14:49 | |
*** scorche has quit IRC | 14:49 | |
*** solydzajs has quit IRC | 14:49 | |
*** durin42 has quit IRC | 14:49 | |
SRabbelier | jamtoday: so how and where do you decide to make it true | 14:49 |
jamtoday | Ah, so this is the type of area where I might have a little bit of trouble | 14:50 |
jamtoday | and like you were saying, spike solutions help | 14:50 |
jamtoday | But when I do figure out what those cases are, the implementation will be simple | 14:50 |
*** solydzajs has joined #melange | 14:50 | |
*** durin42 has joined #melange | 14:50 | |
*** irc.freenode.net sets mode: +ov solydzajs durin42 | 14:50 | |
*** rwatson has joined #melange | 14:50 | |
jamtoday | I think it's safe to say that the refresh would be forced on _onCreate/_onModify | 14:51 |
*** ajuonline has joined #melange | 14:51 | |
*** scorche has joined #melange | 14:51 | |
jamtoday | And then other than that, caching will last 5 minutes. It would be nice to be able to use jobs to keep it updated | 14:51 |
jamtoday | So we can avoid updating it when someone loads the page | 14:52 |
*** arvind_khadri has joined #melange | 14:52 | |
jamtoday | But when _onCreate/_onModify is called, then there's not much of a choice but to refresh the cache | 14:52 |
SRabbelier | jamtoday: mhhh, but how do you set the variable to true before calling the method/ | 14:52 |
SRabbelier | jamtoday: do you mean it should be some sort of global? | 14:52 |
SRabbelier | (ick) | 14:52 |
jamtoday | the force_refresh variable? I imagine it would be an optional arg, and would default to False | 14:53 |
SRabbelier | jamtoday: right, but how do you give it a True value? | 14:53 |
SRabbelier | jamtoday: our views are all called by Django | 14:53 |
jamtoday | Yeah, I see your point | 14:54 |
jamtoday | well then there's just two different methods. One gets the cached feed, and one updates the cached feed | 14:54 |
*** ajaksu has joined #melange | 14:55 | |
jamtoday | That's probably for the best anyways | 14:55 |
SRabbelier | jamtoday: I'm not quite clear on when that different method is called though, can you clarify/ | 14:55 |
jamtoday | The get_feed() method would check the cache and only update if the cache was empty | 14:56 |
* SRabbelier nods | 14:56 | |
jamtoday | the refresh_feed() would update the cache | 14:57 |
jamtoday | And I can always implement ajax updating of the feed | 14:59 |
jamtoday | But I'll focus on getting something basic working to start with | 14:59 |
SRabbelier | jamtoday: why not just clear the cache when someone edits a document? | 14:59 |
*** arvind_khadri has quit IRC | 14:59 | |
jamtoday | Yeah, so _onCreate/_onModify would call refresh_feed() | 15:00 |
SRabbelier | jamtoday: I would prefer it to just do a memcache pop | 15:02 |
SRabbelier | jamtoday: so that we have less risk of running out of processing time, no? | 15:02 |
jamtoday | SRabbelier: don't quite follow... | 15:03 |
SRabbelier | jamtoday: we only have a limited amount of time to complete a reques | 15:03 |
SRabbelier | jamtoday: if we "piggyback" recalculating the feed on an edit, it might take too long | 15:04 |
jamtoday | A memcache pop wouldn't update the memcache though | 15:08 |
SRabbelier | jamtoday: correct, but the next "get" would do that, right? | 15:09 |
jamtoday | updating the memcache definitely shouldn't make the request timeout or anything | 15:09 |
SRabbelier | jamtoday: but calculating the contents could, that is, unless you 'append' only? | 15:10 |
jamtoday | Yeah, so I would append to the news feed list, and then do a cutoff like [:10] | 15:10 |
MatthewWilkes | socghop is down for me | 15:10 |
Lennie | try again? | 15:11 |
* MatthewWilkes tries for the 5th time | 15:11 | |
Lennie | k | 15:11 |
Lennie | interesting | 15:11 |
Lennie | opening logs ^^ | 15:11 |
MatthewWilkes | Nope | 15:11 |
MatthewWilkes | HTTP/1.1 500 Internal Server Error | 15:11 |
MatthewWilkes | Date: Fri, 01 May 2009 19:11:21 GMT | 15:11 |
Lennie | I'm getting a 500 error when trying to view the logs :P | 15:12 |
Lennie | time to check appengine status console | 15:12 |
MatthewWilkes | Was working about 60 seconds ago | 15:12 |
MatthewWilkes | Died mis-session | 15:12 |
Lennie | http://code.google.com/status/appengine | 15:13 |
tpb | Title: Google App Engine System Status (at code.google.com) | 15:13 |
SRabbelier | Lennie: nice! | 15:13 |
MatthewWilkes | Ah | 15:13 |
SRabbelier | Lennie: good that no-one is using socghop atm anyway :P | 15:13 |
Lennie | ^^ | 15:13 |
MatthewWilkes | SRabbelier: What am I, chopped liver? | 15:13 |
Lennie | I'm getting student acceptance flashback | 15:13 |
Lennie | SRabbelier: http://appengine.google.com/dashboard?&app_id=socghop | 15:13 |
tpb | <http://ln-s.net/3-lw> (at appengine.google.com) | 15:13 |
Lennie | try and open it:S | 15:13 |
SRabbelier | MatthewWilkes: yup | 15:13 |
SRabbelier | MatthewWilkes: or something like that | 15:14 |
MatthewWilkes | Now getting a 200 with no entity body | 15:14 |
jamtoday | MatthewWilkes: works for me | 15:14 |
SRabbelier | MatthewWilkes: joy :P | 15:14 |
Lennie | awesome | 15:14 |
MatthewWilkes | and... we're back | 15:15 |
SRabbelier | GAE failures, gotta love it | 15:15 |
jamtoday | still beats running your own server :) | 15:16 |
Lennie | ^^ | 15:16 |
Lennie | true | 15:16 |
Lennie | but it hates when a lot of different things are going on :P | 15:16 |
Lennie | It has a lot of power | 15:16 |
SRabbelier | Lennie: it has the power | 15:17 |
MatthewWilkes | I got a bug report the other day for a <100ms outage | 15:17 |
MatthewWilkes | What are the chances?! | 15:17 |
jamtoday | SRabbelier: So we've talked about surveys, and the news feed framework in a little bit of depth. Still not sure about the security issues regarding whether or not to make Atom feeds (and pave the way for gadgets and such). | 15:18 |
Lennie | awesome MatthewWilkes :P | 15:18 |
jamtoday | But that can wait until its more pressing | 15:18 |
SRabbelier | MatthewWilkes: preetty sweet | 15:19 |
SRabbelier | jamtoday: I think we do want feeds, but we definitely do not want a mentor leaking a feed url and a student seeing who is accepted | 15:19 |
*** Lennie is now known as Lennie|Gone | 15:22 | |
Lennie|Gone | okay, looking awesome :) | 15:22 |
Lennie|Gone | sorry I have to leave you alone | 15:22 |
SRabbelier | Lennie|Gone: pffff, stop playing WoW so much you slacker | 15:23 |
jamtoday | Maybe the feeds could just link back to the appropriate pages, and include anonymous information about the type of update. A program has been updated, or a document, or a person | 15:23 |
jamtoday | So we can get the pageview and the advertising $$$$ | 15:23 |
jamtoday | (kidding) | 15:24 |
SRabbelier | jamtoday: brilliant :) | 15:24 |
SRabbelier | jamtoday: sounds like a plan/ | 15:24 |
jamtoday | I'll probably be better figuring these issues out when I have a working prototype, but I'll definitely keep them in mind | 15:25 |
SRabbelier | jamtoday: ok, do we want to work on what news feeds we need? | 15:26 |
jamtoday | SRabbelier: sure. I'm thinking organizations and related docs, programs and related docs, projects, proposals. | 15:27 |
jamtoday | Surveys | 15:27 |
SRabbelier | jamtoday: requests too | 15:27 |
SRabbelier | jamtoday: (mentor/org admin wanting to sign up, etc) | 15:28 |
jamtoday | these should all be fine, as long as they hit _onCreate/_onModify. And if they don't, then it'll just require a special call | 15:28 |
SRabbelier | jamtoday: sounds sane | 15:29 |
SRabbelier | jamtoday: where do you want to put these feeds? | 15:29 |
jamtoday | On the homepage for the program, or the homepage for the organization | 15:39 |
*** madrazr2 has left #melange | 15:40 | |
SRabbelier | jamtoday: what about private feeds, like reviews of proposals etc? | 15:42 |
jamtoday | templates/soc/organization/home.html, etc. | 15:42 |
*** solydzajs has quit IRC | 15:43 | |
jamtoday | SRabbelier: Good question. I'm not entirely sure. | 15:43 |
jamtoday | Because it starts to overlap with notifications | 15:44 |
SRabbelier | jamtoday: a bit similar to dash board | 15:44 |
jamtoday | SRabbelier: what do you mean? | 15:48 |
SRabbelier | jamtoday: a dashboard for org admins/mentors where they can see "what's up " | 15:49 |
jamtoday | Oh, but not an existing feature | 15:50 |
jamtoday | I was thinking "uh oh...is there a page I haven't seen?" | 15:51 |
jamtoday | That was the idea for the news feed. There's no place that aggregates all the latest changes | 15:51 |
* SRabbelier nods | 15:53 | |
SRabbelier | jamtoday: perhaps we can make it the first part of such a dashboard | 15:53 |
SRabbelier | jamtoday: the "recent changes" feed | 15:54 |
SRabbelier | jamtoday: and we can then later add stuff like "such an such is due by..." notifications | 15:54 |
jamtoday | Sure, i'll try to design it to be as extensible as possible | 15:57 |
jamtoday | I have a couple minutes before I have to head out to class. Any other items for discussion? | 15:58 |
SRabbelier | jamtoday: nope, I think we'ŕe good | 15:58 |
SRabbelier | jamtoday: thanks for the chat :) | 15:58 |
jamtoday | excellent. I'll ping you if I have questions about the survey | 15:59 |
jamtoday | and I'll probably be hanging around #melange in any case | 16:00 |
SRabbelier | jamtoday: ok, awesome :) | 16:00 |
SRabbelier | jamtoday: cya soon then :) | 16:00 |
* jamtoday is venturing into sunlight (shudder) | 16:02 | |
jamtoday | SRabbelier: thanks for your help today | 16:03 |
*** jamtoday has left #melange | 16:03 | |
*** MatthewWilkes has quit IRC | 16:32 | |
*** Lennie|Gone is now known as Lennie | 16:35 | |
Lennie | seems cool | 16:42 |
*** Lennie has quit IRC | 16:44 | |
*** r0bby has joined #melange | 17:16 | |
*** dhaun has quit IRC | 18:59 | |
*** lhawthorn has joined #melange | 20:41 | |
*** lhawthorn has quit IRC | 21:00 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!