Options:
- # Session Start: Fri Dec 16 00:00:01 2011
- # Session Ident: #whatwg
- # [00:00] <sicking> TabAtkins: well.. it didn't used to
- # [00:00] <smaug____> zewt: how is that "much more direct" ?
- # [00:00] <zewt> how is it not?
- # [00:00] <zewt> "here's the thing. do it"
- # [00:00] <sicking> look at how people like google, facebook, jquery etc write their code. There's tons of objects and "classes"
- # [00:01] <smaug____> "here is the callback object, use it"
- # [00:01] * Quits: JonathanNeal (~Jonathan@dsl211-159-045.lax1.dsl.speakeasy.net) (Read error: Connection reset by peer)
- # [00:01] <sicking> anyhow, i'd rather argue on the mailing list than here
- # [00:01] <sicking> to allow broader participation
- # [00:01] * Quits: codeho (~codeho@178-26-69-223-dynip.superkabel.de) (Quit: codeho)
- # [00:01] <Hixie> you haven't argued here at all :-)
- # [00:01] <Hixie> at least, not against the point i was making
- # [00:01] <zewt> smaug____: no, it's "here's the object, call the function with the implicit name XXX on it"
- # [00:01] <sicking> Hixie: then you're not understanding my argument
- # [00:02] <zewt> i think a lot of us aren't :)
- # [00:02] <Hixie> sicking: of that i am sure
- # [00:02] <smaug____> I certainly can't understand Hixie's argument why handleEvent should be the method name everywhere.
- # [00:03] <annevk> what is wrong with that?
- # [00:03] <zewt> the only argument I've seen for eg. handleEvent instead of passing a function is so you don't have to tack ".bind(obj)" on the end of the object (which seems trivial to me)
- # [00:03] <zewt> er, end of the function name
- # [00:04] <zewt> (actually, I often just pre-bind my functions, eg. this.mousemove = this.mousemove.bind(this), all in one block in the ctor)
- # [00:04] * Joins: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net)
- # [00:04] <smaug____> annevk: if you're not handling any kind of "event", why the function name should be handleEvent? Also, different handleEvent functions would need to handle different kinds of parameters
- # [00:04] <annevk> you always handle some kind of "event"
- # [00:04] <annevk> in the broad sense of "event"
- # [00:05] <Hixie> smaug____: i've given several reasons. to summarise: authors would have to remember the names if it wasn't consistent, and can't rely on autocomplete in IDEs to do it for them, nor would it be easy to look up in documentation. Having multiple names would make using objects to do generic proxies harder as you've have to pass the callback name. Having different names would mean migrating from function-style to object-style in an environment that used proxies would me
- # [00:05] <smaug____> in the broad sense yes, but not in web api sense, I'd say
- # [00:05] <annevk> that's what a callback is after all
- # [00:05] <annevk> an event
- # [00:05] * Quits: miketaylr (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net) (Quit: miketaylr)
- # [00:05] <smaug____> where else in web apis is "event" use than in dom events
- # [00:05] * Quits: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net) (Max SendQ exceeded)
- # [00:05] <zewt> smaug____: my question is: if handleEvent is to be used for things other than DOM events (for legacy compatibility): why should it be used instead of (or in addition to) the API accepting a function? what's the benefit, weighed against complicating the API and adding avoidable style variances?
- # [00:06] * Joins: KillerX_ (~anant@70-36-146-71.dsl.dynamic.sonic.net)
- # [00:06] <Hixie> smaug____: [...] would mean migrating from function-style to object-style in an environment that used proxies would mean changing all the call sites as well. And finally, the main reason put forward for having different names -- being able to use one object for multiple callbacks -- is unrealistic as in practice you'd likely be needing multiple functions for the same callback type, not different callback types.
- # [00:07] <heycam> Hixie, at least if you are handling the same callback type it means you have the same argument list passed in -- and with DOM Events you can switch based on event.target/type
- # [00:07] <smaug____> zewt: consistency with event listeners, and also, apparently developers like callback objects, since it is used quite often
- # [00:07] <heycam> if you have different callback types handled by the same function, that's going to be impossible
- # [00:08] <Hixie> heycam: if you're doing a proxy thing that just e.g. counts accesses, you'd just be forwarding all the arguments to the "real" handler
- # [00:08] <Hixie> heycam: so it doesn't matter what the arguments are
- # [00:09] <zewt> smaug____: 1: event listeners do this (from my perspective) for legacy compatibility; "consistency with legacy APIs" is not interesting (if this was taken as an argument, it would lead to very, very ugly APIs); 2: but I'd like to know *why* they like it, what the rational reason for doing/supporting this is
- # [00:09] <heycam> Hixie, I think that is not nearly going to be the common case, where you want the same function to handle all different kinds of callbacks
- # [00:09] * Quits: agektmr (~Adium@p1181-ipbf3510marunouchi.tokyo.ocn.ne.jp) (Quit: Leaving.)
- # [00:09] <Hixie> heycam: using this at all is not going to be the common case
- # [00:11] <heycam> Hixie, my argument is that if you are going to support the object style, and one of the reasons being so that you can have a single object with state, that you should have different names otherwise its usefulness is diminished
- # [00:11] <Hixie> heycam: being able to dispatch based on the argument is a rarity -- only applies to DOM Event callbacks
- # [00:12] <Hixie> heycam: so i argue that having different names does basically nothing to help with that
- # [00:12] <Hixie> heycam: e.g. if i have many canvases and i call toBlob() on lots of them -- can't use the same object
- # [00:12] <smaug____> zewt: I would assume people like callback objects since it allows developer to encapsulate the needed functions and properties to an object easily
- # [00:12] <zewt> but you can do that with functions very easily too
- # [00:12] <Hixie> heycam: or if i use DataTransferItem's getAsString() on lots of DataTransferItems, can't use the same callback object
- # [00:12] <smaug____> zewt: you need bind explicitly
- # [00:12] <zewt> big deal
- # [00:12] <smaug____> need to
- # [00:13] <Hixie> heycam: JS functions can have state, so you don't need to use the object style to have a single object with state
- # [00:13] * Quits: rniwa (rniwa@nat/google/x-gkgazbzazqyflzqq) (Quit: rniwa)
- # [00:13] <zewt> one line of code per function, at most
- # [00:13] <heycam> Hixie, can't because of the semantics of your application? and because they don't pass an argument identifying the canvas/transferitem?
- # [00:13] <smaug____> zewt: it is, if you have simpler way to do it
- # [00:13] <Hixie> heycam: can't because there's no context in the argumentsl ist
- # [00:13] <zewt> this is not simpler, it's making the whole API more complex by having multiple ways to do things (which now everyone has to know)
- # [00:13] <zewt> that's not even in the ballpark of being worth it, for eliminating "this.func = this.func.bind(this)"
- # [00:15] <heycam> Hixie, I think that is a reasonable point. with DOM Events it is easy to have the one handleEvent function handle different sources of the event. but with other callback APIs we have, that is not possible.
- # [00:15] <heycam> Hixie, so we already have some limitation in the set of handlers you can put on a single object because of that
- # [00:16] <zewt> also that doesn't help with events at all (since events all use the same callback name), so it doesn't seem to explain why people use it
- # [00:16] <smaug____> (there is a reason why mutationobserver callback has mutationobserver as a parameter)
- # [00:16] <heycam> Hixie, and you have to be "lucky" that you want to handle either only a single source per callback method name
- # [00:16] <heycam> s/either//
- # [00:17] <Hixie> heycam: i have yet to see a single realistic example of a time where you would be so lucky. all the cases i've looked at are cases where you'd be using multiple callbacks of the same type.
- # [00:17] <Hixie> heycam: (e.g. DOM Events, toBlob(), etc)
- # [00:17] * Quits: Ms2ger (~Ms2ger@91.181.102.203) (Quit: nn)
- # [00:20] <heycam> Hixie, yeah so I'm saying that with DOM Events (and apparently as smaug____ says with mutation observers) you get a parameter that lets you differentiate the source of the callback
- # [00:20] <heycam> I would say then that to avoid this problem of using the same callback method for different sources, all these other callback APIs signatures should grow an argument to indicate the source
- # [00:20] <Hixie> heycam: and i'm arguing that this means that the argument saying that we need different names so one object can be used with different callback types is too weak to consider, especially against all the other points raised against having multiple names.
- # [00:20] <heycam> (if you did indeed want to ensure that your single object can handle all kinds of different sources and callback types)
- # [00:20] <zewt> heycam: i've never found that to be a problem in practice (not one worth bloating every callback API for, certainly)
- # [00:20] <Hixie> i'm not convinced it's an interesting use case. just use closures.
- # [00:20] <heycam> Hixie, I would agree it is weaker. (weak enough? not sure. maybe.)
- # [00:21] * Quits: graememcc (~chatzilla@host31-53-72-206.range31-53.btcentralplus.com) (Quit: ChatZilla 0.9.87 [Firefox 8.0/20111115204015])
- # [00:22] <zewt> is "calling bind() is sort of annoying" the only argument?
- # [00:22] <zewt> or did I miss others
- # [00:23] <heycam> zewt, let's say you have a single object with multiple callback methods on it. you at least have to duplicate the method names on each callback registration function call, too.
- # [00:23] * Joins: rniwa (rniwa@nat/google/x-tuwkqtneoguyyblg)
- # [00:23] <heycam> so intead of addEventListener(type, obj, false) you need to do addEventlistener(type, obj.functionname.bind(obj), false)
- # [00:24] <zewt> heycam: let's back up a step, you're talking about two separate things there
- # [00:24] <heycam> (not saying that is strong, just pointing out it's not only ".bind()")
- # [00:24] <zewt> 1: having to say obj.functionname instead of obj, and 2: having to tack on bind(obj)
- # [00:24] <heycam> zewt, it's the same thing. you need both, right? :)
- # [00:24] <zewt> 1: i think is perfectly fine and a good API, in a language with first-class functions
- # [00:24] <Hixie> it is unrealistic to expect that someone will magically have a perfect mapping of types of callbacks to actuall callback functions
- # [00:24] <Hixie> even if one did use objects one would _still_ have to pick the right callback
- # [00:25] <zewt> i mean, i think foo(obj.functionName) is a much much cleaner, more obvious API than foo(obj) where "functionName" is baked into the API, at least when there's only one callback involved
- # [00:25] <heycam> Hixie, "pick the right callback"? didn't quite follow that.
- # [00:25] <Hixie> e.g. addEventListener('load', callbackObjects.myLoadCallbackObject); addEventListener('click', callbackObjects.myClickCallbackObject);
- # [00:25] <zewt> 2: bind(obj)--yeah it's "sort of annoying" but that's about it
- # [00:26] * Quits: MikeSmith (~MikeSmith@EM114-48-31-164.pool.e-mobile.ne.jp) (Quit: Make the road by walking. (B-side: Tired of Fighting))
- # [00:26] * Joins: MikeSmith (~MikeSmith@EM114-48-31-164.pool.e-mobile.ne.jp)
- # [00:27] * Joins: KillerX__ (~anant@70-36-146-71.dsl.dynamic.sonic.net)
- # [00:27] <heycam> Hixie, it is true you would still need to switch based on say the .type of the event object
- # [00:28] <heycam> Hixie, (though you could do that in your handleEvent pretty simply by looking up a property based on the type, and calling that function if it exists.)
- # [00:28] * Quits: KillerX_ (~anant@70-36-146-71.dsl.dynamic.sonic.net) (Ping timeout: 240 seconds)
- # [00:28] <annevk> heycam: https://bugs.webkit.org/show_bug.cgi?id=74648
- # [00:28] <annevk> heycam: would prolly be good to decide on "|" or "or"
- # [00:28] <heycam> zewt, I think the clarity is a good point, where you don't have the functionName listed in your registration function call so it is less obvious exactly what is going to get called
- # [00:28] <zewt> i don't think this.handleEvent = function(e) { switch(e.type) { case "load": this.onLoad(); break; case "click": this.onClick(); } } is a win over a couple bind() calls :)
- # [00:29] <annevk> heycam: oh, and define unions :)
- # [00:29] <Hixie> you're arguing that encouraging a style where all event handling goes through one method that dispatches on target and type is better than encouraging a style where the browser just sends the event to the right code itself?
- # [00:29] <heycam> annevk, don't you mean we have to decide whether to include unions or not first? :)
- # [00:29] <heycam> annevk, I'm going to have to treat unions, overrides, [AllowAny] all at once
- # [00:29] <heycam> since they all interrelate
- # [00:29] <zewt> (unions? in javascript? whaaaat)
- # [00:29] <annevk> heycam: yeah
- # [00:30] <heycam> Hixie, I am not arguing that. I am just saying there that it doesn't matter so much that all DOM Events are smushed into the one handleEvent, because you can easily discriminate based on type/target and dispatch to the specific handler function based on that.
- # [00:31] <zewt> http://zewt.org/curves/draggable.js i do this a lot; it's a little annoying to have to, but none of this is better
- # [00:31] <annevk> zewt: in IDL so not every function will implement its own rudimentary argument checks
- # [00:31] <zewt> annevk: hmm
- # [00:31] <Hixie> heycam: I am saying that it is terrible if all DOM Events are smushed into one method, because you have to discriminate based on type/target and dispatch to the specific handler function based on that.
- # [00:32] <Hixie> heycam: instead of just registering them in the first place and not having to do any of that work at event handling time.
- # [00:32] <Hixie> heycam: seems like a pretty strong example of why you would not want to use an object here
- # [00:32] <annevk> obviously you would use one object per event type
- # [00:33] * Quits: wesbos (~wesbos@24.52.240.143) (Quit: Linkinus - http://linkinus.com)
- # [00:33] <smaug____> AFAIK, it is pretty common to have an object with handleEvent to handle different event types and event targets
- # [00:33] <heycam> Hixie, the reason you use an object is to get simple access to your state shared across multiple handlers
- # [00:34] <Hixie> heycam: the reason you use a closure is to get simple access to your state shared across multiple handlers too
- # [00:34] <zewt> ... but that's what objects are for (and we've looped the conversation)
- # [00:34] * Quits: hoodow (~hoodow@pdpc/supporter/active/hoodow) (Ping timeout: 252 seconds)
- # [00:35] <zewt> (er, what hixie said, of course)
- # [00:35] <zewt> i mean using bind() gives you an object to share state on in exactly the same way
- # [00:35] <heycam> so that comes back to zewt's question from before
- # [00:35] <annevk> Velmont: heh, just noticed you reused some of the code of my tests
- # [00:35] <Hixie> you don't need bind() even
- # [00:35] * Joins: hoodow (~hoodow@2001:41d0:2:b214:20::5)
- # [00:35] * Quits: hoodow (~hoodow@2001:41d0:2:b214:20::5) (Changing host)
- # [00:35] * Joins: hoodow (~hoodow@pdpc/supporter/active/hoodow)
- # [00:36] <heycam> about whether avoiding bind() is the real difference
- # [00:36] <heycam> Hixie, sure
- # [00:36] <Hixie> just have the state in scope
- # [00:36] <heycam> Hixie, just closed over variables
- # [00:36] <heycam> right
- # [00:36] <zewt> Hixie: that's just a stylistic difference
- # [00:36] <zewt> but yes
- # [00:36] <annevk> Velmont: HTTP status "699 WAY OUTTA RANGE" :)
- # [00:36] <zewt> both ways work
- # [00:36] <Hixie> zewt: the whole discussion is about stylistic differences
- # [00:36] <Hixie> zewt: all of these ways work
- # [00:36] <heycam> yes
- # [00:36] <zewt> i don't like writing large blocks of code as closures; i prefer member functions
- # [00:36] <heycam> I think that's why I dislike this issue, it's pretty much only style :)
- # [00:36] <heycam> in fact that's most of the difficult to resolve web idl issues :/
- # [00:37] <Hixie> i'm not arguing that we shouldn't allow authors to use objects (though i certainly wouldn't be sad if we only allowed functions)
- # [00:37] <Hixie> i'm just saying that if we do allow objects, we should make them consistent so you know it's always handleEvent()
- # [00:37] <Hixie> and don't have to look it up each time
- # [00:37] <heycam> Hixie, I am arguing that we shouldn't allow authors to use objects if we use the same name, since it makes them less useful. (but I did say that before.)
- # [00:37] <zewt> i'd argue that the handleEvent thing shouldn't be propagated to new APIs
- # [00:37] <Hixie> and don't have to pass the method name around when you're making proxies
- # [00:37] <Hixie> heycam: i'd be fine with that too
- # [00:37] <heycam> Hixie, and not only less useful, but definitely not useful enough to support
- # [00:37] <zewt> (i mean, APIs other than DOM event listeners)
- # [00:38] <Hixie> heycam: i'm not sure the object style is useful enough to support at all, modulo compat needs
- # [00:38] <heycam> (btw I did mention on the list previously that I am mostly on the side of "only allow functions", but I am interested in teasing out the arguments here)
- # [00:38] <smaug____> consistency in APIs is important
- # [00:38] <zewt> the entire handleEvent thing feels like an API designed by a Java programmer, who's only ever used java Runnable objects and didn't understand first-class functiosn at all
- # [00:38] <Hixie> heycam: but if we did have it, i think it'd be more useful to have them all the same name than have different names
- # [00:39] <Hixie> zewt: it _is_ a java thing
- # [00:39] <Hixie> zewt: the DOM was originally designed for Java
- # [00:39] <zewt> i try to avoid actually knowing about java things; it's one of the worst, most painful languages I've ever spent time in
- # [00:39] <heycam> is that true? or is it just that it was designed with OMG IDL which doesn't allow non-Java-like interfaces to be designed?
- # [00:39] <zewt> my conclusion is always: Java Hates Programmers, And Wants To Hurt You
- # [00:40] * Quits: hoodow (~hoodow@pdpc/supporter/active/hoodow) (Excess Flood)
- # [00:40] * Joins: hoodow (~hoodow@2001:41d0:2:b214:20::5)
- # [00:40] * Quits: hoodow (~hoodow@2001:41d0:2:b214:20::5) (Changing host)
- # [00:40] * Joins: hoodow (~hoodow@pdpc/supporter/active/hoodow)
- # [00:42] <Hixie> heycam: as far as i can tell, it was designed for Java implementations, with JS as a secondary concern.
- # [00:42] <Hixie> heycam: or at least, was designed to have Java as at least as important a concern as JS
- # [00:43] * Quits: Morphous (jan@unaffiliated/amorphous) (Ping timeout: 252 seconds)
- # [00:43] * Quits: smaug____ (~chatzilla@YYKMMMDCCXVI.gprs.sl-laajakaista.fi) (Ping timeout: 276 seconds)
- # [00:44] * Joins: smaug____ (~chatzilla@YYYKMDCCXXV.gprs.sl-laajakaista.fi)
- # [00:45] * Joins: Lachy (~Lachy@cm-84.215.59.50.getinternet.no)
- # [00:52] <smaug____> class attribute uses space separated class names
- # [00:52] <smaug____> in which case are some names separated using , ?
- # [00:53] * Joins: miketaylr (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net)
- # [00:54] * Quits: ksweeney (~Adium@nyv-exweb.iac.com) (Quit: Leaving.)
- # [00:55] <smaug____> nm, found
- # [00:55] <Hixie> smaug____: <input accept> <input type=email multiple value>, <meta name=keywords content>
- # [00:56] <Hixie> i think that's it
- # [00:56] * Quits: Peter` (~peter@nishino.lvp-media.com) (Ping timeout: 255 seconds)
- # [00:56] <Hixie> <area coords> maybe also
- # [00:57] <smaug____> I was just thinking to change allowfullscreen to allow="fullscreen pointerlock"
- # [00:57] <smaug____> and whether it should use space or comma
- # [00:57] * Quits: ezoe (~ezoe@203-140-88-216f1.kyt1.eonet.ne.jp) (Ping timeout: 248 seconds)
- # [00:57] <smaug____> not that it matters much
- # [00:57] <smaug____> but apparently space is used more often
- # [00:57] * Joins: Morphous (jan@unaffiliated/amorphous)
- # [00:58] <Hixie> definitely space
- # [00:58] <Hixie> and yeah, that would make much more sense than allowfullscreen allowpointerlock
- # [00:58] <Hixie> and would go well with the sandbox="" attribute
- # [01:00] <smaug____> annevk: ^^
- # [01:02] <annevk> wfm
- # [01:05] <zewt> i sure wish the whole "your download will start in *pointless delay*" would die
- # [01:05] * Quits: samol (~samol@82.139.164.152) (Quit: Wychodzi)
- # [01:06] * Quits: hasather_ (~hasather_@84.38.144.96) (Remote host closed the connection)
- # [01:06] * Joins: hasather_ (~hasather_@84.38.144.96)
- # [01:06] * Joins: hasathe__ (~hasather_@84.38.144.96)
- # [01:06] * Quits: hasather_ (~hasather_@84.38.144.96) (Read error: Connection reset by peer)
- # [01:07] * Quits: hasathe__ (~hasather_@84.38.144.96) (Remote host closed the connection)
- # [01:07] * Quits: othermaciej (~mjs@17.245.90.16) (Quit: othermaciej)
- # [01:08] * Joins: hasather_ (~hasather_@84.38.144.96)
- # [01:09] * Joins: othermaciej (~mjs@17.245.90.16)
- # [01:09] * Quits: WeirdAl (~chatzilla@g2spf.ask.info) (Quit: ChatZilla 0.9.87 [Firefox 8.0/20111104165243])
- # [01:10] * Quits: hasather_ (~hasather_@84.38.144.96) (Remote host closed the connection)
- # [01:10] * Joins: hasather_ (~hasather_@84.38.144.96)
- # [01:12] * Joins: Peter` (~peter@nishino.lvp-media.com)
- # [01:13] <roc> smaug____: wfm too
- # [01:14] <smaug____> k
- # [01:16] <roc> actually I think it would be slightly neater to have "sandbox" be a boolean attribute and have allow="forms same-origin" etc
- # [01:16] <roc> but maybe it's too late for that
- # [01:17] <annevk> Opera does not have sandbox
- # [01:17] <annevk> does IE?
- # [01:18] <roc> I believe IE10 does
- # [01:18] * Quits: gwicke (~gabriel@212.255.28.36) (Quit: Bye!)
- # [01:19] <smaug____> yes, IE10 has http://msdn.microsoft.com/en-us/library/hh673561%28v=VS.85%29.aspx
- # [01:19] * Joins: KillerX_ (~anant@70-36-146-71.dsl.dynamic.sonic.net)
- # [01:19] <annevk> guess there goes the idea for a better syntax
- # [01:20] <roc> well, IE10's not out yet
- # [01:20] <zewt> roc: is there really much benefit to that over just having regular attributes? since that's how everything else does it...
- # [01:20] <annevk> yeah, and we could transition from one to the other somehow
- # [01:20] * Joins: JonathanNeal (~Jonathan@dsl211-159-045.lax1.dsl.speakeasy.net)
- # [01:21] <roc> a browser could easily support both syntaxes
- # [01:21] <smaug____> yeah
- # [01:21] <zewt> but why have two syntaxes?
- # [01:21] * Quits: KillerX__ (~anant@70-36-146-71.dsl.dynamic.sonic.net) (Ping timeout: 248 seconds)
- # [01:21] <annevk> zewt: currently it's sandbox=allow-scripts
- # [01:21] <annevk> zewt: or sandbox="allow-scripts allow-forms"
- # [01:21] <annevk> if we are going to have an allow attribute
- # [01:21] <annevk> letting that take "scripts" and "forms" seems way better
- # [01:22] <annevk> (and other values)
- # [01:22] <roc> zewt: it seems cleaner and easier to use to have all the permission-granting following the same pattern instead of some permissions only working in the sandbox attribute and others working in the "allow" attribute
- # [01:22] <Hixie> i prefer keeping the things that sandbox="" turns off separate from the things that allow="" turns on
- # [01:22] <Hixie> but i think that ship has sailed, anyway
- # [01:22] <roc> sandbox doesn't turn things off, it turns things on
- # [01:22] <roc> the things in its attribute value
- # [01:23] <roc> so now you have to know, for each thing you want to turn on, whether it belongs with sandbox or not
- # [01:23] <Hixie> sandbox="" turns things off, its value can then turn things back on
- # [01:23] <annevk> which it first disables
- # [01:23] * Quits: hasather_ (~hasather_@84.38.144.96) (Remote host closed the connection)
- # [01:23] <Hixie> as opposed to allow="", which turns things on that are by default off
- # [01:23] * Joins: hasather_ (~hasather_@84.38.144.96)
- # [01:25] <roc> as an author, if I've got a sandboxed iframe and I want to add fullscreen permission and forms permission, say, I have to know that the former doesn't belong in "sandbox" and the latter does. It's no biggie, but it's unnecessary complexity
- # [01:27] <zewt> requesting fullscreen permission in markup would be bizarre anyway
- # [01:27] <zewt> and way outside the general permissions model that's been used so far (ask when you need it, don't bundle up permission requests and ask at the start)
- # [01:28] <roc> this is different
- # [01:28] <smaug____> (this has nothing to do with requesting permission)
- # [01:28] * Quits: miketaylr (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net) (Quit: miketaylr)
- # [01:28] * Quits: pererik (~pe@unaffiliated/pererik) (Ping timeout: 252 seconds)
- # [01:28] <roc> this is about the outer page allowing the content in an <iframe> to go fullscreen
- # [01:28] * Quits: hasather_ (~hasather_@84.38.144.96) (Ping timeout: 255 seconds)
- # [01:29] <roc> it's about granting permission, not requesting it
- # [01:30] * Joins: pererik (~pe@unaffiliated/pererik)
- # [01:32] <zewt> Hixie: fwiw, if there's both sandbox="allow-things" and allow="other-things", i'd change one "allow" or the other (to "permit" or something)
- # [01:34] <Hixie> i don't think it'd be wise to change sandbox="" at this stage
- # [01:34] <Hixie> churn in specs just pisses people off
- # [01:34] <Hixie> especially once they've implement it
- # [01:35] <Hixie> and pissing off implementors is not a good way to get interoperability in the future
- # [01:35] * Joins: shans (shanesteph@nat/google/x-auryefhtcfmkgzuo)
- # [01:35] <zewt> two ways to go though--is @allow newer?
- # [01:35] <Hixie> allow="" doesn't exist yet
- # [01:35] <zewt> then that'd be the one to change
- # [01:37] <annevk> I do think though that if a feature is not deployed everywhere yet changing it should be acceptable even though not ideal
- # [01:37] * Joins: jdaggett (~jdaggett@ai126212021218.5.tik.access-internet.ne.jp)
- # [01:38] <annevk> If you look at the kind of relatively minor details that trip people up... If we can simplify, we should
- # [01:38] * Joins: necolas (~necolas@5e0c7fb2.bb.sky.com)
- # [01:40] * Joins: erlehmann (~erlehmann@89.204.137.153)
- # [01:43] * Quits: Peter` (~peter@nishino.lvp-media.com) (Ping timeout: 276 seconds)
- # [01:52] <zewt> uhh, what? javascript:alert("foo") in FF8 is ... not finding alert()
- # [01:53] <gavin> javascript: URLs entered into the lcoation bar in Firefox 6 and later don't inherit the context of the current page
- # [01:53] <zewt> braaaaaaaindamage
- # [01:53] <gavin> they are also unfortunately not run in a DOM context at all, so no window.alert
- # [01:53] <gavin> javascript:1+1 works, though!
- # [01:53] <zewt> "we can't remove this! let's just utterly break it, because that's okay"
- # [01:53] <zewt> ugh.
- # [01:54] <gavin> we broke it because users were getting pwned on facebook
- # [01:54] <zewt> no, really. ugh.
- # [01:54] <smaug____> I thought other browsers will do the same
- # [01:54] * Quits: Lachy (~Lachy@cm-84.215.59.50.getinternet.no) (Quit: Computer has gone to sleep.)
- # [01:54] <gavin> they did (some in less effective ways)
- # [01:54] <zewt> (trying to write some test instrumentation dumping javascript: stuff into the address bar to avoid having to modify the page directly, which should work just fine)
- # [01:54] <smaug____> and yes, it is really annoying, though I use javascript: mainly as a calculator
- # [01:55] <roc> shift-ctrl-K, go crazy in the Web Console
- # [01:55] <roc> it's actually less to type than "javascript:"
- # [01:55] <zewt> that'll be different in every browser (vs. automating alt-d + type stuff)
- # [01:56] <zewt> no, i was trying to automate keystrokes to run diagnostic code on different browsers; javascript: in the address bar is one approach that shouldn't have been massively different in each browser
- # [01:57] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
- # [01:58] <roc> various Firefox extensions let you remap keys
- # [01:59] <zewt> this is automation from an external script
- # [01:59] <kbrosnan> javascript: is an attack vector
- # [02:01] <zewt> not a reason to not have an about:config to revert this nonsense for the people who are 1: not stupid enough to copy and paste whatever people tell them to and 2: actually do use browser features that have been around forever
- # [02:02] <zewt> guess i'll just need more browser special cases; oh well
- # [02:06] * Quits: MikeSmith (~MikeSmith@EM114-48-31-164.pool.e-mobile.ne.jp) (Ping timeout: 244 seconds)
- # [02:07] * Quits: ojan (ojan@nat/google/x-tpkzunvwzwpxfvbj) (Quit: ojan)
- # [02:10] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Ping timeout: 245 seconds)
- # [02:10] * Joins: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp)
- # [02:10] * Quits: othermaciej (~mjs@17.245.90.16) (Quit: othermaciej)
- # [02:10] * Joins: MikeSmith (~MikeSmith@EM111-191-207-14.pool.e-mobile.ne.jp)
- # [02:13] * Joins: othermaciej (~mjs@17.245.90.16)
- # [02:17] * Quits: ehsan (~ehsan@66.207.208.98) (Remote host closed the connection)
- # [02:20] * nunnun is now known as nunnun_away
- # [02:22] * Quits: sicking (~chatzilla@c-98-210-155-80.hsd1.ca.comcast.net) (Ping timeout: 276 seconds)
- # [02:23] * Joins: sicking (~chatzilla@adsl-63-204-27-202.dsl.snfc21.pacbell.net)
- # [02:28] * Quits: othermaciej (~mjs@17.245.90.16) (Quit: othermaciej)
- # [02:31] * Quits: astearns (~anonymous@sjfw1.adobe.com) (Quit: astearns)
- # [02:36] * Joins: roc_ (~chatzilla@121.98.230.221)
- # [02:38] * Quits: roc (~chatzilla@121.98.230.221) (Ping timeout: 244 seconds)
- # [02:38] * roc_ is now known as roc
- # [02:40] * Quits: ap_ (~ap@17.212.155.203) (Quit: ap_)
- # [02:51] * Quits: nessy (~Adium@124-169-149-59.dyn.iinet.net.au) (Quit: Leaving.)
- # [02:51] * Quits: drublic (~drublic@frbg-5d84fddd.pool.mediaWays.net) (Remote host closed the connection)
- # [02:54] * Quits: sicking (~chatzilla@adsl-63-204-27-202.dsl.snfc21.pacbell.net) (Ping timeout: 244 seconds)
- # [02:57] * Quits: dbaron (~dbaron@nat/mozilla/x-zfopgpvrbhlmqdoi) (Quit: 8403864 bytes have been tenured, next gc will be global.)
- # [02:59] * Quits: tndH (~Rob@cpc16-seac19-2-0-cust234.7-2.cable.virginmedia.com) (Quit: ChatZilla 0.9.87-rdmsoft [XULRunner 1.9.0.1/2008072406])
- # [03:01] * Joins: sicking (~chatzilla@c-98-210-155-80.hsd1.ca.comcast.net)
- # [03:02] * Joins: KevinMarks (~KevinMark@204.14.239.221)
- # [03:10] <MikeSmith> hmm
- # [03:10] <MikeSmith> http://www.securityweek.com/ca-industry-group-creates-new-standard-issuance-ssltls-certificates
- # [03:10] <MikeSmith> http://cabforum.org/Baseline_Requirements_V1.pdf
- # [03:10] <MikeSmith> Are browser vendors actually still participating the CA/Browser Forum?
- # [03:11] * zewt clicks link, gets a "subscribe to us" nag and hits control-f4
- # [03:12] * Joins: karega|aniasis (karegaani@cpe-70-123-102-109.tx.res.rr.com)
- # [03:20] * Quits: cgcardona (~cgcardona@unaffiliated/cgcardona) (Quit: cgcardona)
- # [03:30] * nunnun_away is now known as nunnun
- # [03:31] * Quits: rillian_lime (~rillian@184.71.166.126) (Remote host closed the connection)
- # [03:32] * Parts: JonathanNeal (~Jonathan@dsl211-159-045.lax1.dsl.speakeasy.net)
- # [03:33] * Joins: dbaron (~dbaron@173-228-28-129.dsl.dynamic.sonic.net)
- # [03:34] * Joins: miketaylr (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net)
- # [03:34] * Joins: nessy (~Adium@124-169-149-59.dyn.iinet.net.au)
- # [03:35] * nunnun is now known as nunnun_away
- # [03:44] * Quits: necolas (~necolas@5e0c7fb2.bb.sky.com) (Remote host closed the connection)
- # [03:44] * Joins: rillian_lime (~rillian@184.71.166.126)
- # [03:44] * Quits: karega|aniasis (karegaani@cpe-70-123-102-109.tx.res.rr.com) (Ping timeout: 248 seconds)
- # [03:47] * KillerX_ is now known as KillerX
- # [03:53] * Quits: rillian_lime (~rillian@184.71.166.126) (Remote host closed the connection)
- # [03:54] * Quits: miketaylr (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net) (Quit: miketaylr)
- # [03:54] * Quits: jdaggett (~jdaggett@ai126212021218.5.tik.access-internet.ne.jp) (Quit: jdaggett)
- # [03:58] * Joins: rillian_lime (~rillian@184.71.166.126)
- # [03:59] * Quits: smaug____ (~chatzilla@YYYKMDCCXXV.gprs.sl-laajakaista.fi) (Ping timeout: 248 seconds)
- # [04:00] * Joins: cgcardona (~cgcardona@unaffiliated/cgcardona)
- # [04:01] * Quits: cgcardona (~cgcardona@unaffiliated/cgcardona) (Client Quit)
- # [04:02] * Joins: gavinc_ (~gavin@50-0-76-242.dsl.dynamic.sonic.net)
- # [04:05] * Quits: gavinc (~gavin@50-0-76-242.dsl.dynamic.sonic.net) (Ping timeout: 240 seconds)
- # [04:06] * Quits: rniwa (rniwa@nat/google/x-tuwkqtneoguyyblg) (Quit: rniwa)
- # [04:06] * Joins: mkanat (mkanat@nat/google/x-abgzenuamytroeaf)
- # [04:07] * Quits: jamesr (jamesr@nat/google/x-odjlmssplaexmvhd) (Quit: jamesr)
- # [04:21] * Quits: jdong__ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:22] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:22] * Joins: jdong__ (~quassel@124.126.70.32)
- # [04:27] * Quits: jwalden (~waldo@nat/mozilla/x-cftiklhdgvkbydwq) (Quit: back early)
- # [04:28] * Quits: jdong__ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:28] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:28] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:28] * Joins: jdong__ (~quassel@124.126.70.32)
- # [04:28] * Joins: jdong___ (~quassel@124.126.70.32)
- # [04:30] * Quits: jdong___ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:30] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:30] * Quits: jdong__ (~quassel@124.126.70.32) (Read error: Connection reset by peer)
- # [04:32] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:32] * Joins: jdong__ (~quassel@124.126.70.32)
- # [04:32] * Joins: jdong___ (~quassel@124.126.70.32)
- # [04:32] * Joins: jdong____ (~quassel@124.126.70.32)
- # [04:32] * Quits: jdong___ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:32] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:32] * Quits: jdong__ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:32] * Quits: jdong____ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:34] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:36] * Joins: othermaciej (~mjs@c-24-6-209-189.hsd1.ca.comcast.net)
- # [04:37] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:39] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:39] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:40] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:40] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:40] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:41] * Joins: jdong__ (~quassel@124.126.70.32)
- # [04:41] * Quits: jdong__ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:41] * Joins: jdong__ (~quassel@124.126.70.32)
- # [04:41] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:41] * Quits: jdong__ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:43] * Joins: karega|aniasis (~karegaani@cpe-70-123-102-109.tx.res.rr.com)
- # [04:43] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:43] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [04:43] * Joins: jdong_ (~quassel@124.126.70.32)
- # [04:49] * Joins: scor (~scor@drupal.org/user/52142/view)
- # [04:49] * Joins: ryanseddon (u1832@gateway/web/irccloud.com/x-flzidclcbyfbqbbg)
- # [04:52] * Joins: jochen___ (jochen@nat/google/x-ocncimlrqvnoviej)
- # [04:53] * Quits: scor (~scor@drupal.org/user/52142/view) (Client Quit)
- # [04:55] * Quits: jochen__ (jochen@nat/google/x-sdzlxfzobocmpzda) (Ping timeout: 268 seconds)
- # [04:55] * jochen___ is now known as jochen__
- # [05:00] * Quits: KevinMarks (~KevinMark@204.14.239.221) (Quit: The computer fell asleep)
- # [05:01] * Quits: jdong_ (~quassel@124.126.70.32) (Remote host closed the connection)
- # [05:01] * Joins: jdong_ (~quassel@124.126.70.32)
- # [05:02] * Quits: dave_levin (dave_levin@nat/google/x-jvcawnqbeasmpran) (Quit: dave_levin)
- # [05:20] * Quits: nessy (~Adium@124-169-149-59.dyn.iinet.net.au) (Quit: Leaving.)
- # [05:38] * Joins: jamesr (~jamesr@173-164-251-190-SFBA.hfc.comcastbusiness.net)
- # [05:39] * Quits: KillerX (~anant@70-36-146-71.dsl.dynamic.sonic.net) (Quit: KillerX)
- # [05:47] * Quits: cpearce (~chatzilla@60.234.54.74) (Ping timeout: 240 seconds)
- # [05:51] * Quits: karega|aniasis (~karegaani@cpe-70-123-102-109.tx.res.rr.com) (Ping timeout: 252 seconds)
- # [05:52] * heycam is now known as heycam|away
- # [05:56] * nunnun_away is now known as nunnun
- # [06:01] * Quits: rillian_lime (~rillian@184.71.166.126) (Remote host closed the connection)
- # [06:04] * Quits: jamesr (~jamesr@173-164-251-190-SFBA.hfc.comcastbusiness.net) (Quit: jamesr)
- # [06:09] * Joins: jdaggett (~jdaggett@ad009033.dynamic.ppp.asahi-net.or.jp)
- # [06:11] * Joins: jamesr (~jamesr@173-164-251-190-SFBA.hfc.comcastbusiness.net)
- # [06:11] * Quits: jamesr (~jamesr@173-164-251-190-SFBA.hfc.comcastbusiness.net) (Client Quit)
- # [06:12] * Joins: rniwa (~rniwa@216.239.45.130)
- # [06:18] * nunnun is now known as nunnun_away
- # [06:19] * nunnun_away is now known as nunnun
- # [06:23] * Joins: Areks (~Areks@rs.gridnine.com)
- # [06:25] * Joins: msankhala (~mutant@unaffiliated/msankhala)
- # [06:28] * Parts: deane (~deanedrid@124-197-11-114.callplus.net.nz)
- # [06:37] * Quits: mkanat (mkanat@nat/google/x-abgzenuamytroeaf) (Quit: Ex-Chat)
- # [06:38] * Joins: nonge (~nonge@p5082B889.dip.t-dialin.net)
- # [06:40] * nunnun is now known as nunnun_away
- # [06:40] * nunnun_away is now known as nunnun
- # [06:47] * nunnun is now known as nunnun_away
- # [06:47] * nunnun_away is now known as nunnun
- # [06:50] * nunnun is now known as nunnun_away
- # [06:50] * nunnun_away is now known as nunnun
- # [07:10] * nunnun is now known as nunnun_away
- # [07:21] * Joins: jacobolus (~jacobolus@c-76-102-85-42.hsd1.ca.comcast.net)
- # [07:23] * Joins: agektmr (~Adium@u725084.xgsnu4.imtp.tachikawa.mopera.net)
- # [07:23] * MikeSmith reads
- # [07:23] * MikeSmith reads http://www.w3.org/2011/webtv/wiki/MPTF/Netflix_Content_Protection
- # [07:24] <zewt> is anyone actually taking that seriously? heh
- # [07:26] <zewt> drm being fundamentally and irreconcilably incompatible with open source browsers, apis specifically to support pieces of it seem completely useless (unless browsers become less open, and anything encouraging that is bad)
- # [07:28] <Hixie> not to mention it being user-hostile
- # [07:28] <Hixie> i don't understand how any engineer who works on drm tech can live with themselves
- # [07:29] <zewt> i've worked on drm :( (but for turnkey arcade systems, not consumer stuff)
- # [07:31] <zewt> (and given that the underlying game engine was, for the most part, released open source, I can live with that)
- # [07:31] * Joins: Evanescence (~Evanescen@122.237.23.143)
- # [07:32] <Hixie> the vast majority of arcade machines i see these days are privately owned
- # [07:32] <Hixie> so it's still "consumer stuff"
- # [07:33] <zewt> $5000+ machines aren't consumer products, no matter who ends up buying them in the end
- # [07:34] <Hixie> cars aren't consumer products? :-)
- # [07:34] <Hixie> houses aren't consumer products? :-)
- # [07:34] <zewt> different scale of product :)
- # [07:34] <Hixie> i don't see how
- # [07:34] <zewt> consumer games are $50, not $5000
- # [07:35] <Hixie> my point is that if it's privately owned, the drm would stop someone from making private modifications to their property
- # [07:35] <zewt> also vastly different scale (we'd have been happy to sell a thousand units)
- # [07:36] <zewt> i know all the arguments; at least in that case (the one I happen to have direct experience with), the practicalities had to come before principle
- # [07:36] <Hixie> (and if it's not a consumer product, why bother with drm? a commercial competitor who is so beyond the law that the legal system is not a sufficient recourse is certainly not gonna have any trouble reverse-engineering some obfuscation)
- # [07:37] <zewt> because the variables don't work out that way
- # [07:37] <Hixie> (in fact such a competitior is far more likely to just steal the code/assets/designs/whatever straight from the source repository than bother with buying an actual product)
- # [07:37] <Hixie> (just look at how movies get redistributed before they're even commercially available)
- # [07:37] <zewt> there are plenty of people who would pirate our game if it was easy to do (just a new HDD), but nobody with the expertese to break it was actually trying
- # [07:38] <Hixie> and how many of those people actually bought copies instead?
- # [07:38] <zewt> versions of our game where the encryption was broken sold significantly less than the ones where it wasn't (don't have exact numbers, probably couldn't say them if I did)
- # [07:39] <zewt> also, enforcing copyright internationally takes a lot more resources than domestically
- # [07:39] * Joins: hober2 (~ted@unaffiliated/hober)
- # [07:40] <Hixie> should've just paid for a security guard for each unit to stand there with a cane and beat anyone who tried to open the box, instead
- # [07:40] * Quits: hober (~ted@unaffiliated/hober) (Read error: Connection reset by peer)
- # [07:40] <zewt> then we'd need our own legal defense team. heh
- # [07:40] <Hixie> anyway
- # [07:40] <Hixie> the ends don't justify the means
- # [07:40] <Hixie> consumer or not
- # [07:41] <zewt> when the lack of DRM means there will be no future product, they can
- # [07:41] <Hixie> better to have no products than to have drm, imho
- # [07:42] <Hixie> (luckily, that isn't even close to the actual result of not having drm)
- # [07:42] <zewt> it definitely was in our case (i'm not saying it is in *all* cases)
- # [07:43] <Hixie> i'm skeptical, but i don't have all the data so can't comment one way or the other on your specific case
- # [07:43] * Quits: Evanescence (~Evanescen@122.237.23.143) (Quit: my website: http://stardiviner.dyndns-blog.com/)
- # [07:43] <Hixie> generally when i've seen people make those claims though they tend to forget to account for all the factors, e.g. the opportunity cost of working on drm
- # [07:44] <zewt> what?
- # [07:44] * Joins: Evanescence (~Evanescen@122.237.23.143)
- # [07:44] <zewt> (i know the cost to us in implementing the drm, since i did it all myself--took 3-4 weeks)
- # [07:45] <Hixie> 3-4 weeks total, or 3-4 weeks on the ones that got broken, or 3-4 weeks on one game that didn't get broken?L
- # [07:45] * nunnun_away is now known as nunnun
- # [07:46] <zewt> as far as I know it was never broken so long as I worked there, at least (at least based on the fact that bootlegs didn't show up in the wild)
- # [07:46] <zewt> (forget how long; well over a year)
- # [07:46] <Hixie> i thought you just said "versions of our game where the encryption was broken sold significantly less than the ones where it wasn't"
- # [07:47] <zewt> that was a much older system (written maybe 6-7 years earlier)
- # [07:47] * Quits: dbaron (~dbaron@173-228-28-129.dsl.dynamic.sonic.net) (Quit: 8403864 bytes have been tenured, next gc will be global.)
- # [07:47] <Hixie> so 3-4 weeks per game then
- # [07:47] <zewt> it was much weaker and used on too many products without changing
- # [07:47] <Hixie> how much more would you have made if you'd spent those 3-4 weeks e.g. working on a system where they could buy the disks to put new games in for very little instead of requiring that they buy an entirely new unit? (i'm guessing as to the mechanics here since i don't know what you did exactly)
- # [07:48] <zewt> 3-4 weeks initially; that system was used on two products while I was there
- # [07:48] <zewt> we actually did have a system for in-place upgrades; the market wasn't really set up to use it, so we didn't make much use of it
- # [07:48] <zewt> (insert USB drive with upgrade, push button, wait a minute)
- # [07:48] <Hixie> but the market was set up to do it without you if they broke the drm?
- # [07:49] <zewt> the market is always set up to copy games for free if they can
- # [07:49] <zewt> (at least in some countries)
- # [07:50] <Hixie> not at all, e.g. valve has found that by making buying games actually easier than copying them, they sell more games than they would if they had drm
- # [07:50] <zewt> that's for consumers buying games online; it doesn't translate to $500+ upgrade packs for arcade games
- # [07:51] <zewt> (eg. many arcades can't get internet access to machines)
- # [07:51] <Hixie> so maybe the problem isn't that your market isn't set up for it but that you were charging rates the market wasn't ready to support without using artifical tactics like drm
- # [07:52] <zewt> the market isn't prepared to pay anything whatsoever, if it can get stuff for $0 (or $30 or whatever the cost of a tiny HDD is)
- # [07:52] <Hixie> again, valve has shown that to not be true
- # [07:52] <Hixie> iTunes has also shown that to not be true (for music)
- # [07:52] <zewt> again, steam has no comparative value to arcade machines
- # [07:52] * Quits: Evanescence (~Evanescen@122.237.23.143) (Quit: my website: http://stardiviner.dyndns-blog.com/)
- # [07:53] <zewt> buying a song on iTunes is "push button, spend $1, get a song"; arcade owners don't spend hundreds of dollars on an upgrade on a one-click whim purchase
- # [07:53] <Hixie> i see no reason to believe that any particular market would be any mare special than another here
- # [07:53] <Hixie> again, maybe the problem is that you were charging too much to make it sustainable
- # [07:53] <zewt> it's completely different, because upgrading an arcade machine is a financial investment, buying a game on steam is not
- # [07:54] * Joins: brucel (~brucel@cpc5-smal11-2-0-cust151.perr.cable.virginmedia.com)
- # [07:54] <Hixie> all purchases boil down to investments
- # [07:54] <zewt> not in comparable notions of the word
- # [07:54] <Hixie> when you buy a game on steam, you're return is going to be in entertainment per hour instead of dollars per hour
- # [07:54] <zewt> i buy a $40 game if I think I'll have $40 of fun with it; an arcade owner buys a $500 upgrade if he thinks he'll make $500 more money from coin drops as a result
- # [07:54] <Hixie> but at the end of the day, what are dollars if not a way to get entertainment?
- # [07:55] <Hixie> sounds the same to me
- # [07:55] <zewt> sounds unrelated to me
- # [07:55] <Hixie> whatever lets you sleep at night :-)
- # [07:56] <hsivonen> RDFa continues to live in a time warp where HTML and XHTML are developed separately: http://www.w3.org/News/2011.html#entry-9301
- # [07:56] <zewt> our engine was almost all released as open-source, so I have no trouble sleeping at night :)
- # [07:57] <zewt> http://sourceforge.net/projects/stepmania/
- # [07:59] * Quits: shans (shanesteph@nat/google/x-auryefhtcfmkgzuo) (Quit: shans)
- # [08:01] * Joins: tantek (~tantek@70-36-139-219.dsl.dynamic.sonic.net)
- # [08:05] * Quits: agektmr (~Adium@u725084.xgsnu4.imtp.tachikawa.mopera.net) (Quit: Leaving.)
- # [08:07] * Quits: MikeSmith (~MikeSmith@EM111-191-207-14.pool.e-mobile.ne.jp) (Ping timeout: 244 seconds)
- # [08:13] * Joins: MikeSmith (~MikeSmith@EM1-113-237-107.pool.e-mobile.ne.jp)
- # [08:13] * Quits: jacobolus (~jacobolus@c-76-102-85-42.hsd1.ca.comcast.net) (Remote host closed the connection)
- # [08:16] * Quits: schnoomac (~schnoomac@melbourne.99cluster.com) (Quit: schnoomac)
- # [08:26] * Joins: jacobolus (~jacobolus@c-71-198-169-213.hsd1.ca.comcast.net)
- # [08:27] <roc> there are different kinds of DRM
- # [08:35] * Quits: msankhala (~mutant@unaffiliated/msankhala) (Read error: Connection reset by peer)
- # [08:51] * Joins: [[zzz]] (~q@125.25.33.93.adsl.dynamic.totbb.net)
- # [08:55] * Quits: [[zz]] (~q@125.25.49.79.adsl.dynamic.totbb.net) (Ping timeout: 252 seconds)
- # [08:55] * Quits: temp02 (~temp01@unaffiliated/temp01) (Read error: Connection reset by peer)
- # [08:57] * Joins: temp01 (~temp01@unaffiliated/temp01)
- # [09:10] * Joins: samn (~samn@h-21-26.a212.corp.bahnhof.se)
- # [09:11] * [[zzz]] is now known as [[zz]]
- # [09:17] * Joins: LeonieW (~LeonieW@host-78-148-157-119.as13285.net)
- # [09:21] * Joins: woef (~woef@91.183.84.141)
- # [09:28] * Joins: Evanescence (~Evanescen@122.237.23.143)
- # [09:45] * Quits: Druid_ (~Druid@p5B135263.dip.t-dialin.net) (Ping timeout: 252 seconds)
- # [09:48] * Joins: mishunov (~spliter@77.88.72.162)
- # [09:50] * Joins: Druid_ (~Druid@p5B135DD2.dip.t-dialin.net)
- # [09:51] * Joins: PalleZingmark (~Adium@217.13.228.226)
- # [09:56] * Joins: tomasf (~tomasf@77.72.97.5.c.fiberdirekt.net)
- # [10:04] * Joins: codeho (~codeho@178-26-69-223-dynip.superkabel.de)
- # [10:05] * Joins: virtuelv (virtuelv__@nat/opera/x-fdncdqanjoghidho)
- # [10:14] * Quits: LeonieW (~LeonieW@host-78-148-157-119.as13285.net) (Read error: Connection reset by peer)
- # [10:16] * Quits: samn (~samn@h-21-26.a212.corp.bahnhof.se) (Remote host closed the connection)
- # [10:18] * nunnun is now known as nunnun_away
- # [10:19] * nunnun_away is now known as nunnun
- # [10:23] * Joins: xec (~xec@2a00:10b0:1:1002:5ab0:35ff:fef8:6a01)
- # [10:26] * Quits: rniwa (~rniwa@216.239.45.130) (Quit: rniwa)
- # [10:30] * Joins: zcorpan (~zcorpan@c-5eeaaa20-74736162.cust.telenor.se)
- # [10:32] * Joins: LeonieW (~LeonieW@host-78-148-157-119.as13285.net)
- # [10:33] * Quits: kuya (~d1223m@93-97-190-130.zone5.bethere.co.uk) (Ping timeout: 240 seconds)
- # [10:35] * Joins: kuya (~d1223m@93-97-190-130.zone5.bethere.co.uk)
- # [10:37] * nunnun is now known as nunnun_away
- # [10:41] * Joins: seventh (seventh@27.100.16.69)
- # [10:49] * Joins: martndemus (~martndemu@h254064.upc-h.chello.nl)
- # [10:51] * Quits: jdaggett (~jdaggett@ad009033.dynamic.ppp.asahi-net.or.jp) (Quit: jdaggett)
- # [10:54] * Quits: Evanescence (~Evanescen@122.237.23.143) (Quit: my website: http://stardiviner.dyndns-blog.com/)
- # [11:05] * Joins: Evanescence (~Evanescen@122.237.23.143)
- # [11:07] * Joins: FlorianX (~Dimitri@p578F1EF9.dip.t-dialin.net)
- # [11:09] * Quits: martndemus (~martndemu@h254064.upc-h.chello.nl) (Quit: Lost terminal)
- # [11:10] * Quits: GPHemsley (~GPHemsley@pdpc/supporter/student/GPHemsley) (Ping timeout: 240 seconds)
- # [11:12] * Joins: GPHemsley (~GPHemsley@pdpc/supporter/student/GPHemsley)
- # [11:20] * Quits: Zauberfisch (zauber@venus.zauberfisch.at) (Ping timeout: 255 seconds)
- # [11:21] <annevk> thanks Hixie for picking up on the callback stuff
- # [11:21] * annevk had given up
- # [11:22] * Quits: mishunov (~spliter@77.88.72.162) (Quit: mishunov)
- # [11:23] * Joins: Lachy (~Lachy@cm-84.215.59.50.getinternet.no)
- # [11:24] * Joins: tndH (~Rob@cpc16-seac19-2-0-cust234.7-2.cable.virginmedia.com)
- # [11:28] * Joins: Zauberfisch (Zauberfisc@venus.zauberfisch.at)
- # [11:34] * Quits: temp01 (~temp01@unaffiliated/temp01) (Ping timeout: 240 seconds)
- # [11:36] * Quits: Areks (~Areks@rs.gridnine.com) (Ping timeout: 268 seconds)
- # [11:37] * Quits: Lachy (~Lachy@cm-84.215.59.50.getinternet.no) (Quit: Computer has gone to sleep.)
- # [11:37] * Joins: temp01 (~temp01@unaffiliated/temp01)
- # [11:46] * Joins: mishunov (~spliter@77.88.72.162)
- # [11:46] * Quits: zcorpan (~zcorpan@c-5eeaaa20-74736162.cust.telenor.se) (Quit: zcorpan)
- # [11:51] * Joins: jwalden (~waldo@nat/mozilla/x-rdgbndxddmutnykf)
- # [11:54] * Joins: Lachy (~Lachy@guest.opera.com)
- # [11:58] * Joins: smaug____ (~chatzilla@ZYYKVII.gprs.sl-laajakaista.fi)
- # [11:59] * Joins: gwicke (~gabriel@212.255.28.36)
- # [11:59] * Joins: Areks (~Areks@rs.gridnine.com)
- # [12:05] * Joins: msankhala (~mutant@unaffiliated/msankhala)
- # [12:11] * Joins: drublic (~drublic@frbg-4d028982.pool.mediaWays.net)
- # [12:14] * Joins: graememcc (~chatzilla@host31-53-72-206.range31-53.btcentralplus.com)
- # [12:15] * Joins: zcorpan (~zcorpan@c-5eeaaa20-74736162.cust.telenor.se)
- # [12:15] * Quits: zcorpan (~zcorpan@c-5eeaaa20-74736162.cust.telenor.se) (Client Quit)
- # [12:21] <annevk> can someone explain to me what I did wrong here:
- # [12:21] <annevk> http://validator.nu/?doc=http%3A%2F%2Fdvcs.w3.org%2Fhg%2Fencoding%2Fraw-file%2Ftip%2FOverview.html
- # [12:22] <annevk> ooh, this goes for a lot on dvcs
- # [12:22] <annevk> maybe it says charset="utf-8" in the HTTP header and validator.nu has the same bug Gecko once had?
- # [12:25] * Quits: msankhala (~mutant@unaffiliated/msankhala) (Ping timeout: 240 seconds)
- # [12:27] * Joins: ezoe (~ezoe@112-68-245-54f1.kyt1.eonet.ne.jp)
- # [12:28] <hsivonen> annevk: yeah. is it a v.nu bug or a W3C server config bug?
- # [12:34] <annevk> per HTTP v.nu
- # [12:35] <annevk> but HTTP is not defined in a pragmatic way, so "unclear" :(
- # [12:41] <annevk> hsivonen: ideas on how to make http://dvcs.w3.org/hg/encoding/raw-file/tip/single-octet-research.html more readable?
- # [12:41] <annevk> hsivonen: pull not supported before the table I guess and maybe give the "other labels" bit a heading of some sorts?
- # [12:41] <annevk> it needs to stay fairly compact because there's so much information
- # [12:42] * Joins: zcorpan (~zcorpan@pat.se.opera.com)
- # [12:42] <hsivonen> annevk: first of all, you could separate the encoding tables from the browser support data instead of interleaving them
- # [12:43] <hsivonen> annevk: then maybe have a table of with browsers as columns and encodings as rows and markers in the cells and cell bg colors that communicate the same info as the markers
- # [12:44] <annevk> ooh that sounds pretty good
- # [12:48] * Quits: Lachy (~Lachy@guest.opera.com) (Ping timeout: 276 seconds)
- # [12:49] * Joins: Lachy (Lachy@nat/opera/x-qgdrywxlnmmllzsc)
- # [12:53] * Quits: drublic (~drublic@frbg-4d028982.pool.mediaWays.net) (Remote host closed the connection)
- # [13:07] * Quits: Dashiva (Dashiva@wikia/Dashiva)
- # [13:09] * Quits: yuuki (~kobayashi@58x158x182x50.ap58.ftth.ucom.ne.jp) (Quit: Leaving...)
- # [13:17] * Joins: svl (~me@ip565744a7.direct-adsl.nl)
- # [13:17] * Joins: jdaggett (~jdaggett@ad009033.dynamic.ppp.asahi-net.or.jp)
- # [13:18] * Joins: malydok (marek@moma.t16.ds.pwr.wroc.pl)
- # [13:18] * Quits: jdaggett (~jdaggett@ad009033.dynamic.ppp.asahi-net.or.jp) (Client Quit)
- # [13:27] * Joins: hendry (~hendry@85.119.83.83)
- # [13:33] * smaug____ kicks sicking
- # [13:33] <sicking> huh?
- # [13:34] <Echoes2> o_O
- # [13:34] <smaug____> I strongly disagree your idea that if websocket buffer is full, let's just cut it
- # [13:35] <smaug____> it is like "hey, we have little problem, and we don't want to handle it at all, so please re-start everything"
- # [13:36] <sicking> smaug____: you should check archives, this discussion has been had at least a dozen times
- # [13:36] <smaug____> where?
- # [13:36] <smaug____> I do recall this discussed few times
- # [13:36] <sicking> webapi list i would think
- # [13:37] <sicking> smaug____: the thing is, running out of buffer space should never happen. It's equivalent to OOM
- # [13:37] <smaug____> your point about data integrity is valid, but that just means that error handling is now forced to happen in error event listener
- # [13:37] <sicking> smaug____: error handling *should* happen in the error handler
- # [13:37] <sicking> that's what it's for
- # [13:38] <sicking> what else woudl you do there?
- # [13:38] <smaug____> er, error or close handler, whatever
- # [13:39] <smaug____> well, we could for example change send() so that you can't send more stuff before the previous trial has succeeded
- # [13:39] <smaug____> closing the connection is really overkill
- # [13:39] <sicking> smaug____: is it overkill to throw an uncatchable exception on OOM
- # [13:40] <sicking> smaug____: and that in JS. In C++ if you run out of OOM we quit firefox
- # [13:40] <sicking> err.. if you OOM (not run out of OOM)
- # [13:40] <smaug____> I don't know what OOM has to do with this
- # [13:40] <sicking> smaug____: the buffer is memory, running out of buffer is running out of memory
- # [13:41] <smaug____> yes, but you know before putting anything to the buffer that hey, there is no room there atm
- # [13:42] <sicking> who knows that, and how?
- # [13:43] <smaug____> well, in our impl, when we try to copy the data to the buffer
- # [13:43] <smaug____> if allocation doesn't work, there would be OOM
- # [13:43] <sicking> yes, the implementaiton knows that
- # [13:43] <smaug____> which could be reported in a meaning full way to JS
- # [13:43] <sicking> same thing when allocating a C++ or JS object
- # [13:44] <sicking> when spidermonkey is asked to allocate a JS object we know we won't be able to honor it
- # [13:44] <sicking> but we don't report an error in the normal fashion, we simply abort JS execution ("uncatchable exception")
- # [13:44] <smaug____> this is about quite a bit different case
- # [13:45] <sicking> we really shouldn't be running out of websocket buffer any more than running out of JS-heap
- # [13:45] <sicking> so i don't see how they are different
- # [13:46] <smaug____> you don't create JS object of size 100s of MBs
- # [13:46] <smaug____> there is a reason why Gecko doesn't use infallible malloc always
- # [13:47] <hsivonen> smaug____: as I understand it, infallible malloc is avoided when Web content can directly control the allocation size
- # [13:48] <smaug____> hsivonen: which is the case here
- # [13:48] <sicking> hsivonen: the problem is in the definition "directly"
- # [13:48] <sicking> there's plenty of things that we store in nsTArrays which come from web content
- # [13:49] <hsivonen> sicking: yeah. It's rather annoying that OOM crashes from the infallible malloc are treated as bugs. as if those crashes weren't an expected feature. though sometimes it really makes sense to "fix" those by using fallible malloc
- # [13:50] <sicking> hsivonen: yeah, i don't agree that those are always bugs
- # [13:50] <sicking> malicious content has always been able to crash any browser
- # [13:51] <smaug____> in this case it is quite clear that web content can easily control the buffer size. JS data is converted to UTF8, and that UTF8 data is buffered
- # [13:51] * Quits: seventh (seventh@27.100.16.69) (Ping timeout: 240 seconds)
- # [13:53] <sicking> smaug____: so here's an idea
- # [13:53] <sicking> smaug____: we could fire an event when running out-of-websocket-buffer
- # [13:53] <sicking> the default action of the event would be to close the connection
- # [13:54] <sicking> but the page can call .preventDefault and do its own error handling
- # [13:54] <smaug____> that sounds better :)
- # [13:54] <sicking> however
- # [13:54] <sicking> we really should only be running out of websocket buffer when running oom
- # [13:54] <sicking> so it'll be hard to fire an event
- # [13:54] <smaug____> not true
- # [13:54] * Joins: wesbos (~wesbos@24.52.240.143)
- # [13:55] <sicking> which part?
- # [13:55] <smaug____> if someone is sending jssrtring.length == 100000000
- # [13:55] <smaug____> converting that to utf8 certainly would take lots of memory
- # [13:56] <smaug____> so if reserving memory for that utf8 OOMs, we can easily fire the event
- # [13:56] <sicking> true
- # [13:56] <sicking> but
- # [13:56] <sicking> if that's the concern, is it really worth adding a feature for people that sends strings that are 100MB in size?
- # [13:57] <smaug____> if browser/OS is really OOMing, then there isn't much to do
- # [13:57] <smaug____> people do send huge files
- # [13:57] <smaug____> they may have modified the file
- # [13:57] <sicking> using strings?
- # [13:57] <smaug____> and send arraybuffers
- # [13:57] <sicking> as a single arraybuffer?
- # [13:57] <smaug____> why not?
- # [13:58] <sicking> if you have that much data you should be using Blobs
- # [13:58] <sicking> otherwise you risk running OOM no matter what
- # [13:58] <smaug____> people do use XHR for file transfer
- # [13:58] <sicking> sure, they should send Blobs there too
- # [14:00] <smaug____> or could
- # [14:05] * Joins: MikeSmith_ (~MikeSmith@EM1-113-192-31.pool.e-mobile.ne.jp)
- # [14:07] * Quits: MikeSmith (~MikeSmith@EM1-113-237-107.pool.e-mobile.ne.jp) (Ping timeout: 240 seconds)
- # [14:07] * MikeSmith_ is now known as MikeSmith
- # [14:20] * Joins: scor (~scor@drupal.org/user/52142/view)
- # [14:22] * Quits: scor (~scor@drupal.org/user/52142/view) (Client Quit)
- # [14:24] * Quits: smaug____ (~chatzilla@ZYYKVII.gprs.sl-laajakaista.fi) (Ping timeout: 252 seconds)
- # [14:26] * Joins: erichynds (~ehynds@venkman.brightcove.com)
- # [14:28] * Joins: Ms2ger (~Ms2ger@91.181.102.203)
- # [14:29] * Quits: virtuelv (virtuelv__@nat/opera/x-fdncdqanjoghidho) (Quit: Ex-Chat)
- # [14:31] * Quits: Hypah (~Hypah@c-67-167-184-128.hsd1.mi.comcast.net) (Quit: Leaving)
- # [14:34] * Quits: LeonieW (~LeonieW@host-78-148-157-119.as13285.net) (Quit: Carpe diem)
- # [14:35] * Joins: martndemus (~martndemu@h254064.upc-h.chello.nl)
- # [14:39] * Joins: necolas (~necolas@5e0c7fb2.bb.sky.com)
- # [14:48] * Quits: Evanescence (~Evanescen@122.237.23.143) (Quit: my website: http://stardiviner.dyndns-blog.com/)
- # [14:53] * Joins: jdong_bot_ (~jdong_bot@118.186.206.222)
- # [15:01] * Joins: davidb_ (~davidb@66.207.208.98)
- # [15:02] * Joins: msankhala (~mutant@unaffiliated/msankhala)
- # [15:05] * Quits: sicking (~chatzilla@c-98-210-155-80.hsd1.ca.comcast.net) (Ping timeout: 276 seconds)
- # [15:06] * Quits: michaelrtm (madcow@207.290.dsl.mel.iprimus.net.au) (Read error: Connection reset by peer)
- # [15:06] * Joins: michaelrtm (madcow@207.290.dsl.mel.iprimus.net.au)
- # [15:07] * Quits: Druid_ (~Druid@p5B135DD2.dip.t-dialin.net) (Ping timeout: 252 seconds)
- # [15:08] * Quits: zcorpan (~zcorpan@pat.se.opera.com) (Remote host closed the connection)
- # [15:12] * Quits: richt (richt@nat/opera/x-dhxlyfdjdljwiuft) (Ping timeout: 252 seconds)
- # [15:15] * Joins: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net)
- # [15:17] * Joins: smaug____ (~chatzilla@193-64-22-177-nat.elisa-mobile.fi)
- # [15:18] * Joins: miketaylr (~miketaylr@ip68-12-241-42.ok.ok.cox.net)
- # [15:25] * Joins: Dashiva (Dashiva@84-72-45-52.dclient.hispeed.ch)
- # [15:25] * Quits: Dashiva (Dashiva@84-72-45-52.dclient.hispeed.ch) (Changing host)
- # [15:25] * Joins: Dashiva (Dashiva@wikia/Dashiva)
- # [15:27] * Joins: snowfox (~benschaaf@50-77-199-197-static.hfc.comcastbusiness.net)
- # [15:28] * Quits: jernoble|afk (~jernoble@17.212.152.13) (Ping timeout: 255 seconds)
- # [15:31] * Joins: LBP (~Mirc@pD9EB16CD.dip0.t-ipconnect.de)
- # [15:38] * Quits: mishunov (~spliter@77.88.72.162) (Quit: mishunov)
- # [15:41] * Quits: nonge (~nonge@p5082B889.dip.t-dialin.net) (Ping timeout: 248 seconds)
- # [15:43] * Joins: nonge (~nonge@p5B326F29.dip.t-dialin.net)
- # [15:44] * Joins: MacTed (~Thud@63.119.36.36)
- # [15:49] * nunnun_away is now known as nunnun
- # [15:54] <annevk> can anyone think of a good way to black box test multi-byte encodings?
- # [15:54] <annevk> kind of seems like you should test on a per encoding basis
- # [15:54] * Joins: othree (~othree@admin39.ct.ntust.edu.tw)
- # [15:55] <zewt> wouldn't it just be dumping a bunch of test data into HTML and examining the resulting DOM?
- # [15:55] <wilhelm> Which software will you test? Browsers interpreting something from the web?
- # [15:55] * Joins: miketayl_r (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net)
- # [15:56] <annevk> wilhelm: yeah
- # [15:56] <zewt> what the test data looks like would be very encoding-specific, for the most part, i think
- # [15:56] <annevk> zewt: I can't really think of a magic bullet
- # [15:56] <annevk> zewt: right
- # [15:57] <annevk> I heard some horror stories from our encoding guy; not sure I want to put that much time into defining these encodings
- # [15:57] <zewt> hmm
- # [15:57] * Joins: plutoniix (~plutoniix@125.25.33.93.adsl.dynamic.totbb.net)
- # [15:57] * gwicke is now known as gwicke_away
- # [15:58] <annevk> there's a few things I could do that would improve the current situation somewhat
- # [15:58] <zewt> one question i'd have first off: is <span>any text</span> guaranteed in all browsers to actually parse as a span, no matter what "any text" is (assuming it doesn't contain "<")
- # [15:58] <wilhelm> Yes. Encoding-specific test data, look at DOM?
- # [15:58] <annevk> which is define the labels and such to the extent HTML does
- # [15:58] <annevk> so HTML no longer needs encoding specific stuff
- # [15:58] <annevk> and all languages can do the same for these encodings
- # [15:58] <zewt> for example, if you have just one initial byte of SJIS in there, does the decoder reliably break out of it and parse out the </span>
- # [15:59] <wilhelm> annevk: You should take a look at t/imported/kaz, by the way.
- # [15:59] <annevk> zewt: I think shift_jis is HTML-safe
- # [15:59] <wilhelm> annevk: Lots of legacy encoding tests.
- # [15:59] <zewt> this matters because it'd be nice to write the tests as <span id=test1>X</span> and each test as a separate span, so you can pull out each span to look precisely at that one test
- # [15:59] <wilhelm> Maybe it can be reused.
- # [15:59] * Quits: miketaylr (~miketaylr@ip68-12-241-42.ok.ok.cox.net) (Ping timeout: 252 seconds)
- # [15:59] <wilhelm> (Lots as in several hundred thousand.)
- # [15:59] <zewt> but if there are cases where (intentional, here) encoding breakage within "X" might cause the span to not be closed, it'd get messier
- # [16:01] <annevk> zewt: HTML has this vague note
- # [16:01] <annevk> "An ASCII-compatible character encoding is a single-byte or variable-length encoding in which the bytes 0x09, 0x0A, 0x0C, 0x0D, 0x20 - 0x22, 0x26, 0x27, 0x2C - 0x3F, 0x41 - 0x5A, and 0x61 - 0x7A, ignoring bytes that are the second and later bytes of multibyte sequences, all correspond to single-byte sequences that map to the same Unicode characters as those bytes in ANSI_X3.4-1968 (US-ASCII)."
- # [16:01] <annevk> "An ASCII-compatible character encoding is a single-byte or variable-length encoding in which the bytes 0x09, 0x0A, 0x0C, 0x0D, 0x20 - 0x22, 0x26, 0x27, 0x2C - 0x3F, 0x41 - 0x5A, and 0x61 - 0x7A, ignoring bytes that are the second and later bytes of multibyte sequences, all correspond to single-byte sequences that map to the same Unicode characters as those bytes in ANSI_X3.4-1968 (US-ASCII)."
- # [16:01] <annevk> oops
- # [16:01] <Ms2ger> wilhelm, I sure hope these are becoming public ;)
- # [16:01] <annevk> "This includes such encodings as Shift_JIS, HZ-GB-2312, and variants of ISO-2022, even though it is possible in these encodings for bytes like 0x70 to be part of longer sequences that are unrelated to their interpretation as ASCII. It excludes such encodings as UTF-7, UTF-16, GSM03.38, and EBCDIC variants."
- # [16:01] <annevk> wilhelm: I think I looked at those
- # [16:01] <zewt> annevk: well, the issue here is what browsers *really* do today...
- # [16:02] <wilhelm> Ms2ger: Indeed. But as of last week, I am no longer an Opera employee. So apart from prodding, I can't do much about it. |c:
- # [16:02] * Quits: xec (~xec@2a00:10b0:1:1002:5ab0:35ff:fef8:6a01) (Remote host closed the connection)
- # [16:03] <zewt> though I suppose if that sort of thing breaks the test, then it'd show up fairly quickly (and once you've tracked that sort of thing down, they can be moved to their own test files)
- # [16:03] * Quits: LBP (~Mirc@pD9EB16CD.dip0.t-ipconnect.de) (Quit: Bye, bye!)
- # [16:05] <annevk> I wonder how browsers will cope with > 65000 <span> elements
- # [16:06] <zewt> well, better off breaking tests into blocks
- # [16:06] <Ms2ger> Well, how do they deal with the HTML spec?
- # [16:06] <zewt> sticking them in spans just makes it easier to batch them, so tests aren't split across thousands of tiny files
- # [16:07] <wilhelm> annevk: They cope moderately well wit kaz' tests. SPARTAN, however... (c:
- # [16:07] <zewt> could use other ways of dealing with it, like sticking each test between ASCII framing ("XXX 1 test YYY") and picking it apart in scripts
- # [16:07] * Joins: seventh (seventh@27.100.16.126)
- # [16:08] <zewt> (uglier, of course)
- # [16:11] <zewt> iso-2022 makes me sad
- # [16:12] * Joins: Areks|2 (~Areks@rs.gridnine.com)
- # [16:13] <zewt> at least most crappy legacy encodings aren't *modal*
- # [16:14] <annevk> what does that mean in this context?
- # [16:14] * Quits: codeho (~codeho@178-26-69-223-dynip.superkabel.de) (Quit: codeho)
- # [16:14] <Ms2ger> That ISO-2022 pops up an alert, obviously
- # [16:14] <zewt> it has escape codes that change the meaning of future sequences
- # [16:14] * Quits: miketayl_r (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net) (Quit: miketayl_r)
- # [16:15] <zewt> (modal in the sense of having multiple modes, eg. vim is a modal editor)
- # [16:16] * Quits: Areks (~Areks@rs.gridnine.com) (Ping timeout: 268 seconds)
- # [16:16] <Ms2ger> Isn't the latter usage just a synonym of "horrible"? :)
- # [16:16] <zewt> trooooll :P
- # [16:17] <Ms2ger> Yeah :)
- # [16:17] <zewt> apparently in iso-2022 you can have *both* 1: multiple ways to encode the same codepoint and 2: multiple codepoints represented by a particular sequence
- # [16:17] * Quits: Areks|2 (~Areks@rs.gridnine.com) (Ping timeout: 268 seconds)
- # [16:17] <zewt> so it's evil in both directions
- # [16:18] <Ms2ger> (I troll vim and emacs just as much, though)
- # [16:18] <zewt> i use notepad.exe as often as vim these days, so *shrug* :P
- # [16:19] <zewt> "sometimes an editor's just an editor"
- # [16:19] <annevk> TextWrangler and nano
- # [16:19] <Ms2ger> gedit/jedit/nano
- # [16:19] <annevk> but that does sound evil
- # [16:19] <annevk> ooh gedit
- # [16:19] <annevk> when I was still on Ubuntu, I used that
- # [16:20] <annevk> Notepad++ in the Windows days
- # [16:20] * Joins: ksweeney (~Adium@nyv-exweb.iac.com)
- # [16:20] <annevk> they're all more or less the same to me :)
- # [16:20] <zewt> i think you can trace a clear path from utf-8's design directly to iso-2022
- # [16:20] <zewt> "here's iso-2022. here are a bunch of ways it sucks. let's not do any of those things"
- # [16:22] <zewt> data point: technically iso-2022 can remap the ASCII range; doing so would violate the abovementioned vague note
- # [16:23] * gwicke_away is now known as gwicke
- # [16:26] <annevk> there's also problems with using those encodings
- # [16:26] <annevk> as Philip` once explained on the WHATWG list
- # [16:26] <annevk> "The string "숍訊昱穿" encoded as ISO-2022-KR is the bytes 0e 3c 73 63 72 69 70 74 3e. A UA that doesn't support ISO-2022-KR (e.g. Chrome, when I last checked) will decode it as Windows-1252 and get the string "<script>", which is bad."
- # [16:27] <wilhelm> That's beautiful.
- # [16:27] <Ms2ger> Yeah, that's the kind of thing Philip` would tell us about
- # [16:27] <zewt> hacked by chinese?
- # [16:27] <zewt> ... literally
- # [16:27] <divya> hahaha
- # [16:27] <Ms2ger> Koreans?
- # [16:27] * Joins: GlitchMr (~glitchmr@178-36-187-93.adsl.inetia.pl)
- # [16:28] <divya> annevk: sounds like a good intro if you were gonna write about your encodings spec
- # [16:28] <divya> on your blog
- # [16:28] * divya throws hints
- # [16:29] * Quits: woef (~woef@91.183.84.141) (Ping timeout: 244 seconds)
- # [16:31] * Quits: msankhala (~mutant@unaffiliated/msankhala) (Read error: Connection reset by peer)
- # [16:31] <annevk> nah, my blog is reserved for those who wrote books I enjoyed :p
- # [16:32] <Ms2ger> Murakami?
- # [16:32] <annevk> I kid, mostly, I think you are right
- # [16:32] <annevk> Ms2ger: you wouldn't say, but I'm a big fan
- # [16:34] <Ms2ger> I would say, actually :)
- # [16:34] * Joins: ehsan (~ehsan@66.207.208.98)
- # [16:35] <zewt> same thing happens with iso-2022-jp
- # [16:37] <zewt> wonder how common it is for web content (does japan *really* need three legacy encodings?)
- # [16:38] <zewt> i'd expect it to be more common for mail (don't really know, though)
- # [16:39] <zewt> (three major legacy encodings, i should say--you'd get more if you start picking apart sjis, cp932, etc)
- # [16:46] * Joins: msankhala (~mutant@unaffiliated/msankhala)
- # [16:47] * Quits: mpt (~mpt@canonical/mpt) (Remote host closed the connection)
- # [16:50] <hsivonen> why is the Web Intents work proceeding based on Google's proposal at the W3C instead of proceeding based on Mozilla's Web Activities or Microsoft's Contracts?
- # [16:50] <Ms2ger> Because Google is pushing at the W3C and we don't, I guess
- # [16:51] * Joins: mpt (~mpt@nat/canonical/x-phydwdvgyzegiorj)
- # [16:51] * Quits: mpt (~mpt@nat/canonical/x-phydwdvgyzegiorj) (Changing host)
- # [16:51] * Joins: mpt (~mpt@canonical/mpt)
- # [16:53] * Joins: scor (~scor@drupal.org/user/52142/view)
- # [16:55] <hsivonen> Ms2ger: :-(
- # [16:56] <Ms2ger> Most Mozillians don't seem to have a habit to get things specified
- # [16:57] <hsivonen> <code agents="" but="" can="" have="" historically="" implement="" implemented="" indeed="" others="" title="javascript:</code>" user="">
- # [16:57] <hsivonen> awesome spec markup
- # [16:57] <Ms2ger> Hah
- # [16:59] <erlehmann> hsivonen, WTF IS THIS SHIT
- # [16:59] <erlehmann> i've never seen it before
- # [17:00] * Quits: tomasf (~tomasf@77.72.97.5.c.fiberdirekt.net) (Quit: tomasf)
- # [17:05] <timeless> yeah, mozillans seem to be incredibly anti standards in certain areas
- # [17:05] <timeless> "not going to bother spending time working with others"
- # [17:06] <timeless> hsivonen: where's that one?
- # [17:06] <smaug____> hsivonen: I thought Mozilla is working with Google to get Web Intents spec'ed
- # [17:06] <timeless> smaug____: not on the list
- # [17:06] <timeless> they might have done some hand waving about it
- # [17:06] <smaug____> timeless: not sure anyone else is better with standards
- # [17:06] <timeless> but they haven't spoken
- # [17:06] <timeless> smaug____: oddly microsoft is
- # [17:06] <Ms2ger> Well, Google isn't too good at standards
- # [17:07] <timeless> (and opera)
- # [17:07] <hsivonen> timeless: it's a recent change to the HTML spec
- # [17:07] <Ms2ger> But they are good at getting W3C stamps
- # [17:07] <smaug____> timeless: not in general
- # [17:07] <smaug____> timeless: they have all sorts of non-standard stuff coming
- # [17:07] <timeless> smaug____: in the last year or two
- # [17:07] <hsivonen> smaug____: Opera seem to be pretty good at standards
- # [17:07] * Joins: Bass10 (Bass10@c-76-113-194-7.hsd1.mn.comcast.net)
- # [17:07] <smaug____> Opera is pretty good indeed
- # [17:08] <timeless> smaug____: anyway, i'm not saying ms is perfect
- # [17:08] <timeless> but at least they're trying
- # [17:08] * Quits: Bass10 (Bass10@c-76-113-194-7.hsd1.mn.comcast.net) (Max SendQ exceeded)
- # [17:08] <timeless> the only thing i can point to that mozilla has done recently is requestAnimationFrame or whatever that was
- # [17:09] <timeless> i can point to a number of things where mozilla has diverged impls, impl experience, and no interest in helping
- # [17:09] <Ms2ger> (Also, browser API)
- # [17:16] <timeless> hsivonen: got a link for your <code> ? i'm lazy :)
- # [17:17] <zewt> annevk: fwiw, the only solution i can think of to that weirdness (other than everyone removing 2022 encodings) is making them not fall back--if a document is iso-2022-*, browsers that don't want to implement it should refuse to load it at all, not fall back on something else
- # [17:19] <hsivonen> timeless: post-process of http://html5.org/tools/web-apps-tracker?from=6874&to=6875
- # [17:20] * Quits: smaug____ (~chatzilla@193-64-22-177-nat.elisa-mobile.fi) (Ping timeout: 268 seconds)
- # [17:20] <zewt> i wish google results on the html spec would put the full-page and multipage results next to each other
- # [17:20] <zewt> single-page rather
- # [17:20] <zewt> it always ends up putting the single-page result way at the top, and i have to scan through a bunch of other noise to find the multipage result to avoid destroying my browser
- # [17:23] <timeless> + example is "<code title="javascript:</code>", but user agents can
- # [17:23] <Ms2ger> And then it goes through parser+serializer at least once
- # [17:23] * timeless can't figure out if that markup is intentionally screwy or accidentally screwy
- # [17:24] <annevk> Mozilla is doing Web IDL these days
- # [17:24] <annevk> fwiw
- # [17:24] <annevk> I think that's pretty awesome
- # [17:25] <Ms2ger> And I guess we can claim tantek
- # [17:25] <zewt> is it possible for a browser that implements prescan to execute an inline script twice if the encoding has to be changed?
- # [17:25] <annevk> I do wish I would not have to extract feedback from bugzilla.mozilla.org every now and then...
- # [17:25] <annevk> zewt: yes
- # [17:25] <zewt> <script>alert("%")</script><META http-equiv="Content-Type" content="text/html; charset=ibm864">
- # [17:26] <annevk> zewt: but you have to put the encoding declaration prolly after 1024 bytes
- # [17:26] <annevk> zewt: so I guess not because of the prescan, but because of the parser
- # [17:27] <zewt> well, it's a side-effect of the prescan
- # [17:27] <zewt> was just wondering if there was any magic to prevent things with side-effects from happening until the prescan finished
- # [17:28] * Quits: msankhala (~mutant@unaffiliated/msankhala) (Remote host closed the connection)
- # [17:28] <annevk> content-type header :)
- # [17:28] <zewt> fwiw, firefox doesn't execute the script above twice, just once (with the charset applied)
- # [17:28] <annevk> yes that's what I said
- # [17:29] <annevk> needs to be after 1024 octets
- # [17:29] <annevk> prescan goes over 1024 octets
- # [17:29] <annevk> after that the parser starts going
- # [17:29] <annevk> and then the parser finds the declaration, and boom
- # [17:29] <zewt> eh, i thought content-type metas had to be in the prescan; that's lame
- # [17:29] <timeless> annevk: you're not alone re extracting feedback
- # [17:30] <timeless> to be fair though, bugs.webkit seems to be just as annoying
- # [17:30] <timeless> (as a place where people leave comments that don't get upstreamed to w3)
- # [17:30] <annevk> zewt: I think hsivonen wanted that but I'm not sure it happened
- # [17:31] * Quits: PalleZingmark (~Adium@217.13.228.226) (Quit: Leaving.)
- # [17:32] <gsnedders> annevk: What happens if the parser changed the encoding post pre-scan?
- # [17:32] <zewt> http://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#changing-the-encoding-while-parsing happens
- # [17:33] * zewt takes a breath and loads the singlepage version
- # [17:33] * Quits: GPHemsley (~GPHemsley@pdpc/supporter/student/GPHemsley) (Quit: Leaving)
- # [17:33] <gsnedders> zewt: Did you hit a sarcasm end tag?
- # [17:33] <gsnedders> (in the "in body" state)
- # [17:33] <timeless> hsivonen: seriously is that code line intentionally screwy or accidentally screwy?
- # [17:34] <zewt> hmm? i'm loading the singlepage version to get working references, heh
- # [17:35] * Quits: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net) (Remote host closed the connection)
- # [17:37] * Joins: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net)
- # [17:37] * Joins: msankhala (~mutant@unaffiliated/msankhala)
- # [17:37] <zewt> hmm, odd
- # [17:38] * Joins: FlorianX1 (~Dimitri@p578F10AD.dip.t-dialin.net)
- # [17:38] <zewt> <meta charset> seems to be allowed anywhere in head, whether in prescan or not (this isn't the "odd" part)
- # [17:38] <zewt> but the http-equiv=content-type method seems to only be mentioned in prescan
- # [17:40] * Quits: FlorianX (~Dimitri@p578F1EF9.dip.t-dialin.net) (Ping timeout: 252 seconds)
- # [17:40] <zewt> (the prescan seems to be designed under the assumption that if the prescan misses something, it'll always be fixed by the reparse, but that seems to only be the case for the former, not the latter?)
- # [17:42] * Joins: rillian_lime (~rillian@184.71.166.126)
- # [17:44] * Joins: jarek (~jarek@unaffiliated/jarek)
- # [17:46] * Joins: astearns (~anonymous@sjfw1.adobe.com)
- # [17:53] * Quits: msankhala (~mutant@unaffiliated/msankhala) (Quit: Leaving)
- # [17:56] <annevk> hsivonen: it was pretty difficult to make that table :(
- # [17:57] <annevk> hsivonen: I submitted something to www-archive now, hopefully it is of some value
- # [17:57] <annevk> hsivonen: http://lists.w3.org/Archives/Public/www-archive/2011Dec/att-0020/encoding-labels.html
- # [17:57] * Joins: saba (~foo@unaffiliated/saba)
- # [17:57] * Joins: dave_levin (dave_levin@nat/google/x-wcaprpsespfavqnt)
- # [17:57] * Joins: karlcow (~karl@nerval.la-grange.net)
- # [17:57] <annevk> hsivonen: unfortunately it does not list spec in relation to the browsers
- # [17:57] <annevk> hsivonen: maybe at some point
- # [17:58] <zewt> annevk: by the way, the references script seems broken on dom4
- # [17:59] <annevk> oh shit, it excludes encodings supported by less than all four browsers
- # [17:59] <annevk> euh five
- # [17:59] <annevk> zewt: the script or the style sheet?
- # [18:00] * Quits: scor (~scor@drupal.org/user/52142/view) (Quit: scor)
- # [18:00] <zewt> didn't look that closely, could be the css
- # [18:00] <zewt> don't know how that stuff is implemented
- # [18:00] * Quits: jdong_bot_ (~jdong_bot@118.186.206.222) (Remote host closed the connection)
- # [18:00] <zewt> This interface is called HTMLCollection for historical reasons. The namedItem method returns an object for interfaces that inherit from this interface, which return other objects for historical reasons.
- # [18:00] <Ms2ger> It's been for a while, I think
- # [18:00] <zewt> ^ what interfaces inherit from HTMLCollection? hard to search for that
- # [18:01] <Ms2ger> HTMLAllCollection
- # [18:01] <zewt> (search engines are notoriously bad at searching for ": HTMLCollection")
- # [18:01] <Ms2ger> And various others in HTML
- # [18:02] <zewt> huh, I searched for it in HTML and it didn't come up (and I'm not even accidentally in case-sensitive mode); thanks
- # [18:08] * Joins: KillerX (~anant@nat/mozilla/x-chdhnjsynwhkurki)
- # [18:15] <zewt> uhh, what? ie9 only defines window.console after the console has been opened?
- # [18:17] <zewt> aside from being seriously annoying and pointless, it also lets sites detect that the f12 window has been opened and go "error, browser debuggers are not allowed", heh
- # [18:19] * Quits: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net) (Remote host closed the connection)
- # [18:21] * Quits: graememcc (~chatzilla@host31-53-72-206.range31-53.btcentralplus.com) (Ping timeout: 240 seconds)
- # [18:30] * Quits: Lachy (Lachy@nat/opera/x-qgdrywxlnmmllzsc) (Quit: Computer has gone to sleep.)
- # [18:33] * Joins: graememcc (~chatzilla@host81-151-187-224.range81-151.btcentralplus.com)
- # [18:35] * Quits: nonge (~nonge@p5B326F29.dip.t-dialin.net) (Quit: Verlassend)
- # [18:47] * Quits: erlehmann (~erlehmann@89.204.137.153) (Quit: Ex-Chat)
- # [18:49] * Joins: Maurice (copyman@5ED573FA.cm-7-6b.dynamic.ziggo.nl)
- # [18:51] * Quits: jarek (~jarek@unaffiliated/jarek) (Ping timeout: 240 seconds)
- # [18:52] * Parts: brucel (~brucel@cpc5-smal11-2-0-cust151.perr.cable.virginmedia.com)
- # [18:55] * Joins: chriseppstein (~chrisepps@209.119.65.162)
- # [18:57] * hober2 is now known as hober
- # [19:02] * Joins: eric_carlson_ (~ericc@adsl-67-112-12-110.dsl.anhm01.pacbell.net)
- # [19:10] * Joins: sicking (~chatzilla@2620:101:8003:200:226:bbff:fe05:3fe1)
- # [19:11] * Joins: msankhala (~mutant@unaffiliated/msankhala)
- # [19:14] <dglazkov> good morning, Whatwg!
- # [19:14] <divya> hai dglazkov
- # [19:15] <dglazkov> for your viewing pleasure: http://vimeo.com/33692624
- # [19:17] * Joins: erlehmann (~erlehmann@89.204.137.153)
- # [19:21] * Joins: Lachy (~Lachy@cm-84.215.59.50.getinternet.no)
- # [19:29] * Joins: ap (~ap@2620:149:4:1b01:71c2:18ad:9699:7c6)
- # [19:29] * Joins: TabAtkins_ (~TabAtkins@76-253-1-30.lightspeed.sntcca.sbcglobal.net)
- # [19:29] * Quits: msankhala (~mutant@unaffiliated/msankhala) (Remote host closed the connection)
- # [19:32] * Joins: msankhala (~mutant@117.199.118.154)
- # [19:32] * Quits: msankhala (~mutant@117.199.118.154) (Changing host)
- # [19:32] * Joins: msankhala (~mutant@unaffiliated/msankhala)
- # [19:33] <annevk> hsivonen: try http://lists.w3.org/Archives/Public/www-archive/2011Dec/att-0021/encoding-labels.html instead
- # [19:34] * Joins: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net)
- # [19:34] * Quits: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net) (Remote host closed the connection)
- # [19:35] <annevk> also shows that maybe we should add certain labels
- # [19:35] <annevk> e.g. iso_8859-6
- # [19:35] <annevk> there's a WebKit bug to that effect too (to add them for all iso- stuff)
- # [19:35] <hsivonen> annevk: thanks
- # [19:37] * Quits: sicking (~chatzilla@2620:101:8003:200:226:bbff:fe05:3fe1) (Ping timeout: 268 seconds)
- # [19:40] <rillian_lime> foolip: what do you think about (a) adding the IETF Opus audio codec to WebM and/or (b) adding a new, audio-only format using Opus as a baseline for <audio>?
- # [19:43] <erlehmann> rillian_lime, you can bet your gonads that will not fly with apple.
- # [19:44] <hsivonen> annevk: encoding stuff would suck slightly less if each encoding had exactly one label
- # [19:45] <rillian_lime> erlehmann: perhaps. I'm wondering if it's worth trying again.
- # [19:45] <erlehmann> rillian_lime, they haven't implemented support for *vorbis* even though it is in cheap chinese mp3 players.
- # [19:45] <zewt> hsivonen: the labels seem like the smallest problem, though, heh
- # [19:45] * Quits: AryehGregor (~Simetrica@mediawiki/simetrical) (Quit: Not checking IRC for a while while I move, e-mail me instead)
- # [19:45] <zewt> though the huge variance in that table is pretty gross
- # [19:46] <rillian_lime> Opus is suffiently better for audio books that there might be some interest in adopting it as a separate format for <audio>, and it had a more "respectable" standarization process than Vorbis did
- # [19:47] <erlehmann> >implying its all about the process
- # [19:47] <erlehmann> >implying ALAC was necessary
- # [19:47] <rillian_lime> erlehmann: are you saying we shouldn't try again?
- # [19:47] * Joins: MBD123 (~MBD123@dynamicDSL2-54.lipan.net)
- # [19:47] * Quits: plutoniix (~plutoniix@125.25.33.93.adsl.dynamic.totbb.net) (Quit: Leaving)
- # [19:48] <erlehmann> rillian_lime, i am not against trying. i am just saying that if apple engineers had any change of mind or command, they'd surely have come out of the woodwork and announced something.
- # [19:48] <erlehmann> well, actually they had a change of command.
- # [19:48] <erlehmann> or didn't they?
- # [19:49] <erlehmann> rillian_lime, also, “your multimedia codec is almost certainly patented” is a meme now.
- # [19:49] <rillian_lime> now? that's been a meme for years.
- # [19:49] <erlehmann> then it's an old meme now.
- # [19:49] <erlehmann> :3
- # [19:49] <zewt> making the phrase "patent reform" actually mean "making patents stronger" was a genius move by whoever thought it up. heh
- # [19:51] <rillian_lime> anyway, I wanted to know what browser folks thought of the idea, not what they thought apple would think of the idea :/
- # [19:51] * Joins: jamesr (jamesr@nat/google/x-bzswnvfthnxxggle)
- # [19:52] <rillian_lime> zewt: a general problem with "reform" I think
- # [19:52] <rillian_lime> let's reform HTML!
- # [19:52] * Quits: TabAtkins_ (~TabAtkins@76-253-1-30.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
- # [19:52] <zewt> (to mean what we want it to mean!)
- # [19:53] <zewt> i'd like to reform the money in your wallet into my wallet. sound ok?
- # [19:53] <rillian_lime> :)
- # [19:54] * Joins: J_Voracek (~J_Voracek@71.21.195.70)
- # [19:54] * Joins: hasather_ (~hasather_@84.38.144.96)
- # [19:54] * Quits: saba (~foo@unaffiliated/saba) (Ping timeout: 240 seconds)
- # [19:54] <erlehmann> rillian_lime, i am of the impression that any browser folks caring about the web already have wav and vorbis. those who don't let out one or both. also, since the spec is more descriptive than normative in regards to that, it makes at least some sence to think about what apple engineers would do.
- # [19:55] <erlehmann> sense
- # [19:59] * Quits: ap (~ap@2620:149:4:1b01:71c2:18ad:9699:7c6) (Read error: Connection reset by peer)
- # [19:59] * Joins: ap (~ap@17.212.155.203)
- # [20:01] * Quits: J_Voracek (~J_Voracek@71.21.195.70) (Quit: disconnected: Jace Voracek - Jace@Jace-Place.com)
- # [20:03] * Quits: wesbos (~wesbos@24.52.240.143) (Ping timeout: 252 seconds)
- # [20:04] * Quits: tndH (~Rob@cpc16-seac19-2-0-cust234.7-2.cable.virginmedia.com) (Quit: ChatZilla 0.9.87-rdmsoft [XULRunner 1.9.0.1/2008072406])
- # [20:04] * Joins: wesbos (~wesbos@24.52.240.143)
- # [20:05] * Joins: MikeSmith_ (~MikeSmith@EM1-112-51-78.pool.e-mobile.ne.jp)
- # [20:06] <annevk> hsivonen: totally
- # [20:07] * Quits: MikeSmith (~MikeSmith@EM1-113-192-31.pool.e-mobile.ne.jp) (Ping timeout: 240 seconds)
- # [20:07] * MikeSmith_ is now known as MikeSmith
- # [20:09] * Quits: graememcc (~chatzilla@host81-151-187-224.range81-151.btcentralplus.com) (Ping timeout: 276 seconds)
- # [20:11] * Joins: sicking (~chatzilla@2620:101:8003:200:226:bbff:fe05:3fe1)
- # [20:11] * Joins: graememcc (~chatzilla@host81-151-187-224.range81-151.btcentralplus.com)
- # [20:17] * Quits: malydok (marek@moma.t16.ds.pwr.wroc.pl) (Quit: Farewell)
- # [20:19] * Joins: dbaron (~dbaron@nat/mozilla/x-pevwhvzfdslbxnrl)
- # [20:22] * Quits: wesbos (~wesbos@24.52.240.143) (Ping timeout: 255 seconds)
- # [20:23] * Joins: wesbos (~wesbos@24.52.240.143)
- # [20:23] * Quits: karlcow (~karl@nerval.la-grange.net) (Ping timeout: 244 seconds)
- # [20:29] * Quits: tantek (~tantek@70-36-139-219.dsl.dynamic.sonic.net) (Quit: tantek)
- # [20:38] * Quits: GlitchMr (~glitchmr@178-36-187-93.adsl.inetia.pl) (Read error: Connection reset by peer)
- # [20:41] * Joins: karlcow (~karl@nerval.la-grange.net)
- # [20:41] * Quits: msankhala (~mutant@unaffiliated/msankhala) (Ping timeout: 276 seconds)
- # [20:42] * Joins: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net)
- # [20:43] * Quits: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net) (Remote host closed the connection)
- # [20:48] * Quits: ksweeney (~Adium@nyv-exweb.iac.com) (Quit: Leaving.)
- # [20:48] * Joins: ksweeney (~Adium@nyv-exweb.iac.com)
- # [20:49] * Quits: graememcc (~chatzilla@host81-151-187-224.range81-151.btcentralplus.com) (Ping timeout: 240 seconds)
- # [20:51] * Joins: graememcc (~chatzilla@host81-151-187-224.range81-151.btcentralplus.com)
- # [20:53] * Quits: Lachy (~Lachy@cm-84.215.59.50.getinternet.no) (Quit: Textual IRC Client: http://www.textualapp.com/)
- # [21:02] * Joins: dbaron_ (~dbaron@nat/mozilla/x-ioookiwsvlunvmdd)
- # [21:02] * Quits: dbaron (~dbaron@nat/mozilla/x-pevwhvzfdslbxnrl) (Read error: Connection reset by peer)
- # [21:03] * Joins: cgcardona (~cgcardona@unaffiliated/cgcardona)
- # [21:04] * Parts: eric_carlson (~eric@2620:149:4:1b01:fc46:605c:7ed8:eef4)
- # [21:04] * dbaron_ is now known as dbaron
- # [21:04] * Quits: dbaron (~dbaron@nat/mozilla/x-ioookiwsvlunvmdd) (Client Quit)
- # [21:04] * Joins: dbaron (~dbaron@nat/mozilla/x-nanlvuzxxgbvajvl)
- # [21:06] * Quits: FlorianX1 (~Dimitri@p578F10AD.dip.t-dialin.net) (Quit: Leaving.)
- # [21:07] * Joins: rniwa (rniwa@nat/google/x-nscdgalplssmbviz)
- # [21:09] * Quits: othermaciej (~mjs@c-24-6-209-189.hsd1.ca.comcast.net) (Quit: othermaciej)
- # [21:10] * Quits: erichynds (~ehynds@venkman.brightcove.com) (Read error: Operation timed out)
- # [21:11] * Joins: erichynds (~ehynds@venkman.brightcove.com)
- # [21:19] * Joins: jernoble_ (~jernoble@17.212.152.13)
- # [21:19] * Joins: jernoble (~jernoble@17.212.152.13)
- # [21:24] * Joins: lesbos (~wesbos@24.52.240.143)
- # [21:26] <Velmont> annevk: Yup, I had very little overview, and started with something known. :-)
- # [21:28] * Quits: wesbos (~wesbos@24.52.240.143) (Ping timeout: 268 seconds)
- # [21:39] * Joins: saba (~foo@unaffiliated/saba)
- # [21:41] * Quits: Maurice (copyman@5ED573FA.cm-7-6b.dynamic.ziggo.nl)
- # [21:42] * Joins: Maurice (copyman@5ED573FA.cm-7-6b.dynamic.ziggo.nl)
- # [21:43] * Parts: kuya (~d1223m@93-97-190-130.zone5.bethere.co.uk)
- # [21:43] * Joins: scor (~scor@drupal.org/user/52142/view)
- # [21:46] * Joins: miketayl_r (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net)
- # [21:46] * Quits: miketayl_r (~miketaylr@76-229-242-92.lightspeed.okcbok.sbcglobal.net) (Client Quit)
- # [21:51] * Quits: erlehmann (~erlehmann@89.204.137.153) (Ping timeout: 252 seconds)
- # [21:53] * Joins: erlehmann (~erlehmann@82.113.106.5)
- # [21:57] * Quits: davidb_ (~davidb@66.207.208.98) (Quit: davidb_)
- # [22:00] * jernoble_ is now known as jernoble|afk
- # [22:05] <roc> timeless: dbaron, bz, fantasai, heycam and tantek all spend a lot of time on spec feedback and editing
- # [22:05] <roc> timeless: fullscreen is a big thing that we initiated and specced (and annevk took over, bless him)
- # [22:05] <Ms2ger> And smaug complains a lot about specs :)
- # [22:06] * Joins: davidb_ (~davidb@66.207.208.98)
- # [22:07] * Quits: erichynds (~ehynds@venkman.brightcove.com) (Ping timeout: 245 seconds)
- # [22:07] <roc> Opus is a big spec effort
- # [22:08] <Ms2ger> And it's all over my newsgroups
- # [22:09] <roc> jonas and bent have been super-engaged evolving IndexedDB
- # [22:09] <roc> we have done a lot of WebGL spec work
- # [22:10] <dbaron> also other stuff in https://wiki.mozilla.org/Standards
- # [22:10] <roc> ha, there's a whole lot of stuff on that list that I'd forgotten about
- # [22:11] <roc> media fragments (I think we're the only browser vendor doing anything there, maybe that's not a good thing)
- # [22:11] <Ms2ger> Indie UI?
- # [22:12] <hober> Ms2ger: yes?
- # [22:13] <Ms2ger> What's that?
- # [22:13] <roc> let's not forget all the work Henri did to provide feedback to ensure the HTML parsing spec is Web-compatible
- # [22:13] <TabAtkins> roc: I wish we had someone doing Media Fragments work. ;_;
- # [22:13] <hober> Ms2ger: let me dig up a link for you
- # [22:14] <hober> Ms2ger: http://www.w3.org/2011/11/indie-ui-charter
- # [22:14] <roc> timeless: I sense you have some gripe about some specific group or project(s), in which case, let's hear it, but a blanket statement that Mozilla people aren't interested in standards is just ridiculous
- # [22:14] <Ms2ger> hober, that's what I was looking at
- # [22:15] <Ms2ger> I think
- # [22:15] <zewt> "indie" ui? randomly-chosen word? heh
- # [22:15] <Ms2ger> Yeah
- # [22:15] <Ms2ger> Bi-weekly telcons
- # [22:15] <zewt> i guess that's better than calling it "Web User Intents" ...
- # [22:16] * Ms2ger doesn't expect much useful to come out of it, then
- # [22:18] <TabAtkins> ...I can only guess that it comes from INput-mode DEpendent
- # [22:18] <TabAtkins> Or, wait, duh, input method INDEpendent.
- # [22:18] * Joins: othermaciej (~mjs@17.245.90.175)
- # [22:18] <zewt> Ms2ger: well, telecons on top of list activity doesn't make a group less useful (though it definitely makes things less open)
- # [22:18] * Quits: roc (~chatzilla@121.98.230.221) (Ping timeout: 240 seconds)
- # [22:18] <zewt> i can't tell if there's a list attached to this, since half of the links point at "http://www.w3.org/2011/11/@@"
- # [22:18] <zewt> (not that i'm especially interested in reading it anyway)
- # [22:18] <Ms2ger> IME, people spend more time on telcons and administrivia than on work
- # [22:18] <zewt> well i mean
- # [22:19] <zewt> nothing's more frustrating on spec lists than a reply that says "we talked about this in our telecon and here's the decision"
- # [22:19] <zewt> heh
- # [22:19] <zewt> (... or on any lists)
- # [22:19] <TabAtkins> Unfortunately, that interaction mode is easier for handling some types of things.
- # [22:20] <zewt> easier than lists, sometimes; easier than IRC or other realtime comms, no (not for me, ever)
- # [22:20] <TabAtkins> Does it make things better if the call it well-minuted and you can participate via IRC as well?
- # [22:20] <zewt> (well, face-to-face can be, of course, but comparing distributed comms)
- # [22:21] <erlehmann> i only do face-to-face with protocol or email.
- # [22:21] <zewt> whenever voice meetings are happening, everyone who isn't or can't actually be on the call becomes a second-class participant at best
- # [22:21] <erlehmann> only when i agree with someone and we have both similar targets, phone or chat becomes worthwile.
- # [22:21] <Ms2ger> That's true for all sync communication, though
- # [22:22] <TabAtkins> I find that sync comm can help resolve confusion/misunderstandings faster than async.
- # [22:22] <zewt> and text communications (eg. this) is a lot easier for people like me (interested parties but not implementors) to participate
- # [22:22] * Quits: sicking (~chatzilla@2620:101:8003:200:226:bbff:fe05:3fe1) (Ping timeout: 268 seconds)
- # [22:26] * Joins: drublic (~drublic@frbg-4d029c5f.pool.mediaWays.net)
- # [22:28] * Joins: tantek (~tantek@nat/mozilla/x-prubdptgegzxkfox)
- # [22:29] * Joins: tantek_ (~tantek@nat/mozilla/x-mlzlcerzhvhqopdm)
- # [22:31] * Joins: smaug____ (~chatzilla@GYYYDCLXIV.gprs.sl-laajakaista.fi)
- # [22:31] * Quits: davidb_ (~davidb@66.207.208.98) (Quit: davidb_)
- # [22:32] * Parts: ksweeney (~Adium@nyv-exweb.iac.com)
- # [22:35] * Joins: sicking (~chatzilla@2620:101:8003:200:226:bbff:fe05:3fe1)
- # [22:39] * Quits: svl (~me@ip565744a7.direct-adsl.nl) (Quit: And back he spurred like a madman, shrieking a curse to the sky.)
- # [22:39] * Joins: roc (~chatzilla@121.98.230.221)
- # [22:39] * Joins: svl (~me@ip565744a7.direct-adsl.nl)
- # [22:44] * Joins: erichynds (~ehynds@venkman.brightcove.com)
- # [22:44] * Quits: scor (~scor@drupal.org/user/52142/view) (Read error: Connection reset by peer)
- # [22:44] * Joins: scor_ (~scor@drupal.org/user/52142/view)
- # [22:46] * Quits: jacobolus (~jacobolus@c-71-198-169-213.hsd1.ca.comcast.net) (Remote host closed the connection)
- # [22:48] * Quits: roc (~chatzilla@121.98.230.221) (Ping timeout: 240 seconds)
- # [22:50] <jamesr_> i've found some w3c telecons favor abusive personalities over technical goodness
- # [22:50] <jamesr_> so i kind of hate them
- # [22:50] * Quits: erlehmann (~erlehmann@82.113.106.5) (Quit: Ex-Chat)
- # [22:50] <zewt> they always favor loud people who talk over everyone else, heh
- # [22:50] <jamesr_> exactly
- # [22:50] <zewt> https://adblockplus.org/development-builds/allowing-acceptable-ads-in-adblock-plus aaand abp loses all of its credibility overnight
- # [22:52] <jamesr_> can you pay ABP to get on the acceptable list?
- # [22:52] * Quits: sicking (~chatzilla@2620:101:8003:200:226:bbff:fe05:3fe1) (Ping timeout: 252 seconds)
- # [22:53] <zewt> dunno, seems a thoroughly tempting thing for them to do though, heh
- # [22:53] * Quits: othermaciej (~mjs@17.245.90.175) (Quit: othermaciej)
- # [22:54] * Quits: snowfox (~benschaaf@50-77-199-197-static.hfc.comcastbusiness.net) (Quit: snowfox)
- # [22:54] * Quits: gwicke (~gabriel@212.255.28.36) (Quit: Bye!)
- # [22:56] * Quits: lesbos (~wesbos@24.52.240.143) (Quit: Leaving...)
- # [22:57] * Quits: scor_ (~scor@drupal.org/user/52142/view) (Quit: scor_)
- # [22:59] * Joins: scor (~scor@drupal.org/user/52142/view)
- # [23:01] * Joins: erlehmann (~erlehmann@82.113.106.5)
- # [23:03] * Quits: scor (~scor@drupal.org/user/52142/view) (Ping timeout: 240 seconds)
- # [23:06] * Quits: MacTed (~Thud@63.119.36.36)
- # [23:12] * Joins: graememcc_ (~chatzilla@host86-150-23-23.range86-150.btcentralplus.com)
- # [23:14] * Joins: othermaciej (~mjs@17.244.11.69)
- # [23:14] * Quits: graememcc (~chatzilla@host81-151-187-224.range81-151.btcentralplus.com) (Ping timeout: 240 seconds)
- # [23:14] * graememcc_ is now known as graememcc
- # [23:18] <Ms2ger> Don't you love the integer constants in webrtc?
- # [23:19] * Quits: erichynds (~ehynds@venkman.brightcove.com)
- # [23:19] <TabAtkins> Oh god, seriously? Man, that means I gotta yell at someone.
- # [23:19] <Ms2ger> Please do
- # [23:19] <Ms2ger> Then I don't have to
- # [23:21] * Quits: smaug____ (~chatzilla@GYYYDCLXIV.gprs.sl-laajakaista.fi) (Ping timeout: 248 seconds)
- # [23:27] <TabAtkins> I'm confused as to why the PeerConnection constants aren't all sequential.
- # [23:27] <TabAtkins> Is it meant to allow someone to compose them all into a bitfield?
- # [23:28] <TabAtkins> Also: Hm, I appear to have gained AC permissions in the W3C.
- # [23:29] <TabAtkins> Or this page is badly permissioned, and has horrible UI.
- # [23:29] <TabAtkins> (It thinks I'm T.V. Raman.)
- # [23:29] <zewt> i always have trouble finding PeerConnection-related specs; searches never find anything but lists
- # [23:30] <TabAtkins> The webrtc homepage has useful links.
- # [23:32] <zewt> what's the deal with these giganto parameter tables? what possible use are they?
- # [23:32] * Quits: chriseppstein (~chrisepps@209.119.65.162) (Quit: chriseppstein)
- # [23:35] * Joins: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net)
- # [23:35] <zewt> TabAtkins: maybe the numbers map to protocol numbers, in a (somewhat strange) attempt to avoid having to translate?
- # [23:35] <zewt> (don't recall anything about the underlying protocol)
- # [23:35] <TabAtkins> Argh, I'm going to compromise my principles and send an HTML email so I can get decent ins/del-like formatting.
- # [23:35] <TabAtkins> zewt: I suspect that's the case. It's lazy design, though.
- # [23:37] <zewt> http://dev.w3.org/2011/webrtc/editor/images/media-stream-1.png random image in spec is ... somewhat startling (and not terribly enlightening)
- # [23:38] <TabAtkins> Agree. Also, somewhat fuzzy, indicating poor scaling.
- # [23:38] * Quits: othermaciej (~mjs@17.244.11.69) (Quit: othermaciej)
- # [23:38] <TabAtkins> Which is odd, since the check marks are well-scaled.
- # [23:38] <zewt> TabAtkins: it smells like this spec was made by someone who's only recently read the filesystem API spec, which is in much the same style (both the spec style, and the use of constant ints)
- # [23:39] <Ms2ger> TabAtkins, usually it shows AC-member-only forms as if you were the AC rep, with a note saying "you can't do this"
- # [23:39] <TabAtkins> zewt: The use of int constants is very common among anyone who primarily programs in C++ or Java (that is, most browser devs).
- # [23:40] <TabAtkins> Ms2ger: Yeah, that's usual. I *appear* to have the ability, though, to make Google leave the WebRTC group. The checkboxes and submit button are all enabled.
- # [23:40] * Quits: graememcc (~chatzilla@host86-150-23-23.range86-150.btcentralplus.com) (Ping timeout: 240 seconds)
- # [23:40] <Ms2ger> Interesting
- # [23:41] <zewt> give it a shot, what could possibly go wrong? :P
- # [23:41] <zewt> what's the worst that could happen (two weeks later Google withdraws from the w3c and an asteroid strikes the planet)
- # [23:42] <jamesr_> a wild pack of lawyers appear! they use beatdown on TabAtkins. it's super effective!
- # [23:42] <zewt> TabAtkins: one would hope that anyone designing a web API would have a good deal of experience with existing APIs and current design practices, though
- # [23:42] <TabAtkins> zewt: One would hope, yes.
- # [23:42] <zewt> (for whatever vain level of "hope")
- # [23:42] <TabAtkins> zewt: One would be very, very disappointed.
- # [23:43] <zewt> TabAtkins: on the other hand, the editors list on this spec reduces one's hope
- # [23:43] <zewt> (nothing personal to those names; referring to the company list, except for Mozilla)
- # [23:44] <zewt> (i assume those constants weren't in there when hixie wrote the initial draft?)
- # [23:44] <zewt> (never mind the fs-api-ization of the whole thing)
- # [23:45] <zewt> at least where it really matters (eg. method algorithms), it hasn't gone that way
- # [23:48] * Joins: smaug____ (~chatzilla@GMMCCCLXXVII.gprs.sl-laajakaista.fi)
- # [23:48] <zewt> (i'm meaning to compare to the "file api: directories and system" spec, not File API; i suppose i should refer to the former as "file-system" or something)
- # [23:49] <zewt> roman numeral hostnames? heh
- # [23:50] <TabAtkins> All right, complaint about constants sent.
- # [23:52] * Quits: Bass10 (~Bass10@c-76-113-194-7.hsd1.mn.comcast.net) (Read error: Operation timed out)
- # [23:52] * Joins: Bass10 (Bass10@c-76-113-194-7.hsd1.mn.comcast.net)
- # [23:53] * Quits: hasather_ (~hasather_@84.38.144.96) (Remote host closed the connection)
- # [23:54] * Joins: KillerX_ (~anant@2620:101:8003:200:c925:f5e1:42b8:f072)
- # [23:56] <MikeSmith> https://twitter.com/#!/jarrednicholls/status/147804488848261120
- # [23:56] <MikeSmith> "I just added support for XMLHttpRequest.responseXML to handle HTML documents http://t.co/HaRiuLoa http://t.co/wipNrLVu #WebKit"
- # [23:56] * Joins: graememcc (~chatzilla@host86-148-162-54.range86-148.btcentralplus.com)
- # [23:56] * Quits: KillerX (~anant@nat/mozilla/x-chdhnjsynwhkurki) (Ping timeout: 252 seconds)
- # [23:56] * KillerX_ is now known as KillerX
- # [23:57] <TabAtkins> Yessssssss
- # [23:57] <MikeSmith> so already landed in Firefox and shipping in FF10
- # [23:57] <MikeSmith> and now Webkit too
- # [23:57] <MikeSmith> annevk: ↑
- # [23:57] <MikeSmith> oh
- # [23:57] <TabAtkins> With that in place, it's finally easy to do an easy upgrade to ajax-based navigation by swapping out sections.
- # [23:58] <MikeSmith> this doesn't add support for json yet, I don't think
- # Session Close: Sat Dec 17 00:00:00 2011
The end :)