cjohnston | newz2000: do you think you will be able to make it tomorrow? | 01:00 |
---|---|---|
newz2000 | cjohnston: I am not sure what is going on tomorrow but I'm going to try | 03:26 |
cjohnston | mornin | 14:15 |
l3on | Hi all... someone of you know where can I find the source code of lucid countdown buttons? | 15:09 |
l3on | I would translate and use them in ubuntu.it | 15:09 |
qense | Does anyone here has got experience with getting information bubbles floating at an OpenStreetMap on a website? | 15:29 |
stas | qense: you mean openlayers? | 15:38 |
qense | stas: yes | 15:38 |
stas | i was playing with that library recently but find it harder to use compared to gmaps or other services | 15:39 |
qense | Yeah, it's not that intuitive. | 15:40 |
qense | but I'll figure out with help of the reference manual. ;) I was just curious whether anyone had a working example on the shelve. | 15:40 |
stas | plus it is missing some wrappers/helpers to use it with jquery or some modern js libs | 15:41 |
qense | true | 15:41 |
qense | but yay, I've found something! | 15:41 |
stas | qense: if you get something done, ping me, I would love to see some code using OpenLayer | 15:45 |
qense | stas: will do! | 15:46 |
stas | thanks and good luck :) | 15:46 |
qense | thanks :) | 15:47 |
ofirk | newz2000: can I talk to you for a sec? | 16:31 |
stas | is there some meeting planned today? | 17:32 |
cjohnston | yes | 17:42 |
cjohnston | in a little over two hours | 17:44 |
stas | oh, this time zones are driving me crazy :) | 17:49 |
cjohnston | I included a link in the email that should show you the time in your TZ | 17:50 |
stas | ah, my problem is that I always have to count what time is where the guys I'm talking with are | 17:53 |
newz2000 | Hi, is anyone here for the localization meeting? If so, check out #ubuntu-meeting | 20:03 |
newz2000 | (and announce yourself please) | 20:04 |
stas | newz2000: around? | 20:43 |
newz2000 | hey stas | 20:43 |
stas | hey. about the app | 20:43 |
stas | i didn't succeed submitting it to the apps directory | 20:44 |
stas | so I think it's best to share it in current status | 20:44 |
newz2000 | ok, what happened? | 20:44 |
stas | they ask more active users | 20:44 |
newz2000 | ah | 20:44 |
stas | though I got ~20 users in the db that added it, FB reports under 10 | 20:45 |
newz2000 | :-( | 20:45 |
stas | dunno how they calculate it | 20:45 |
stas | so I'm afraid if we wait after official apps directory submission, we're loosing time | 20:46 |
newz2000 | yeah, well, I saw daniel announced it on identica | 20:47 |
stas | i thought pinging some fan groups in facebook and sharing the link to the app can be a good start | 20:47 |
newz2000 | that's a good idea | 20:47 |
newz2000 | I think we should consider this a public beta period | 20:47 |
newz2000 | get people using it, don't worry about the directory for now | 20:47 |
stas | yep | 20:47 |
newz2000 | stas: what would you like me to do? | 20:48 |
stas | to do what? | 20:48 |
stas | ah | 20:48 |
stas | if you got many friends on fb that would help if not we are in the same situation :D | 20:49 |
newz2000 | ok | 20:49 |
newz2000 | I'll do it | 20:49 |
stas | thanks | 20:50 |
ofirk | newz2000: do you have a sec? | 20:51 |
newz2000 | hey ofirk, yes | 20:51 |
ofirk | newz2000: how are you? | 20:51 |
newz2000 | good, how are you? | 20:51 |
ofirk | newz2000: good, thanks | 20:52 |
ofirk | newz2000: is there any news regarding the download page? | 20:52 |
newz2000 | ofirk: no, I had a phone call less than one hour ago | 20:52 |
newz2000 | and I still do not have any new information | 20:52 |
newz2000 | :-( | 20:52 |
ofirk | bammer :( | 20:53 |
newz2000 | yeah, the person who I'm working with is very frustrated on the subject | 20:53 |
newz2000 | ofirk: I'm thinking about "plan b" currently | 20:53 |
ofirk | remind me again what is plan B? | 20:54 |
newz2000 | we don't have one yet | 20:54 |
* newz2000 looks at the logs to see how many downloads kubuntu gets during a busy period | 20:55 | |
ofirk | interesting | 20:55 |
newz2000 | ofirk: ok, you're peak demand is very managable | 20:58 |
ofirk | newz2000: means that...? | 20:59 |
newz2000 | that means we can create a custom "plan b" solution and don't have to worry too much about capacity | 20:59 |
ofirk | what about the one which uses the template.php inside the theme to generate the mirror list or to redirect to a mirror? | 21:00 |
newz2000 | my goal is to get you plugged into the new download page, but if that isn't going to work we can create a temporary solution and host it at webapps.ubuntu.com or on app engine or ec2 | 21:00 |
newz2000 | ofirk: that's a possibility too | 21:00 |
stas | newz2000: btw, you are still in pending status as the app developer, dunno why though | 21:02 |
newz2000 | stas: I'm not concerned | 21:02 |
stas | ah oky :) | 21:03 |
ofirk | newz2000: I'm sorry, my internet connection disconnected | 21:08 |
newz2000 | ofirk: no prob, last I said was... | 21:08 |
newz2000 | ofirk: that's a possibility too | 21:08 |
ofirk | but for all of those solutions we will need an access to the mirror list on launchpad, right? | 21:08 |
newz2000 | yes, that is easy, its an rss feed | 21:09 |
ofirk | and you have the PHP script which takes care of it? | 21:10 |
newz2000 | Hmm... that is an interesting separate challenge | 21:10 |
newz2000 | because it needs to run periodically | 21:11 |
newz2000 | and you can't do that the way you're planning | 21:11 |
ofirk | drupal has cron support, if it is enabled on kubuntu's website, we can use it | 21:12 |
newz2000 | but that would require us to create a custom module for drupal which I don't think is going to be allowed. We already have the code written if that's what we're going to do | 21:13 |
ofirk | do we have cron on webapps.ubuntu.com/app engine/ec2 ? | 21:19 |
newz2000 | ofirk: yes | 21:19 |
ofirk | cool | 21:19 |
ofirk | so why not use one of them. isn't it easier? | 21:20 |
newz2000 | it means we have to write something and "plan a" didn't | 21:20 |
newz2000 | so it is a fallback | 21:20 |
newz2000 | but we should probably start planning it | 21:20 |
ofirk | what features will we have on webapps? can we use remote access to read the rss feed? | 21:23 |
ofirk | can we implement the feature which redirects to the nearest server? | 21:23 |
cjohnston | hey adiroiban | 21:24 |
adiroiban | :) | 21:24 |
cjohnston | newz2000 told me you may be able to help me out with setting the .js files up for translation | 21:24 |
newz2000 | ofirk: probably not (redirect to nearest server) | 21:24 |
adiroiban | cjohnston: do you plan to use any js library/framework? | 21:26 |
ofirk | newz2000: why we can't do that? is it because we can't identify from where the user comes? | 21:26 |
newz2000 | ofirk: it may be possible | 21:27 |
newz2000 | but the timing is tricky | 21:27 |
newz2000 | adiroiban: no, js files will be very simple | 21:27 |
newz2000 | they will need to output one string and one url | 21:27 |
newz2000 | the url will be https;//wiki.u.c/Local/<lang> | 21:28 |
ofirk | newz2000: so let's tag it as wishlist | 21:28 |
newz2000 | ofirk: if we use the plan a then we'll get that built in | 21:28 |
cjohnston | adiroiban: http://people.ubuntu.com/~chrisjohnston/local/file.js.en | 21:28 |
newz2000 | ofirk: yes, good plan | 21:28 |
adiroiban | i was thinking of using jsgettext | 21:28 |
adiroiban | http://openflights.org/blog/2009/05/29/dynamic-javascript-localization-with-gettext-and-php/ | 21:29 |
ofirk | newz2000: off course | 21:29 |
newz2000 | adiroiban: no php | 21:29 |
adiroiban | newz2000: no need for php | 21:29 |
adiroiban | :) | 21:29 |
adiroiban | http://developer.berlios.de/projects/jsgettext/ | 21:29 |
adiroiban | here is the library | 21:29 |
adiroiban | it a pure JS parser of po files | 21:29 |
* stas pokes adiroiban | 21:30 | |
ofirk | newz2000: so we need to use an rss praser to prase the rss from launchpad | 21:30 |
newz2000 | adiroiban: I think it's overkill | 21:30 |
adiroiban | newz2000: it may be | 21:30 |
adiroiban | but it can handle translation validations | 21:30 |
adiroiban | as otherwise we need to implement our own checkers | 21:30 |
newz2000 | adiroiban: document.write('<a href="[url]">[string]</a>'); | 21:30 |
adiroiban | since translations can contain wrong js code | 21:30 |
ofirk | newz2000: so the flow chart is: display download form with all mirrors -> user submits form -> get user data -> redirect to mirror | 21:31 |
adiroiban | newz2000: we can also go with in the house solution | 21:31 |
newz2000 | adiroiban: simple = good++ | 21:32 |
newz2000 | ofirk: yes | 21:32 |
newz2000 | ofirk: do you want to continue to use an iframe? | 21:33 |
ofirk | newz2000: I don't | 21:34 |
newz2000 | ofirk: agreed | 21:34 |
newz2000 | so we have two choices... | 21:34 |
stas | i would go using a json file, this will bring kinda gettext logic in translations, and the checks can be done using a regex | 21:35 |
newz2000 | ofirk: host the form on the dyanmic app (webaps...) or host the form on kubuntu.org and pull the data from the dynamic app | 21:35 |
newz2000 | stas: that means you have two hits to the server instead of one | 21:35 |
ofirk | newz2000: do you mean kubuntu to pull the data from the app? is it possible? | 21:35 |
newz2000 | ofirk: yes, just a moment | 21:36 |
newz2000 | stas: since there is one .js file for each lang and the js file only has to display it's own link I think this could be a one line script | 21:36 |
newz2000 | I could be wrong on this... a case could be made for making it more complex | 21:36 |
newz2000 | (like asynchronous loading) | 21:37 |
newz2000 | if we have a 150 byte js file that simply displays a string containing a hyperlink, what's the most efficient way to get the job done? | 21:38 |
stas | hmm, yep in oneliner case you're right, but having a more complex string with some variable words/numbers in it would make sense | 21:38 |
adiroiban | stas: jsgettext is already doing that, no need to reinvent the wheel | 21:38 |
* newz2000 listens | 21:38 | |
stas | adiroiban: jsgettext requires php? | 21:39 |
adiroiban | bioe | 21:39 |
adiroiban | nope | 21:39 |
adiroiban | pure js implementation | 21:39 |
newz2000 | adiroiban: and what does it give us beyond document.write('...') ? | 21:39 |
adiroiban | newz2000: it will allow us to integrate the translation into Launchpad Translations | 21:40 |
stas | easier hangling of stuff like "Some %d hours ago and %d seconds before" | 21:40 |
adiroiban | so that translators can translate those strings using a web interface | 21:40 |
stas | i believe | 21:40 |
adiroiban | or well know translation edit tools like poedit or gtranslator / kbabel | 21:40 |
* knome coughs | 21:41 | |
* newz2000 was hoping knome would chime in | 21:41 | |
adiroiban | it can handle plural forms | 21:41 |
knome | newz2000, what are we talking about? | 21:41 |
newz2000 | adiroiban: The string is "resources in English" | 21:41 |
adiroiban | :) | 21:42 |
adiroiban | then just document.write it :) | 21:42 |
newz2000 | knome: techincal aspects to cjohnston's localization project | 21:42 |
knome | right | 21:42 |
knome | so what do we need? a js script downloading a string? | 21:42 |
newz2000 | the end result is a js file for german will display someting on the page that looks like this: <a href="https://wiki.ubuntu.com/Local/de">Resources in German</a> | 21:43 |
knome | okay. | 21:43 |
cjohnston | in german tho | 21:43 |
newz2000 | right | 21:43 |
cjohnston | lol | 21:43 |
newz2000 | the german will come from a .po file that is translated in launchpad | 21:44 |
knome | what info do we have on the server with js? "de" ? | 21:44 |
newz2000 | file.js.de is a js file that will be responsible for displaying that string | 21:44 |
newz2000 | and it will only know or care about german | 21:44 |
knome | ..right | 21:44 |
adiroiban | newz2000: we can use po2json de.po > file.js.de | 21:45 |
newz2000 | adiroiban: that sounds promising | 21:45 |
knome | is it rational to ask LP for translation every time the JS is loaded, or should the data be cached? | 21:46 |
adiroiban | and just have a raw access to that json (without using jsgettext) | 21:46 |
adiroiban | knome: the data will be cached | 21:46 |
knome | okay | 21:46 |
knome | i don't really see the problem here. can you enlighten me | 21:47 |
newz2000 | we're looking for the simplest way | 21:47 |
adiroiban | the problem is how do we allow translator to translate those js files | 21:47 |
adiroiban | and check the files will stay valid after translations | 21:47 |
newz2000 | yeah, that is a concern | 21:47 |
adiroiban | and who have access to translate them | 21:47 |
adiroiban | and how the translations are „comited” | 21:48 |
knome | isn't that more of a LP issue? | 21:48 |
adiroiban | using LP Translations should solve many of those problems | 21:48 |
newz2000 | the qa part I can picture, the rest i don't know | 21:48 |
newz2000 | if a person has to run the script to create the js files then they can do a bzr diff before and after to make sure no bad strings get in | 21:48 |
knome | is there a way to check if a file is valid? | 21:48 |
newz2000 | jslint | 21:49 |
knome | then do automatical validation and if it fails, use the old version and notify the translator(s) ? | 21:49 |
newz2000 | yeah | 21:49 |
* newz2000 doesn't know how to do this though | 21:49 | |
* cjohnston either | 21:50 | |
adiroiban | knome: LP Translation should warn users as soon as the submit a corrupted translation | 21:50 |
adiroiban | and not allow it | 21:50 |
knome | bind a script to translation change? | 21:50 |
adiroiban | but to do that, the translation should in PO format | 21:50 |
adiroiban | so | 21:51 |
adiroiban | if you want | 21:51 |
knome | to check the validity of the js file? | 21:51 |
adiroiban | I can help you with setting up the translations for this | 21:51 |
cjohnston | adiroiban: definatly | 21:51 |
cjohnston | someone needs to decide and newz2000 needs to approve how this is going to be, and then we can get it setup | 21:52 |
* stas can haz pizza | 21:52 | |
cjohnston | but we also need to make sure not to display if there is no landing page | 21:52 |
knome | newz2000, fwiw, i heard rime is going to get back home from florida tomorrow | 21:52 |
newz2000 | knome: I'd be interested it knowing if there's something faster than document.write('...') | 21:53 |
knome | isn't document.write just basic basic js? | 21:53 |
newz2000 | yes | 21:53 |
knome | i doubt there is quicker ways then | 21:54 |
knome | at least with js | 21:54 |
adiroiban | http://paste.ubuntu.com/413900/ | 21:54 |
adiroiban | this should be your source | 21:54 |
adiroiban | and we will have a similar json for each language | 21:54 |
newz2000 | adiroiban: what happens with this? | 21:56 |
knome | newz2000, i suppose there are ways to "preload" the text. that would look like it appeared immediately, but the overall page load time would be the same. | 21:56 |
newz2000 | yeah | 21:57 |
adiroiban | newz2000: that is the format for json containing the translated strings | 21:57 |
adiroiban | or in our case | 21:57 |
adiroiban | it will contain a single string | 21:57 |
adiroiban | po2json will generate a similar structure | 21:57 |
newz2000 | the generated .js file will probably need to have one more line of js besides this json, is that doable? | 21:57 |
adiroiban | newz2000: sure | 21:57 |
newz2000 | ok | 21:57 |
newz2000 | I like it, lets move forward | 21:58 |
adiroiban | is just that the rest of the code should expect to receive/use a similar json structure/object | 21:58 |
adiroiban | newz2000: still, since the text is „resource is German” | 21:59 |
adiroiban | nevermind :) | 21:59 |
* newz2000 never minds | 21:59 | |
cjohnston | adiroiban: can you help me set this up at some point? | 22:00 |
adiroiban | cjohnston: sure | 22:00 |
cjohnston | fam just got home, so must go for now.. we can talk later about it :-) | 22:00 |
adiroiban | just link me a bzr branch | 22:00 |
cjohnston | https://code.edge.launchpad.net/~chrisjohnston/website-localization/local | 22:01 |
cjohnston | bbiab | 22:01 |
adiroiban | cjohnston: hm This branch has not been pushed to yet. | 22:02 |
cjohnston | adiroiban: its brand new | 22:02 |
adiroiban | cjohnston: ok. here is a more specific exemple of the json http://paste.ubuntu.com/413913/ | 22:05 |
adiroiban | if your js script can handle such input | 22:05 |
adiroiban | we are done :) | 22:05 |
knome | i'm sure we can work that out with js | 22:05 |
adiroiban | we should :) | 22:05 |
knome | we are. i know a codemonkey. ;) | 22:06 |
adiroiban | me too | 22:06 |
* cjohnston doesnt know js | 22:08 | |
cjohnston | lol | 22:08 |
knome | you don't have to know js if you know somebody who knows | 22:08 |
cjohnston | 17.05.19 < adiroiban> if your js script can handle such input <-- that was my way of saying i dont know if it can | 22:08 |
knome | ;) | 22:09 |
knome | i know it can | 22:09 |
knome | don't worry | 22:09 |
cjohnston | I did this: http://people.ubuntu.com/~chrisjohnston/local/file.js.en | 22:09 |
cjohnston | lol | 22:09 |
cjohnston | but I do like to learn stuff | 22:09 |
knome | hehe | 22:09 |
cjohnston | will you two be around later? | 22:10 |
knome | today, no. i'm going to bed in 20 | 22:10 |
cjohnston | i jealous | 22:10 |
cjohnston | im | 22:10 |
knome | heh ;] | 22:10 |
cjohnston | adiroiban ? | 22:10 |
knome | anyway, i'll be around here tomorrow 8AM UTC | 22:10 |
adiroiban | cjohnston: not sure | 22:10 |
knome | or sth | 22:10 |
cjohnston | ok | 22:11 |
cjohnston | i work tomorrow | 22:11 |
cjohnston | so prolly thursday we can work then | 22:11 |
knome | probably | 22:11 |
knome | i'll ask a js guru to join us | 22:11 |
adiroiban | but we can continue via email | 22:11 |
knome | sure. the best way to actually get hold of me is irc though. | 22:12 |
cjohnston | do yall wanna setup a time? | 22:12 |
knome | i often forget emails. | 22:12 |
knome | i don't know about the js guy's schedules yet | 22:13 |
cjohnston | ok | 22:13 |
cjohnston | ill be here all day thursday | 22:13 |
knome | okay | 22:13 |
cjohnston | off to give the kids showers | 22:13 |
cjohnston | oh yay! | 22:13 |
knome | hf | 22:13 |
cjohnston | bbl | 22:13 |
knome | night everybody | 22:17 |
Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!