Hi, Here is the log of the chatroom at http://farsides.com/chat/ (or irc://irc.freenode.net/#farsides) for the 2011-04-29.
2011-04-29 01:02:05+0000 dachary (dachary) is now online 2011-04-29 01:59:34+0000 dachary (dachary) is now online 2011-04-29 06:39:22+0000 antoviaque (antoviaque) is now online 2011-04-29 07:40:39+0000 <antoviaque> hi all : ) 2011-04-29 07:54:49+0000 tartarugafeliz (tartarugafeliz) is now online 2011-04-29 08:46:23+0000 dachary (dachary) is now online 2011-04-29 09:37:11+0000 <dachary> \o 2011-04-29 09:37:41+0000 <antoviaque> I'm trying to add the like/send button on the invite view : ) 2011-04-29 09:39:56+0000 <antoviaque> btw is there a way to see it with the ?skin parameter? I found http://plebia.org:4923/static/?skin=invitation_owner but not the one where the user enters the list of emails/usernames 2011-04-29 09:41:42+0000 <antoviaque> dachary: 2011-04-29 09:41:43+0000 <dachary> hum 2011-04-29 09:42:18+0000 <dachary> http://plebia.org:4923/static/?skin=advertise 2011-04-29 09:42:46+0000 <dachary> I had to chose a name different than invitation antoviaque 2011-04-29 09:42:51+0000 <dachary> to avoid confusion 2011-04-29 09:42:57+0000 <dachary> and make sure you would not guess it ;-) 2011-04-29 09:43:11+0000 <dachary> tartarugafeliz: good morning young lady 2011-04-29 09:43:22+0000 <tartarugafeliz> good morning!! :D 2011-04-29 09:43:36+0000 <antoviaque> dachary: ah, thanks, I like puzzles ;p 2011-04-29 09:44:26+0000 <antoviaque> ah, yes, i'm stupid, i tried all but that one : ) 2011-04-29 09:44:33+0000 <antoviaque> thanks 2011-04-29 09:47:21+0000 <dachary> yw :-) 2011-04-29 09:50:24+0000 <dachary> I discussed with a skilled Symfony developer yesterday. He pledged to assist (and I trust he will) with wisdom and advices should we decide for this framework for the e-commerce part of cardstories. I describe the business model and he said that would be straightforward with a few carefully chosen components. 2011-04-29 09:50:27+0000 <dachary> antoviaque: ^ 2011-04-29 09:51:20+0000 <antoviaque> dachary: uh, cool 2011-04-29 09:51:57+0000 <antoviaque> you know I worked at Sensio for two weeks? *trembles from the bad memory* ;p 2011-04-29 09:52:35+0000 <antoviaque> And you would want to work on it when we reach that stage? : ) 2011-04-29 09:52:58+0000 <dachary> :-) I remember, yes. I figure you would be favorable to symfony because you have had a little practice. 2011-04-29 09:54:17+0000 <dachary> I would want to, yes, but not alone. I would want to code & understand but not be the lead. Because there will be an endless list of things to change, improve etc. And I know I'll eventually get bored. 2011-04-29 09:54:40+0000 <dachary> I'm told there are well integrated unit tests. 2011-04-29 09:55:25+0000 <dachary> What really makes *all* the difference is knowing that I can rely on a reliable and wise and skilled developer. I would work on cake php with such an assistance ;-) 2011-04-29 09:56:05+0000 <antoviaque> ok - yes, with this kind of framework it can really be a huge difference : ) 2011-04-29 09:56:14+0000 <dachary> (actually I did some cakephp in the past... only to discover the developer who claimed to know it had no clue) 2011-04-29 09:56:42+0000 <antoviaque> ahahah 2011-04-29 10:27:29+0000 tempuramerino (tempuramerino) is now online 2011-04-29 10:35:21+0000 <dachary> antoviaque: regarding the disk IO problem that drove me nuts yesterday, I was able to reproduce it with 2011-04-29 10:36:02+0000 <dachary> mkdir -p /tmp/data ; fio --runtime=300 --time_based --name=random-read --rw=randread --size=128m --directory=/scratch/loic 2011-04-29 10:36:14+0000 <dachary> mkdir -p /tmp/data ; fio --runtime=300 --time_based --name=random-read --rw=randread --size=128m --directory=/tmp/data 2011-04-29 10:37:41+0000 <antoviaque> what was the disk io issue exactly? 2011-04-29 10:39:24+0000 <antoviaque> Starting with the easy part of the FB integration btw: http://plebia.org:4923/static/?skin=advertise : ) 2011-04-29 10:45:27+0000 <antoviaque> btw I need to pass the URL of the game to the FB inviter. What's the best approach to pass this as an iframe parameter ? 2011-04-29 10:45:29+0000 <antoviaque> dachary: 2011-04-29 10:50:29+0000 <dachary> mangare 2011-04-29 10:50:40+0000 <dachary> bbl 2011-04-29 10:55:12+0000 antoviaque1 (antoviaque1) is now online 2011-04-29 10:55:20+0000 <antoviaque1> bon ap : ) 2011-04-29 10:56:07+0000 <antoviaque1> other question for when you come back :D 2011-04-29 11:00:13+0000 <antoviaque1> I need to add meta-data when serving games URLs ( http://ogp.me/ ), which will provide the information to display for a given game invite when the URL is shared - what's the best way to do that? We can't rely on JS to populate the fields here, so we would need to serve the HTML from the server... 2011-04-29 11:45:18+0000 <dachary> back 2011-04-29 11:46:30+0000 <dachary> I need to complete my report and I'll get back in a few minutes 2011-04-29 11:46:33+0000 <antoviaque1> I'm also starting to look at oauth authentification (FB) - should I rather add a proxy or look at the auth module? 2011-04-29 11:46:36+0000 <antoviaque1> ok! 2011-04-29 11:47:05+0000 antoviaque (antoviaque) is now online 2011-04-29 11:52:59+0000 * antoviaque thinks loic is going to regret saying that he didn't get enough questions 2011-04-29 11:53:01+0000 <antoviaque> :P 2011-04-29 12:16:06+0000 <dachary> antoviaque: :-D 2011-04-29 12:16:46+0000 <dachary> btw I need to pass the URL of the game to the FB inviter. What's the best approach to pass this as an iframe parameter ? 2011-04-29 12:16:55+0000 <dachary> I'm looking into this now 2011-04-29 12:18:31+0000 <dachary> antoviaque: I'm pleased to answer your questions actually ;-) 2011-04-29 12:20:44+0000 <antoviaque> kewl :D 2011-04-29 12:20:52+0000 <antoviaque> Others will come then ;p 2011-04-29 12:22:10+0000 <dachary> passing the URL you mean like adding url=XXX to the iframe query string ? 2011-04-29 12:22:16+0000 <antoviaque> yep 2011-04-29 12:23:27+0000 <dachary> http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fplebia.org%3A4923%2Fstatic%2F%3Fgame_id%3D3&layout=standard&width=450&show_faces=false&action=recommend&colorscheme=light&font&height=80&url=foobar ? 2011-04-29 12:23:48+0000 <antoviaque> exactly 2011-04-29 12:23:59+0000 * dachary thinking 2011-04-29 12:25:59+0000 <dachary> in this case the url would be the permalink of the game http://plebia.org:4923/static/?game_id=XX&player_id=nickname 2011-04-29 12:26:03+0000 <dachary> right ? 2011-04-29 12:26:16+0000 <dachary> hum 2011-04-29 12:26:17+0000 <dachary> no 2011-04-29 12:26:19+0000 <dachary> just the game_id 2011-04-29 12:26:21+0000 <antoviaque> without the nickname, since different people will see it 2011-04-29 12:26:22+0000 <antoviaque> yep 2011-04-29 12:26:26+0000 <dachary> http://plebia.org:4923/static/?game_id=XX 2011-04-29 12:26:50+0000 <antoviaque> then it will use oauth when people arrive to identify them 2011-04-29 12:28:32+0000 <dachary> I would write, in the HTML, http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fplebia.org%3A4923%2Fstatic%2F%3Fgame_id%3D3&layout=standard&width=450&show_faces=false&action=recommend&colorscheme=light&font&height=80&url={URL} 2011-04-29 12:29:31+0000 <dachary> and I will modify cardtories js to rewrite {URL} with an URLencoded URL to the game in each iframe src attribute 2011-04-29 12:29:49+0000 <dachary> would that be good for you antoviaque ? 2011-04-29 12:30:00+0000 <antoviaque> would be perfect yep 2011-04-29 12:31:01+0000 <antoviaque> maybe {GAME_URL} in case we need to have different urls? 2011-04-29 12:35:09+0000 <antoviaque> dachary: 2011-04-29 12:36:33+0000 <dachary> yes 2011-04-29 12:36:38+0000 * dachary writing a ticket 2011-04-29 12:38:31+0000 <dachary> http://cardstori.es/trac/ticket/15 2011-04-29 12:38:44+0000 <antoviaque> antoviaque: Btw it's the first time I use git - so far I've put my changes to a 'fbintegration' branch. What's best to publish? Just make the git repository accessible on a URL? 2011-04-29 12:38:51+0000 <antoviaque> gargl, I write to myself ;p 2011-04-29 12:38:53+0000 <antoviaque> dachary: 2011-04-29 12:39:06+0000 <dachary> ? 2011-04-29 12:39:12+0000 <dachary> ahahah 2011-04-29 12:39:41+0000 <dachary> yes, just make sure your git can be read somwhere 2011-04-29 12:42:38+0000 <antoviaque> ever considered github? I know you don't like to externalize data, but I'm more thinking of the pull requests management features 2011-04-29 12:44:14+0000 <antoviaque> that part sucks from a user experience perspective in launchpad, I've always been curious about how it's done in github 2011-04-29 12:45:24+0000 <dachary> you are welcome to mirror the repository on github or gitorious, of course ! 2011-04-29 12:45:54+0000 <dachary> the beauty of git is that you don't have to worry about where repositories are hosted 2011-04-29 12:46:26+0000 <antoviaque> yup, I like this part 2011-04-29 12:46:45+0000 <antoviaque> gitorious = free software? 2011-04-29 12:46:50+0000 <dachary> i will keep track of the repositories 2011-04-29 12:46:55+0000 <dachary> yes, gitorious is free 2011-04-29 12:47:15+0000 <dachary> I considered installing it but it's complex and ruby based. 2011-04-29 12:54:51+0000 <antoviaque> i can imagine 2011-04-29 13:04:23+0000 <antoviaque> https://gitorious.org/cardstories 2011-04-29 13:04:29+0000 <antoviaque> I added you as an administrator 2011-04-29 13:08:52+0000 <antoviaque> It seems good - missing an issue tracker compared to github, but the user experience is good 2011-04-29 13:12:11+0000 <dachary> I recorded the URL 2011-04-29 13:16:56+0000 * antoviaque is trying to figure out how the pull requests process works there 2011-04-29 13:21:35+0000 <dachary> pull requests ? 2011-04-29 13:21:47+0000 <dachary> hum 2011-04-29 13:21:53+0000 <dachary> I don't think you ever pull 2011-04-29 13:21:57+0000 <dachary> you push to gitorious 2011-04-29 13:22:00+0000 <antoviaque> It's missing a few things compared to github (inline comments of merge requests, ticket system integration, etc.), but seems fine - https://gitorious.org/cardstories/cardstories/merge_requests/1 2011-04-29 13:22:02+0000 <dachary> no ? 2011-04-29 13:22:11+0000 <dachary> :-D 2011-04-29 13:22:16+0000 <dachary> ok 2011-04-29 13:22:21+0000 <antoviaque> ;p 2011-04-29 13:22:30+0000 <dachary> Don't mind me today, I'm only half human. 2011-04-29 13:22:36+0000 <antoviaque> ahahah 2011-04-29 13:25:22+0000 <antoviaque> Btw will you get a chance to look at my other questions ? Otherwise I'll put them as tickets if you want 2011-04-29 13:37:28+0000 <dachary> I confess I went back to finish the post http://dachary.org/?p=407 and discuss it with sim & sylvain. I've obsessed about it. 2011-04-29 13:37:34+0000 <dachary> I'm back now 2011-04-29 13:37:39+0000 <dachary> looking at the other questions 2011-04-29 13:38:15+0000 <antoviaque> no worries - I don't mind if I don't get the answers immediately : ) 2011-04-29 13:38:19+0000 <antoviaque> It's more to not forget 2011-04-29 13:38:23+0000 <antoviaque> thanks : ) 2011-04-29 13:38:58+0000 <dachary> I need to add meta-data when serving games URLs ( http://ogp.me/ ), which will provide the information to display for a given game invite when the URL is shared - what's the best way to do that? We can't rely on JS to populate the fields here, so we would need to serve the HTML from the server... 2011-04-29 13:39:08+0000 * dachary trying to understand 2011-04-29 13:40:09+0000 <antoviaque> When an URL is passed to FB, FB revetreives the shared URL to get additional info from metadata in the HTML returned by the URL 2011-04-29 13:40:21+0000 <antoviaque> (thumbnail, title, description...) 2011-04-29 13:40:33+0000 <dachary> hum 2011-04-29 13:42:21+0000 <dachary> interesting problem 2011-04-29 13:44:40+0000 <dachary> I can see how to hack it easily. Not sure how to properly do it. 2011-04-29 13:45:38+0000 <dachary> hack it : the static pages are served by the game server. It could rework them to add game related information using a template system from twisted.web 2011-04-29 13:46:40+0000 <dachary> however, it would break the separation between the webservice that's pure JSON based and turn it into a CMS. Although small... it's a slipery slope. 2011-04-29 13:47:35+0000 <antoviaque> yup 2011-04-29 13:48:18+0000 <dachary> the HTML page could be created when the game is created instead of being created on the fly 2011-04-29 13:48:27+0000 <antoviaque> this tends to advocate toward hiding the webservice behind a proxy, no? That could help with oauth too, no? 2011-04-29 13:49:20+0000 <dachary> I think it would make sense to create an HTML export of the game that complies with http://ogp.me/. 2011-04-29 13:49:59+0000 <dachary> I'll think about it. 2011-04-29 13:50:04+0000 <antoviaque> ok 2011-04-29 13:50:13+0000 <dachary> First tell me more about what you want to do with oauth ? 2011-04-29 13:51:33+0000 <dachary> FYI, I wrote a twisted based oauth client for opensocial, I know what it could do in this context (i.e. update the user metadata on the network, request the list of friends...) 2011-04-29 13:51:44+0000 <dachary> antoviaque: ^ 2011-04-29 13:52:31+0000 <antoviaque> When a player comes from facebook.com (referer), follow this use case http://developers.facebook.com/docs/reference/dialogs/oauth/ and then correspond with the faceboook servers to get the login details using the token 2011-04-29 13:52:53+0000 <antoviaque> to skip the name() view 2011-04-29 13:53:11+0000 <antoviaque> and provide the webservice with the right user id 2011-04-29 13:53:40+0000 <antoviaque> dachary: cool, is it on a url somewhere? 2011-04-29 13:54:28+0000 <dachary> http://opensocial.pokersource.info/pokersocial/ 2011-04-29 13:54:35+0000 <antoviaque> (correspond with the faceboook servers => server side of course) 2011-04-29 13:55:11+0000 <dachary> using http://opensocial.pokersource.info/opensocial-python-client/ 2011-04-29 13:55:44+0000 <dachary> if using oauth I will copy/paste from there 2011-04-29 13:56:00+0000 * dachary reading the use case 2011-04-29 14:01:43+0000 <antoviaque> ok - but why not a pure oauth library? To allow to integrate with opensocial more easily? 2011-04-29 14:02:12+0000 <antoviaque> Or because it's already done? ;p 2011-04-29 14:05:01+0000 <dachary> *this* is the purest oauth library you can find... 2011-04-29 14:05:12+0000 <dachary> oh 2011-04-29 14:05:13+0000 <dachary> sorry 2011-04-29 14:05:26+0000 <dachary> I will copy/paste from http://opensocial.pokersource.info/pokersocial/ 2011-04-29 14:06:07+0000 <dachary> not from http://opensocial.pokersource.info/opensocial-python-client/ which is just the supporting library you need to know about if trying to make sense of http://opensocial.pokersource.info/pokersocial/ 2011-04-29 14:07:50+0000 <antoviaque> yup - the first answer was actually answering my question, you understood right the first time : ) 2011-04-29 14:08:06+0000 <dachary> antoviaque: where can I find the list of resources cardstories server can access once authorized ? ( I'm at http://developers.facebook.com/docs/reference/dialogs/oauth/ ) 2011-04-29 14:08:32+0000 <dachary> ah 2011-04-29 14:08:34+0000 <dachary> got it 2011-04-29 14:08:41+0000 <dachary> http://developers.facebook.com/docs/reference/api 2011-04-29 14:08:49+0000 <antoviaque> yup 2011-04-29 14:08:53+0000 <dachary> https://graph.facebook.com/me?access_token=ACCESS_TOKEN 2011-04-29 14:08:55+0000 <dachary> etc 2011-04-29 14:09:16+0000 <dachary> http://developers.facebook.com/docs/reference/api 2011-04-29 14:09:26+0000 <dachary> I can't access this URL, it asks for a login 2011-04-29 14:09:57+0000 <antoviaque> http://developers.facebook.com/docs/reference/api asks you to login? 2011-04-29 14:10:16+0000 <dachary> yes 2011-04-29 14:10:22+0000 <antoviaque> my god 2011-04-29 14:10:39+0000 <dachary> anyway, I get the idea from the example at http://developers.facebook.com/docs/authentication/ Server-side Flow 2011-04-29 14:11:01+0000 <dachary> as long as your token is valid, it will provide you with a JSON result containing the information you asked for 2011-04-29 14:11:09+0000 <antoviaque> It's true... Bunch of idiots 2011-04-29 14:11:29+0000 <antoviaque> yes, exactly 2011-04-29 14:13:35+0000 <dachary> I see how it should be done 2011-04-29 14:14:55+0000 <antoviaque> how would you want to proceed? 2011-04-29 14:16:53+0000 <dachary> it depends on what you plan to do with that 2011-04-29 14:17:29+0000 <dachary> I'm unclear about the workflow you have in mind 2011-04-29 14:17:53+0000 <antoviaque> To start only authentication + retreiving the email could be a start 2011-04-29 14:17:56+0000 <antoviaque> well 2011-04-29 14:18:24+0000 <dachary> could it be used to retrieve the list of friends ? 2011-04-29 14:19:04+0000 <dachary> antoviaque: ^ 2011-04-29 14:19:18+0000 <antoviaque> The idea is that when someone invites people on Facebook (by posting the link to a game), they would click on the link, then instead of being prompted for a user name/email it would get the oauth token to fetch the email 2011-04-29 14:19:27+0000 <antoviaque> Potentially yes, but to start no 2011-04-29 14:19:44+0000 <dachary> I mean is it possible at all ? 2011-04-29 14:19:51+0000 <dachary> to get the list of friends with oauth 2011-04-29 14:20:05+0000 <antoviaque> Ah yes, it is possible 2011-04-29 14:20:15+0000 <antoviaque> but right now we don't need it 2011-04-29 14:20:30+0000 <dachary> understood 2011-04-29 14:20:40+0000 <dachary> is it possible to retrieve a unique ID for a user ? 2011-04-29 14:21:33+0000 <dachary> antoviaque: 2011-04-29 14:21:36+0000 <antoviaque> yes 2011-04-29 14:21:43+0000 <antoviaque> a numerical id 2011-04-29 14:21:45+0000 <dachary> ok 2011-04-29 14:21:50+0000 <antoviaque> { "id": "220439", "name": "Bret Taylor", "first_name": "Bret", "last_name": "Taylor", "link": "http://www.facebook.com/btaylor", "username": "btaylor", "gender": "male", "locale": "en_US" } 2011-04-29 14:22:15+0000 <dachary> it's essentiall the same as facebook connect ? why use oauth instead of facebook connect ? 2011-04-29 14:22:25+0000 <dachary> I don't know about facebook connect really 2011-04-29 14:22:33+0000 <dachary> is there a link where I can read about it ? 2011-04-29 14:22:34+0000 <antoviaque> Facebook connect now uses oauth 2011-04-29 14:22:39+0000 <dachary> ah 2011-04-29 14:22:43+0000 <dachary> ok 2011-04-29 14:22:47+0000 <dachary> so it is the same 2011-04-29 14:22:56+0000 <antoviaque> yes 2011-04-29 14:23:22+0000 * dachary trying to get the global picture ;-) 2011-04-29 14:24:02+0000 <antoviaque> yes, it's hard with fb - especially given that they change their minds all the time and the docs are nver really up to date ;p 2011-04-29 14:27:33+0000 <dachary> http://cardstori.es/trac/ticket/16 2011-04-29 14:29:06+0000 <dachary> Unless it's inconvenient, I would say it's better to retrieve the token client side only. 2011-04-29 14:29:42+0000 <antoviaque> but then it gives no security? 2011-04-29 14:29:45+0000 <dachary> So that the server use the token given to it to retrieve the id 2011-04-29 14:29:53+0000 <antoviaque> ahh 2011-04-29 14:30:02+0000 <dachary> the client would &token=TOKEN 2011-04-29 14:30:07+0000 <dachary> in each ajax call 2011-04-29 14:30:11+0000 <antoviaque> then good yup 2011-04-29 14:30:24+0000 <antoviaque> it avoids adding something in between 2011-04-29 14:30:26+0000 <dachary> the server would then issue a oauth request to fb to ack that the token is still valid and proceed 2011-04-29 14:30:40+0000 <antoviaque> yep 2011-04-29 14:30:57+0000 <antoviaque> it's really another mindset, I need to get used to it 2011-04-29 14:31:03+0000 <dachary> the 2 step confirmation does not require a server transaction, I think. It serves no useful purpose. 2011-04-29 14:31:26+0000 <antoviaque> I understand 2011-04-29 14:31:35+0000 <dachary> it's actually very similar to being authenticated in any framework, I don't feel lost ;-) 2011-04-29 14:32:20+0000 <dachary> I can take care of the server side of things. 2011-04-29 14:33:05+0000 <antoviaque> And I add the retreival of the token on the client side? 2011-04-29 14:33:06+0000 <dachary> it's going to be a drop in replacement of auth.py 2011-04-29 14:33:21+0000 <antoviaque> Cool, thanks a lot : ) 2011-04-29 14:33:38+0000 <antoviaque> It will save me some trouble :D 2011-04-29 14:34:01+0000 <dachary> Yes. It would be difficult for you to start with this. 2011-04-29 14:34:17+0000 <dachary> Improving will be easier. Boostrapping is a little tricky. 2011-04-29 14:34:36+0000 <dachary> the deferred will make your head spin 2011-04-29 14:34:55+0000 <antoviaque> ahahah - yes, I prefer to go progressively : ) 2011-04-29 14:35:25+0000 <dachary> back to the  http://ogp.me/ 2011-04-29 14:38:47+0000 <dachary> antoviaque: how do you feel about static files being created at the same time as the game ? 2011-04-29 14:40:04+0000 <dachary> I'm thinking that it would also provide a way to archive the completed games 2011-04-29 14:40:05+0000 <antoviaque> It would do the trick I think - I can't think of a scenario it wouldn't cover 2011-04-29 14:40:22+0000 <dachary> a game that has been completed won't change 2011-04-29 14:40:52+0000 <dachary> if it is dumped into a page with no ajax, it can be served & mirrored as static files 2011-04-29 14:40:56+0000 <dachary> I like that 2011-04-29 14:41:00+0000 <antoviaque> But how would you serve them? They need to be the same as the url players will click on, so how would that part work? 2011-04-29 14:41:46+0000 <dachary> static/28394.html 2011-04-29 14:41:48+0000 <dachary> for instance 2011-04-29 14:42:18+0000 <dachary> when displaying the lobby of completed games, the server will fill the links with static pages instead of calls to the webservice 2011-04-29 14:42:27+0000 <dachary> no ajax 2011-04-29 14:42:54+0000 <antoviaque> Hmm, but then it would be a different url to actually play? not sure I get it 2011-04-29 14:43:32+0000 <dachary> let say it would still be possible to retrieve a completed game using the ?game_id=234 2011-04-29 14:44:12+0000 <dachary> but there would also be a static URL displaying the results of the completed game and this url would be used when displaying the "Finished" tab of the lobby 2011-04-29 14:44:18+0000 <dachary> am I making sense ? antoviaque ^ 2011-04-29 14:45:09+0000 <antoviaque> But you would have to share static/28394.html to allow the retreival of the metadata,no? 2011-04-29 14:45:15+0000 <dachary> should a robot try to index all the games, that will make a *HUGE* difference in the workload of the server. It will be dealing only with on going games. Not games that are completed. 2011-04-29 14:45:27+0000 <dachary> share ? 2011-04-29 14:46:03+0000 <dachary> antoviaque: I'm not talking about *all* the pages. Just the static pages. 2011-04-29 14:46:10+0000 <dachary> of the completed games. 2011-04-29 14:46:35+0000 <dachary> On going games are another problem. I don't have a solution yet with regard to metadata 2011-04-29 14:46:47+0000 <dachary> on going => in progress 2011-04-29 14:46:48+0000 <antoviaque> ah - you're not talking about ogp.me anymore 2011-04-29 14:46:51+0000 <antoviaque> now I get it 2011-04-29 14:47:06+0000 <dachary> I am talking about ogp.me for completed games 2011-04-29 14:47:19+0000 <antoviaque> yup, that part works 2011-04-29 14:47:45+0000 <dachary> it makes sense to have a static page with the ogp.me meta data for completed games, not only because of ogp but also because of archiving & relieving the load of the server 2011-04-29 14:48:28+0000 <antoviaque> yup 2011-04-29 14:48:32+0000 <antoviaque> it would be better to have only one URL for indexation, but other than that seems good 2011-04-29 14:48:49+0000 <antoviaque> indexing 2011-04-29 14:49:45+0000 <dachary> what about this : 2011-04-29 14:49:54+0000 <antoviaque> (people may start sharing one while they play, and another URL once it's completed, thus splitting page rank/likes/bookmarks...) 2011-04-29 14:51:14+0000 <dachary> when a game is created, a static page is also created : static/203/the-sentence.html (same page as index.html currently ). This page has the ogp metadata & all. It is used to play the game /203/ replacing ?game_id 2011-04-29 14:52:08+0000 <dachary> when a game is completed, the static page is updated. It has the same content only it contains a JSON describing the state of the game and the JS of cardstories will notice it and never do any ajax call. 2011-04-29 14:52:26+0000 <antoviaque> ah, interesting 2011-04-29 14:52:36+0000 <dachary> if the display needs to be changed, all pages must be redrawn / redumped 2011-04-29 14:52:50+0000 <antoviaque> Because I was also thinking that there may be some dynamic elements displayed on the completed view in the future - maybe an account name, ranking, etc. So for search engines it's good but players may still need a dynamic view 2011-04-29 14:53:26+0000 <dachary> it can be dynamic 2011-04-29 14:53:32+0000 <antoviaque> I like this idea, it's sexy optimisation : ) 2011-04-29 14:53:33+0000 <dachary> it does not need to 2011-04-29 14:53:36+0000 <antoviaque> yup 2011-04-29 14:53:55+0000 <dachary> from the point of view of the game server, there is no need. And embedding the game results in the dumped page saves this. 2011-04-29 14:55:35+0000 <dachary> I have a good feeling about dumping pages. But maybe I'm trying hard to find excuses to do that in a way that does not mimic the CMS logic. Maybe it's better to acknowledge that ogp needs a CMS logic. 2011-04-29 14:55:57+0000 <dachary> I'll try to approach this from the point of view of the integration into symfony 2011-04-29 14:56:14+0000 <dachary> I'll leave this train of thought (static pages) for now. 2011-04-29 14:56:49+0000 <dachary> Let say symfony wants to be ogp compliant. 2011-04-29 14:57:52+0000 <dachary> when serving a page, symfony replaces placeholders in the view. It will need to retrieve some data from the game in order to fill the og:title (with the sentence presumably) 2011-04-29 14:58:41+0000 <dachary> it's php therefore it will open("cardstori.es?game_id=234&action=game"), jsonparse the result and substitute the fields. 2011-04-29 14:58:53+0000 <dachary> you will be ogp compliant using the CMS 2011-04-29 14:59:00+0000 <antoviaque> (yes - and the card for the thumbnail) 2011-04-29 15:00:01+0000 <dachary> that makes a lot more sense than dumping pages, don't you think ? 2011-04-29 15:00:35+0000 <antoviaque> that was my first approach yes 2011-04-29 15:00:48+0000 <dachary> I should have listened :-( 2011-04-29 15:01:53+0000 <antoviaque> but it adds another layer, and I'm not used to the "pure webservice server-side" approach, so I'm not really able to say what's best here 2011-04-29 15:02:10+0000 <dachary> I don't feel too bad : you did not hint your thoughts, I missed nothing ;-) 2011-04-29 15:03:00+0000 <antoviaque> I did! :p 2011-04-29 15:03:05+0000 <dachary> you did ? 2011-04-29 15:03:05+0000 <antoviaque> (03:48:28 PM) antoviaque: this tends to advocate toward hiding the webservice behind a proxy, no? That could help with oauth too, no? 2011-04-29 15:03:27+0000 <antoviaque> not very clear, I admit : ) 2011-04-29 15:03:42+0000 <dachary> :-) 2011-04-29 15:03:51+0000 <dachary> the CMS would not be a proxy there 2011-04-29 15:04:19+0000 <antoviaque> For the static pages, it would 2011-04-29 15:04:45+0000 <dachary> hum 2011-04-29 15:04:49+0000 <dachary> I don't follow 2011-04-29 15:05:08+0000 <dachary> I see no proxy action here 2011-04-29 15:05:18+0000 <dachary> HTML delivered by the CMS 2011-04-29 15:05:24+0000 <dachary> ajax requests served by the game server 2011-04-29 15:05:42+0000 <dachary> both directly, noone is sitting in between 2011-04-29 15:05:52+0000 <antoviaque> hmm 2011-04-29 15:06:02+0000 <dachary> the CMS requires information from the game server to build the HTML page 2011-04-29 15:06:14+0000 <dachary> to create the ogp 2011-04-29 15:06:38+0000 <dachary> but it's using it as a websrevice, it's not shadowing the server behind himself 2011-04-29 15:07:07+0000 <dachary> and once the ogp fields are completed, the game is played without the CMS doing anything else 2011-04-29 15:07:10+0000 <antoviaque> uhuh, yes, you're right - it's not what I had in mind 2011-04-29 15:07:48+0000 <dachary> as it is, the game can be done from start to finish without reloading the HTML page 2011-04-29 15:08:44+0000 <dachary> it would actually be a catastrophy to use a CMS as a proxy, because it would not stand the long poll 2011-04-29 15:09:59+0000 <dachary> anyway, bottom line is : if you want ogp we're probably better of trying to setup symfony sooner rather than later 2011-04-29 15:11:35+0000 <dachary> antoviaque: I think we've discussed & resolved all the questions you had for me. Am I missing anything ? 2011-04-29 15:12:05+0000 <antoviaque> I think so yep : ) 2011-04-29 15:12:39+0000 <antoviaque> And yes for symfony... Gargl! 2011-04-29 15:12:45+0000 <antoviaque> thanks a lot for your help! 2011-04-29 15:13:03+0000 <dachary> my pleasure 2011-04-29 15:13:33+0000 <dachary> The pieces of the puzzle start to fit together ;-) 2011-04-29 15:16:11+0000 <dachary> antoviaque: did you take a look at the symfony / facebook plugins or whatever ? 2011-04-29 15:18:30+0000 <antoviaque> no - you think it would be better than getting the token client side? 2011-04-29 15:21:04+0000 <dachary> I don't know 2011-04-29 15:21:20+0000 <dachary> symfony will need to know about the user and its authentication 2011-04-29 15:21:40+0000 <dachary> therefore there is an intersection with the topic we discussed 2011-04-29 15:22:58+0000 <antoviaque> (btw http://cardstori.es/trac/ticket/17 ) 2011-04-29 15:23:37+0000 * antoviaque looking at symfony 2011-04-29 15:24:24+0000 <antoviaque> symfony2? http://symfony.com/ 2011-04-29 15:24:50+0000 <dachary> I suppose so 2011-04-29 15:26:54+0000 <antoviaque> "Be warned that Symfony 2.0 is not stable yet; use it with caution (current version is Beta 1)." 2011-04-29 15:27:10+0000 <antoviaque> http://www.symfony-project.org/plugins/sfFacebookConnectPlugin => only for symfony1 2011-04-29 15:27:30+0000 <dachary> if symfony has a facebook integration that shows a "i like" on a given page + collects the user data granted by facebook connect and let you say : "you need to login to proceed", it may very well be the case that we have to do nothing at all. 2011-04-29 15:36:46+0000 <antoviaque> hmm, http://www.symfony-project.org/plugins/sfFacebookConnectPlugin uses the old method, not oauth 2011-04-29 15:40:50+0000 * antoviaque looking at https://github.com/ruudk/OAuthBundle 2011-04-29 15:41:10+0000 <antoviaque> seems better - oauth, symfony2, and even twitter 2011-04-29 15:45:35+0000 <antoviaque> ah, more active: https://github.com/FriendsOfSymfony (found through http://symfony2bundles.org/ ) 2011-04-29 15:49:55+0000 <dachary> I asked my symfony friend for advice 2011-04-29 15:50:13+0000 <dachary> that will cross reference your search 2011-04-29 15:50:24+0000 <antoviaque> ah cool 2011-04-29 15:50:25+0000 <antoviaque> thx 2011-04-29 16:01:12+0000 <dachary> http://www.symfony-project.org/plugins/sfFacebookConnectPlugin 2011-04-29 16:01:21+0000 <dachary> il me dit celui la 2011-04-29 16:01:23+0000 <dachary> bon 2011-04-29 16:01:31+0000 <dachary> il a encore plus mal aux cheveux que moi 2011-04-29 16:02:26+0000 <dachary> je lui ai demandé s'il l'avait utilisé 2011-04-29 16:04:17+0000 <antoviaque> dachary: I'm thinking of putting the TODO from http://dachary.org/?p=313 and http://dachary.org/?p=377 in the tracker, that would allow me to make sure I've understood and reviewed everything, and update it with Deborah. What do you think? 2011-04-29 16:05:12+0000 <dachary> OAuthBundle ? 2011-04-29 16:05:20+0000 <dachary> has fbconnect too ? 2011-04-29 16:05:39+0000 <dachary> antoviaque: ok for the TOD 2011-04-29 16:05:40+0000 <dachary> O 2011-04-29 16:07:24+0000 <antoviaque> can you ask about the https://github.com/FriendsOfSymfony bundles (ie https://github.com/FriendsOfSymfony/FacebookBundle ) ? 2011-04-29 16:07:45+0000 <antoviaque> I still have to dig, but on first impression it looks more like the future 2011-04-29 16:08:06+0000 <dachary> I did 2011-04-29 16:08:35+0000 <dachary> He said he never tried to interface with facebook 2011-04-29 16:08:41+0000 <antoviaque> Oauthbundle had facebook oauth login yep 2011-04-29 16:09:01+0000 <antoviaque> but it's much less active than https://github.com/FriendsOfSymfony/FacebookBundle 2011-04-29 16:13:14+0000 <dachary> antoviaque: join #symfony-dev 2011-04-29 16:13:43+0000 <antoviaque> done 2011-04-29 16:13:43+0000 <dachary> http://www.joiz.ch/ uses FacebookBundle 2011-04-29 16:15:10+0000 <antoviaque> seems to work then : ) 2011-04-29 16:15:25+0000 <dachary> antoviaque: you should exercise it 2011-04-29 16:15:35+0000 <dachary> it's not because a web site looks pretty that it works ;-) 2011-04-29 16:15:44+0000 <antoviaque> I did ;p 2011-04-29 16:15:59+0000 <antoviaque> I'm logged through FB 2011-04-29 16:16:34+0000 <dachary> are your user preferences registered ? 2011-04-29 16:16:46+0000 <dachary> did it get your email ? 2011-04-29 16:16:53+0000 <antoviaque> It got my name 2011-04-29 16:17:09+0000 <antoviaque> my avatar and my location 2011-04-29 16:17:12+0000 <dachary> do you have a profile or something ? 2011-04-29 16:17:20+0000 <antoviaque> http://www.joiz.ch/profile/7637895e001bc5 2011-04-29 16:18:06+0000 <dachary> http://cl.ly/1W2O1E1d3E2l15310h1y 2011-04-29 16:18:48+0000 <antoviaque> noooo 2011-04-29 16:18:49+0000 <antoviaque> ;p 2011-04-29 16:19:05+0000 <dachary> lsmith on symphony gave me the link 2011-04-29 16:19:22+0000 <dachary> he might now how much work was done to get there 2011-04-29 16:20:04+0000 <dachary> trouble with not publishing is that there is no telling if what we see is an easy adaptation of the bundle or a 2 weeks work from a skilled symfony dev ;-) 2011-04-29 16:20:38+0000 <dachary> ca fournit aussi like ? 2011-04-29 16:20:40+0000 <antoviaque> ahah, yes ;p 2011-04-29 16:20:55+0000 <antoviaque> for like you don't need FB Connect 2011-04-29 16:20:55+0000 <dachary> it provides like also ? 2011-04-29 16:21:09+0000 * dachary exhausted 2011-04-29 16:21:13+0000 <antoviaque> It's just the iframe to include 2011-04-29 16:21:23+0000 <dachary> ah right 2011-04-29 16:21:58+0000 <dachary> well, since the plugin retrieves the name + location, it will also retrieve the email, right ? 2011-04-29 16:22:07+0000 <antoviaque> yes 2011-04-29 16:22:15+0000 <antoviaque> likely ;p 2011-04-29 16:22:22+0000 <antoviaque> it's the same type of exchange 2011-04-29 16:22:26+0000 <dachary> ok 2011-04-29 16:22:33+0000 <dachary> then it changes the picture quite a bit 2011-04-29 16:23:30+0000 <dachary> assuming symfony sets a cookie when you login with a session id, cardstories server can retrieve the cookie, lookup the user id from a sql table in symfony and be done with it. 2011-04-29 16:23:43+0000 <dachary> I already have the code to do exactly this. 2011-04-29 16:24:03+0000 <dachary> antoviaque: does this seem a viable solution to you ? 2011-04-29 16:24:08+0000 antoviaque (antoviaque) is now online 2011-04-29 16:24:18+0000 <dachary> then it changes the picture quite a bit 2011-04-29 16:24:23+0000 <dachary> assuming symfony sets a cookie when you login with a session id, cardstories server can retrieve the cookie, lookup the user id from a sql table in symfony and be done with it. 2011-04-29 16:24:27+0000 <dachary> I already have the code to do exactly this. 2011-04-29 16:24:31+0000 <dachary> antoviaque: does this seem a viable solution to you ? 2011-04-29 16:24:56+0000 <antoviaque> It seems to be, but I need to dig symfony a bit more to see how it would work exactly 2011-04-29 16:25:21+0000 <dachary> I have a good feeling about this 2011-04-29 16:25:46+0000 <dachary> because you're using tools that are used by a massive amount of people to do something very similar to what you're after 2011-04-29 16:26:17+0000 <dachary> i'll ask my friend about the session table 2011-04-29 16:27:04+0000 <antoviaque> cf #symfony-dev for details on the FB integration with FacebookBundle 2011-04-29 16:29:37+0000 <dachary> il est en train de parler du dev de facebookbundle ou bien de son integration ? c'est pas clair 2011-04-29 16:29:59+0000 <dachary> is he talking about the development ofthe bundle or the integration in the site, its not clear 2011-04-29 16:30:30+0000 <antoviaque> yes, that's why I asked about replicating the same result 2011-04-29 16:35:12+0000 <antoviaque> I'm going to try installing symfony + HelloBundle to get a better feel 2011-04-29 16:37:59+0000 <dachary> my friend tells me that we should avoid symfony2 if we're looking for stability and stay with 1.4 (facebookbundle requires symfony2) 2011-04-29 16:38:34+0000 <antoviaque> yup, symfony2 is in beta1 (apparently since this week) 2011-04-29 16:38:58+0000 <antoviaque> But the thing is, with Facebook there isn't such as thing as stability... 2011-04-29 16:39:15+0000 <dachary> the "bleeding edge" spirit is frightening 2011-04-29 16:39:40+0000 <antoviaque> What you want the most is a library which is active enough to follow the inexpected evolutions of the API 2011-04-29 16:39:50+0000 <dachary> if the http://www.symfony-project.org/plugins/sfFacebookConnectPlugin plugin does the work... 2011-04-29 16:40:18+0000 <dachary> I asked my friend about this tradeoff 2011-04-29 16:40:31+0000 <dachary> the old way is broken or does it still work ? 2011-04-29 16:40:47+0000 <dachary> did they dare to *break* compatibility ? 2011-04-29 16:40:57+0000 <dachary> I would not be suprised 2011-04-29 16:41:00+0000 <antoviaque> It's deprecated, so it will stop working sooner or later 2011-04-29 16:41:06+0000 <antoviaque> they break it all the time 2011-04-29 16:41:37+0000 <antoviaque> but let me have another look at this plugin 2011-04-29 16:41:46+0000 <dachary> it's a tough choice 2011-04-29 16:42:15+0000 <dachary> I think we should keep away from bleeding edge 2011-04-29 16:42:24+0000 <dachary> only we need facebook to allow for this ;-) 2011-04-29 16:43:19+0000 <dachary> He adds (rightfully) that we could also rely on OAuth plugin to do the work ourselves if it comes to that. 2011-04-29 16:43:33+0000 <antoviaque> yup 2011-04-29 16:48:47+0000 <dachary> I asked my friend about retrieving the user id from the session cookie 2011-04-29 16:49:15+0000 <dachary> I think my friend would be most useful if we use 1.4 because he is familiar with it and will recognize the pitfalls 2011-04-29 16:49:22+0000 <dachary> that votes in favor 2011-04-29 16:52:48+0000 <antoviaque> but he didn't implement a FB app - while lsmith contributes to FacebookBundle and implemented what we want to do *keeps looking at FacebookConnectPlugin* 2011-04-29 16:56:33+0000 <dachary> yes 2011-04-29 16:56:35+0000 <dachary> tough choice 2011-04-29 16:57:21+0000 <dachary> that being said, the FB side of things si slim and amounts primarily to integrate facebook connect properly 2011-04-29 17:01:05+0000 <antoviaque> Yes, facebook connect + graph API (or REST in the case of sfFacebookConnectPlugin ) 2011-04-29 17:08:19+0000 <antoviaque> Hmmm 2011-04-29 17:08:31+0000 <antoviaque> I'm really hesitating 2011-04-29 17:08:56+0000 <antoviaque> My gut feeling says FacebookBundle 2011-04-29 17:09:12+0000 <antoviaque> But you say symfony1 so I don't know 2011-04-29 17:11:12+0000 <antoviaque> I think I'd rather try out FacebookBundle, and revert to sfFacebookConnectPlugin if blocked, rather than the other way round. At least in this scenario I'd learn about symfony2, which would be useful later on - while learning about symfony1 if we have to switch to FacebookBundle would be useless. But I'm really not sure. 2011-04-29 17:24:26+0000 <dachary> symfony 1 is 2 years old 2011-04-29 17:24:53+0000 <dachary> there is no version in between 2011-04-29 17:25:07+0000 <dachary> antoviaque: what do you make of this ? 2011-04-29 17:26:02+0000 <antoviaque> not sure - but since it's developed mainly by Sensio, I guess they switched their new development projets to symfony2 2011-04-29 17:27:21+0000 <antoviaque> but they should have at least got some bug fixes... weird 2011-04-29 17:29:57+0000 <dachary> people answer on symfony dev are working full time on symfony 2011-04-29 17:30:52+0000 <antoviaque> I've seen the recommendation to use sf2 ;p 2011-04-29 17:36:56+0000 antoviaque1 (antoviaque1) is now online 2011-04-29 18:01:13+0000 antoviaque (antoviaque) is now online 2011-04-29 19:15:32+0000 <dachary> antoviaque: I saw my symfony friend and is advised against symfony2. 2011-04-29 19:15:47+0000 <dachary> he said that what we want to do can be done in a week 2011-04-29 19:15:49+0000 <dachary> with 1.4 2011-04-29 19:16:03+0000 <dachary> there is no telling how long it will take with symfony2 2011-04-29 19:39:34+0000 <antoviaque> did he say why? 2011-04-29 19:39:56+0000 <antoviaque> one week seem a long time for something like this, no? 2011-04-29 19:55:15+0000 <dachary> one week to setup the ecommerce part of cardstories ? 2011-04-29 19:55:24+0000 <dachary> including the fb auth 2011-04-29 20:12:19+0000 <antoviaque> ah, I thought you were just talking about fb auth 2011-04-29 20:17:09+0000 <antoviaque> he explained the reasoning for sticking to symfony1? 2011-04-29 20:25:04+0000 <antoviaque> not stable enough? 2011-04-29 20:46:29+0000 <dachary> antoviaque: he can predict how long things will take with 1.4 2011-04-29 20:46:32+0000 <dachary> he can't with 2 2011-04-29 20:46:47+0000 <dachary> he says many things changed and a number of plugins are not available yet 2011-04-29 20:47:02+0000 <dachary> in short he said he would be unsure and probably blocked 2011-04-29 20:47:19+0000 <antoviaque> I see 2011-04-29 20:47:41+0000 <antoviaque> hmm, ok then, I'll try installing a sf1, I'll see what it gives 2011-04-29 20:48:23+0000 <dachary> I will let you ponder this wisdom. I'll try to adapt cardstories to the symfony sessions tomorrow. It's the same for 1 and 2. I won't be wasting my time either way. 2011-04-29 20:48:48+0000 <dachary> I hate the symfony installation. I hate CMS in general. But I make an effort ;-) http://cardstori.es/symfony/web/ 2011-04-29 20:49:55+0000 <dachary> actually what irritated me most is not the mindless instructions and the 230498 command lines you need to enter because apt-get install is not ready 2011-04-29 20:50:05+0000 <dachary> I got tricked into using fastcgi fpm 2011-04-29 20:50:21+0000 <dachary> which failed to work AND display any error message 2011-04-29 20:50:49+0000 <dachary> and I made my second discovery of the day : there is no need, and will never be no need for fastcgi 2011-04-29 20:51:01+0000 <dachary> run an apache instead, behind a reverse proxy 2011-04-29 21:14:11+0000 dachary (dachary) is now online 2011-04-29 21:15:52+0000 <dachary> back 2011-04-29 21:16:34+0000 <dachary> antoviaque: my symfony friend proposes that I work with him on monday to sort things out 2011-04-29 21:17:10+0000 <dachary> I'll try to negotiate with my current employer to shift from monday to tuesday and take advantage of his offer 2011-04-29 21:35:11+0000 <antoviaque> Oh, that's really cool of him (and of you!) 2011-04-29 21:35:45+0000 <antoviaque> Do you want to make this a paid task? 2011-04-29 21:36:34+0000 <antoviaque> Checking to make sure I don't abuse your good will 2011-04-29 21:44:35+0000 tempuramerino (tempuramerino) is now online 2011-04-29 22:34:44+0000 <dachary> http://www.symfony-project.org/jobeet/1_4/Doctrine/en/02 2011-04-29 22:35:01+0000 <dachary> antoviaque: I recognize your user stories, same graphics ;-) 2011-04-29 22:37:16+0000 <antoviaque> ahah 2011-04-29 22:52:05+0000 <antoviaque> brb - updated my ubuntu, let's see what all this fuss about unity is about 2011-04-29 23:15:03+0000 antoviaque (antoviaque) is now online 2011-04-29 23:21:37+0000 tempuramerino (tempuramerino) is now online 2011-04-29 23:24:57+0000 <antoviaque> ok it's really sh... *installs gnome3*
_______________________________________________ Farsides mailing list - [email protected] Wiki: http://farsides.com/ List: http://farsides.com/ml/ Forum: http://farsides.com/forum/ Ideas: http://farsides.com/ideas/ Chat: http://farsides.com/chat/

