[00:34:40] * TimStarling is playing with android+chrome remote debugging [00:35:14] turns out you can fairly easily get a network timeline from your actual phone [00:35:46] you can even add fake RTT and bandwidth limitations [00:37:24] it would be interesting to know whether anyone actually has an 840ms RTT [00:37:46] chrome's "Regular 2G" preset has only 300ms [00:49:12] TimStarling: you can do something like: select event_connectStart, event_connectEnd from NavigationTiming_13317958 where event_connectEnd - event_connectStart > 800 [00:49:39] on the research db [00:51:00] (analytics-store.eqiad.wmnet) [00:58:37] ori: nice [00:58:56] is the cookie set randomly as an A/B bucket for now? [00:59:52] no, it's not set at all. It's waiting on Tilman to come back with a mapping of GeoIP country/region to net speed profiles [01:00:49] Jon wants to do an A/B test, but I think it's a bit silly -- we don't need an A/B test to tell us that 770k is less than 1800k [01:01:02] I think comparing WPT runs is adequate in this case [01:01:37] here's a WPT run with the cookie set, btw: [01:01:38] http://www.webpagetest.org/result/151209_HZ_6P/ [01:01:57] you just need to go to the 'Script' tab and add something like: [01:01:58] setCookie https://en.m.wikipedia.org/ NetSpeed=B [01:01:58] navigate https://en.m.wikipedia.org/wiki/Barack_Obama [01:02:19] tgr: what do you think? [01:03:08] an A/B test could tell you if there is an impact on the 95% due to increased cache churn [01:03:20] otherwise not very useful, I agree [01:05:31] in other news, opting in to beta and/or disabling images no longer condemns you to cache misses [01:11:31] page rendering time completely kills any positive effects for me [01:12:11] I guess it will take some time until the varnish cache for NetSpeed=B is populated [01:14:05] but other than that it's a pretty impressive speedup even on my fast connection [01:14:21] and the quality reduction is not that bad [01:24:43] ori: re A/B, the way I understood Jon wants to make low-quality images default for everyone, corrected via JS on fast connections, and wants to A/B test the effect of that on fast connections [01:24:54] not sure the two of you are entirely on the same page :) [02:22:31] TimStarling: if you're doing any sort of analysis anyway, I'd love it if you checked the impact of NetSpeed=B cookie. Though remember that the maximum impact will only be visible if you compare runs on browsers that emulate a hidpi display. [02:22:57] my phone has a DPR of 1.5 [02:23:22] that works :) [02:23:23] is there a URL that sets the cookie? [02:23:51] no. I can rig one up quickly. [02:24:05] maybe I can set it via the remote debugging console anyway [02:24:12] you could add $.cookie( 'NetSpeed', 'B', { path: '/' } ) to your userjs [02:24:27] and yeah you can do it via the remote debugging protocol [02:24:57] addScriptToEvaluateOnLoad iirc [02:27:46] here you go: http://www.softwareishard.com/har/viewer/?inputUrl=http://tstarling.com/stuff/obama-regular-2g-nsb.harp [02:27:59] c.f. no cookie: http://www.softwareishard.com/har/viewer/?inputUrl=http://tstarling.com/stuff/obama-regular-2g.harp [02:28:25] this is with 2G emulation: 250 kbit/s, 300ms RTT [02:32:35] so not a factor of 4 reduced download, just a factor of 1.5 [02:33:32] ah, but those stats are after gzip decompression [02:34:56] right, and the HTML dominates [02:35:25] yeah, the HTML is much much smaller with compression, so it doesn't dominate so much [02:35:58] hmmhmm [02:36:12] I've got the compressed sizes now, it is a factor of 2 [02:37:02] It should really be the default, no? The special case ought to be high quality / srcset. [02:37:13] 1.2MB with NetSpeed=A, 626KB with NetSpeed=B [02:39:22] how noticeable is the reduction in image quality? [02:43:42] it's noticeable [02:44:54] especially if you zoom [02:45:18] I'm thinking about ways to show this on the desktop... [02:49:17] by default, linux sends tcp timestamps with each data segment, which are reflected back by the remote party on the ACK [02:49:34] it should be possible to calculate RTT that way [02:49:49] i wonder if userland code can get that [02:52:23] http://tstarling.com/stuff/nsb-effect.html [02:53:32] this compares the 330px high quality thumb with the 220px low quality thumb [02:53:45] which is what we're doing by not sending srcset and using qlow [02:54:28] I showed different zoom levels to give some idea of what happens when you pinch it [02:54:43] right [02:58:36] we could have additional NetSpeed grades -- maybe B only disables srcset, whereas C disables srcset and uses qlow [03:01:44] it's tricky, right? personal preference come into play here. most readers never personalize anything so the existence of a preference one could toggle is not a substitute for having a sensible default. [03:07:34] sure, could do, that's the nice thing about a cookie implementation I guess, it is easy to hack a UI on top of it [03:07:59] you know, people who actually have a legitimate concern about metering and speed are probably using opera mini [03:08:15] it is the most popular browser in a bunch of countries with slow internet [03:08:30] at least according to its wikipedia article [03:08:34] it has an image quality setting [03:12:50] by the way I added some notes to that comparison page [03:45:37] reading Akamai's "State of the Internet" [03:46:31] apparently in a lot of places, the mobile internet is as fast or faster than fixed line [03:46:46] as measured by page load times [03:46:57] for example in China, load times are about the same [03:47:51] in a lot of countries in latin america, mobile is faster [03:49:22] mexico, panama, bolivia, chile, colombia, peru, venezuela [07:00:32] Ideally, we wouldn't need a MobileFrontend extension at all for core to be able to provide decent mobile-formatted webpages. [07:00:35] Preach. [07:02:14] oh it's you [17:11:53] another example of why we should just build the things that legoktm gets excited about -- https://meta.wikimedia.org/wiki/2015_Community_Wishlist_Survey/Templates#Central_Global_Repository_for_Templates.2C_Lua_modules.2C_and_Gadgets [17:14:22] legoktm: would shadow namespaces enable this one too? -- https://meta.wikimedia.org/wiki/2015_Community_Wishlist_Survey/Talk_pages#Global_.28cross-wiki.29_user_talk_page [17:15:02] bd808: That one is built. It's called "flow". :-( [17:15:58] Oh? A flow board can be read and edited from multiple wikis? [17:17:05] Theoretically. It's never been used in practice, and no doubt there are bugs, but yeah, that was in fact one of the key features. [17:19:04] (Hmm, did that go through?) [17:24:49] Theoretically. It's never been used in practice, and no doubt there are bugs, but yeah, that was in fact one of the key features. [17:26:20] * bd808 sees James_F's reply but is trapped in meetings [17:52:13] bd808: theoretically shadow namespaces could do that one too, but Flow is supposed to handle that in a better way AIUI [19:32:44] AaronSchulz: re: your last on https://gerrit.wikimedia.org/r/#/c/257420/, i'm not sure i follow you there [19:34:46] AaronSchulz: are you saying that doing a POSTSEND deferred update sets a expectation of latency, lower latency, that won't be achievable later, when atomicity is implemented? [19:40:56] AaronSchulz: and if so, that we shouldn't accept lower latency now, when it won't be atomic either way? [22:00:06] RFC meeting starting now in #wikimedia-office regarding Graph/Graphoid/Kartographer [23:19:42] dapatrick: Did you get the link from Rachel? [23:19:58] csteipp: Yep. [23:52:41] TimStarling: I think JPEG quality of 'low' translates to a value of 1 (the range is 1..100) [23:52:44] that's a bit extreme [23:54:18] I haven't actually found where the mapping of 'low' to a numeric value happens; I reversed-engineered it by doing conversions myself and comparing the output file size to the qlow thumbnail [23:57:23] 30, I think [23:57:43] it's on line 132 of TransformationalImageHandler.php [23:58:45] oh, thanks. I missed that.