[00:16:23] New patchset: Brion VIBBER; "Switch out sprited nav icons for higher-resolution ones, using data: URI embedding. Switch "W" icon out for more generic "home" icon." [mediawiki/extensions/MobileFrontend] (master) - https://gerrit.wikimedia.org/r/26570 [03:30:38] New patchset: Jdlrobson; "make mobile work for users who can't handle jQuery" [mediawiki/extensions/MobileFrontend] (master) - https://gerrit.wikimedia.org/r/26575 [03:30:38] New patchset: Jdlrobson; "switch opensearch.js to request json (bug 40435)" [mediawiki/extensions/MobileFrontend] (master) - https://gerrit.wikimedia.org/r/26576 [03:30:55] New review: Jdlrobson; "help needed in SkinMobile.php" [mediawiki/extensions/MobileFrontend] (master) C: -1; - https://gerrit.wikimedia.org/r/26576 [07:00:08] yuvipanda: you about? [07:00:25] tfinc: yo [07:00:25] 'sup? [07:01:10] yuvipanda: what would it take to get http://toolserver.org/~emijrp/wlm/stats.php for mobile ? i saw comments in the code that made me think we could easily run it [07:01:16] the comment even mentions you ;) [07:01:22] i'm eager to see the country and top uploader breakdown [07:01:33] link to source? [07:01:38] should be simple enough, I think [07:01:49] yuvipanda: http://code.google.com/p/toolserver/source/browse/trunk/wlm/wlmstats.py [07:01:55] i don't have a tool server acount [07:01:59] ah, I do [07:02:01] but i want the data for tomorrow [07:02:06] alright. let me get on it [07:02:06] nice [07:02:08] thanks [07:11:17] tfinc: damn, my toolserver account seems to have expired :| [07:11:56] anyone around you can ask? [07:12:50] no max, let me try srikanth [07:16:03] tfinc: found someone on IRC :) [07:16:12] perfect [07:36:20] yuvipanda: any luck? [07:37:19] tfinc: working on it. I've the code done [07:37:22] just getting it to run [07:38:02] * jorm yawns. [07:38:08] hello, mobile developer nerds. [07:39:12] sup jorm [07:39:16] hows hawaii? [07:39:32] hot. [07:39:35] awesome. [07:39:53] jorm: your missing the hottest days of the year here [07:40:03] i don't know if i'd say "missing" [07:40:58] yuvipanda would love them [07:41:02] and this LA boy does too :) [07:42:03] :D [07:42:10] hehe 'hot' :) [07:42:40] sweet timing - my toolserver account expires, i use gist to share code with someone and github goes down [07:42:43] *shakes fist* [07:44:02] github works for me [07:44:17] yuvipanda: --^ [07:46:07] tfinc: yeah came back up [07:46:11] was down for a couple of minutes [07:48:33] tfinc: done ytay [07:48:34] yay [07:48:38] https://toolserver.org/~legoktm/wlm/stats.php [07:48:40] ran only for the US [07:48:43] let me now run for everything [07:48:45] and fix styles [07:49:12] yuvipanda: i'm eager to see how this data plays out [07:54:17] tfinc: https://toolserver.org/~legoktm/wlm/stats.php [07:54:17] done [07:54:32] the 'details' link won't work because it points to yet another tool [07:54:52] hehe neither will the files link. [07:56:09] hehe ok [07:57:45] i need to restart this. [07:58:53] mutante for the win [07:59:25] tfinc: fixing the country files list link now [08:15:33] tfinc: the 'details' links should now work :) [08:15:38] i guess that'd be enough? [08:15:55] yup. thats enough for now [08:16:23] sweet! :) [08:16:46] good luck with the pres [08:17:42] thanks yuvipanda [08:32:49] tfinc: also, https://commons.wikimedia.org/wiki/File:Commons_media_upload_app.png updated (FYI, if you want to use that) [08:33:05] nice [08:33:19] i took the one off of mw.org [08:35:30] i think we updated this or something. There were copyright confusions that maryana helped clear up [11:22:22] yuvipanda: check this out http://graphicpeel.com/cssiosicons [17:09:47] preilly: we spoke too soon. metrics is catered today [17:09:57] our org is all growed up! [17:09:59] Maryana: damn [17:10:13] kinda wish i hadn't had that crappy granola bar now [17:10:53] Maryana: indeed [17:12:18] i wish they could send food over the internet [17:12:53] awjr: you like the mobile team to grub hub you something? [17:13:08] ha last time i checked grubhub no worky here [17:13:18] what? what desolate rock are you stranded on?? [17:13:29] Maryana: the sonoran desert [17:13:40] in solidarity with awjr on the desolate rock [17:13:52] :) [17:13:56] which, aside from the city of tucson, is a lot of desolate rocks :p [17:14:24] awjr: okay okay so we will use http://www.azfood.com/restaurant_delivery_service_tucson.php [17:14:49] hahahhaa yes please order me something from chilis [17:14:56] california pizza kitchen? [17:14:58] mmmmm [17:15:04] cardboardy [18:30:01] Change merged: Brion VIBBER; [mediawiki/extensions/MobileFrontend] (master) - https://gerrit.wikimedia.org/r/26557 [19:27:56] WLM mobile stats https://toolserver.org/~legoktm/wlm/stats.php [19:28:07] brion: jdlrobson MaxSem awjr --^ [19:28:20] I should move it to my ts account once I have it back [19:28:26] with our very own mutante leading the charge [19:28:32] whee [19:28:39] whee [19:28:53] yuvipanda, what happened? [19:29:01] MaxSem: I forgot to renew [19:29:17] I got the 7 day warning, then forgot. It expired a few days ago [20:00:49] story review and estimation meeting! r31 and google hangout link is in the calendar invite. [20:01:06] awjr: we're setting up [20:01:14] thanks brion [20:02:32] we're just setting up all the projector gear awjr [20:02:41] word [20:02:46] there is a lot of it [20:05:10] MaxSem: poke [20:05:15] MaxSem: review and estimation mtg [20:05:21] MaxSem: https://plus.google.com/hangouts/_/f729647e17b36f50d36c4876a153d5f59ff924bd [20:14:27] tfinc, could you give me a link to the card list? [20:15:19] MaxSem: awjr --^ [20:15:33] https://mingle.corp.wikimedia.org/projects/mobile/cards?favorite_id=607&view=Iteration+Planning [20:16:46] thanks [20:33:35] maxsem, account creation docs here: https://www.mediawiki.org/wiki/Account_creation_user_experience [20:33:57] and main engineering specs here: https://www.mediawiki.org/wiki/Account_creation_user_experience/Engineering [21:36:14] brion, jdlrobson, MaxSem: im updating the 'extending mobile support for other extensions' card per our convo earlier - what are the questions that you think need to be answered before we can begin implementing RL for mobile and support extending functionality by other extensions? [21:37:01] 'how do we add functionality without getting spammed with modules we don't need?' ?:) [21:37:58] Trevor already has an answer for this [21:39:40] MaxSem: what is it? [21:40:19] each module specifies target(s) for which it's intended [21:40:35] desktop/mobile/whatever [21:40:54] right, so then there needs to be a way for MW to be aware of what those targets are [21:42:15] $wgRLTargets[] = 'mobile'; [21:42:38] so, we left this issue at "there are questions that we need to answer before we can begin implementing RL for mobile" - but i feel like we have a pretty good idea of what needs to be done: 1) make MW somehow aware of different contexts or targets 2) make RL able to differentiate those targets 3) make whatever changes to get RL working with MF [21:43:11] brion, jdlrobson, MaxSem: does that seem about right? if so, can't we just make a regular story card around this? do we still need to do a spike to learn something else? [21:43:49] sounds about right [21:43:56] other minor stuff like compacting the startup module and increasing its TTL [21:44:11] (optionally, just for our target) [21:44:25] ok, but that's something else we know - are there things we don't know that are preventing us from just getting this done? [21:45:16] awjr: that's for indulging me in order to introduce michelle to the team. [21:45:18] we don't know RL:) [21:45:35] i'm really happy she's joint us next week [21:46:02] MaxSem: :p [21:46:44] MaxSem, brion, jdlrobson do you feel we need to schedule structured time with RL experts in order to get the stuff done, or can we pull it off with ad-hoc adivce from them? [21:46:48] tfinc i am too :) [21:47:00] joining* [21:47:56] awjr, I'd love to have Trevor for this, because [01:45:20] we don't know RL:) [21:48:29] wouldn't hurt to have some dedicated time [21:48:30] MaxSem: what do we specifically need from him and for how long? [21:48:37] brion ^ [21:48:37] don't want to end up with them going "wtf are you fools doingggg?" :) [21:49:00] awjr, I would love to have him for this discussion:) [21:49:11] probably just to hash out that the target stuff makes sense and make sure we're going in right direction [21:51:03] awjr: on the ResourceLoader comment I'm currently resurrecting my blog so I can write up a post that may be relevant [21:51:16] eh? [21:51:32] im trying to pull trevor in here but he's not responding [21:51:33] Desktop comes with a lot of CSS cruft that I'd rather avoid [21:52:14] awjr, another this to investigate: what parts of RL/stuff that customarily comes with it need/don't need to be served for mobile [21:52:19] So rather than a technical issue - there is a community activity that needs to happen [21:52:27] if he's visible in the office can someone poke him to join? [21:52:35] To take an example - Barack Obama article on desktop - 244.86KB (74%) of CSS is not used in the page [21:52:36] jdlrobson: explain? [21:52:48] we add resource loader we get that on mobile [21:52:49] yey [21:53:13] (well potentially.. i'm guessing some is related to vector or equivalent.. i'm still exploring) [21:53:41] jdlrobson: isnt that what gating is supposed to address? [21:54:05] i guess so but I don't know enough about ResourceLoader to know if that's true [21:54:24] jdlrobson: do you see trevor in the office? [21:54:42] no he's WFH apparently [21:55:02] lame alert [21:56:03] what about roan, is he around? i dont see him online [21:56:20] don't see him [21:56:27] Roan at school [21:56:36] well then, we'll grab them in the future :) [21:57:00] let's see… whre did i leave my keys to the time machine [21:57:24] i feel like the questions we have are likely quick ones to answer by roan/trevor/etc [21:57:31] at least that's the imperssion im getting so far [21:57:44] why don't we draft up the questions and we can send them over to the RL folks and then figure out how to proceed [21:58:02] excellent [21:58:29] brion, MaxSem, jdlrobson: http://etherpad.wikimedia.org/ResourceLoader-for-mobile [21:59:18] well, I have only 1 question: how can we steal them , say, for a week? [21:59:51] MaxSem: i am far from convinced that that's necessary [21:59:58] plus, it's almost certainly impossible. [22:00:29] o rly? sack on the head, probably bludgeon a bit... [22:00:37] rofl [22:00:53] it's almost certainly impossible without bodily harm or emotional trauma [22:01:06] brb [22:12:35] awjr: put me down for a future brown bag with lesscss [22:12:49] might be worth waiting till new front end devs are here? [22:14:20] tfinc: useful gmail filter to: feedbacktest@wikimedia.org saved pages OS 6_0 = mark as read [22:14:33] lolz … ok [22:17:25] we've got a mobile team lunch hangout scheduled for next wednesday - perhaps that would be a good time? [22:17:29] jdlrobson, tfinc ^ [22:17:59] awjr: do we have an ether pad setup for ideas ? [22:18:17] no that i know of [22:18:19] *not [22:18:35] * awjr waves at TrevorParscal [22:18:40] hello people talking about resourceloader [22:19:12] i come offering the potential for partial to complete answers on some but not all questions you may or may not have [22:19:18] TrevorParscal: we've been chatting about some open questions we have in regards to resource loader for getting it fully working for mobile devices [22:19:38] ok [22:19:42] some questions have been compiled here: http://etherpad.wikimedia.org/ResourceLoader-for-mobile [22:19:50] lookin [22:20:55] TrevorParscal: "* what needs to be trimmed out vs kept for mobile?" i believe is in reference to jdlrobson's concerns about not wanting to load lots of desktop-specific cruft [22:20:57] jdlrobson: awjr: regarding the issue of 'loading stuff not applicable', that's been discussed before. afaik that's more a social issue, where people [22:20:58] e write too much stuff without dependencies (e.g. "common"), in which case I don't think taking it out is a fair response. [22:21:22] i'm hacking on the etherpad [22:21:35] Krinkle: http://etherpad.wikimedia.org/ResourceLoader-for-mobile [22:21:50] k [22:22:38] well, don't we miss the step "do we need a "target"" in the first place? [22:23:27] Krinkle: the thought is that we need a way to differentiate on targets to prevent loading unneeded/incompatible stuff in mobile contexts [22:23:43] seems to overlap most of not entirely with dependencies and skinScripts/skinStyles. Default modules are currently in OutputPage, those can (should) be moved to Skins mostly (e.g. ajax.watch uses IDs that are entirely skin specific) [22:24:11] awjr: sure, but so far I've only seen it being used as a way to avoid proper structure in modules. [22:24:26] Krinkle: can you explain that? [22:24:46] if it is incompatible, it shouldn't be used. Not by manually stamping 'mobile' on it, which as I said before on the bug (which bug again) doesn't work in the long run. [22:25:00] at least, that's what I thought at the time. No hard feelings here. [22:25:41] * Krinkle looks up the longer response on this on bugzilla which some good info [22:26:06] jdlrobson: looks like we already have a special-cased form for Special:Userlogin. Do we need to replace it or just enable a link to it? hmm [22:26:26] here you go: https://bugzilla.wikimedia.org/show_bug.cgi?id=40033 [22:26:32] prologue ^ [22:27:06] ok looks like the styles do change it... [22:27:14] …i can probably just drop the overlay bits ? [22:28:03] ok - done hacking on etherpad [22:28:06] any other questions? [22:28:23] jdlrobson, MaxSem, brion ^ [22:28:26] TrevorParscal: check the bug (c4 in particular) [22:28:29] sounds about good to me [22:28:48] Krinkle the target thing is a way to trim down the manifests provided by startup [22:29:38] another idea is to not export all modules publicly - for instance there are some modules that are registered for cleanliness (like when an extension registers 4 or 5, but only needs 1 or 2 to be publicly known) [22:30:05] we could add an option to RL registration that makes a module "internal" so it's not exported to the client in the manifest [22:30:11] that will help both desktop and mobile [22:30:15] but mobile needs it's own manifest [22:30:37] to start, mobile will have VERY few modules, so it's a waste to send the desktop manifest to mobile devices [22:31:05] later on, mobile might have quite a few, then it's a waste to send both mobile and desktop to both clients when few of them are actually meant for both targets [22:31:13] see the etherpad for details [22:31:37] I've described this solution about three or four times to various people including Roan Kattouw and Jon Robson [22:31:39] how about a hangout? [22:31:51] typing is slow [22:32:33] well - i'm sorta done typing [22:32:42] I'm pretty sure I answered the questions... [22:33:02] TrevorParscal, there's a discussion in etherpad ATM:) [22:33:12] i see [22:33:43] https://plus.google.com/hangouts/_/f729647e17b36f50d36c4876a153d5f59ff924bd# [22:34:06] TrevorParscal, awjr, brion, Krinkle, jdlrobson ^^ [22:34:15] Krinkle: can you discuss here plz? [22:34:22] etherpad !== message board [22:34:40] yeah [22:34:49] I can't do audio right now, sorry. [22:34:54] me either man [22:34:55] no worries [22:35:05] ok no worries [22:35:13] so we seem to have a fundamental disagreement between TrevorParscal and Krinkle on whether a 'target' parameter makes sense [22:35:19] is that correct? [22:35:19] i realize you have different views, but I don't think you are considering the points I made in this channel [22:35:27] seems so [22:35:35] awjr, oopsie [22:35:42] Krinkle is a smart guy, I'm sure he has a point - I just don't think he heard mine yet [22:35:45] no worries MaxSem [22:35:51] reading back now [22:35:58] no rush [22:36:43] TrevorParscal, Krinkle it sounds like it might be worth having an actual structured mtg to chat through some of this stuff - we're hoping to start work on this soon [22:37:01] I also think we should involve Roan [22:37:11] he's a co-author of RL too [22:37:11] that makes sense [22:37:28] yeah i tried hunting for him for this convo [22:37:45] bottom line - I trust Timo a lot, and Roan as well, but I don't want to see us sending manifests to mobile devices full of modules they can't make use of [22:37:57] One of the reasons I have trouble understanding the goal (or thinking it won't do what it promises) is that it isn't clear yet what the goals are. Is it cutting down of startup module or delivering of actual modules themselves? Or both? [22:37:59] my idea is based around preventing that [22:38:05] yeah and neither do we; payload size is seriously important for mobile [22:38:26] Krinkle, the target is a filter for cutting down the startup module [22:38:41] how big is the startup module with all the desktop stuff in production? [22:38:53] it's like saying "only tell these kinds of clients about this module" [22:39:03] max tested it the other day [22:39:07] non insignificant [22:39:39] also, cutting down the size of JS/CSS loaded [22:39:41] TrevorParscal: So what about user/site scripts, gadgets? Or what if something depends on something not "mobile" Or inline mw.loader.load/using calls? And will there be a fixed number of targets, or localsettings-overwritable (in which case things get problematic with cross-wiki) [22:40:17] MaxSem: But that isn't solved with target, that's solved by reducing number of addModules() calls and splitting up stylesheets into skinStyles if appropiate. [22:40:18] i'm seeing….. 6.3K of gzipped JS on the startup module on en.wikipedia.org [22:40:27] 28k uncompressed [22:40:32] If a SpecialPage outputs html and calls addModules(), it should load that module. Simple? [22:40:55] Except though, if it has a non javascript fallback [22:40:56] 6.3k is non-insignificant imo [22:41:00] Krinkle, that would mean that every addModules() caller should be aware of mobileness/destopness... not realistic [22:41:06] but do we mean moblile to be ajaxless? [22:41:10] Krinkle: problem is we don't really want things tied to skins, we want them tied to presence of UI features that they apply to [22:41:11] and it will get bigger over time as mobile starts to add more and more modules [22:41:15] MaxSem: Exactly, not the call, but the module. [22:41:38] Krinkle - targets don't have to be limited, they are like groups or any other arbitrary filter string [22:41:50] they just filter what's in the startup module manifest [22:41:51] simple [22:41:56] if that means the generated module is empty, nothing would be delivered I suppose. [22:42:16] brion: true, I prefer things to be skin specific, but that includes mobile. [22:42:22] not be* [22:43:08] TrevorParscal, Krinkle are you guys available to chat about this IRL tomorrow, perhaps ~1pm pacific? [22:43:10] skin-specific is a switch, not a filter - as in it decides which style or script to load, not if the module works on the skin or not [22:43:21] Can we address some practicle examples of modules that should not be mobile, or only mobile. And handle a few case by case? They could be examples that could be solved otherwise, but lets try? [22:43:24] I should be [22:43:34] awjr: IRL? [22:43:44] your calendars are open then [22:43:45] I'm not going to catch a plane :P [22:43:46] In real life [22:43:49] Timo will be getting sleepy by 1pm PST [22:43:55] TrevorParscal: hehe [22:44:05] and he will still be in .nl [22:44:23] perhpas we could do it over lunch and noon, or 1130-1230? [22:44:30] Roan's in a mtg til 1030 [22:44:44] TrevorParscal: do javascript modules dynamically add their own stylesheets or are the stylesheets served regardless? [22:45:06] (slightly off topic thing I've been wondering today) [22:45:27] which styles to load are decided on the server based on URL params like skin and lang [22:45:46] on the client, mw.loader handles loading them and adding them to the page [22:46:07] I discovered something scary today about desktop TrevorParscal - 244.86KB (74%) of CSS is not used [22:46:20] i believe it [22:46:36] some of that seems to be due to javascript modules that haven't been invoked [22:46:39] a lot could be done to improve that [22:46:43] a lot is just tumbleweed [22:46:49] note, (just incase that wasn't obvious) only styles from requested modules are added. They are inserted when the module is dynamically requested (not ahead of time for all modules) [22:46:55] TrevorParscal: yes in fact I'm hoping to have a blog post about that out tomorrow ;-) [22:47:23] Krinkle is right - Jon's diagnosis isn't quite ringing of truth [22:47:35] i'm sure a lot of the desktop bits are from mediawiki:common.css :) [22:47:48] agreed [22:47:50] being able to tie styles to templates could be e benefit there [22:48:12] eventually we'll probably want to include mw:common.css on mobile, but we'll want to….. prepare to refactor it first [22:48:16] brion: that's currently done on some wikis by using a 1 line wrapper module [22:48:21] \o/ nice [22:48:41] brion: .init js $ready selector.length mw.loader.load( .. .core ) [22:48:42] I was hoping to see MediaWiki:Common.css/action/edit.css MediaWiki:Common.css/action/history.css etc. become a common pattern and hook that into RL at some point [22:48:43] brion: this was part of the reason why we pushed for MediaWiki:Mobile.css - to allow us to encourage refactoring of stylesheets [22:48:53] TrevorParscal: that would be nice [22:49:01] a [22:49:08] excellent [22:49:37] brion: but that doesn't optimally make use of combing modules in one request though. Which is why I've recommended those wikis to have a central init module instead of one for each. Build an array and then call load [22:49:49] (which I believe they did) [22:49:49] *nod* [22:49:52] nice [22:49:52] ok, so Krinkle - can you talk about this stuff tomorrow afternoon PST? or will you be a sleepy boy? [22:49:58] TrevorParscal: I was thinking more about lesscss with ori-l as well and it seems like it would really benefit skins - I could imagine a skin just being a file containing mixins and variables - you should grab me to chat about that sometime when you are in the office [22:50:04] TrevorParscal: let me do the conversion, h/o [22:50:18] TrevorParscal: its past that time today, right ? [22:50:21] 3 hours ago? [22:50:26] yep [22:50:31] that should be fine (I'm here now) [22:50:47] ok cool [22:50:56] awjr: can you send out calendar invitations [22:50:59] and include Roan? [22:51:00] ok, im gonna set up a mtg for us to chat more about this tomorrow at 1pm pst with the goal of figuring out a clear way forward for us to begin implementing this stuff [22:51:02] yup [22:51:07] I'm nearly on PDT schedule (not quite) [22:51:10] I will do my best to get him there :) [22:51:16] hehehe [22:51:29] if you have all 3 RL devs you should be able to get a definitive direction [22:51:55] and then we'll have to live with it in peace :) [22:51:57] I like that [22:52:09] whatever comes out [22:52:21] for sure man [22:52:57] like I said - Timo and Roan are both very smart, whatever the 3 of us decide on will be fine with me [22:53:18] excellent. invites sent. [22:53:20] thanks guys [22:53:27] talk tomorrow [22:53:28] TrevorParscal: Don't cut yourself short, you're at least as smart. (I only hopped on when RL was half-done) [22:53:47] i read that quickly and read "you're at least half as smar" [22:54:02] hm.. [22:54:03] Krinkle well we pretty much hired you because you did most of the work converting legacy crap [22:54:04] lol [22:54:10] I didn't mean to say I wrote half of RL and they both a quarter [22:54:28] ok - anyways, i'm leaving this channel before my screen gets smaller and my mouse and keyboard dissapear [22:54:48] :D [22:55:07] phew ok, hopefully we'll have a clear path forward tomorrow :) [22:55:28] wheee [23:34:43] New patchset: Jdlrobson; "move all device specific stylesheets into their own folder" [mediawiki/extensions/MobileFrontend] (master) - https://gerrit.wikimedia.org/r/26723 [23:34:43] New patchset: Jdlrobson; "reorganise javascript and stylesheets" [mediawiki/extensions/MobileFrontend] (master) - https://gerrit.wikimedia.org/r/26724 [23:34:46] brion: ^ [23:34:55] this should probably be merged sooner rather than later [23:35:05] it looks scarier than it is [23:35:17] wheeee [23:35:41] Change merged: Brion VIBBER; [mediawiki/extensions/MobileFrontend] (master) - https://gerrit.wikimedia.org/r/26723 [23:36:19] Change merged: Brion VIBBER; [mediawiki/extensions/MobileFrontend] (master) - https://gerrit.wikimedia.org/r/26724 [23:44:16] jdlrobson, can i buy you lunch tomorrow and jabber at you about how editors are currently using watchlists? [23:44:19] :D [23:44:30] sure [23:44:40] and i'll tell you how you are doing it wrong [23:44:44] haha [23:44:53] i already know we're doing it wrong