IRC log of w3cdev on 2009-11-05

Timestamps are in UTC.

21:49:16 [RRSAgent]
RRSAgent has joined #w3cdev
21:49:16 [RRSAgent]
logging to
21:49:24 [IanJ]
rrsagent, set logs public
21:50:18 [TabAtkins]
TabAtkins has joined #w3cdev
21:50:35 [caribou]
caribou has joined #w3cdev
21:50:40 [dom]
dom has joined #w3cdev
21:51:14 [dbaron]
dbaron has joined #w3cdev
21:52:33 [gerald]
gerald has joined #w3cdev
21:53:10 [smfr]
smfr has joined #w3cdev
21:53:22 [Tobias]
Tobias has joined #w3cdev
21:53:27 [mib_igkf72]
mib_igkf72 has joined #w3cdev
21:53:42 [darobin]
darobin has joined #w3cdev
21:54:02 [AnnB]
AnnB has joined #w3cdev
21:54:12 [darobin]
is this mostly for scribing or can we also make fools of ourselves?
21:54:23 [jun]
jun has joined #w3cdev
21:54:53 [timeless]
ScribeNick: timeless
21:54:55 [TabAtkins]
darobin: Do we need to choose one?
21:54:55 [timeless]
Scribe: timeless
21:55:00 [fantasai]
fantasai has joined #w3cdev
21:55:28 [timeless]
RRSAgent: make minutes
21:55:28 [RRSAgent]
I have made the request to generate timeless
21:56:01 [darobin]
TabAtkins: well, so long as we don't talk about unicorns
21:56:21 [soonho]
soonho has joined #w3cdev
21:57:00 [nathany]
nathany has joined #w3cdev
21:57:38 [nathany]
nathany has joined #w3cdev
21:57:52 [fantasai]
RRSAgent: make minutes
21:57:52 [RRSAgent]
I have made the request to generate fantasai
21:57:59 [Vagner-br]
Vagner-br has joined #w3cdev
21:59:14 [nathany]
nathany has joined #w3cdev
21:59:22 [annevk]
annevk has joined #w3cdev
21:59:59 [Arron]
Arron has joined #w3cdev
22:02:36 [IanJ]
22:03:28 [dom]
"it's 203" — as in "203 Non-Authoritative Information" ? :)
22:03:39 [timeless]
IanJ: Welcome everyone
22:03:43 [timeless]
... My name is Ian Jacobs
22:03:51 [timeless]
... welcome to the first developer meeting we've ever had
22:03:56 [timeless]
... we have a great lineup
22:04:01 [timeless]
... and i will get out of the web
22:04:05 [timeless]
22:04:15 [timeless]
... your names are up here, so just get up on time
22:04:27 [timeless]
... We have w3c groups and non w3c groups represented
22:04:35 [timeless]
... timeless has accepted to scribe
22:04:48 [timeless]
... the proceedings will all be public
22:04:58 [timeless]
Arun: My name's Arun for people who haven't met me personally
22:05:03 [timeless]
... I work for Mozilla on Firefox
22:05:07 [timeless]
... on evangelism
22:05:16 [krisk]
krisk has joined #w3cdev
22:05:16 [maxf]
maxf has joined #w3cdev
22:05:16 [timeless]
... A lot of what we do is reach out to developers
22:05:21 [timeless]
... to see what we should be doing
22:05:28 [timeless]
... How many people are web developers?
22:05:34 [timeless]
... that's the lion's share
22:05:44 [timeless]
... How many people are in the business of developing web applications?
22:05:48 [timeless]
... interesting a smaller number of hands
22:06:07 [timeless]
... Both as part of my work at mozilla and as someone who works on standards
22:06:16 [myakura]
myakura has joined #w3cdev
22:06:24 [timeless]
... I'm an author of a spec in W3C ... File API (?)
22:06:36 [smfr]
yes, File APIO
22:06:36 [timeless]
... I also work on a spec outside W3C WebGL
22:06:37 [smfr]
er, API
22:06:46 [timeless]
... We work in Web Apps WG
22:06:58 [timeless]
... You should be able to access databases on a client just as you can on a server
22:07:11 [timeless]
... Today you guys have come to the hallowed precincts of a sausage factory
22:07:19 [timeless]
... you're actively following a list-serve
22:07:26 [timeless]
... a lot of developers out there don't follow
22:07:36 [timeless]
... to them, they may be happy to take an API and run with it
22:07:49 [timeless]
... We'd like to get them more involved in standards
22:07:54 [marie]
marie has joined #w3cdev
22:08:06 [timeless]
... For examples, two browser vendors released browsers with a SQL API
22:08:20 [timeless]
... but two vendors: Mozilla and Microsoft indicated they don't want to do this
22:08:33 [timeless]
... We got feedback from developers indicating they didn't want a SQL API
22:08:42 [timeless]
... ... In html5 and web apps
22:08:49 [timeless]
... How many people recognize this movie?
22:08:56 [timeless]
[Back to the future Movie picture]
22:09:04 [timeless]
["Where we're going, we don't need roads"]
22:09:23 [timeless]
... I wanted to condense how standards work into one day
22:09:35 [timeless]
... In fact, there's a story on CNet referring to a date in 2012
22:09:51 [timeless]
... So I thought about last night how to condense this into a day
22:09:59 [timeless]
[Slide: Morning, Afternoon, Evening]
22:10:04 [timeless]
... Basic rules of thumb on Time
22:10:10 [timeless]
... Morning is the period that already passed
22:10:15 [timeless]
... Morning is a little while ago
22:10:27 [timeless]
... Features that are already available in browsers today
22:10:48 [timeless]
... The afternoon is things you can build on right now, but you may not be able to do that in a cross platform manner
22:11:09 [timeless]
... How many people do things for some platforms and worry about other browsers (esp IE6)
22:11:17 [timeless]
... The evening is stuff that has yet to come
22:11:22 [timeless]
... it holds in it the promise of a good night
22:11:31 [timeless]
... it holds in it the promise of things that are still being fleshed out
22:11:41 [timeless]
... it's a bit more than that, but it's not something that you can rely on in your bag of tricks
22:11:51 [timeless]
... The morning includes things like LocalStorage
22:12:04 [timeless]
... It's supported in IE8, Opera, Safari, Firefox 3.X (?)
22:12:11 [timeless]
... As for XMLHttpRequest
22:12:12 [AtticusLake]
AtticusLake has joined #w3cdev
22:12:23 [timeless]
... it's implemented in most browsers (?)
22:12:33 [timeless]
.. and XDomainRequest (in IE8)
22:12:48 [timeless]
... and they're implemented with the same security approach (?)
22:13:10 [timeless]
... And you can grab me and we can look at snippets of code where I can show you how you can do this in a cross browser manner
22:13:20 [timeless]
... postMessage is also available in IE8, Firefox, ...
22:13:24 [benjick]
benjick has joined #w3cdev
22:13:31 [timeless]
... CSS2.1 support, reasonably good, even in IE
22:13:39 [timeless]
... you can look to it for better support than before
22:13:41 [krisk]
22:13:50 [timeless]
s/in IE/in IE8/
22:13:56 [timeless]
... That's the morning
22:14:03 [timeless]
... The afternoon gets a little bit more interesting
22:14:13 [timeless]
... it introduces more things about the platform
22:14:20 [timeless]
... things aren't as mature
22:14:32 [timeless]
... supported in Firefox (25% of the market)
22:14:37 [timeless]
... Safari, and Chrome
22:14:45 [timeless]
[Slide: Afternoon]
22:14:49 [timeless]
... HTML5 Canvas
22:14:52 [timeless]
... HTML5 Video
22:14:57 [timeless]
... HTML5 Drag and Drop
22:15:00 [Tobias]
Is this slide online somewhere?
22:15:02 [timeless]
.... CSS WebFonts (...)
22:15:11 [timeless]
... and geolocation
22:15:18 [timeless]
[ Demo ]
22:15:29 [timeless]
... This demo brings together a lot of pieces of the platform
22:15:36 [timeless]
... it sorta does, but the color isn't so great
22:15:43 [timeless]
... I've got a colleague of mine
22:15:46 [Kangchan]
Kangchan has joined #w3cdev
22:15:57 [timeless]
... doing a fanning gesture between two iPhones
22:16:04 [mauro]
mauro has joined #w3cdev
22:16:06 [azunix]
azunix has joined #w3cdev
22:16:13 [timeless]
... if I click here, I've got a video supplanted between the two iPhones
22:16:32 [dom]
Hi Developepers!
22:16:34 [timeless]
... this only works if video is part of the browser, I can't do this with Flash
22:16:40 [timeless]
22:16:49 [IanJ]
demo dynamically injecting content into a canvas (within a video element)
22:16:58 [timeless]
... I can also embed a video inside the animation
22:17:06 [timeless]
... This works when video is a first class citizen of the web
22:17:10 [timeless]
... and this comes from html5
22:17:12 [IanJ]
Arun: You get this flexibility when video is a first-class citizen of hte web
22:17:14 [timeless]
... here's another demo
22:17:34 [JonathanJ]
JonathanJ has joined #w3cdev
22:17:44 [JonathanJ]
rrsagent, draft minutes
22:17:44 [RRSAgent]
I have made the request to generate JonathanJ
22:17:49 [timeless]
... The color isn't great
22:17:51 [timeless]
... [about the demo]
22:18:00 [timeless]
... the pixels of the video are dumped into a canvas
22:18:10 [timeless]
... i'm going to label extracted bits
22:18:19 [sof]
sof has joined #w3cdev
22:18:20 [timeless]
[names which people might not recognize]
22:18:39 [tantek]
tantek has joined #w3cdev
22:18:53 [timeless]
[ fwiw, this usually works better, but for some reason one of the pins on the cable seems to be doing strange things ]
22:19:49 [timeless]
[arun uses the demo to establish facial recognition]
22:20:12 [timeless]
... this demo uses localStorage
22:20:17 [timeless]
... because i switch between two urls
22:20:24 [JonathanJ]
22:20:49 [timeless]
... I have a lot of demos, please come visit me later
22:21:03 [dsr]
dsr has joined #w3cdev
22:21:03 [timeless]
... this is in the context of "the afternoon"
22:21:10 [timeless]
... I wanted to show you this demo
22:21:19 [timeless]
[IanJ: t-minus 10 minutes]
22:21:24 [dom]
[very impressive demon for video]
22:21:29 [timeless]
... I'm going to open font book, a handy dandy application on my mac
22:21:37 [dom]
22:21:44 [timeless]
... what i'm going to do now
22:21:51 [timeless]
... is show a bunch of technologies working together
22:21:55 [timeless]
... HTML5 Drag and Drop
22:22:00 [timeless]
... CSS Font Face
22:22:04 [timeless]
... HTML localStorage
22:22:12 [timeless]
... X (?)
22:22:20 [timeless]
... I'm going to drag a font onto the page
22:22:26 [timeless]
... and dropped it onto the page
22:22:38 [timeless]
... and the page restyled itself using the font
22:22:46 [timeless]
[drags a font onto the page]
22:23:02 [timeless]
[arun misses the drop target]
22:23:02 [JonathanJ]
22:23:14 [timeless]
... I'm going to drop in garamond
22:23:23 [timeless]
... now you can see the page has taken on a different look
22:23:28 [timeless]
... this is directly using localStorage
22:23:33 [timeless]
... to store the stuff that I dragged
22:23:44 [timeless]
... it's using the drag and drop api
22:23:54 [timeless]
... and it's using font-face to set the font
22:24:04 [timeless]
... and it's using contentEditable
22:24:11 [timeless]
s/X (?)/contentEditable/
22:24:20 [timeless]
... if i got to a page
22:24:26 [timeless]
... I can share my location
22:24:39 [timeless]
[ Arun shares our location ]
22:24:52 [timeless]
... this is the GeoLocation API introduced in Firefox 3.5
22:25:10 [timeless]
.... and I can drag my mouse over locations and see pictures from there
22:25:21 [timeless]
... this is flikr using pieces of an API that recently became a spec
22:25:26 [r12a-nb]
r12a-nb has joined #w3cdev
22:25:28 [timeless]
... and now... "Evening"
22:25:37 [timeless]
... We're looking at pushing the hardware
22:25:43 [brutzman]
brutzman has joined #w3cdev
22:25:45 [timeless]
... we're discussing storage
22:25:52 [timeless]
... and orientation events (angles)
22:25:58 [timeless]
... multitouch
22:26:14 [timeless]
[Arun holds up an n900 proto]
22:26:22 [timeless]
... Firefox Mobile will ship for this device
22:26:34 [timeless]
[Arun demos playing a game by tilting his macbook pro]
22:26:47 [timeless]
... this is a pretty popular go-kart game
22:27:12 [timeless]
[ demos an expanding red panda but tilting his laptop]
22:27:19 [timeless]
... this is stuff we'd like to do in the evening
22:27:24 [timeless]
... pending discussion with other folks
22:27:36 [timeless]
... this is stuff in the evening, the promise of a tomorrow, or a tomorrow morning
22:27:49 [timeless]
... and of course there's 3d graphics
22:27:52 [timeless]
... 3d graphics are extensions of the html5 canvas element
22:28:00 [timeless]
... and exposes a new way to do hardware accelerated 3d graphics
22:28:13 [Kangchan]
Kangchan has joined #w3cdev
22:28:13 [timeless]
... these are the things i'm talking about from the promise of an evening
22:28:26 [timeless]
Van Ryper (Krillion):
22:28:40 [timeless]
... I've heard a lot about the web3d consortium
22:28:49 [timeless]
Arun: the deliverable of web3d (x3d)
22:28:58 [timeless]
... is an interchange format that represents 3d graphics
22:29:06 [timeless]
... it's the ability for javascript to parse such graphics
22:29:15 [timeless]
... and use webGL to expose those graphics
22:29:21 [timeless]
Robin: and someone's done that
22:29:27 [timeless]
Arun: X3D OM
22:29:42 [timeless]
... The promise of today is that javascript's performance have improved so much
22:29:58 [timeless]
IanJ: so... Don Bredsman a chance to speak
22:30:11 [timeless]
DonB: We'll be showing this tomorrow morning at X-oclock
22:30:25 [smfr]
22:30:32 [caribou]
22:30:34 [darobin]
22:30:37 [timeless]
Tom Strobers (user):
22:30:44 [timeless]
... Java - JavaScript ?
22:30:52 [krisk] the HTML5 WG Meeting
22:30:52 [timeless]
Arun: that's an interesting question
22:31:01 [timeless]
... and i'll speak in a continum
22:31:11 [timeless]
... java has historically been used as a technology that can be used anywhere
22:31:16 [timeless]
... and so in fact can javascript
22:31:22 [timeless]
... javascript as it now runs in browsers
22:31:38 [timeless]
... and browsers run on mobile devices
22:31:46 [sof]
sof has left #w3cdev
22:31:51 [timeless]
Fantasai: JavaScript and Java has no relation
22:31:58 [timeless]
... JavaScript runs natively in the browser
22:32:11 [timeless]
... whereas java runs separetly
22:32:28 [timeless]
22:32:38 [timeless]
Arun: JavaScript is the defacto language of the web
22:32:53 [timeless]
IanJ: I'll see if we can talk about moving things into programming languages and out of declarative languages
22:32:57 [timeless]
... I want to keep things moving
22:33:06 [timeless]
... we have a lot of interesting speakers
22:33:10 [timeless]
... we have 3 bottles of wine
22:33:26 [timeless]
... You can use a business card, or just a piece of paper
22:33:34 [timeless]
... thank you Arun
22:33:41 [timeless]
... fantasai come up
22:33:53 [timeless]
fantasai: I'm an invited expert of the CSS WG
22:34:05 [timeless]
... I've brought along a number of people from the CSS WG with exciting demos
22:34:24 [timeless]
... first speaker is David Baron
22:34:37 [timeless]
... he writes specs, makes interesting comments, ...
22:34:40 [timeless]
[ laughter ]
22:34:55 [timeless]
dbaron: ...
22:35:08 [timeless]
... there've been a lot of demos of css stuff floating around lately
22:35:20 [timeless]
... i've wanted to demo a few features that are not the ones that get the most press
22:35:29 [timeless]
... the stuff that people demo are these new visual effects
22:35:39 [timeless]
... shadows, columns, rounded corners, transforms
22:35:43 [timeless]
... one of them is border image
22:35:55 [timeless]
... the ability to take an image and then logically that image gets split up into 9 pieces
22:36:07 [timeless]
... and then you can use those slices to form the border of something else
22:36:14 [timeless]
22:36:24 [timeless]
... and this will now resize as i resize the window
22:36:31 [timeless]
... another feature that's been in specs for almost 10 years
22:36:38 [timeless]
... but that hasn't been implemented until recently
22:36:41 [timeless]
... is font-size-adjust
22:36:50 [timeless]
... it lets you get better font behavior
22:37:00 [AtticusLake]
AtticusLake has left #w3cdev
22:37:03 [timeless]
... one of the problems is that font size is whatever the font designer wants it to mean
22:37:08 [IanJ]
rrsagent, make minutes
22:37:08 [RRSAgent]
I have made the request to generate IanJ
22:37:10 [timeless]
... what font-size-adjust lets you do
22:37:25 [timeless]
... is that instead of letting font size do what it does
22:37:51 [timeless]
... font-size-adjust lets you operate on the x height
22:38:01 [timeless]
[ demo of font-size-adjust ]
22:38:12 [timeless]
... another feature that's now pretty widely implemented
22:38:16 [timeless]
... Mozilla, WebKit, and Opera
22:38:20 [timeless]
... are CSS Media Queries
22:38:29 [timeless]
... which let you change the style of the web page
22:38:37 [timeless]
... based on characteristics of the thing that's displaying it to you
22:38:51 [timeless]
... so you can change the page based on, e.g. the width of the window
22:39:11 [timeless]
... e.g. you can specify something that only operates for windows >22em's wide
22:39:22 [timeless]
... the final thing, is a feature that I think is only implemented in Mozilla
22:39:43 [timeless]
... many designers have struggled with css using intrinsic widths in basic ways
22:39:52 [timeless]
... there's the longest word of the line
22:39:57 [timeless]
... and (??)
22:40:07 [timeless]
... so you can say the width is the min-content-width
22:40:13 [timeless]
... or the width is the mac-content-width
22:40:19 [timeless]
... or that it fits the container
22:40:24 [timeless]
... which is the same algorithm used for tables
22:40:34 [timeless]
fantasai: we'll have a couple of questions after each talk
22:40:40 [timeless]
dbaron: questions now...
22:40:47 [timeless]
22:40:54 [timeless]
... how pervasive are things
22:41:11 [timeless]
dbaron: most of these that i've demo'd are supported in Firefox, Opera and Safari, but not IE
22:41:24 [IanJ] suggested
22:41:26 [timeless]
VanR: ... meta question, is there a way to see supported list
22:41:33 [timeless]
Tab Atkins:
22:41:42 [timeless]
... quirksmode ... and ...
22:41:47 [mauro]
mauro has left #w3cdev
22:41:50 [cappert]
cappert has joined #w3cdev
22:41:52 [timeless]
22:41:58 [timeless]
22:42:03 [timeless]
... status of a test suite?
22:42:04 [IanJ]
22:42:13 [timeless]
fantasai: we're working on it
22:42:19 [timeless]
... next speaker is Tab Atkins
22:42:22 [timeless]
22:42:33 [timeless]
... i just got brought in based on my work on the gradient spec for CSS3
22:42:44 [caribou]
22:42:46 [timeless]
... I'm going to take this opportunity to go over how spec work is done
22:43:04 [timeless]
... because page designers often wonder how to get things added
22:43:06 [timeless]
... steps:
22:43:16 [timeless]
... look at the problem and figure out what the actual problem is
22:43:17 [dbaron]
my slides were at
22:43:29 [timeless]
... and then there's a mailing list
22:43:35 [timeless]
... it's a public list
22:43:43 [timeless]
... I have an example
22:43:43 [Tobias]
thanks dbaron
22:43:45 [timeless]
... gradients
22:43:57 [timeless]
... Safari introduced experimental support for css gradients in 2008
22:44:04 [timeless]
... I don't know if these will work in Chrome
22:44:12 [timeless]
... that's ok... I have other things that will work
22:44:27 [timeless]
... We kick things around on the mailing list
22:44:35 [timeless]
... later Mozilla created something similar
22:44:38 [smfr]
TabAtkins was showing:
22:44:45 [timeless]
... they said that they didn't like the way it was done
22:44:58 [benjick]
IE have had CSS gradients for ever!
22:44:59 [timeless]
... each vendor uses its own prefix (-webkit-, -moz-)
22:45:01 [smfr]
now showing:
22:45:07 [timeless]
... not the bad old browser wars
22:45:28 [timeless]
... gradients can be done in CSS, performantly
22:45:36 [timeless]
... without the network bandwidth
22:45:46 [timeless]
... the problem with gradients, was the syntax
22:45:52 [timeless]
... we kicked it around on the mailinglist
22:46:00 [timeless]
... it's all public, you can read it on the mailinglist
22:46:07 [timeless]
... what it ended up with was a proposal by me
22:46:14 [Arron]
www-style archive :
22:46:14 [timeless]
... i just proposed it on the list
22:46:22 [timeless]
... it grew out of discussions with people
22:46:30 [smfr]
Current proposal:
22:46:30 [timeless]
... talking about what people were trying to do
22:46:41 [timeless]
[shows the detailed description of the proposal ?]
22:46:50 [timeless]
... these are based on the firefox implementation
22:46:55 [timeless]
... this is a Minefield build of Firefox
22:46:58 [timeless]
... it's now in the nightlies
22:47:07 [timeless]
dbaron: it will be in Firefox 3.6
22:47:12 [timeless]
... as of a few hours ago
22:47:23 [timeless]
TabA: so 3.6 will have the new syntax
22:47:31 [timeless]
... so you can do things like you want to do
22:47:49 [timeless]
[ demos creating _beautiful_ gradients ]
22:47:55 [timeless]
... this is directly using the syntax
22:48:03 [smfr]
TabAtkins is testing with
22:48:05 [timeless]
... i'm just using js to set the background
22:48:23 [timeless]
Robin: ... do you have demos?
22:48:30 [timeless]
TabA: it's an open problem
22:48:37 [timeless]
... it shows the evolution of an idea
22:48:41 [darobin]
s/do you have demos/do you have demos where it's animated/
22:48:42 [timeless]
... from someone identifying a problem
22:48:45 [timeless]
... to implementations
22:48:56 [timeless]
... to implementations(?) on the style list
22:49:10 [timeless]
... to proposals(?)
22:49:32 [timeless]
... so if you have a problem
22:49:36 [timeless]
... you tell us about i
22:49:40 [timeless]
22:49:50 [timeless]
... we kick it around
22:49:54 [mcf]
mcf has joined #w3cdev
22:49:56 [timeless]
... or we decide to put it off until later
22:50:02 [timeless]
... browser developers are not always page authors
22:50:14 [timeless]
fantasai: coming to a browser near you
22:50:18 [timeless]
... next up, Simon Fraser
22:50:26 [timeless]
... giving a demo of transforms and transitions
22:50:36 [timeless]
... these are new drafts that are coming up
22:50:48 [timeless]
... Simon works for Apple on WebKit, and used to work for Mozilla
22:50:55 [timeless]
Simon= smfr
22:51:00 [timeless]
smfr: so...
22:51:05 [TabAtkins]
darobin, I failed!
22:51:07 [timeless]
... with transitions and transforms
22:51:23 [timeless]
... this is some content that we put together using assets from a band called willco (?)
22:51:32 [timeless]
... as I hover over things on the left
22:51:40 [timeless]
... you see transitions
22:51:47 [timeless]
[ shows the basic bits ]
22:51:56 [timeless]
... we've got a standard color
22:52:05 [timeless]
... and the nice red color?
22:52:10 [timeless]
... using completion in textmate
22:52:17 [timeless]
... let's put a transition right here
22:52:22 [timeless]
... over one second
22:52:29 [timeless]
... so now when i go back to the page
22:52:40 [timeless]
... you can see the transition
22:52:52 [timeless]
... transitions take a comma separated list
22:53:12 [timeless]
... another thing that dbaron mentioned was transforms
22:53:19 [timeless]
... so let's put a hover on the transform
22:53:30 [timeless]
... a precanned rotate of say X degrees
22:53:39 [timeless]
... and now let's make this nice and smooth
22:53:45 [timeless]
... so let's say ... .5
22:53:48 [timeless]
22:53:56 [timeless]
... you can use milliseconds too
22:54:05 [timeless]
... so let's go back to our original page
22:54:08 [timeless]
... but this slideshow
22:54:18 [timeless]
... you can have crossfades
22:54:24 [timeless]
... we can use a translate
22:54:29 [timeless]
... and vertical scales
22:54:37 [timeless]
... that's a keyframe animation
22:54:42 [timeless]
... it's a little bit more complex
22:54:51 [timeless]
... they're not as advanced as transitions
22:54:56 [timeless]
... we can do a spin
22:55:04 [timeless]
... we're also proposing a 3d transform
22:55:18 [timeless]
... we're rotating around the vertical axis with some perspective
22:55:29 [timeless]
IanJ: so are all the images there?
22:55:42 [timeless]
smfr: yes, it's all there, it's just css classes tweaking
22:55:52 [timeless]
Dan (HP):
22:56:03 [timeless]
... we've got all these transforms that we can use on a page
22:56:06 [timeless]
... we've also got canvas
22:56:12 [timeless]
... why should you use one or the other
22:56:27 [timeless]
smfr: with canvas, you draw and then don't know what's there
22:56:41 [AtticusLake]
AtticusLake has joined #w3cdev
22:56:42 [timeless]
... with transforms, you aren't making the content more opaque
22:56:45 [timeless]
... you still have links
22:56:56 [timeless]
... we've also got examples of applying 3d to slices of a page
22:57:07 [timeless]
... and revealing things from the page
22:57:22 [timeless]
... and we can hover over here and see hit testing still works
22:57:36 [AtticusLake]
AtticusLake has left #w3cdev
22:57:49 [timeless]
... all done with css transforms
22:57:53 [timeless]
... we've done this inside apple
22:58:00 [timeless]
... this demo was done by charles ying (?)
22:58:03 [timeless]
... outside apple
22:58:12 [timeless]
... it uses flikr to fetch images as a wall
22:58:21 [timeless]
... hold keys down, move backwards and forwards
22:58:43 [timeless]
[ wiring glitch, we dimmed another room ]
22:58:52 [timeless]
... thanks
22:58:56 [timeless]
fantasai: so that's our three speakers
22:59:01 [timeless]
... we also have people from Microsoft here
22:59:10 [timeless]
... we've got a bunch of members from the CSS WG
22:59:18 [timeless]
Bernard Ling (?):
22:59:26 [timeless]
... when does it appear in ie6? [just kidding]
22:59:41 [timeless]
dbaron: Mozilla has 2d transforms in FF3.5
22:59:49 [timeless]
... transitions will be in FF3.7
23:00:03 [timeless]
smfr: 2d transforms should be identical in behavior
23:00:19 [timeless]
dbaron: 3d would be after 3.7
23:00:28 [dbaron]
if we did it
23:00:29 [timeless]
IanJ: how to tell css wg your idea's
23:00:35 [timeless]
23:00:37 [ademoissac]
ademoissac has joined #w3cdev
23:00:52 [timeless]
xx-? :
23:01:04 [timeless]
... is there any work being done on opacity across browsers
23:01:13 [timeless]
23:01:16 [dbaron]
23:01:21 [timeless]
... currently it's available through filters
23:01:31 [timeless]
... it's a proprietary property
23:01:39 [timeless]
... we can sit down and i can try to help you with it
23:01:43 [timeless]
... moving forward in the future
23:01:50 [timeless]
... we can see about looking to expand
23:02:04 [timeless]
fantasai: css3 color is a CR
23:02:09 [timeless]
... there's an opacity property
23:02:18 [timeless]
... I believe WebKit, Gecko and Opera
23:02:27 [timeless]
IanJ: ok...
23:02:38 [timeless]
RRSAgent: make minutes
23:02:38 [RRSAgent]
I have made the request to generate timeless
23:03:13 [fantasai]
Thanks everyone, your talks were amazing! :)
23:03:23 [dom]
very impressive, indeed
23:03:35 [timeless]
Next Speaker: Philippe Le Hégaret (W3C)
23:03:46 [timeless]
IanJ: Philippe has worked on building a test suite
23:03:56 [timeless]
Philippe: let's talk about something embarassing
23:03:58 [timeless]
... testing at w3c
23:04:08 [timeless]
... i'm responsible for [long list of wg's]
23:04:15 [AtticusLake]
AtticusLake has joined #w3cdev
23:04:19 [timeless]
... one of my plans is how do we test all that
23:04:28 [timeless]
... talking about testing at w3c
23:04:30 [AtticusLake]
AtticusLake has left #w3cdev
23:04:34 [smfr]
smfr has joined #w3cdev
23:04:39 [timeless]
... we already have plenty of test suites at w3c
23:04:51 [timeless]
... css1, ... dom event 2, css2.1, ...
23:05:04 [timeless]
... why do we have those test suites?
23:05:07 [dom]
23:05:15 [timeless]
... one of those reasons is that in 1999 in the DOM working group
23:05:30 [timeless]
... we came up with this phase called Candidate Recommendation (CR)
23:05:44 [timeless]
... "we think we're done", but now we want to prove that we're actually done
23:05:50 [timeless]
... this came out of the DOM WG
23:06:02 [timeless]
... to come out of the phase
23:06:14 [timeless]
... the WG _should_ come out with two implementations of each feature
23:06:20 [karl] we need to brush up the matrix
23:06:26 [timeless]
... it's a negotiation with the [TBL role]
23:06:49 [timeless]
... what working groups tend to do
23:07:00 [timeless]
... is just demonstrate that each feature has been implemented
23:07:07 [timeless]
... do they actually do this?
23:07:13 [timeless]
... no, they don't have enough resources
23:07:20 [timeless]
... and no one really wants to write tests
23:07:29 [timeless]
... but do we get interoperability on the web?
23:07:34 [timeless]
... and i would argue no
23:07:37 [dom]
karl, I actually updated it (somewhat) a few weeks ago
23:07:48 [timeless]
... how can we make the web a better place?
23:07:51 [timeless]
... w3c has limited resources
23:07:53 [timeless]
... yes we have microsoft
23:07:58 [timeless]
... but we have limited amount of time
23:08:07 [timeless]
... limited amount of budget, for product teams as well
23:08:08 [plinss]
plinss has joined #w3cdev
23:08:14 [timeless]
... so what we really want is the community to help us
23:08:18 [timeless]
... tell us what works
23:08:22 [timeless]
... you run into problems all the time
23:08:25 [timeless]
... tell us about it
23:08:31 [timeless]
... can you please submit a test about it?
23:08:41 [timeless]
... what i'd like to see is the community help us
23:08:46 [timeless]
... let's make it a bit harder
23:09:06 [timeless]
[ slide: svg, mathml, video, ...]
23:09:44 [timeless]
... I can manipulate the DOM tree
23:09:46 [karl]
dom, excellent
23:09:54 [timeless]
s/dom, excellent//
23:10:14 [timeless]
... if i want to play a video, i just click a button which is just a thing with css style on it
23:10:19 [timeless]
... and it will work
23:10:24 [timeless]
... but who is going to test all this?
23:10:44 [timeless]
... while we have produced some test suites
23:11:00 [timeless]
... we haven't produced combinations of specs
23:11:04 [timeless]
... css+svg+ ...
23:11:11 [timeless]
... so how do we test that?
23:11:19 [timeless]
... first we need to test the parsers
23:11:47 [timeless]
... we need to guarantee that the document you're righting will generate one single DOM
23:11:52 [fantasai]
23:12:04 [timeless]
... how do we test dynamic scripting
23:12:09 [timeless]
... if i want to test a css animation
23:12:17 [timeless]
... how do i test it if it's 3 seconds
23:12:26 [timeless]
... i don't want to test just the first frame and the last frame
23:12:35 [timeless]
... we need to understand that there are limitations
23:12:42 [timeless]
... it's impossible to test everything
23:12:48 [timeless]
... and we have to acknowledge that
23:12:53 [timeless]
... but at the same time
23:12:58 [timeless]
... we need to do something
23:13:02 [timeless]
... the most common thing
23:13:09 [timeless]
... is a test that requires a human
23:13:20 [timeless]
... a "self describing test"
23:13:31 [timeless]
... [ pass with green, fail with red ]
23:13:38 [timeless]
... we can also test plain text output
23:13:42 [timeless]
... we can compare screen shots
23:13:48 [timeless]
... if you have for example in svg
23:13:54 [timeless]
... we know exactly what the output should be
23:14:03 [timeless]
... if you have a rectangle, we know what it should be
23:14:12 [timeless]
... we can take a screen capture
23:14:14 [mcf]
mcf has joined #w3cdev
23:14:18 [timeless]
... with fonts, it's different
23:14:22 [timeless]
... what dbaron did
23:14:31 [timeless]
... is that instead of trying to write tests
23:14:43 [timeless]
... is how about we write two pages that should have the same rendering
23:14:48 [timeless]
... using different features
23:14:52 [timeless]
... that's called reftests
23:15:06 [timeless]
... the advantage is that it can be cross platform/browser
23:15:10 [fantasai]
s/write tests/ write tests to match a static image/
23:15:17 [timeless]
... with webkit, you can
23:15:29 [fantasai]
ScribeNick: fantasai
23:15:30 [timeless]
... do a dump of a dom tree
23:15:41 [IanJ]
rrsagent, make minutes
23:15:41 [RRSAgent]
I have made the request to generate IanJ
23:15:43 [fantasai]
... and there are probably other ways that I'm not aware of.
23:15:44 [dom]
-> Webkit DumpRenderTree, an example of layout tree comparison
23:15:54 [fantasai]
... one of the things I've been tryin got push inside the consortium is to have a browser testing framework
23:16:08 [fantasai]
... that other groups can use. They can choose a method to test their specification.
23:16:14 [fantasai]
... we want to make this as automatic as possible.
23:16:18 [fantasai]
... we need to produce a lot of tests.
23:16:32 [fantasai]
... e.g. Microsoft submitted 7000 tests that were all self-describing tests
23:16:36 [fantasai]
... that is not scalable
23:16:43 [fantasai]
... it takes a long time to go through those tests
23:16:46 [cappert]
cappert has joined #w3cdev
23:17:00 [fantasai]
... because of our limited resources, we need to produce a mechanism to help our working groups
23:17:12 [fantasai]
... if they are reviewing tests, they are not writing specs
23:17:20 [fantasai]
... they should just be able to focus on controversial tests
23:17:33 [fantasai]
... if others can submit a test, then we can look if there's a problem
23:17:43 [fantasai]
... we can also see if its a bug in the browser, and they have to change their impl
23:17:59 [fantasai]
... We also have to be careful here, because if the tests are wrong we get interop on the wrong behavior!
23:18:26 [fantasai]
... We need to have testing for all these technologys, not just one of them, or each separately
23:18:30 [fantasai]
... but all of them togethers
23:18:44 [fantasai]
... with HTML5 normatively integrating with SVG and MathML, we need to test them together, not just each on the side.
23:18:47 [midnaz]
midnaz has joined #w3cdev
23:18:51 [fantasai]
... We need to be able to test HTML inside SVG
23:19:00 [smfr]
and SVG inside HTML inside SVG
23:19:01 [fantasai]
... As I said there are multiple ways to test a browser, and we should allow more than one
23:19:19 [fantasai]
... The browser implementors are not going to rewrite all their tests for us
23:19:35 [fantasai]
... but agree on some common formats so that we can all share tests
23:19:51 [fantasai]
... We also need to have a life after the Recommendation stage
23:20:02 [fantasai]
... the specs still exist after Rec, and we need to continue testing them
23:20:13 [fantasai]
... I don't want W3C to run that test suite. We don't have the resources.
23:20:24 [fantasai]
... We can't buy 100 servers and run tests on every possible version of everybrowser
23:20:37 [timeless]
s/everybrowser/every browser/
23:20:38 [LeslieB]
LeslieB has joined #w3cdev
23:20:41 [fantasai]
... So we want to allow others to run the tests. To run screen shots on their own computer
23:20:57 [fantasai]
... THere are some difficulties. E.g. I don't know how to take a screen shot by script on all the platforms
23:21:01 [timeless]
23:21:05 [fantasai]
... What happens then?
23:21:11 [fantasai]
... We can make the test results useful to you.
23:21:24 [fantasai]
... Show reports of what works, and what doesnt. Let's make the test suites useful for the community as well.
23:21:32 [timeless]
23:21:33 [fantasai]
... And we should improve our validators at W3C.
23:21:43 [fantasai]
... Maybe make it use test results.
23:21:58 [fantasai]
... e.g. it notices You are using this feature, note that it doesn't work on FF3.6!
23:22:13 [fantasai]
... We're not a lone, there are others who are trying to do the same thing.
23:22:21 [timeless]
s/a lone/alone/
23:22:39 [fantasai]
... test swarm for example is an effort from jQuery author, because he was running into the same problem
23:22:54 [fantasai]
... he cannot run every OS /browser combination himself
23:23:12 [fantasai]
... browserscope is interesting too. It allows you to compare screenshots across platforms
23:23:36 [fantasai]
... It uses a web server locally to determine when to take the screen shot
23:23:49 [fantasai]
... We need to produce these tools incrementally
23:23:58 [fantasai]
... and try to get them to work on all borwsers
23:24:07 [timeless]
23:24:10 [fantasai]
... I think the message that I like you to get out of this is that we need help.
23:24:29 [fantasai]
... I can get some help from browser vendors, but ultimately we need help from the community because you are the ones suffer every day.
23:24:41 [fantasai]
... and until you tell us what is wrong, we are not able to help you
23:24:43 [timeless]
23:24:44 [caribou]
For the record, Help W3C Validators program at
23:24:55 [fantasai]
Ian: Questions for Philippe?
23:24:55 [darobin]
interesting article on mobile testing:
23:25:04 [Liam]
Liam has joined #w3cdev
23:25:04 [fantasai]
Dianna Adair:
23:25:22 [timeless]
RRSAgent: make minutes
23:25:22 [RRSAgent]
I have made the request to generate timeless
23:25:22 [fantasai]
Dianna Adair: Could there be any hooks in the syntax so that you can pass arguments to the syntax automaticall, through some sort of test generation program
23:25:31 [fantasai]
Dianna Adair: Are there valid simulators for the major browsers?
23:25:43 [timeless]
23:25:51 [fantasai]
Dianna: So that you can push the tests agains the simulated suite of browsers
23:25:58 [timeless]
23:26:11 [fantasai]
plh: FOr the first question, yes, because we are starting from scratch
23:26:19 [timeless]
23:26:21 [fantasai]
plh: For the other we can get screenshots of the major browsers
23:26:26 [henriquev]
henriquev has joined #w3cdev
23:26:41 [fantasai]
plh: was done by an engineer in Switzerland
23:26:54 [timbl]
timbl has joined #w3cdev
23:26:56 [IanJ]
rrsagent, make minutes
23:26:56 [RRSAgent]
I have made the request to generate IanJ
23:26:59 [fantasai]
plh: At the beginning of Sept. a few folks including me and a few Moz developers got together and started writing code to do that
23:27:04 [dom]
23:27:15 [fantasai]
plh: We made a prototype that works on the 3 major platforms
23:27:23 [fantasai]
plh: He is improving his browser test framework
23:27:34 [fantasai]
plh: At W3C we have a way to do human testing, I showed a demo of the mobile web browser
23:27:40 [fantasai]
plh: It requires a human to click pass fail pass fail
23:27:49 [timeless]
23:27:54 [fantasai]
Dianna: One way I've seen that works, is to set up a location and have some sort of "bugfest"
23:28:22 [fantasai]
Dianna: You have people all over the world trying to test things simultaneously
23:28:24 [fantasai]
plh: ...
23:28:36 [fantasai]
plh: My goal is not to point fingers at browsers and tell them they're doing bad stuff
23:28:39 [fantasai]
plh: I want to serve the community
23:28:56 [fantasai]
IanJ: Have you set up a mailing list or public place for people to come help out?
23:28:59 [fantasai]
plh: Not yet
23:29:05 [fantasai]
IanJ: ACTION Phillipe? :)
23:29:13 [fantasai]
plh: We need to create a group within W3C itself
23:29:24 [fantasai]
plh: I know for example Mozilla and Microsoft are interested in helping
23:29:37 [fantasai]
plh: We need to organize and provide a venue for the community to come together
23:29:53 [fantasai]
Dianna: I propose that Universities are a great source intelligence and creativity and might be able to help
23:30:06 [fantasai]
Chris (MSFT): There is a test suite alias in the HTMLWG
23:30:26 [fantasai]
plh: Yes, we also want cross-tech testing
23:30:37 [fantasai]
Kevin Marks: Do you know the test suite for .. ?
23:30:42 [Arron]
23:30:56 [fantasai]
plh: I only mentioned testing framework. There are plenty of efforts out there
23:31:01 [r12a-nb]
s/.. ?/called doctype at Google/
23:31:05 [fantasai]
plh: One thing I did in August was to collect some of that
23:31:15 [fantasai]
plh: We are not alone, there are a lot of others trying to solve the same problem
23:31:25 [fantasai]
IanJ: Ok, we have 4 more speakers after the break
23:31:32 [fantasai]
IanJ: I'll hand over to Tim for now
23:31:46 [fantasai]
TimBL: Thanks for coming
23:31:56 [karl]
there was
23:32:02 [fantasai]
Tim: It's importat that everyone designing specs is in contact with lots and lots of people using their specs
23:32:10 [karl]
and now
23:32:13 [fantasai]
Tim: Good to have feedback, and feedback on how to get feedback.
23:32:33 [IanJ]
rrsagent, make minutes
23:32:33 [RRSAgent]
I have made the request to generate IanJ
23:42:00 [LeslieB]
LeslieB has joined #w3cdev
23:43:49 [ademoissac]
ademoissac has joined #w3cdev
23:47:36 [caribou]
RRSagent, this meeting spans midnight
23:52:49 [nathany]
nathany has joined #w3cdev
23:56:26 [LeslieB]
LeslieB has joined #w3cdev
00:02:45 [smfr]
smfr has joined #w3cdev
00:03:59 [Arron]
Arron has joined #w3cdev
00:04:08 [timeless]
ScribeNick: timeless
00:04:11 [timeless]
Scribe: timeless
00:04:16 [marie]
marie has joined #w3cdev
00:04:17 [timeless]
IanJ: Next speaker, Brendan Eich, representing ECMA
00:04:27 [timeless]
... and ECMA harmony
00:04:37 [timeless]
brendan: I'm here from Mozilla
00:04:46 [timeless]
... I'm here to talk about ECMA Harmony
00:04:57 [timeless]
... which is a ... which we reached last summer
00:05:06 [timeless]
... before that, we had problems
00:05:14 [timeless]
... the figure of XX ...
00:05:31 [timeless]
... identified as gandalf ...
00:06:00 [timeless]
... there were people like Doug and sometimes me
00:06:05 [timeless]
... advocating for JS Hobbits
00:06:13 [timeless]
... small enough and based on principals from Scheme itself
00:06:14 [darobin]
darobin has joined #w3cdev
00:06:26 [timeless]
... it had virtues which were only discovered years later on the web
00:06:28 [pjsg]
pjsg has joined #w3cdev
00:06:33 [timeless]
... it was the dumb kid brother to Java
00:06:43 [timeless]
... JavaScript was supposed to be the duct tape language
00:06:57 [timeless]
... you were supposed to write it around the real language .. Java
00:07:07 [timeless]
... I think people will agree that Java is basically dead on the client
00:07:13 [timeless]
... there were problems with Java
00:07:23 [timeless]
... the main issues was that JavaScript was a dynamic language
00:07:49 [timeless]
... is a dynamic language, and will continue to be a dynamic language
00:07:51 [timeless]
... the fear with ECMAScript 4 (?)
00:07:56 [timeless]
... was that it would become a static language
00:08:04 [timeless]
... the fear, as with Visual Basic 7
00:08:13 [timeless]
... was that you take a dynamic language
00:08:19 [timeless]
... and you convert it into a large proof system
00:08:26 [mib_bmpvrc]
mib_bmpvrc has joined #w3cdev
00:08:30 [timeless]
... and that's not how languages are built
00:08:47 [timeless]
... if ES4 would have been that, i'd be that guy with Gandalf
00:08:57 [timeless]
... there was a point in 2006 where the committee seemed united
00:09:11 [timeless]
... the MS representative was going to put some old version into
00:09:16 [timeless]
... and we were all united
00:09:26 [timeless]
[ Slide: The Fellowship of JS ]
00:09:36 [timeless]
... the fellowship was broken
00:09:41 [timeless]
[ Slide: Conflict (2007) ]
00:09:53 [timeless]
... some of it was based on the real prospect that i was somehow working toward
00:10:06 [timeless]
... of pulling the drive language of flash, actionscript, into the web
00:10:22 [timeless]
... and again, microsoft was working on pulling a version into
00:10:34 [timeless]
... based on waldemar horwat
00:10:41 [timeless]
... ECMA requires consensus
00:10:45 [timeless]
... and we didn't have that
00:10:49 [timeless]
... at the time this happened in march
00:11:01 [tantek]
tantek has joined #w3cdev
00:11:04 [timeless]
... it was clear to me that this wasn't going to work, someone was going to win, and someone was going to lose
00:11:10 [timeless]
... but this was going to be ok
00:11:27 [timeless]
... because it would involve improvements to the language for the web (?)
00:11:40 [timeless]
... ecma was stagnating
00:11:48 [timeless]
... 4th edition was mothballed in 2003
00:12:12 [timeless]
... netscape was dying - partially because of its own failings, and partly because of microsoft (see antitrust)
00:12:18 [timeless]
... msie was sleeping
00:12:40 [timeless]
... in 200x (?) ... there was a chance of things improving
00:12:46 [timeless]
... in April 2007, there were things like
00:12:55 [timeless]
... Microsoft's Silverlight offering
00:13:17 [timeless]
... a JScript Chess demo was converted into C#
00:13:22 [timeless]
... it was 100s of times faster
00:13:36 [timeless]
[ Slide: The Two Towers ]
00:13:39 [timeless]
* ES4
00:13:57 [timeless]
* Waldemar Horwat's work at Netscape, 1999-2003
00:14:03 [timeless]
* JScript.NET, 2000
00:14:12 [timeless]
* ActionScript 3, 2005-2006
00:14:14 [timeless]
00:14:19 [timeless]
* ES3.1
00:14:23 [timeless]
* Dougt's recommendations
00:14:34 [timeless]
00:14:43 [timeless]
* Document JScript deviations
00:14:49 [timeless]
brendan: ...
00:15:01 [timeless]
... there were a lot of bugs in IE's implementation of JavaScript
00:15:17 [timeless]
... and MS was heavily involved in the standard writing for ECMAscript 2/3
00:15:27 [timeless]
... and there were serious bugs in the MS implementation
00:15:41 [timeless]
* "No new syntax"
00:15:48 [timeless]
brendan: ...
00:16:07 [timeless]
... if you never add things, you can't break things
00:16:15 [KevinMarks]
KevinMarks has joined #w3cdev
00:16:25 [timeless]
... if you aren't careful, and you add global objects/methods
00:16:28 [timeless]
... you can break the web
00:16:30 [timeless]
... (facebook)
00:16:42 [timeless]
... no new syntax doesn't save you
00:16:50 [timeless]
... time was passing, we were trying to get es4 out
00:16:58 [timeless]
[ Slide: Synthesis (2008) ]
00:17:02 [timeless]
brendan: ....
00:17:10 [dbaron]
dbaron has joined #w3cdev
00:17:18 [timeless]
... Allen proposed meta object API
00:17:25 [timeless]
... on the ES3.1 side
00:17:47 [timeless]
... Lars Hansen on the ES4 side, "Packages must go"
00:17:51 [timeless]
... in April 2008
00:17:53 [timeless]
... Namespaces must go too (June-July)
00:17:58 [timeless]
... unfortunately, we lost Adobe
00:18:20 [timeless]
... because they felt they lost the bits they had derived from the standard
00:18:28 [timeless]
... but that's a risk when working on standards
00:18:36 [timeless]
... when we reached harmony in July in Oslo
00:18:41 [jun]
jun has joined #w3cdev
00:18:49 [timeless]
... the language again is inspired by Scheme with influences from Self
00:18:56 [timeless]
... one of the foundations of Scheme is lexical scope
00:19:04 [timeless]
... javascript has some broken bits of scope
00:19:18 [timeless]
... Doug's teaching and attitude
00:19:30 [timeless]
... in es4 we're looking toward a strict mode
00:19:42 [timeless]
... we have a hope for "use strict mode" for es5
00:19:50 [timeless]
... similar to perl5
00:20:04 [timeless]
... we're trying to avoid "use stricter" for future versions
00:20:13 [timeless]
... that's my quick recap of how we reached harmony
00:20:22 [timeless]
.... ES3.1 was renamed ES5 (March 2009)
00:20:36 [timeless]
... We decided not to trouble ECMA with fractional standard version numbering
00:20:39 [timeless]
... ES4 died
00:20:59 [timeless]
... we're not sure if Harmony will really be 5
00:21:09 [timeless]
... we might need to do some quick versions for standardization reasons
00:21:17 [timeless]
... the committee is not the gatekeeper
00:21:25 [timeless]
... a chokepoint for all innovation
00:21:38 [timeless]
[ Slide: Namespaces ]
00:21:43 [timeless]
brendan: ...
00:21:52 [timeless]
... who here knows about Namespaces in Flash?
00:21:57 [timeless]
[ hands raised ]
00:22:07 [timeless]
... there's ECMAScript For XML (e4x)
00:22:15 [timeless]
... it has a lot of problems as a spec IMO
00:22:28 [timeless]
... it's a spec whose pseudo code was extracted from java code
00:22:43 [timeless]
... so you have bugs from the code, translation, etc.
00:22:52 [timeless]
... it almost broke the object model
00:22:58 [timeless]
... it had integrated query
00:23:05 [timeless]
... it had namespace objects
00:23:25 [timeless]
... you had to use ::'s to qualify stuff
00:23:37 [timeless]
... sometimes people complain about namespaces in XML documents
00:23:48 [timeless]
... es4 was much worse
00:24:00 [timeless]
... it was very powerful
00:24:20 [timeless]
... because you could use lexical scope to change how code behaves
00:24:24 [timeless]
[ Slide: Packages ]
00:24:30 [timeless]
... packages are built on namespaces
00:24:42 [timeless]
... even today in actionscript, there are some funny things about them
00:24:58 [timeless]
... there's a temptation to think that using long chains of dotted things
00:25:17 [timeless]
... there's a temptation to think that the dotted things can win
00:25:25 [timeless]
... but because the language is dynamic
00:25:43 [timeless]
... the winner can be the normal object with similar property paths
00:25:53 [timeless]
... I think this problem still exists in actionscript
00:26:01 [timeless]
... and then there are problems with <script> tags
00:26:07 [timeless]
[Slide: NAmespace Problems]
00:26:22 [timeless]
... here's a problem with namespaces
00:26:36 [timeless]
00:27:02 [timeless]
... ambiguities can happen when scripts come along and defined a namespace later
00:27:14 [timeless]
... I'm explaining why Namespaces died in ES4
00:27:37 [TabAtkins]
TabAtkins has joined #w3cdev
00:27:49 [timeless]
... Question: Why am I talking about why Namespaces when you already said it's dead
00:27:54 [timeless]
... Answer: it died because it had technical problems
00:28:00 [timeless]
... that we couldn't figure out how to solve
00:28:16 [timeless]
... the alternative was to require whole-porgram analysis
00:28:25 [timeless]
[ Slide: ES5 Meta-programming ]
00:28:33 [timeless]
... the 3.1 contribution
00:28:45 [timeless]
... Create properties with getters and setters
00:28:57 [timeless]
... we have this in mozilla under a different name
00:29:01 [timeless]
... it's finally standardized
00:29:22 [timeless]
... instead of __defineGetter__/__defineSetter__/__lookupGetter__/__lookupSetter__
00:29:39 [timeless]
... We implemented this about 10 years ago in Mozilla
00:29:49 [timeless]
... but MS/Opera didn't implement it
00:29:56 [timeless]
... when live maps launched
00:30:06 [timeless]
... it treated the dom as the ie dom
00:30:13 [dom]
00:30:14 [dom]
00:30:25 [timeless]
... and then it looked to see if the host wasn't IE
00:30:39 [timeless]
... it decided it wasn't IE, then it must be Gecko
00:30:51 [timeless]
... so it used __defineSetter__/__defineGetter__
00:30:55 [timeless]
... to support it
00:31:05 [timeless]
... this caused a firedrill in Opera/Safari
00:31:14 [timeless]
... to implement this missing feature (within a week!)
00:31:17 [timeless]
... to support live maps
00:31:25 [timeless]
[ Slide: ES5 Meta-programming ]
00:32:03 [timeless]
... you can define things that don't appear in for-in loops
00:32:15 [timeless]
... because the ajax community learned about how pollution breaks iteration
00:32:25 [timeless]
... with this facility, you can not break those things
00:32:35 [timeless]
... with this, lack of syntactic salt
00:32:38 [timeless]
... you can create objects
00:32:45 [timeless]
[ Slide: Hardening Objects ]
00:32:55 [timeless]
... you can make an object that delegates to another object
00:33:01 [timeless]
... without using a constructor pattern
00:33:13 [timeless]
... you can prevent extensions, and prevent reconfig
00:33:17 [timeless]
... and prevent all writing
00:33:51 [timeless]
... this enabled a lot of what we had in ES4 classes
00:33:51 [timeless]
[ Slide: Harmony Requirements ]
00:34:01 [timeless]
... as we worked on harmony, we realized we should state our requirements
00:34:05 [timeless]
... in some way
00:34:15 [timeless]
... we don't want to do anything that requires innovation in committee
00:34:20 [timeless]
... or abstract jumps
00:34:29 [timeless]
... we want to keep the language pleasant for casual developers
00:34:36 [timeless]
... so you could start small and grow
00:34:41 [timeless]
... javascript is in some ways a virus
00:34:48 [timeless]
... it has grown into an application programming language
00:35:01 [timeless]
... we want to keep these features
00:35:06 [timeless]
[ Slide: Harmony Goals ]
00:35:17 [timeless]
... * Be a better language for writing
00:35:29 [timeless]
... [] complex applications
00:35:38 [timeless]
... [] libraries (possibly including the DOM!)
00:35:43 [timeless]
... [] code generators
00:35:53 [timeless]
... * Switch to a testable specification
00:36:03 [timeless]
... * Improve interoperation, adopt de facto standards
00:36:15 [timeless]
... * Keep versioning as simple and linear as possible
00:36:21 [timeless]
... * A statically verifiable ...
00:36:29 [timeless]
[ Slide: Harmony Means ]
00:36:35 [timeless]
... * Minimize additional semantic state
00:36:44 [timeless]
... * Provide syntactic conveniences for:
00:36:49 [timeless]
... [] good abstraction patterns
00:36:56 [timeless]
... [] hide integrity patterns
00:37:09 [timeless]
... [] define desugaring to kernel semantics
00:37:25 [timeless]
... * Remove (via opt-in versioning or pragmas) confusing or troublesome constructs
00:37:27 [brutzman]
brutzman has joined #w3cdev
00:37:32 [timeless]
... * Build Harmony on ES5 strict mode
00:37:49 [timeless]
... * Support virtualizability for host objects
00:37:51 [timeless]
[ Slide: Harmony Proposals ]
00:38:03 [timeless]
brendan: ...
00:38:11 [timeless]
... prognosis, it should be sorted out in 2-3 years
00:38:21 [timeless]
... things that don't make it go toward es6
00:38:33 [timeless]
... you can self host your way to a stronger language
00:38:59 [timeless]
... ECMA standards group TC39 is still strong
00:39:05 [timeless]
IanJ: thank you brendan
00:39:14 [timeless]
... that was our transition talk
00:39:20 [timeless]
... into Internet Ecosystem
00:39:24 [timeless]
... next speaker ...
00:39:29 [timeless]
Mark Davis: ...
00:39:48 [timeless]
... I'm talking about international domain names (IDNA ?)
00:39:52 [timeless]
... IDNA 2003
00:40:06 [timeless]
... There was a system developed in 2003 that allowed people to have international characters in domain names
00:40:13 [timeless]
... I don't know if people saw the news this week
00:40:26 [timeless]
... What happened this week is that the top level domains can have non ascii characters
00:40:30 [Ray]
Ray has joined #w3cdev
00:40:35 [timeless]
[ Slide: IDNA 2003 ]
00:40:40 [tlr]
tlr has joined #w3cdev
00:41:01 [timeless]
... you can't do certain things...
00:41:12 [timeless]
... IDNA 2003 is tied to Unicode 2.3 (?)
00:41:21 [timeless]
... If you look at the uppercase characters
00:41:30 [timeless]
... they're mapped to lowercase characters before they reach dns
00:41:48 [timeless]
... O with two dots is converted to a lowercase version before it gets sent out
00:42:01 [timeless]
... it gets converted with an ascii binding with something called punicode
00:42:08 [timeless]
00:42:36 [timeless]
[ Slide: IDNA 2008 ]
00:42:55 [timeless]
... about 3 years ago there was an effort to revise it
00:43:05 [timeless]
... it updates to the latest version of unicode
00:43:13 [timeless]
... and makes the system unicode version independent
00:43:19 [timeless]
... but it invalidates certain urls
00:43:45 [timeless]
... uppercase letters are invalid
00:44:04 [timeless]
... it removes a class of symbols and punctuation characters
00:44:23 [timeless]
... and it makes certain classes of characters not equivalent to other expansions
00:44:37 [timeless]
... IDNA 2008 is not yet approved
00:44:44 [timeless]
[ Slide: ISSUES ]
00:44:52 [timeless]
... this causes problems for browser vendors
00:45:10 [timeless]
... which need to retain compatibility with pages using IDNA2003
00:45:16 [timeless]
... need to match user expectations
00:45:23 [timeless]
... it causes problems for search engine vendors
00:45:29 [timeless]
... need to match old and new browsers
00:45:41 [timeless]
... need to match old and new expectations
00:45:51 [timeless]
[ Slide: UTS46 - Compatibility "Bridge" ]
00:46:07 [timeless]
... It enables everything that was allowed in 2003 with the same behavior
00:46:19 [timeless]
... it allows the new stuff allowed from 2008
00:46:29 [timeless]
... it has different things for lookup/display
00:46:47 [timeless]
display: ß, lookup: ss
00:46:55 [timeless]
[ Slide: Compatibility for Transition ]
00:47:01 [timeless]
... aimed at client SW, not registries
00:47:08 [timeless]
... alows client SW to handle both 2003 and 2008
00:47:19 [timeless]
... consensus from browsers and search
00:47:31 [timeless]
... I'll send the slides to IanJ
00:47:35 [timeless]
IanJ: thank you
00:47:38 [timeless]
00:47:50 [timeless]
IanJ: thank you for your good work at unicode
00:47:56 [timeless]
... you mentioned hot controversies
00:48:04 [timeless]
Mark Davis: ...
00:48:13 [timeless]
... there are controversies
00:48:22 [timeless]
... I'll introduce Eric Vanderpool (?)
00:48:31 [timeless]
... Michelle Suighard
00:48:39 [timeless]
... one of the coauthors of the IRI spec
00:48:51 [timeless]
... a key issue is the compat difference between the 2003 and 2008 spec
00:48:59 [timeless]
... we've been trying to walk a delicate line
00:49:08 [timeless]
... while not trying to stomp on the IETF toes
00:49:12 [timeless]
... because it's their spec
00:49:25 [timeless]
00:49:28 [timeless]
Diane: ...
00:49:50 [timeless]
... If I own one, name sparkasse-gieß
00:50:05 [timeless]
... can you squat on
00:50:41 [timeless]
Mark Davis: ...
00:50:47 [timeless]
... you can't reserve 'sparkasse-gieß'
00:51:00 [timeless]
... it's like case
00:51:28 [timeless]
Doug: ...
00:52:07 [timeless]
... about the heart case (I❤
00:52:30 [timeless]
Mark Davis: That will resolve to an all lowercase version
00:52:46 [timeless]
... If you were using a browser that implemented IDNA 2008 strictly
00:52:51 [timeless]
... it will fail
00:53:07 [timeless]
questioner: ...
00:53:11 [timeless]
... so the issue about uppercase
00:53:23 [timeless]
... does that mean that you can't type
00:53:28 [timeless]
Mark Davis: no...
00:53:36 [timeless]
... it's limited to IDN cases
00:53:40 [dom]
(http://I♥ resolves to in my FF3.5)
00:53:44 [timeless]
Doug: what's the goal in not making it work?
00:53:55 [timeless]
Mark Davis: that's part of the controversy
00:54:06 [smfr]
Safari goes to http://i♥
00:54:09 [timeless]
... it was bad to show something that was other than what was being resolved to
00:54:44 [timeless]
Robin: so what's with the heart?
00:54:59 [timeless]
Mark Davis: well symbols and punctuation look to close to other things
00:55:07 [timeless]
... We dropped ~3000 such characters
00:55:34 [timeless]
... We dropped ~4000 characters relating to Ö
00:55:49 [timeless]
... For a lot of us, this didn't really solve the problem
00:56:01 [timeless]
Doug: so it doesn't limit you to non mix ranged characters?
00:56:07 [timeless]
Mark Davis: ...
00:56:19 [timeless]
... there are a number of guidelines in Unicode 36
00:56:35 [timeless]
... the problem is that there are a number of cases where it's needed and customary
00:56:41 [timeless]
... such as mixing japanese and latin
00:56:52 [timeless]
... and distinguishing legitimate from others
00:56:59 [timeless]
... and over time, browsers are solving the problems
00:57:17 [timeless]
Ronan: ...
00:57:37 [timeless]
... regexps that pigeon parses urls ... will that break?
00:58:01 [timeless]
Mark Davis: ... you need to replace the dot with the character class
00:58:16 [timeless]
Ronan: are you familiar with the ipv6 handling in urlbars
00:58:24 [timeless]
... and how long it took before it was implemented?
00:58:37 [timeless]
Mark Davis: most stuff users do should work
00:58:49 [timeless]
... but sure the servers will break and have probably been broken since 2003
00:59:10 [timeless]
xx-3: ...
00:59:14 [timeless]
... this is at which level?
00:59:32 [timeless]
Mark Davis: this is all handled at the browser level
00:59:38 [IanJ]
00:59:44 [timeless]
... punycode ... was adam costello's pun
00:59:48 [IanJ]
01:00:05 [IanJ]
rrsagent, make minutes
01:00:05 [RRSAgent]
I have made the request to generate IanJ
01:00:05 [timeless]
... as far as dns is concerned, it's all xn--...
01:00:17 [timeless]
... the routing/dns system doesn't see this
01:00:30 [timeless]
... the browsers basically get to agree with this standard
01:00:32 [timeless]
Richard: ...
01:00:32 [IanJ]
[Richard Ishida]
01:00:37 [timeless]
... what if i have a heart
01:00:56 [timeless]
... what you've been describing is something which does a transformation of these strings
01:01:06 [timeless]
... if i understand this correctly
01:01:11 [timeless]
... you will continue to use this
01:01:34 [shepazu]
shepazu has joined #w3cdev
01:01:34 [timeless]
... we've been working with all the browser representatives and search engine companies to handle this
01:01:44 [timeless]
xx-4: from hp
01:01:56 [timeless]
... you've alluded to phishing attacks
01:02:02 [timeless]
... what's the status
01:02:15 [timeless]
Mark Davis: ...
01:02:22 [timeless]
... everyone has some approach for dealing with this
01:02:25 [timeless]
... but it isn't consistent
01:02:38 [timeless]
... I think it's a bad idea to standardize too early
01:02:51 [timeless]
... there are a lot of holes before we come up with a cohesive solution
01:02:57 [timeless]
IanJ: thank you
01:03:00 [timeless]
01:03:12 [timeless]
IanJ: Next Leslie ... @ ISOC
01:03:29 [timeless]
Leslie: ... talk/pres/discuss/...
01:03:39 [timeless]
[ Slide: The Internet - Evolution and Opportunity ]
01:03:45 [timeless]
[ Slide: The Internet Society ]
01:03:53 [timeless]
... Founded in 1992
01:03:59 [timeless]
... 100 members, 90 chapters ...
01:04:12 [timeless]
... promoting/sustatining internet as a platform for innovation
01:04:53 [timeless]
[ Slide: Internet Evolution ]
01:05:07 [timeless]
01:05:21 [timeless]
... Incremental changes
01:05:26 [timeless]
... seven layers
01:05:30 [timeless]
... independent building blocks
01:05:38 [rohit]
rohit has joined #w3cdev
01:05:41 [timeless]
... flexible + responsive
01:05:52 [timeless]
... impossible to nail up a global deployment plan
01:06:02 [timeless]
[ Slide: An external pressure ... IP addresses ]
01:06:08 [timeless]
... Running out of IPv4 addresses
01:06:25 [timeless]
... last allocation from IANA predicted for Oct 2011
01:06:38 [rohit]
apologies for interrupting the scribe, but I wanted to share a link for the dumb-app-guy question I asked earlier:
01:06:41 [timeless]
... last allocation to ISP anywhere, predicted for Feb 2013
01:06:43 [Arron]
Arron has joined #w3cdev
01:06:56 [timeless]
... Lots of IPv6 addresses
01:07:04 [rohit] -- an example of sw currently broken and the very first request from the devs was for a regex :)
01:07:12 [timeless]
... it's not going to be an ipv6 internet before the last ipv4 address is handed out
01:07:17 [rohit]
viz "valid_url() marks correct IDN domains as invalid"
01:07:18 [timeless]
... more NATs
01:07:49 [timeless]
[ Slide: Implications above the IP Addressing Layer ]
01:07:51 [timeless]
... IPAffinity breaks!
01:08:10 [timeless]
... a recent roundtable of industry leaders we held included reps from Google, Yahoo, Akamai, Netflix, and Comcast
01:08:29 [timeless]
... discussed impending impact on geolocation, geoproximity, management of distribution of copyrighted materials
01:08:48 [timeless]
01:08:57 [timeless]
... Multiple open streams breaks!
01:09:07 [timeless]
... sharing addresses => fewer ports => ajax apps have troubles
01:09:15 [timeless]
... poor performance of web pages, e.g. Google maps
01:09:56 [timeless]
... users see google maps tiling in slowly
01:10:07 [timeless]
... users don't blame the network, they blame the server
01:10:21 [timeless]
[ Slide: Responses to the IP addressing situation]
01:10:36 [timeless]
... major isps and content providers are including ipv6 in their current deployment plans
01:10:44 [timeless]
... wireless boradband LTE has IPv6 baked in
01:11:00 [timeless]
[ Slide: Opportunities in the IP Addressing Situation ]
01:11:13 [timeless]
... make sure your web servers are ipv6 capable
01:11:19 [timeless]
... don't write ipversion specific apps
01:11:38 [timeless]
... with ipv6 you can imagine a world where everything is uniquely addressable
01:11:49 [timeless]
... example of problems ...
01:11:55 [timeless]
... Opera tries to outsmart OS
01:12:10 [timeless]
... if it finds ipv6 address it will use it
01:12:20 [timeless]
... whereas vista might know to fail over to an ipv4 tunnel
01:12:32 [timeless]
... but it can't because opera didn't let it decide
01:13:15 [timeless]
[ Slide: Another external pressure - Unwanted Traffic ]
01:13:26 [timeless]
[ Slide: Responses to Unwanted Traffic ]
01:13:36 [timeless]
01:13:45 [timeless]
... no final conclusion
01:13:52 [timeless]
[ Slide: Alternatives? ]
01:14:05 [timeless]
... top down imposition of security doesn't fit the Internet
01:14:15 [timeless]
... the internet is a "network of networks"
01:14:39 [TabAtkins_]
TabAtkins_ has joined #w3cdev
01:14:44 [timeless]
[ Slide: Security Tools Must Address Total Threat Model ]
01:15:11 [timeless]
[ Slide: Different Security Mechanisms Are Needed for Different Threats ]
01:15:34 [timeless]
[ Slide: Too Much Security Technology Impedes Usage, without Reducing Bad Behavior ]
01:15:37 [timeless]
[ laughter ]
01:15:44 [timeless]
[ Slide: One building block: DNSSEC ]
01:15:51 [timeless]
... secure results from domain name servers
01:16:07 [timeless]
... so you can be sure whatever you get back from dns is what the dns server intended to send you
01:16:14 [timeless]
... tamper proof packaging on dns responses
01:16:22 [timeless]
... this doesn't prevent phishing
01:16:47 [timeless]
... it doesn't encrypt the data in the response
01:16:55 [timeless]
[ Slide: DNSSEC opportunities ]
01:17:06 [timeless]
... with DNSSEC you have a better platform for confidence in dns
01:17:14 [timeless]
... dnssec is deploying rather slowly
01:17:32 [timeless]
... i've referred to these in other contexts as broccoli techonologies
01:17:49 [timeless]
... you should eat it, but it's better with a cheese sauce
01:17:51 [timeless]
... but there's no cheese sauce
01:17:54 [timeless]
01:18:06 [timeless]
Phillip (Cisco): ...
01:18:20 [timeless]
... when do you think ISPs will deliver IPv6 connectivity?
01:18:39 [timeless]
Leslie: ...
01:18:51 [timeless]
... some soon in Europe, and a few maybe in the US
01:19:06 [timeless]
... I think it's fair to say of the service providers thinking about it
01:19:18 [timeless]
... they will have it deployed before *they* run out
01:19:37 [timeless]
... this is slightly better than before when it was like "yeah, we have it in our research lab"
01:19:44 [timeless]
Tom: you mentioned an ISP
01:19:50 [timeless]
... what specific one?
01:20:03 [timeless]
Leslie: of the list I have here, Comcast is the access one
01:20:12 [timeless]
Mark: Have you seen a hoarding of ipv4 addresses?
01:20:28 [timeless]
Leslie: I think some have retirement plans by auctioning them off
01:21:04 [IanJ]
rrsagent, make minutes
01:21:04 [RRSAgent]
I have made the request to generate IanJ
01:21:06 [timeless]
... In principal the regional providers have fairly strict releases of addresses
01:21:12 [timeless]
Leslie: the problem is that we're going to run out
01:21:21 [timeless]
Doug: ...
01:21:25 [timeless]
... I asked about a tutorial
01:21:30 [timeless]
... I still think you need a tutorial
01:21:34 [timeless]
... with a tweetable domain name
01:21:38 [timeless]
Leslie: yeah, that'd be great
01:21:39 [timeless]
01:21:53 [timeless]
... part of the challenge is that everyone's problem is different
01:22:02 [timeless]
... at some point, we'll figure out the commonalities
01:22:15 [timeless]
... we're trying to get some of the ones who have done it in a room with some who haven't
01:22:19 [timeless]
... so they can share knowledge
01:22:24 [timeless]
dbaron: David Baron, Mozilla
01:22:31 [timeless]
... in what would you like to do with DNSSEC
01:22:40 [timeless]
... none of this is speaking for mozilla
01:22:49 [timeless]
... there are certain things i'd like to be able to do with dnssec
01:22:58 [timeless]
... among them is putting public keys in dns
01:22:59 [shepazu]
put i18n urls in Acid4 :)
01:23:01 [timeless]
... to avoid using a CA
01:23:16 [timeless]
... another is putting email autoconfig information into dns
01:23:22 [timeless]
... another is to put a default https flag
01:23:37 [timeless]
... to say "" should go to "" instead of ""
01:23:43 [timeless]
Leslie: thanks for thinking about the questions
01:23:49 [timeless]
... in terms of where to go with them
01:23:55 [timeless]
... some of them are pursued within IETF
01:24:10 [timeless]
... particularly, some levels of email, e.g. domain keys
01:24:34 [timeless]
... to say "this is the server allowed to send email for this domain"
01:24:43 [timeless]
... so the IETF is the right place to go for a lot of this
01:24:47 [timeless]
Kevin: ...
01:24:56 [timeless]
... what would i like to do if i had lots of addressable points
01:25:02 [timeless]
... i'd like to setup servers on my own machines
01:25:05 [timeless]
... without proxies
01:25:13 [timeless]
Leslie: yes
01:25:25 [timeless]
... it'd be good if people would stand up and say that loudly
01:25:34 [timeless]
Kevin: we've seen this problem with real time flow
01:25:39 [timeless]
Diana: ...
01:25:46 [timeless]
... what would i do if i had lots of addresses
01:25:51 [timeless]
... what if i was a washing machine
01:26:01 [timeless]
... what if i was an animal owner
01:26:06 [timeless]
... and i put a chip in each one
01:26:10 [timeless]
... or a hospital owner
01:26:16 [timeless]
... and i wanted chips in patients
01:26:25 [timeless]
... i think ...
01:26:43 [timeless]
... I think we'll run out of ipv6 within 10 years
01:26:55 [timeless]
Tom: who is the definitive place for ipv6
01:26:59 [timeless]
Leslie: all of them
01:27:05 [timeless]
IanJ: thanks Leslie
01:27:09 [timeless]
01:27:24 [timeless]
ScribeNick: IanJ
01:27:33 [timeless]
RRSAgent: make minutes
01:27:33 [RRSAgent]
I have made the request to generate timeless
01:28:41 [IanJ]
Speaker: Kevin Marks on OpenID, etc.
01:29:01 [TabAtkins_]
TabAtkins_ has joined #w3cdev
01:29:29 [IanJ] social web standards
01:29:30 [dom]
[note that JessyInk provides similar effects as Prezi in SVG]
01:29:57 [IanJ]
KevinMarks: How I got to this point.
01:30:04 [IanJ]
...the problem is Babel
01:30:18 [IanJ]
...see the "Map of Online communities and related points of interest"
01:30:48 [IanJ]
(one example:
01:31:18 [IanJ]
KevinMarks: Histogram your users...people use 12345 and 90210 when they are lying to you :)
01:31:23 [timeless]
01:31:34 [IanJ]
KevinMarks: You have to give people a reason to @@
01:31:46 [IanJ]
KevinMarks: Open social builds on existing infrastructure
01:31:59 [tantek]
tantek has joined #w3cdev
01:32:10 [IanJ]
KevinMarks: Defining an API for your favorite programming long as it's javascript.
01:32:20 [timeless]
01:32:28 [IanJ]
Open social v0.89 enabled new client and programming mobdels by adding server to server protocols.
01:32:32 [IanJ]
01:32:34 [caribou]
[original pic at]
01:32:38 [timeless]
01:32:53 [IanJ]
KevinMarks: Over 1 billion users of open social stuff.
01:33:06 [IanJ]
KevinMarks: developing REST APIs.
01:33:20 [IanJ]
s/users/accounts (?)
01:33:39 [IanJ]
KevinMarks: Challenge is to identify "me"...people accustomed to identify selves via HTTP URIs
01:33:45 [dom]
s/accounts (?)/users
01:34:00 [IanJ]
KevinMarks: WebFinger(email) -> URI
01:34:14 [IanJ]
KevinMarks: Next think you want to know is "my friends"
01:34:29 [IanJ]
KevinMarks: Portable contacts....bcard + some useful fields used by most of the social networks.
01:34:56 [smfr]
01:34:59 [IanJ]
01:35:03 [IanJ]
01:35:12 [IanJ]
KevinMarks: what we do....(photos, etc.)
01:35:24 [IanJ]
KevinMarks: the model underneath that is "feeds" but those were designed for blogs.
01:35:37 [IanJ]
KevinMarks: Activity Streams codify "actions' (that were not part of feed design)
01:36:01 [IanJ]
KevinMarks: Notion of "flow" ...atom pub (posting; and equivalent JSON APIs)...and newer: pubsubhubbub
01:36:08 [IanJ]
...a way to get around the feed polling problem.
01:36:20 [IanJ] don't check the feed ever N get a post when the feed changes.
01:36:43 [IanJ]
...Salmon builds on those ideas....codifies "going back up the stream and down again"
01:36:56 [IanJ]
KevinMarks: A big chunk of the challenge is to get delegated login.
01:37:00 [IanJ]
...didn't get you that much...
01:37:09 [IanJ]
...not much improvement to actual user experience.
01:37:23 [IanJ]
...but now we have more to help solve form-filling problem.
01:37:48 [IanJ] can make a business case now for using the APIs rather than creating yet-another-UI
01:38:08 [IanJ]
...we are starting to see this implemented
01:38:26 [IanJ] can delegate your logins to the site...will go to site and get not just user identify, but richer identity as well.
01:38:43 [IanJ]
...not quite convergence, but we are trying to pull them together (from different site approaches)
01:38:52 [IanJ]
...OAuth is a way of issuing tokens.
01:39:17 [IanJ] do an HTTP request; knows who you logged in as and your creds; gives you back things you have right to.
01:39:32 [IanJ]
...replaces cookies; state management doing in RESTful fashion
01:39:43 [IanJ] and yahoo offer this for all their services; twitter likely to as well
01:40:07 [IanJ]
...empirical standards (as we experienced with microformats)
01:40:15 [IanJ]
...focused on agreement rather than completeness.
01:41:04 [IanJ]
..."t-shirt not a suit"
01:41:16 [IanJ]
..."good enough standard"
01:41:32 [IanJ]
...example of portable contacts.
01:41:41 [IanJ]
...we looked at social networks and what they have in common.
01:42:15 [IanJ]
...activity stream stuff...we have enough social network sites...what actions are they taking that is common enough to build a vocabulary
01:42:36 [IanJ]
[end of overview of the space]
01:42:53 [IanJ] hoc realm.
01:43:14 [IanJ]
IJ: Have you taken some to IETF?
01:43:16 [IanJ]
KevinMarks: Yes.
01:43:28 [IanJ]
KevinMarks: We've set up foundations...but then created OWF.
01:43:57 [IanJ]
KevinMarks: as a foundation do all the legal stuff that you have to you could use this in other places...model was the apache foundation...but to do for specs what apache does for code.
01:44:53 [IanJ]
...I've worked in video standards before...didn't seem in these cases to have the same patent thicket.
01:45:18 [IanJ]
Dan Appelquist (Vodafone): How would you compare this approach to integrating social networks to one based on XMPP?
01:45:27 [IanJ]
KevinMarks: Bits and pieces around that.
01:45:34 [IanJ]
...there's some overlap and some you can bridge through.
01:45:48 [IanJ]
...a lot of this came from open social experience...and part was moving through their comfort zone.
01:46:41 [IanJ]
...there's nothing stopping you from sending this over XMPP (as transport)
01:46:42 [IanJ]
DanA: I ask because I have heard a view expressed -- isn't all of this retrofitting onto existing web sites something that could be done with a different approach?
01:46:54 [IanJ]
KevinMarks: pubsubhubbub stuff closest to xmpp...
01:47:17 [IanJ]
..there's some similarity, but a lot was about web developers writing web stuff....but that is changing...
01:47:22 [IanJ]
...I think a lot comes down to tastes.
01:47:49 [IanJ]
rrsagent, make minutes
01:47:49 [RRSAgent]
I have made the request to generate IanJ
01:48:12 [IanJ]
KevinMarks: You can build bridges...there are also cultural tastes among programmers.
01:48:30 [IanJ]
...for some, dynamic programming languages not scary, for others it may be.
01:48:52 [IanJ]
DanA: In the social web incubator group meeting we held this week, we spent a lot of time talking about user stories
01:49:09 [IanJ]
....I'm a user on one social network; I want to create a friend connection to someone on another social network.
01:49:18 [IanJ] would you do that?
01:49:33 [IanJ]
KevinMarks: When we defined open social, it was with one site in mind.
01:49:50 [IanJ]
...but we are now at the point where it's becoming more important....xfn in microformats.
01:49:57 [IanJ]
...that works like crawling foaf works.
01:50:26 [IanJ]
...many sites have mixes of public and can't just use a crawler over public data.
01:50:30 [tantek]
crawling XFN works like that today, using HTML <a href> today
01:50:33 [IanJ] need to be able to provide access control.
01:50:44 [tantek]
OAuth provides the access control for private data
01:50:47 [IanJ]
..there are still some issues sorting out assertions from multiple parties.
01:51:01 [IanJ]
...there may be some bindings I can make that you may not want to become public.
01:51:30 [IanJ]
...we've punted on some of the stickiness...we addressed some issues first (such as "no more forms asking for personal data")
01:51:41 [IanJ]
...the delegation part becomes important.
01:51:53 [IanJ]
...about 2000 twitter apps now.
01:52:02 [IanJ]
...because you can delegate into it the list of people you are interested in.
01:52:28 [IanJ]
...we are trying to correlate patterns in various apps and get commonality.
01:52:48 [IanJ]
timbl: When you want to aggregate cal info there are two ways (1) go to a site or (2) run something on your laptop that goes to fetch info.
01:53:02 [IanJ]
...if you run on your laptop you don't have delegated authentication. No site knows everything about you.
01:53:20 [IanJ] don't give one site access to stuff, where another site might be confused about access boundaries.
01:53:41 [IanJ] do you see competition between cals on desktops and sites going in the future?
01:53:48 [IanJ]
KevinMarks: I would hope we could use the same protocols for both.
01:54:08 [IanJ]
...I can't get a remote site to call me back on my laptop..I have to open the connection first.
01:54:16 [IanJ]
...I have to do those things over a "hanging GET" from the browser.
01:54:27 [IanJ]
...rather than opening ports to listen to things
01:54:35 [IanJ]
...that militates towards going to the site.
01:54:52 [IanJ]
timbl: if you are a native desktop app, you can open a port.
01:54:56 [IanJ]
KevinMarks: It's a NAT problem.
01:55:02 [IanJ]
(e.g., from a cafe)
01:55:15 [IanJ]
KevinMarks: That's driving people to web services that feed info through.
01:55:27 [IanJ] can use sms, email, other protocols.
01:56:09 [IanJ]
KevinMarks: Once we can put up servers again (with ipv6), that will help.
01:56:21 [IanJ]
timbl: I think a lot has been architected differently because of NAT.
01:56:45 [IanJ]
KevinMarks: Bittorrent is arguably a layer that tries to game TCP.
01:57:14 [IanJ]
rohit: a couple of the big open id scares (some since resolved) hover around this issue.
01:57:46 [IanJ]
rrsagent, make minutes
01:57:46 [RRSAgent]
I have made the request to generate IanJ
01:58:20 [IanJ]
KevinMarks: A big chunk of this is constraining delegation to what is "should be."
01:58:35 [IanJ]
...may not be better, but is better than name/password and associated.
02:00:05 [IanJ]
02:00:13 [IanJ]
Topic: John Schneider on EXI
02:00:47 [marie]
02:00:50 [marie]
02:00:59 [IanJ]
John: Efficient XML Interchange
02:01:16 [IanJ]
John: Sometimes you need just the right problem to kick you to the next level of evolution.
02:01:22 [IanJ]
...web is always evolving to new places.
02:01:34 [IanJ]
...part of what EXI is meant to do is take the Web/XML to new places.
02:01:46 [KevinMarks]
my prezi is at if you can pardon my Flash
02:01:46 [IanJ]
...XML has been wildly successful: communities, vendors, open source
02:01:52 [IanJ]
02:02:45 [IanJ]
...we want to make it easier to use xml in environments with bandwidth/space limitations.
02:03:12 [IanJ]
...people wanted to be able to tap into communities and tools...30 or so binary xml technologies that popped up.
02:03:22 [IanJ]
...diversity is good for evolution but not particularly good for interop.
02:04:07 [IanJ]
...created EXI WG
02:04:12 [IanJ] first, nobody believed.
02:04:30 [IanJ]
...we brought experts together...9 months later and 147 pages of analysis, found one!
02:04:39 [IanJ]
[EXI Benchmarks]
02:04:57 [IanJ]
...lots of other specs published at w3c...will give interop across a broad set of use cases.
02:05:10 [IanJ]
...a lot of the people behind this were the people previously competing...fracturing of marketplace going away.
02:05:16 [IanJ]
...we are looking at one good solution.
02:05:31 [IanJ]
...source is info theory and formal language theory
02:05:43 [IanJ]
...the results are great:
02:05:49 [IanJ]
- bandwidth utilization
02:05:52 [IanJ]
- faster processor speeds
02:05:58 [IanJ]
- greater battery life
02:06:11 [IanJ]
...simultaneously optimizes a lot of things
02:06:16 [IanJ]
rrsagent, make minutes
02:06:16 [RRSAgent]
I have made the request to generate IanJ
02:06:36 [IanJ]
....we wanted to see how compares to compression....lots of test cases...better in every case and faster
02:06:48 [IanJ]
...if you compare to packed binary formats, it consistently beats those as well
02:06:55 [IanJ]
very efficient way to share data in general.
02:07:12 [IanJ]
[demo time]
02:07:29 [IanJ]
real world example to send 1M data to an aircraft
02:07:35 [IanJ]
With EXI was 1 second.
02:07:40 [IanJ]
Without EXI 2:23
02:08:01 [IanJ]
...there is some processing time on the other end.
02:08:10 [IanJ]
...but it's not process it faster on the other end, too
02:11:12 [caribou]
caribou has left #w3cdev
02:12:18 [LeslieB]
LeslieB has joined #w3cdev
02:20:16 [IanJ]
IanJ has joined #w3cdev
02:33:35 [Arron]
Arron has joined #w3cdev
02:48:45 [timbl]
timbl has joined #w3cdev
04:14:07 [rohit]
rohit has joined #w3cdev
04:17:28 [midnaz]
midnaz has left #w3cdev
04:25:28 [LeslieB]
LeslieB has joined #w3cdev
04:34:10 [Arron]
Arron has joined #w3cdev
06:11:32 [jun]
jun has joined #w3cdev
06:17:26 [Kangchan]
Kangchan has joined #w3cdev
06:55:40 [LeslieB]
LeslieB has joined #w3cdev
07:48:23 [tantek]
tantek has joined #w3cdev
07:53:35 [IanJ]
IanJ has joined #w3cdev
08:13:39 [maxf]
maxf has joined #w3cdev
09:35:57 [dsr]
dsr has joined #w3cdev