16:06:26 RRSAgent has joined #webperf 16:06:26 logging to http://www.w3.org/2010/09/22-webperf-irc 16:06:54 meeting: Web Performance Working Group Teleconference 16:06:56 tonyg has joined #webperf 16:07:03 chair: "Arvind" 16:07:09 chair: "JasonWeber" 16:08:29 regrets: "Arvind" 16:08:32 regrets: "JasonWeber" 16:08:35 regrets: "plh" 16:09:48 agenda+ Follow-up on feedback on requestCount and uniqueDomains attributes. 16:10:01 agenda 16:10:36 list the agenda 16:11:28 agenda- 5 16:11:32 agenda- 6 16:11:45 agenda+ Follow-up on feedback on requestCount and uniqueDomains attributes. 16:12:16 agenda+ Follow-up on feedback on requestEnd and responseStart. 16:12:22 agenda+ The lifetime management of the navigation timing. What timing should be accessible at which phase of the document loading. 16:12:34 agenda+ Resource Timing scenarios. 16:12:46 agenda+ user timings scenarios 16:12:49 agenda+ F2F meeting updates / agenda 16:13:02 agenda+ Additional business 16:13:08 next agendum 16:13:51 Zhiheng: not sure if it is useful, I do not have a preference either way 16:14:20 NicJansma: thoughts about additional helper metrics for navigation timing? 16:14:43 Zhiheng: the value of the two attributes is marginal value 16:14:54 present: "SteveSouders" 16:14:58 present: "Tony" 16:15:23 SteveSouders: why not lump it in now, it makes sense to have it in navigation timing, it's a state not specific about any resources, it's a stat about the overall page 16:15:37 SteveSouders: if i take a step back, i would put these attributes in navigation timing 16:17:17 NicJansma: that was our original intention, to help describe why the page had been faster or slower, the feedback is JasonSobel feels it not useful, however not opposed. Nik Matsievsky from Webo mentioned he would value these attributes. 16:17:50 NicJansma: No privacy concern or security issue noted so far, may require additional deeper dive. Not expensive to implement. 16:18:17 Tony: Not opposed, does resource timing make this redundant. if we add it now, we'll make sure it's not redundant. 16:18:59 Zhiheng: I have the same concern with Tony. If the resource fetched from cache, is that counted as request, that may reduce the value of what we are looking for and the bottle neck on the page. we need to work on the details on these two metrics. 16:19:18 Tony: If we do indicate if its from the cache we have concerns of privacy information. 16:19:34 NicJansma: IE9 have number of all the resources. 16:20:13 AndersonQuach: the two metrics complement each other. 16:20:43 SteveSouders: the attribute is called requestCount, sounds like network access. if the attribute is about resources, we should call it resource count. 16:21:07 NicJansma: We cannot split out resource that came from network or via cache, it would need to be appropriately named resourceCount. 16:21:15 Tony: this never decrements. 16:21:33 NicJansma: anytime thru an xhr, or img source, or get an external resource we increment by one. 16:22:33 AndersonQuach: next step, Anderson will propose the recommended text for the navigation timing to the spec. 16:22:48 NicJansma: do we think this has high value? or questioning it? 16:23:31 Tony: if we have a flat list of resource timings, like resourceTiming.length, however if we decide that we cannot have a flat list in resource timing. then i think it is high value. it's important information to convey. i much rather count the length of the resources. 16:23:37 SteveSouders: good point. 16:23:46 Zhiheng: adding a counter to resource timing instead. 16:24:50 SteveSouders: as the page is loading we'll be adding things to the resource timing array, and incrementing a counter. it would be better just to add things on the array and get the length. i'll flip here, there's a chance that this attribute has decreased value, redundant with resource timing. there is a little bit of complexity slowing down getting navigation timing out. 16:25:11 SteveSouders: i'm fine with omitting resourceCount from navigation timing. 16:25:40 Zhiheng: in addition to what we have in resource timing, we can expose a counter to make it easy to get a resource count. 16:27:11 NicJansma: resourceCount / requestCount is a close fit to the length of ResourceTiming; what do you think about uniqueDomains, they can compute the # uniqueDomains on their own, it would be nice to provide that to them. is this something we can fit into navigation timing. 16:27:33 SteveSouders: recommend bundle them together and post-pone them until resource timing. 16:28:26 AndersonQuach: sounds like a plan, IE will update the RC to reflect the most stable version of the navigation timing 16:28:37 Tony: will we see window.performance or window.msPerformance 16:28:59 NicJansma: our goal is to have window.performance, as long as we get navigation timing to a stable point. 16:29:33 AndersonQuach: get to CR to drop the vendor prefix 16:29:46 Tony: what are the blockers? 16:30:09 NicJansma: major differences are uniqueDomains, requestCount, definition of requestEnd 16:31:30 AndersonQuach: work through the differences, stablize the interface and address the definitions in the spec to get the spec stable. 16:31:48 Tony: let's proceed without uniqueDomains and requestCount 16:31:59 Zhiheng: let's move requestCount and uniqueDomains to resource timing 16:32:03 NicJansma: sounds good 16:32:08 next agendum 16:32:26 Zhiheng: get as much information out of the timeline as much as possible. 16:33:03 Zhiheng: that seems like some problem in the implementation, do we need responseStart if the definition of requestEnd be the first byte of the server. 16:33:46 NicJansma: the thoughts in IE, having start and end defined, ease communication. it would be weird to have requestStart, requestEnd and responseEnd. 16:34:55 NicJansma: we have start and stop for everything else, we don't have a stop for fetchEnd or navigationEnd, other phases have very similar timestamps. the time for the end of domain name lookup is close / similar to establishing the connection. it does not add a lot of overhead in the browser. it does help communicate the overall picture. it will help the developer understand the navigation. 16:35:48 Tony: what are your thoughts on measures and marks in IE? 16:36:07 AndersonQuach: in IE we will either vendor prefix or drop them for RTW. 16:36:30 Tony: we are leaning the way not having measures, i can echo what Nic says, it's nice for the developers, it looks like a measure, but you have to do the subtraction. 16:36:46 NicJansma: you can layout the overall timeline with start-stop marks. 16:37:10 NicJansma: having the full timeline from the marks will make it more intuitive. 16:38:01 NicJansma: we added it to the IE9 platform preview for feedback, but we have not gotten a lot of feedback from the community about this interface. if we decided to keep the measures, it may take longer to get through the navigation timing spec. 16:38:20 NicJansma: we put it in because we thought it would be easy to use and useful for site developers. 16:38:31 SteveSouders: what's the definition to measures? 16:39:21 NicJansma: measures are the subtraction of the timing phases defined in the marks. e.g. dns measure is domainLookupEnd - domainLookupStart. easy to pack and easy to JSON.stringify 16:39:38 NicJansma: it only gives you the deltas of the phases not the full details of the utc timestamps. 16:40:08 Zhiheng: seems like can omit in the measures for now and add the responseStart 16:40:45 NicJansma: that's my thoughts 16:41:11 AndersonQuach: as long as we can get to a uniform definition that is interopable to get a stable spec. 16:42:05 Tony: i like easily packable, i don't like redundant information. this is a grey close call. if all the users want to JSON.stringify to send it home. at this point, i really want to get to requestEnd, if marks in general should look like measures. wondering if starts and end should match up. 16:42:52 NicJansma: as a best practice, provide a JSON library to pack up the timing measures that's in a tightly packed structure, we can provide this type of sample to the community, here's 20-30 lines of JScript that makes this JSON array in a measure in a defined order. 16:43:12 NicJansma: measure is redundant data. 16:43:50 Tony: Browser done its job to expose information that did not exist before, we do not yet what exactly is useful and we don't know what will be useful in the future. leaving measures up to the app is appealing to me. 16:44:07 NicJansma: we can always revisit measures in a future interface. 16:44:16 Zhiheng: we have an agreement here. 16:44:36 Tony: Are you okay with changing the definition of requestEnd == responseStart. 16:44:45 Zhiheng: if everyone agrees let's do it. 16:44:50 Tony: awesome. 16:45:03 NicJansma: we will work to get IE9 to get 100% conforming. 16:45:08 Tony: starting to feel real. 16:45:11 next agendum 16:45:37 Tony: not sure what you mean about that? if you get a reference to the frame, does the underlying object change? 16:48:01 NicJansma: good question, our testers pointed out. clicking a link and directs you to another page, the current page has the navigation timing object and initiating a new navigation. there is two navigation timing objects instantiated. in IE unload the last page only after we downloaded the new page, in the unload JavaScript even there is two navigation timings. the lifetime was not defined for the unload event. unload cannot pop-up dialog, cannot guar 16:48:18 Tony: they can make an img request 16:48:53 NicJansma: we do not make guarrantee packaging and transmission of navigation timing in unload, recommend to do it in onBeforeUnload. 16:49:02 NicJansma: get your feedback on the lifetime. 16:49:19 Tony: in unload the current page performance information is available. 16:49:31 Tony: it would be strange to expose information for subsequent page. 16:49:39 NicJansma: we don't want to do that's the wrong thing. 16:50:01 Tony: everything accessible in beforeunload is accessible in unload. that's the way i implemented the webkit version. 16:50:10 Tony: is that difficult in IE? 16:50:29 NicJansma: there are technical challenges, but not a driving factor to what we want it to be. 16:51:00 Tony: if developers should not be doing much in the unload handler, they will try to ping this information back in the unload handler. i expect web developers to expect this to work. 16:51:21 NicJansma: one option is to access denying object in unload event. 16:52:00 Tony: i don't know how big the technical objects. webkit, everything is ref counted. if it's really hard. i would not be opposed to exploring other options. however, it should be accessible. 16:52:19 Zhiheng: is there anything blocking to releasing the navigation object in unload. 16:52:53 NicJansma: currently in the IE9 beta, future timing is started to be exposed in unload event, this can be worked around. we wanted to define the lifetime. 16:53:21 Zhiheng: we should keep the current browsing context in unload before populating the target / next browsing context in unload. 16:54:18 AndersonQuach: need to provide a constraint that the timing is relevant for the current browsing context in all events 16:54:48 Zhiheng: if i have JScript getting the timing object in the unload, what timing object are we getting. 16:55:18 Tony: in the current page, webkit has two timing objects in unload. the target navigation's timing object is not accessible in the current page's unload. 16:56:08 Tony: look for any property in the window object, language or pattern to indicate properties of window object should have 16:56:13 Zhiheng: i'll check it out 16:56:22 AndersonQuach: sounds like a good plan 16:56:30 list the agenda 16:56:46 Zhiheng: good shape 16:56:54 Tony: we solved the first three we have consens 16:57:27 agenda 12 16:57:50 move to agendum 12 16:58:56 AndersonQuach: i'd like to propose review navigation timing, and review the intended reference implementation in IE9 and in Webkit, thoughts? 16:59:26 SteveSouders: those sound good to me. focusing on things that are better face to face than over email. 17:00:06 SteveSouders: we can work on examples, we may have a 30 line snippet for javascript, use the timing and becon it back. work on recommended sample snippets. may iterate faster live. add code samples. 17:00:12 AndersonQuach: agreed 17:00:26 Tony: great time to draw a straw man for the resource timing and user timing. 17:01:03 AndersonQuach: can use the time to dive deeper in ResourceTiming. 17:01:16 Zhiheng: let's bring up these issues in the face to face meeting. 17:01:33 NicJansma: do we want to tackle user timing in the f2f or the next conference call. 17:02:02 SteveSouders: let's talk about it on the conference call a little bit. i would add both of those tenatively to the agenda for the f2f. we should figure out which is more important. 17:02:12 NicJansma: sounds good let's talk about it next week's conference call. 17:02:33 Zhiheng: if we can come up with the initial draft of user timing before the face to face. 17:02:41 AndersonQuach: i'll sign up for that. 17:02:56 - +1.650.823.aaaa 17:02:56 move to agenda 13 17:02:59 - +1.650.214.aabb 17:03:02 -[Microsoft] 17:03:08 -Zhiheng 17:03:09 RWC_web-per(WPWG)12:00PM has ended 17:03:10 NicJansma: additional business? 17:03:11 Attendees were [Microsoft], Zhiheng, +1.650.823.aaaa, +1.650.214.aabb 17:03:17 Zhiheng: sounds good. 17:04:02 rrsagent, draft minutes 17:04:02 I have made the request to generate http://www.w3.org/2010/09/22-webperf-minutes.html AndersonQuach 17:04:42 rrsagent, format minutes 17:04:42 I have made the request to generate http://www.w3.org/2010/09/22-webperf-minutes.html AndersonQuach 17:04:52 rrsagent, generate minutes 17:04:52 I have made the request to generate http://www.w3.org/2010/09/22-webperf-minutes.html AndersonQuach 17:05:01 rrsagent, make minutes 17:05:01 I have made the request to generate http://www.w3.org/2010/09/22-webperf-minutes.html AndersonQuach 17:05:08 rrsagent, publish minutes 17:05:08 I have made the request to generate http://www.w3.org/2010/09/22-webperf-minutes.html AndersonQuach 17:05:27 NicJansma has left #webperf