IRC log of webperf on 2011-03-09

Timestamps are in UTC.

16:57:54 [RRSAgent]
RRSAgent has joined #webperf
16:57:54 [RRSAgent]
logging to
16:57:56 [trackbot]
RRSAgent, make logs world
16:57:57 [Zakim]
Zakim has joined #webperf
16:57:58 [trackbot]
Zakim, this will be
16:57:58 [Zakim]
I don't understand 'this will be', trackbot
16:57:59 [trackbot]
Meeting: Web Performance Working Group Teleconference
16:57:59 [trackbot]
Date: 09 March 2011
16:58:04 [plh]
zakim, list conferences?
16:58:08 [Zakim]
I don't understand your question, plh.
16:58:44 [plh]
zakim, list conference?
16:58:44 [Zakim]
I don't understand your question, plh.
16:58:47 [plh]
zakim, list conference
16:58:47 [Zakim]
I don't understand 'list conference', plh
16:58:48 [plh]
zakim, list conferences
16:58:49 [Zakim]
I see IA_XForms()11:00AM, Team_(PSIG)11:00AM, SW_RDFWG()11:00AM, WAI_PF()12:00PM, Team_(wai)15:30Z active
16:58:51 [Zakim]
also scheduled at this time are Style_CSS FP()12:00PM, VB_VBWG(SCXML)12:00PM, XML_XMLCore()11:30AM, RWC_web-per(WPWG)12:00PM, SW_HCLS(LODD)11:00AM, WAI_EOWG(BAD TF)11:00AM,
16:58:54 [Zakim]
... T&S_EGOV(UseWebTech)12:00PM, RWC_(EVENT)11:00AM
17:01:04 [Jatinder]
Jatinder has joined #webperf
17:01:09 [plh]
zakim, this is perf
17:01:10 [Zakim]
sorry, plh, I do not see a conference named 'perf' in progress or scheduled at this time
17:01:14 [tonyg]
tonyg has joined #webperf
17:01:30 [plh]
zakim, this is web-per
17:01:30 [Zakim]
ok, plh; that matches RWC_web-per(WPWG)12:00PM
17:02:26 [Jatinder]
rrsagent, set logs world-visible
17:02:37 [Jatinder]
Meeting: Web Perf WG
17:04:50 [zhiheng]
zhiheng has joined #webperf
17:05:26 [Jatinder]
Scribe+ Jatinder Mann
17:05:55 [Jatinder]
Present: Philippe Le Hegaret
17:06:02 [Jatinder]
Present: Arvind Jain
17:06:13 [Jatinder]
Present: Tonyg
17:06:14 [W]
W has joined #webperf
17:06:19 [Jatinder]
Present: Zhiheng
17:06:27 [Jatinder]
Present: Jatinder Mann
17:06:40 [Jatinder]
Present: Nic Jansma
17:06:48 [Jatinder]
Present: KarenAnd
17:07:11 [W]
W has left #webperf
17:08:45 [Jatinder]
Philip: Charter is on schedule.
17:09:13 [Jatinder]
Zhiheng: Do we have editors in place for all the specs?
17:09:27 [W]
W has joined #webperf
17:09:41 [AndersonQuach]
AndersonQuach has joined #webperf
17:09:49 [plh]
17:10:48 [Jatinder]
Zhiheng: We may want to organize another face to face meeting.
17:11:27 [Jatinder]
Arvind: Agree that we need a face to face to decide the format.
17:12:03 [Jatinder]
Anderson: That is a fantastic idea. Do one relatively soon, with video conferencing so Cameron can also join.
17:12:22 [Jatinder]
Anderson: We are definitely open to hosting the face to face in Redmond, since the last one we had was in Google.
17:12:49 [Jatinder]
Tony: There is a lot of forward momentum on these and we should discuss the high level overlaps before we get down too far.
17:13:05 [Jatinder]
Arvind: Let me take an action item to determine the location and time of the face to face meeting.
17:13:29 [Jatinder]
Philippe: Are we going to send email to the group? To kick off the discussion.
17:13:32 [Jatinder]
Arvind: Yes.
17:13:56 [Jatinder]
Philippe: In the email we should also ask if we want a new teleconference time.
17:14:26 [Jatinder]
Arvind: I will both send an email to decide the time for the face to face and determine the new teleconference time.
17:14:43 [Jatinder]
Arvind: I think sometime around 1pm PST would be good for teleconference time.
17:15:13 [Jatinder]
Arvind: That takes care of agenda #1.
17:15:50 [Jatinder]
Anderson: I will coordinate with Jason to organize the face to face
17:15:56 [Jatinder]
Move to agenda 2
17:16:12 [Jatinder]
Topic: Tests for Navigation Timing to review
17:16:51 [Jatinder]
Anderson: I will batch all the submissions up after this meeting and will move it over to the approved folder.
17:16:59 [Jatinder]
Anderson: Are there any additional tests?
17:18:40 [tonyg]
17:19:11 [Jatinder]
Nic: We're looking at it right now.
17:19:29 [Jatinder]
Anderson: Where does it throw access is denied?
17:20:32 [plh]
zakim, mute ??p3
17:20:32 [Zakim]
sorry, plh, I do not know which phone connection belongs to ??p3
17:20:37 [plh]
zakim, mute p3
17:20:37 [Zakim]
sorry, plh, I do not know which phone connection belongs to p3
17:20:46 [plh]
zakim, mute ??p3
17:20:46 [Zakim]
sorry, plh, I do not know which phone connection belongs to ??p3
17:22:17 [Jatinder]
Anderson: We will look at this after the call.
17:22:27 [Jatinder]
Anderson: Let's move on to Agenda 3.
17:22:56 [Jatinder]
Philippe: Regarding Navigation timing, I sent email asking about dependencies. Is there any clarification on that?
17:23:30 [Jatinder]
Anderson: From my knowledge, as long as we have a conforming IDL and we're also using the readystate from HTML document. Those are the only two that come to mind
17:24:03 [Jatinder]
Phillipe: For WebIDL, I'm not sure there is a solution.
17:24:15 [Jatinder]
Zhiheng: I don't see much problem on this one for now.
17:24:38 [Jatinder]
Anderson: So we're on track for the 11th to publish?
17:24:52 [Jatinder]
Phillipe: No. I will do my best to try to be on track.
17:25:22 [Jatinder]
Anderson: Let's get started with Resource Timing (Agenda 3)
17:25:28 [AndersonQuach_]
AndersonQuach_ has joined #webperf
17:25:37 [zhiheng]
17:25:55 [Jatinder]
Anderson: Please walk us through the deltas.
17:26:09 [Jatinder]
Zhiheng: One of the most important one is that we removed the resource timing connector.
17:26:55 [Jatinder]
Anderson: One thing we wanted to discuss, the behavior of enabled vs. disabled
17:27:06 [Jatinder]
Zhiheng: Those would go into the privacy issue.
17:27:26 [W]
W has left #webperf
17:27:36 [Jatinder]
Zhiheng: getResourceTimeByLocation - I think ByType would be more useful.
17:28:28 [Jatinder]
Anderson: The ability to access an element by all its different monikers. Elements on a page are not unique (multiple img elements with the same id). We wanted to come up with the most flexible way to access a resource.
17:28:50 [Jatinder]
Zhiheng: We can just edit to getResourceTimeByType.
17:29:05 [Jatinder]
Anderson: The diff looks good. Are we ready to discuss the details of the timing per element?
17:29:15 [Jatinder]
Zhiheng: I think for the interfaces we can start discussing them.
17:29:39 [Jatinder]
Anderson: The model we had discussed last time was safe by default.
17:30:25 [Jatinder]
Zhiheng: My main question is how do we cross domain as a control
17:30:31 [Jatinder]
Anderson: Still major issue to deal with.
17:30:52 [Jatinder]
Zhiheng: In terms of interfaces, do you have any suggestions or ideas?
17:31:00 [Jatinder]
Tony: I don't understand allowedDomains
17:32:15 [Jatinder]
Tony: Let's say a resource is used multiple times by the same or different elements - would there be multiple copies?
17:32:43 [Jatinder]
Nic: I would say it's unique for resource fetched from the network.
17:33:29 [Jatinder]
Zhiheng: In terms of the privacy, if we don't allow the cross-domain access, we only provide the start and ending timing. That is already available today.
17:33:41 [Jatinder]
Nic: We would be reporting resources from the cache.
17:33:55 [Jatinder]
Nic: How would that be exposed? For the first resource that asked for it?
17:34:28 [Jatinder]
Nic: Is it reported for each element or is it only reported once?
17:34:44 [Jatinder]
Zhiheng: The first one is from the network, the last one is from the cache.
17:34:51 [Jatinder]
Zhiheng: That's a good point though.
17:35:12 [Jatinder]
Nic: I think it can be kind of tricky. Browsers today if the same resources are used from the page, we don't go get it from the network.
17:35:32 [Jatinder]
Tony: If there is a 1x1 pixel gif. If I use it a 100 times on the page, do I have it a 100 times?
17:35:44 [Jatinder]
Karen: This is where getElementByID is useful.
17:36:05 [Jatinder]
Nic: In the list of all the things downloaded from the page would we show it multiple times?
17:36:13 [Jatinder]
Zhiheng: Thats what the current job is assuming.
17:37:01 [Jatinder]
Karen: Pretend like we have a 100 times and we are JSONing them all back, it becomes interesting to know how the DOM starts getting downloaded. Imagine parsers being different per user agents. Several variations.
17:37:30 [Jatinder]
Nic: Taking a step back, the goal for resource timing is to try to get something like the Network Inspectors. Do we agree that that is kind of the goal?
17:37:41 [Jatinder]
Tony: That is what I've had in mind here.
17:38:06 [Jatinder]
Nic: The browsers would not display the img element over and over again if it was displayed.
17:38:19 [Jatinder]
Nic: We should probably be more explict about which resources should be in the list.
17:39:08 [Jatinder]
Anderson: It's a valid question: the latency between fetching from the cache and displaying the retroactive waterfall display in the network inspector.
17:39:27 [Jatinder]
Anderson: It's interesting to consider how we would normalize cache access.
17:39:49 [Jatinder]
Zhiheng: If we consider each element a subdocument, I'm trying to make it consistent with the navigation timing.
17:40:12 [Jatinder]
Zhiheng: Like we found in navigation timing, it's not always possible to get the exact timing of the resource going to the wire.
17:40:50 [Jatinder]
Nic: As soon as we start exposing the fact that we get from the cache, we are exposing the user's browsing history.
17:41:05 [Jatinder]
Nic: We don'tw ant to make it easier for an attacker to determine which resources have already been loaded.
17:42:27 [Jatinder]
Anderson: We store the timings for only those that we have downloaded. This allows inline defining for images. If we start thinking about accessing resources locally, we would need to bring in the ability of accessing inline resources. That goes beyong what we had initialy thought about. That would reduce a lot of the traffic - minimize the noisyness of having using a resource 100 times.
17:42:47 [Jatinder]
Anderson: Simplicity, privacy, and consistency would be the goal.
17:42:57 [Jatinder]
Zhiheng: Not sure how this would add to the privacy concern here.
17:43:09 [Jatinder]
Zhiheng: Everything that can be done by this API can already be done by the webpage.
17:43:34 [Jatinder]
Nic: You are right in the fact that a page could determine this. One of the concerns could be to not explicitly expose we are getting this from the cache.
17:43:58 [Jatinder]
Nic: As long as expose the same level of granularity. It can be deduced that a resource was downloaded from the cache.
17:44:37 [Jatinder]
Nic: Goal would be to not give any higher precision whether something was in the cache or not. In the case of going to a page and looking at the resources, if anything is downloadable resource, we would put it in there.
17:45:11 [Jatinder]
Nic: Not sure how to precisely describe this in the spec.
17:45:53 [Jatinder]
Zhiheng: I understand. This kind of filtering may be confusing to the user.
17:46:45 [Jatinder]
Nic: In the case of 1x1 gif used a 100 times case, the browser would use a in memory cache to reuse this. I don't suggest that all several 100 be included in the cache, only the initial request?
17:47:29 [Jatinder]
Anderson: Tony, James, any comments on the approach that we capture timing for the downloadable? Anything that was in memory cache, we don't necessarily have timing information for.
17:47:51 [Jatinder]
Tony: The difference between the memory cache and the disk cache would be confusing for the user.
17:48:09 [Jatinder]
Tony: We should think about here is what the page downloaded rather than downloadable.
17:48:26 [Jatinder]
Anderson: Downloaded instead of downloadable?
17:48:59 [Jatinder]
Tony: Perhaps. Reduces confusion about memory and disk cache.
17:49:19 [Jatinder]
Nic: The worry here is that it gives higher precision to if resources weren't in the cache.
17:49:29 [Jatinder]
Tony: I forgot what the privacy concern was.
17:49:43 [Jatinder]
Nic: For example, you can build an attacker page that includes a bank logo.
17:49:54 [Jatinder]
Tony: We want to report anything that is cross origin.
17:51:02 [Jatinder]
Nic: We wouldn't be providing anything we just saying fetchStart and loadEnd. Not including it from the list would say for sure it was. Not sure how important this is.
17:51:05 [Jatinder]
Tony: I see, makes sense.
17:51:41 [Jatinder]
Zhiheng: Example is there is a page, and I want to see if the user has visited a bank page. I can still get that information. If I don't see the timing in the resource timing interface, I can assume that this is the cache.
17:51:50 [Jatinder]
Nic: Correct, if we didn't include things into the cache.
17:52:03 [Jatinder]
Zhiheng: They can still guess if a user ever visited a page.
17:52:43 [Jatinder]
Nic: They can get that today. There is a higher precision if we're saying that if its not cached, we'll put it in the cache. I know its not a huge difference, but its a stronger indication that its in the cache.
17:53:10 [Jatinder]
Zhiheng: If you posted a request but you don't see a timing in the buffer, you can see this also.
17:53:18 [Jatinder]
Anderson: Good point.
17:53:38 [Jatinder]
Tony: Maybe we should only expose timing for same origin.
17:54:04 [Jatinder]
Anderson: I know this is where Jason would step in and say he would like cross domain origin.
17:54:42 [Jatinder]
Tony: I think he's interested in the additional details.
17:55:16 [Jatinder]
Anderson: Certainly, adds more pressure for us to come up with a solution for cross domain access.
17:56:09 [Jatinder]
Karen: Even same origin, this issue is important. The tracking of a user's browsing history is important privacy concern. Say on a banking site, you put a resources for checking, saving account - one could deduce what kind of user is on the page. Now you're dealing with a tracking of a user.
17:56:24 [Jatinder]
Nic: If you own the domain, you own everything on it. You own the server technology.
17:56:50 [Jatinder]
Karen: You could theoritically do this through sessions, but now you know through the JSON session, you know it's one user.
17:57:16 [Jatinder]
Tony: Sounds like the big homework for this week will be figuring out when things should go into the event log.
17:57:23 [Jatinder]
Zhiheng: Yes, agree.
17:57:58 [Jatinder]
Anderson: Alright then, let's follow up with the various proposals of accessing resources and where we would log. The when and where question.
17:58:12 [Jatinder]
Anderson: Hard stop at 10?
17:58:19 [Jatinder]
Zhiheng: I can stay.
17:58:29 [Jatinder]
Arvind: I will leave.
17:58:38 [Jatinder]
regrets: Arvind
17:58:43 [Jatinder]
regret: Arvind
17:59:14 [Jatinder]
Anderson: Let's move to User Timing
17:59:15 [Jatinder]
17:59:29 [Jatinder]
Anderson: Some points I wanted to raise. Let's first go over deltas.
17:59:55 [Jatinder]
First set of changes was that the marks were added and three additional measure apis were added.
18:00:43 [Jatinder]
Anderson: One thing I wanted to note was that the difference between the user timing and resource timing, is that the marks/data is not generated by the UA, but rather developed by the developer.
18:00:46 [Jatinder]
Tony: Right.
18:01:10 [Jatinder]
Anderson: I should add that you can measure from a user agent mark. Like a navigation start.
18:01:15 [Jatinder]
Zhiheng: Sounds good.
18:01:35 [Jatinder]
Tony: We are getting kicked out from our room.
18:02:25 [Jatinder]
Zhiheng: Navigation start lives in a different namespace.
18:02:55 [Jatinder]
Anderson: If a UA supplied mark name, we recommend throwing an exception - make it read only and don't store the time stamp.
18:03:35 [Jatinder]
Anderson: How's the weather in mountain view?
18:04:07 [Jatinder]
Zhiheng: Great!
18:06:05 [tonyg]
The bridge won't let us back in... "the conference is restricted at this time"
18:07:04 [Jatinder]
Anderson: Let's adjourn.
18:07:36 [Jatinder]
Zhiheng: If you want another meeting this week, I'm open.
18:07:40 [tonyg]
Okay, we'll do some homework and talk to you next week
18:07:45 [Jatinder]
Anderson: I love progress!
18:10:33 [Jatinder]
set logs world-visible
18:11:00 [Jatinder]
rrsagent, set logs world-visible
18:11:17 [Jatinder]
rrsagent, generate minutes
18:11:17 [RRSAgent]
I have made the request to generate Jatinder
18:11:45 [Jatinder]
rrsagent, set logs world-visible
18:11:56 [Jatinder]
rrsagent, generate minutes
18:11:56 [RRSAgent]
I have made the request to generate Jatinder
18:17:38 [Jatinder]
Present+ Jatinder Mann
18:17:46 [Jatinder]
Present+ Nic Jansma
18:17:56 [Jatinder]
Present+ Anderson
18:19:00 [Jatinder]
Present+ Tonyg
18:47:13 [plh]
plh has left #webperf
19:04:33 [Zakim]
RWC_web-per(WPWG)12:00PM has ended
19:04:35 [Zakim]
Attendees were
19:19:34 [AndersonQuach]
rrsagent, generate minutes
19:19:34 [RRSAgent]
I have made the request to generate AndersonQuach
19:20:00 [AndersonQuach]
Regrets- Arvind
19:20:04 [AndersonQuach]
Present+ Arvind
19:20:08 [AndersonQuach]
chair+ Arvind
19:20:21 [AndersonQuach]
present+ JamesSimonsen
19:20:25 [AndersonQuach]
present+ JasonWeber
19:20:33 [AndersonQuach]
present+ plh
19:20:40 [AndersonQuach]
present+ Zhiheng
19:20:44 [AndersonQuach]
rrsagent, generate minutes
19:20:44 [RRSAgent]
I have made the request to generate AndersonQuach
19:21:36 [AndersonQuach]
19:21:46 [AndersonQuach]
rrsagent, generate minutes
19:21:46 [RRSAgent]
I have made the request to generate AndersonQuach
19:23:44 [Zakim]
Zakim has left #webperf
19:24:04 [Zakim]
Zakim has joined #webperf
19:46:07 [AndersonQuach]
present- Mann
19:46:12 [AndersonQuach]
rrsagent, generate minutes
19:46:12 [RRSAgent]
I have made the request to generate AndersonQuach
19:47:14 [AndersonQuach]
present- Jansma
19:47:35 [AndersonQuach]
rrsagent, generate minutes
19:47:35 [RRSAgent]
I have made the request to generate AndersonQuach
19:50:27 [Zakim]
Restarting in 2 minutes to recover bridge caller information. Please poke #sysreq if that is unacceptable to you
19:51:29 [Zakim]
Restarting bot only -- won't affect callers