[17:09:25] Krinkle: AFT standup? [17:09:29] x2004) [17:09:35] alolita: The scrum is still in google calender..... [17:09:37] joining now [17:15:31] Old data is 20100922174126 - 20110314192357 [17:15:58] ok [17:18:26] New data starts 20100922174126 [17:18:28] Ah [17:18:37] 20110314193613 [17:20:02] Roan: just a point, but: "the beginning of time" presupposes that time existed before time began. [17:32:32] https://bugzilla.wikimedia.org/buglist.cgi?query_format=advanced&component=ArticleFeedback&resolution=--- [17:52:45] janpaul123: Do I need any other config settings for WikiLove other than the require_once() call? [17:53:26] $wgWikiLoveLogging = true; [17:53:33] Otherwise the DB is not used. [17:53:46] OK [17:53:49] Is that all? [17:53:53] Yeap [17:54:17] Do you have an officewiki account yet? [17:54:40] I do [17:54:42] Jposma [17:54:55] Cool, so you can test it there then [17:54:59] :D [17:56:04] OK it's enabled on officewiki now [17:56:07] Test away [17:56:24] Lets see [17:57:05] Hmm, nothing there.. [17:57:31] There's a JS error [17:58:17] I'm not getting it [17:58:22] The JS error, that is [17:58:52] Uncaught ReferenceError: OWA is not defined [17:58:57] That's OWA [17:59:00] OWA is not defined [17:59:03] RoanKattouw: I'm not seeing the JS error [17:59:04] [Break On This Error] OWA.setSetting('baseUrl', window.loc...otocol + '//owa.wikimedia.org/owa/'); [18:00:26] *RoanKattouw disables OWA because it's broken [18:00:39] OK, so no JS error now [18:01:02] Also no WikiLove [18:01:26] Oh wait [18:01:35] *janpaul123 goes to enable preference :P [18:01:39] D'oh [18:02:09] whelp. looks like i have to go into the office. [18:02:10] Oh it's in Editing [18:02:25] Auch, there are JS errors [18:03:26] I haven't seen any yet [18:03:49] mw.util.wikiScript is not a function [18:03:50] [Break On This Error] currentTypeOrSubtype.backgroundColor||...format':'json','title':mw.config.get( [18:03:52] There we go [18:04:05] RoanKattouw: New in 1.19 [18:04:07] Ah [18:04:08] mw.util.wikiScript [18:04:08] Yeah [18:04:25] *Krinkle didn't know WikiLove was going to be deployed in 1.17wfm1 [18:04:28] Well, that's a problem :P [18:04:34] janpaul123: Could you tweak the code that calls that? [18:04:36] Shouldn't be too hard [18:04:46] Sure [18:04:51] Krinkle: Well what else would it be deployed in? Unicorn land? ;) [18:04:54] Or we add it to 1.17wmf1, it's a 1 line function, will be handy [18:05:02] RoanKattouw: I dunno, 1.18 perhaps. [18:05:06] No dependencies on exported vars or other functions? [18:05:36] RoanKattouw: Where did you catch the error. (where is it now) [18:05:55] test.wp ? [18:05:56] Its this: return mw.config.get( 'wgScriptPath' ) + '/' + ( str || 'index' ) + mw.config.get( 'wgScriptExtension' ); [18:05:57] Previewing a barnstar [18:05:58] officewiki [18:06:08] Oooh [18:06:09] right, which I still dont have access to. [18:06:10] That's trivial [18:06:15] Provided both vars are exported [18:06:29] wwarom [18:06:30] And they are [18:06:42] Alright, I'll pull in that function then [18:06:48] janpaul123: So you don't have to tweak the callers [18:06:51] Sweet [18:07:17] jan paul, roan: hi [18:07:29] Hi! [18:08:19] wikilove is on officewiki [18:08:24] :-) [18:08:34] Yeah but it's broken [18:08:37] I'm fixing it now [18:08:43] ok [18:08:51] no worries [18:09:10] i am going to get very little done today, I am afraid. [18:09:34] alolita: Is there anything you can do towards getting me the office bits ? (officewiki, google apps,emailaddess) [18:10:46] Alright, fix deployed [18:10:51] Nice [18:11:33] haha [18:11:35] mw.user.tokens is undefined [18:11:55] Uncaught TypeError: Cannot call method 'get' of undefined [18:12:04] janpaul123: How do you get that? [18:12:14] *RoanKattouw totally forgot to review WikiLove for 1.17wmf1 compat [18:12:20] That's the mw.user.tokens thing [18:12:30] Oh, right [18:12:35] Same error, different browsers [18:12:48] Mhm [18:13:23] OK, so [18:13:31] I'm not sure how easy user.tokens will be to integrate [18:13:36] How many usages are there in WL? One? [18:13:44] Only the edit token [18:13:53] I can probably use some old code for this [18:14:03] Yeah do a two-stage AJAX request [18:14:09] A nested one [18:14:19] RoanKattouw: WL used to export it [18:14:27] Oh right [18:14:29] That old code [18:14:29] wgWikiLove.editToken or someting like that [18:14:31] Yeah that works too [18:19:01] janpaul123: You on that? [18:19:06] Yeah [18:19:33] Ok [18:19:49] I'll be idling until you commit a fix [18:21:05] *janpaul123 testing fix [18:23:35] RoanKattouw: done. [18:23:48] Thanks [18:24:28] Oh wait [18:24:30] That won't work [18:24:32] addInlineScript() [18:25:01] Use the MakeGlobalVariablesHook script to do a proper var export [18:25:06] jQuery is in the head in trunk but not in 1.17 [18:25:23] Oh okay [18:26:11] MakeGlobalVariablesScript? [18:26:12] (Also commented on CR, for the record) [18:26:30] woof [18:26:37] Yes [18:26:41] Meow [18:30:24] RoanKattouw: done. [18:30:39] nikerabbit: is it woofs for you; roan: meows for you [18:33:27] argh. even in the short time i have to get work done today i am being pestered. [18:35:47] I should organize a concerted effort where everyone says "Welcome to my life" the next time jorm complains about being busy :D [18:36:48] :D [18:37:11] alolita: i'm not going to be getting any comps done today, just writing, for the profile stuff. [18:37:44] jorm: k, doesnt change our deadlines :D [18:38:04] our team will be is sf early july [18:38:10] roan too!!! [18:38:29] i'm excited [18:40:35] well. i'm going to require fewer meetings and emergencies if that's to happen, i think. [18:40:53] yup, agreed [18:41:30] One of the text, appendtext, prependtext and undo parameters must be set [18:41:36] WTF, the text param is clearly set [18:41:49] Oh, maybe that's for the internal req [18:41:51] janpaul123: ---^^ [18:42:32] ? [18:42:54] RoanKattouw One of the text, appendtext, prependtext and undo parameters must be set [18:43:07] That seems to be coming from the action=edit call that the API module is doing internally [18:43:17] Oh [18:44:32] Ah [18:44:47] Right [18:44:49] Wtf [18:45:03] Ah [18:45:11] New article [18:45:14] Shit hits the fan [18:45:24] Crap [18:45:34] That's what you get when you do last minute "fixes" [18:45:46] I.e. the fix for the edit summary mentioning WikiLove [18:45:54] Oh [18:47:58] w00t! looks like i won't have to go into the office after all. [18:49:32] that may not be totally good :D [18:50:42] alolita: :D [18:50:55] nikerabbit: hi [18:51:08] alolita: hi :-) [18:51:17] mmerz: hi [18:51:20] mmerz: hi [18:51:31] Denis_WMDE: hi [18:51:31] denis: hi [18:51:33] and alolita hi :) [18:51:38] alolita: hi from me too [18:52:02] (: ih [18:52:03] hi-er and hi-er [18:52:15] hashar: hi! [18:52:26] RoanKattouw: testing fix.. [18:53:55] mmerz, denis: [18:54:07] how's survey testing going [18:54:15] as we had talked about earlier [18:54:21] testing is fine! :) [18:54:45] and I checked 6.-12.7. for relevant holidays.. everything clear [18:54:46] alolita: they wanted me to come in to have photos taken. [18:54:47] RoanKattouw: done. [18:54:55] week of july 6-12 works [18:55:04] great! [18:55:09] they are testing banner ads with me on them tomorrow. [18:55:23] jorm: wow - that's cool! [18:55:31] What about other banners that are runningin the same time? [18:55:46] http://meta.wikimedia.org/w/index.php?title=Special:CentralNotice&method=listNoticeDtail¬ice=C_TranslatorCall_world [18:55:53] i approved the appeals this morning. they're kind of funny. i mean, it's totally my voice and words, just i dunno. [18:55:59] mmerz: we'll have to figure out what else is running at that time [18:56:00] i don't know about any other banners. [18:56:03] C_TranslatorCall_world [18:56:14] maybe this is only for testing [18:56:37] this is to test whether or not my scruffy hillbilly ass results in clicks, i think. [18:56:53] ah, I see! ;-) [18:56:55] alolita: I have send you a private message :b [18:56:55] jorm: that will be a good test to do :D [18:57:14] hashar: i got it - its on my to-do today :-) [18:57:30] great :) [18:57:57] hashar: let's chat in a bit (1 hour) will u be around [18:58:14] alolita: sure! have a good lunch :) [18:58:16] so everything seems pretty much set! :-) when will you need the final local-variables (settings and translations)? [18:58:18] mmerz, denis: any other issues you're forseeing [18:58:50] alolita: no, not on my side - everything seems to run properly [18:58:51] hashar: see u then [18:59:01] i am plain happy [18:59:08] denis: great; [18:59:21] me too ;) [18:59:25] mmerz: are all the translations done [18:59:30] RoanKattouw: is it working? [18:59:37] or are you still expecting some more work [18:59:40] Deploying now [19:00:08] 'cause I got to go in like 2 minutes, to celebrate my birthday! :D [19:00:14] That's right [19:00:32] janpaul: really! that's awesome!!! happy birthday !!! [19:00:39] Thanks! :D [19:00:51] Alright trying again [19:01:11] mmerz: when do you anticipate all translation work to be completed [19:01:14] janpaul123: happy birthday and wikilove!! [19:01:19] Yay it worked [19:01:27] roan: YAY! [19:01:33] hey, happy birthday jan paul! [19:01:42] the translations are done, but they will be tested some more.. to choose the right sampling probablilty I would like to do some more testing as well (or would it be easy for you to give me the number of unique editors, including anonymous editors, that edit in an average week?) [19:01:45] Whohoo, thanks guys! ;) [19:01:50] janpaul123: So go ahead and enjoy your birthday party [19:02:05] janpaul: Woooo hoooo!!! Wikilove and happy birthday! [19:02:12] happy birthday! [19:02:15] WikiLove seems to be somewhat functional, and it's OK to leave it broken for one day on a private wiki if something pops up tonight [19:02:19] is it deployed to office? [19:02:28] Yes [19:02:55] Roan: can you broadcast to engineering@ once you're happy with wikilove deployment [19:03:04] Will do, guests are arriving already ^_^ [19:03:04] See you! [19:03:04] Will do right now [19:03:07] mmerz: ok [19:04:28] mmerz: would translation testing be done by end of next week [19:04:38] I would need 9 days to give you the final settings and banner translations.. would that work? [19:04:56] yes, that would be fine [19:05:06] mmerz: yes that works - let's target 6/30 drop dead date [19:05:31] since Roan needs to have time to review before deployment for 7/6 [19:05:45] perfect! I will send you all the relevant infos before that date :-) [19:06:00] okay that works! great; [19:06:04] ass soon it is available [19:06:15] sorry! "as" [19:06:25] mmerz: that would be great; the more time we can give to roan the better [19:06:32] since he has a lot on his plate [19:06:51] I absolutely understand! [19:07:03] asap :) [19:07:51] so everything is fine on my side! :) [19:07:51] I think they should do a "Punch the Monkey" style banner ad. [19:08:01] mmerz, denis: i think we've covered my list of things to ask you [19:08:04] i found a couple bugs in wikilove. [19:08:15] sending kittens does not ask me if i want to notify the user via email. [19:08:16] jorm: bugzilla is waiting for you [19:08:24] alolita: same here [19:08:41] mmerz, denis: thanks again and let's touch base at the same time next wednesday [19:08:48] does that work for you [19:08:54] alolita: fine. see you then [19:09:07] alolita: great, see you then! :-) [19:09:14] and feel free to ping me for anything otherwise; [19:09:27] mmerz, denis: thanks again and see you later :D [19:09:38] okay, thanks a lot [19:09:38] bye [19:09:41] alolota: thank you! see you later! xD [19:09:49] bye [19:10:09] roan: thanks for the note :-) [19:45:57] I need to come up with a name for this profile thing. [19:46:05] StructuredProfile? [19:46:16] StalkerDashboard [19:46:30] PrivacyViolation ? [19:48:00] DisplayAllYourInfoToTheWorld [19:48:08] Extension:Facebook [19:48:22] <^demon> Special:PrivacyIsOverrated [19:53:46] jorm: those are all pretty solid suggestions, i trust you've found a name by now? [19:54:12] you guys are the best! [20:30:44] TrevorParscal: Auto-focus #searchInput on-hover ? [20:30:51] !r 89950 [20:30:51] --elephant-- http://www.mediawiki.org/wiki/Special:Code/MediaWiki/89950 [20:31:13] read CR, what's your angle on this. [20:31:41] I vote no [20:31:51] it's a very unexpected behavior [20:32:03] right [20:32:33] usability: meeting the users exceptions when possible, not surprising them ever [20:32:38] it also hides the placeholder most of the time (since usually people start reading after they move the mouse, they'd never read it) [20:33:02] yeah, that's wrong [20:33:27] this isn't X-Windows from the early 90s man [20:33:28] <^demon> I thought autofocusing on #searchInput was pretty much *always* shot down as an idea? [20:34:02] keyboard focus should always be deliberate [20:34:16] Wikinaut seems to be handling trunk as a wiki (no need for Show preview, make several commits, undo is normal) - he'll learn tho, good intentions and sharp eye on the code. [20:34:33] <^demon> Krinkle: He's been around since long before any of us :) [20:34:48] some people take longer to learn I guess [20:35:04] ^demon: in subversion ? [20:35:05] Krinkle: Don't hesitate to tell him this though [20:35:12] Not testing commits is not acceptable [20:35:18] <^demon> Krinkle: He was tgries ages ago, he wrote enotif. [20:35:24] k [20:35:49] Hm. I have very different impressions by wikinaut and tgries. [20:35:55] funny [20:38:57] TrevorParscal: Hm.. there goes my idea to cache instances of mw.Foobar. Objects are always referenced in JavaScript, so it's pretty much impossible to do. Except when one would store a .clone() in cache at the end of the constructor function, before "return this;" but that cloning is more expensive in most browsers than creating a new instance later on. [20:39:48] mw.Title in this case, caching them in var cache[ns][title] = this; doesn't work, as if someone does this.setName('bar').setNamespace(5) stuff goes messed up [20:40:22] PHP has that much better figured. [20:40:39] well, they have the same problem, they just have a way to clone it [20:41:03] yeah, cloning in php has been supported for a looong time. [20:41:19] the question is, how much of mw.Title objects really need to be cacheable? [20:41:20] in JS it's just getting started. although I'm wondering what the status is of that anno 2011 [20:42:16] TrevorParscal: The only two parts that are cache-worthy of the mw.Title that I have locally (not 100% the same as the one from UploadWizard) is the newFromFullpagename method result which does regexy and switch() casing, the other thing (*new*) is .exists() [20:42:42] ok, so the exists() data could be stored statically [20:42:48] which is the only reason I started the caching, to populate some titles from the server to easily make blue/redlinks. mw.Title( ... ).exists() [20:42:56] like mw.Title.existingPages = []; or something [20:43:17] no need to keep that inside an object [20:43:27] Hm.. indeed [20:43:27] it's globally relevant, just attach it to the constructor [20:43:53] and newFromFullpagename method should be done the same way [20:44:31] you could say var title = mw.Title.newFromFullpagename( 'Special:Facebook' ); [20:44:58] don't let PHP's use of colons jade you into feeling like JavaScript doesn't have the ability to have static methods [20:45:43] I know, it's just that I was thinking too much inside the instance. [20:45:49] I didn't consider static. Thanks :) [20:45:56] it should have always used dots for everything, Rasmus is a horrible language designer [20:47:06] I wrote a cheat-sheet for a friend ones to compare javascript oop with PHP. I think it was for Bryan. [20:47:13] He was confused by foo.prototype.bar and foo.bar [20:47:20] ie. when/what/how [20:47:25] yeah [20:47:31] that could certainly be me [20:47:33] I like :: [20:47:35] C++ has it too [20:47:38] however, I haven't seen the cheatsheet yet :p [20:47:47] Java uses . for static stuff which just feels wrong to em [20:47:49] *me [20:47:53] Bryan: Aye, I still haven't ? [20:48:00] uh, C++ uses that in strange ways though [20:48:03] it's namespacing [20:48:22] Yes namespacing uses the same operator [20:48:46] where is it? [20:48:58] under the C for Cheatsheet. [20:49:01] I have no clue. [20:49:09] It's somewhere [20:49:14] well, really a static method of a class is just a function in the namespace of the class's name [20:49:55] another thing not obvious in JS (that is , not obvious if you're used to php) is private variables for a "class". [20:49:56] the awkward part is using it to define non-static functions [20:50:02] (ie. var foo, inside a IIFE) [20:50:11] Krinkle: yeah, I use that sometimes [20:50:43] JS is not an OO language but its scoping rules are flexible enough to simulate OO [20:50:46] and don't forget, the arguments to the constructor are "private" methods just like any var initialized there - but only accessible to functions defined within the constructor [20:50:50] TrevorParscal: I'm somewhat confused by the way mw.Title is written for uploadWizard tho, it doesn't use .prototype but this.method = function(){}; [20:51:16] Yeah you can do that with a strange sort of IIFE [20:51:16] which, iirc, recreates all those methods for each instance. [20:51:17] Krinkle: yeah, that's the "other way" to do it, which give you the ability to have private members [20:51:26] new ( function() { stuff } ) IIRC [20:51:37] Krinkle: yes, that's inefficient in some cases [20:51:52] TrevorParscal: Yeah, that's true, there's no way to have per-instance private variables that are accessable from prototype methods. [20:52:00] I think that's why Neil did it that way. [20:52:01] using prototype is more efficient because the methods are defined once and referenced [20:52:06] yep [20:52:24] common practice is to use this._var for "don't touch this" vars [20:52:24] But it probably removed the parts that had to be private, and what is left made less sense. [20:52:44] indeed [20:54:25] Whoah, man, if all goes .... I am soo looking forward.... to my internship in SF, september-february. That'd be awesome. [20:54:49] If that could be arranged that would be awesoem [20:55:17] Dude you'd be going to SF in July, going home, then coming back a month later [20:55:46] yeah [20:55:53] that's awesome, I hope that pans out [20:56:06] what month would you be coming Roan? [20:56:09] like, for good... [20:56:20] Hopefully Dec/Jan [20:56:26] But this is still very much unknown [20:56:46] I want to be there before Jan 17 for tuition reasons [20:56:51] RoanKattouw: knowing our HR dept. we're lucky if it's not next summer [20:56:56] And it would generally be cool to arrive when Krinkle is still there [20:57:17] Well most of the slowness will actually be on the part of USCIS [20:57:32] Provided HR front-loads everything properly the way they say they're gonna [20:57:40] And I will remind them to when I'm in the office [20:57:55] Nikerabbit is going to be in SF as well ? Awesome. [20:58:14] He's listed as N/A on that spreadsheet [20:58:21] Hm.. [20:58:41] Ah, Wikimania perhaps [20:58:47] Nikerabbit: [20:59:22] when? [20:59:33] I dont know, you tell us. [21:00:20] for what I know I will visit the office in september for some weeks [21:01:00] cool [21:02:23] what's this mystical sheet :) [21:03:23] Ask alolita to share it with you [21:48:04] robla, do we have a room for the conf call [21:48:21] brion: as of 5 min ago, YES! :) R7 [21:48:25] woooo [21:48:28] i'll be there :D [21:54:10] http://etherpad.wikimedia.org/GenEng-Meeting hey geneng peoples [22:02:16] I read that in my mind as a single phrase and it made no sense. [22:03:02] It's like you're talking about some tribe of people indiginious to some pacific island. The Geneng tribe. [22:13:26] jorm: i like the geneng tribe ; perhaps we've found a new one [22:14:24] There's a crappy reality tv program that get shown in the uk like that... [22:14:33] New entries have time with both, then select a side ;) [22:15:08] lolol