| 00:58 | <mcarter> | jcranmer, what sort of protocol I/O are you doing in browsers? |
| 00:59 | <jcranmer> | mcarter: it's not something in a browser |
| 00:59 | <jcranmer> | it's something in JS |
| 00:59 | <jcranmer> | IMAP, NNTP, SMTP, POP, managesieve, probably IRC in the future as well |
| 00:59 | <mcarter> | jcranmer, are these clients? |
| 00:59 | <jcranmer> | mcarter: servers, actually |
| 01:00 | <mcarter> | jcranmer, I don't suppose your'e doing any client work at all? |
| 01:00 | <jcranmer> | mcarter: I am |
| 01:00 | <mcarter> | jcranmer, is any of this open source by any chance? |
| 01:00 | <jcranmer> | mcarter: |
| 01:00 | <jcranmer> | yep |
| 01:00 | <jcranmer> | http://mxr.mozilla.org/comm-central/source/mailnews/test/fakeserver/ |
| 01:00 | <mcarter> | jcranmer, http://www.js.io/svn/js.io/trunk/protocols/irc/irc2.js (irc client implementation, MIT licensed, if you need it) |
| 01:01 | <mcarter> | jcranmer, what license is your code? |
| 01:01 | <jcranmer> | MPL, I think |
| 01:02 | <mcarter> | jcranmer, do you mind if I send you a private chat? |
| 01:02 | <jcranmer> | MPL,GPL, LGPL tri-licensed to be precise |
| 01:02 | <jcranmer> | mcarter: np |
| 02:12 | <kingryan> | hsivonen: you around? |
| 02:26 | <roc> | anyone know where to get stats on which % of documents have standards-mode doctypes? |
| 02:32 | <Hixie> | as of january, in a scan of about three billion documents biased against spam sites and towards more frequently visited and modified sites, full standards was 10%, almost standards was 40%, and quirks was 50%. |
| 02:32 | <roc> | thanks |
| 02:32 | <Hixie> | that's the most recent data i've collected, but if you want updated numbers i can set another scan up |
| 02:34 | <roc> | no, that's fine thanks |
| 02:35 | <Hixie> | k |
| 02:35 | <Hixie> | i once tried to do a scan that bucketed sites on a per-year basis based on last-modified headers, which showed an increase in standards mode doctype and a much more significant increase in almost standards mode doctypes |
| 02:35 | <Hixie> | but the data is so noisy that it's hard to do good studies based on that |
| 02:36 | <Hixie> | the year data, that is |
| 02:36 | <Hixie> | (e.g. there as many pages from 2009 today as from 1994) |
| 02:36 | <Hixie> | (and far more from 2050 and 1970 than from 1998, iirc) |
| 02:50 | <roc> | hehe |
| 08:03 | <zcorpan> | Hixie: "Your TV doesn't size to fit the video data." -- no, but my media players on the computer do |
| 09:06 | <Lachy> | Hixie, "we shouldn't pick a codec that requires that subtitles be burnt in." - It's the container format that matters for that, not the video codec |
| 09:08 | <zcorpan> | http://developer.mozilla.org/web-tech/2008/10/13/mozafterpaint/ |
| 09:29 | <gsnedders> | annevk3: around? |
| 09:30 | <annevk3> | sort of |
| 09:31 | <gsnedders> | annevk3: How many entities do you intend to define in XML5? |
| 09:32 | <annevk3> | I was planning on having the exact same list as HTML5 (though always require a semicolon) |
| 09:32 | <gsnedders> | annevk3: k |
| 09:35 | <gsnedders> | (I realized that behaviour of non-validating XML processors when finding unknown entities in undefined in XML 1.0 in cases) |
| 10:43 | <hsivonen> | gsnedders: the XML processor behavior is defined: report to application |
| 10:43 | <hsivonen> | gsnedders: it's even part of the main SAX interface |
| 11:37 | <annevk3> | hsivonen, it's not clear whether it's a fatal error though |
| 11:38 | <hsivonen> | it's not fatal. |
| 11:39 | hsivonen | checks the spec |
| 11:40 | <hsivonen> | annevk3: the spec doesn't make it an error of any kind, so it is not a fatal error |
| 11:40 | <annevk3> | yet it's fatal in some implementations |
| 11:40 | <annevk3> | e.g. Gecko |
| 11:42 | <hsivonen> | the reason why it is fatal in Gecko is that Gecko's entity resolver tricks expat into thinking that expat has seen all external entities |
| 11:42 | <hsivonen> | if the entity resolver weren't tricking expat, it wouldn't be fatal |
| 11:44 | <hsivonen> | even if Gecko weren't tricking expat like this and expat reported the skipped entity to the application, the application could opt to do fatal stuff with that information |
| 11:45 | <Philip`> | Why is Gecko tricking expat like this? |
| 11:45 | <hsivonen> | (I'm not trying to say that Gecko's behavior here is good. Just that it's not an XML processor bug and that the behavior taken as a whole is not non-conforming) |
| 11:45 | <hsivonen> | Philip`: expat doesn't have a mode where it would read certain DTDs |
| 11:46 | <hsivonen> | Philip`: it either wants to read all or none |
| 11:46 | <hsivonen> | Philip`: Gecko wants it to read some |
| 11:46 | <hsivonen> | Philip`: so when Gecko doesn't want it to read a DTD, the entity resolver resolves unwanted DTDs to a zero-length stream |
| 11:46 | <hsivonen> | which from the point of view of the XML spec is different from not trying to resolve at all |
| 11:47 | <Philip`> | Ah, right |
| 11:48 | <hsivonen> | one might argue that a better fix would have been extending the entity resolver interface to have an "I don't want to resolve this" return value |
| 12:22 | <annevk3> | I don't particularly care what browsers do there for now |
| 13:34 | <gsnedders> | Meh. No way to get a Lenovo in any non-standard config. in the UK :( |
| 13:34 | <gsnedders> | No way to get a 64-bit OS :( |
| 13:43 | <gsnedders> | hahahaha |
| 13:44 | <gsnedders> | The latest last week in html5 post is _awesome_. |
| 13:46 | <doublec> | hehe. true |
| 13:49 | <Dashiva> | Maybe we should add a link in the topic |
| 13:51 | <Dashiva> | Apparently I'm a novitiate. Is that like a novice and initiate in one? |
| 13:53 | <Philip`> | gsnedders: Why not just reinstall the OS? |
| 13:53 | <gsnedders> | Philip`: Don't Vista 32-bit and 64-bit have different license keys? |
| 13:54 | <Philip`> | gsnedders: Oh, I thought you were thinking of running a proper OS |
| 13:54 | gsnedders | doesn't really want to run two OSes, and he needs either OS X or Windows |
| 13:55 | <hsivonen> | gsnedders: do you prefer Lenovo's hardware over Apple's |
| 13:55 | <hsivonen> | ? |
| 13:56 | Philip` | doesn't know how the license/bitness things work, since he just downloaded "Microsoft Windows Vista Business DVD" and a licence key from MSDNAA and then installed it and it seemed to be the 32-bit version |
| 13:56 | <gsnedders> | hsivonen: I have little to choose between the two, but I'd rather the 10 hour battery life of the T400 |
| 13:57 | <Dashiva> | Does standardssuck have transcripts yet? |
| 14:02 | <gsnedders> | hsivonen: I would on the whole prefer to be on a native *nix OS, but when I need long battery life, I start to have little choice |
| 14:02 | <hsivonen> | gsnedders: doesn't Ubuntu on Lenovo do the right battery thing? |
| 14:03 | <gsnedders> | hsivonen: There are one or two issues on it, but nothing major. My real problem is good photo editing/management software |
| 14:03 | <gsnedders> | hsivonen: I have seen nothing good on GNU/Linux at all |
| 14:04 | <Philip`> | You should write some web-based platform-independent photo editing/management software and then it wouldn't be a problem |
| 14:04 | <gsnedders> | Philip`: No. |
| 14:05 | <gsnedders> | Philip`: I'll use an OS with good software all ready. |
| 14:06 | <Philip`> | It's much easier if you simply relax your definition of "good" |
| 14:06 | <gsnedders> | I don't really want to dual-boot either, because then I have eternal fun debating size of partitions |
| 14:06 | <Philip`> | and then you could use Gimp or Krita or whatever |
| 14:07 | <Philip`> | Resizing partitions isn't really that hard |
| 14:08 | <Philip`> | at least on Linux (using LVM), and probably on Windows (using magical features of NTFS that must surely exist though I have no idea how to enable them) |
| 14:08 | <gsnedders> | It's annoying, though |
| 14:10 | <Philip`> | (I have no idea how partitioning works in OS X; I just drag the slidey bar and pray that it's not going to clobber all my data) |
| 14:11 | <hsivonen> | is there a slidey bar in OS X these days? |
| 14:11 | <gsnedders> | Philip`: It won't let me drag it here :( |
| 14:12 | <Philip`> | hsivonen: Yes, in the Disk Utility or whatever it's called |
| 14:13 | <Philip`> | http://www.creativetechs.com/iq/tip_images/DiskUtility-Resize.gif |
| 14:13 | <hsivonen> | Philip`: oh. I hadn't noticed. |
| 14:13 | <gsnedders> | Philip`: I can't grow one partition (HFS+) and shrink another (NTFS) in there :( |
| 14:14 | <gsnedders> | http://forum.notebookreview.com/showpost.php?p=4003347&postcount=30 — that doesn't make me want to use Ubuntu |
| 14:14 | <Philip`> | gsnedders: That's probably because OS X doesn't understand how to shrink NTFS - I guess you'd have to do it via Windows (or a third-party tool) instead |
| 14:15 | <Philip`> | gsnedders: (I've only used it once, to shrink an HFS+ partition and create a new NTFS one (alongside the existing NTFS one created by Boot Camp)) |
| 14:15 | <gsnedders> | Philip`: Ah, I just used the CLI to do that :) |
| 14:16 | <Philip`> | (Then I used the magic of Vista's NTFS symlinks to move my Steam games folder onto the new partition without having to modify or move or reinstall anything else, and it actually worked, which was nice) |
| 14:40 | <annevk3> | gsnedders, use Flickr + whatever software they recommend |
| 14:40 | <annevk3> | Flickr uses some other app for editing which does all the basics :) |
| 15:04 | <gsnedders> | Fx currently fails one test for HTTP parsing |
| 15:04 | <gsnedders> | I'm not sure if I really want it doing one of the things that makes it pass one of them |
| 15:05 | <gsnedders> | (the one failure currently is due to using null-terminated strings) |
| 15:55 | <takkaria> | the TAG minutes show once again that the TAG just don't understand HTML5 |
| 15:56 | <annevk3> | takkaria, hoping to get on lastweekinhtml5? |
| 15:57 | <takkaria> | heh |
| 15:57 | <takkaria> | not thought of that :) |
| 15:57 | <hsivonen> | takkaria: URL? |
| 15:57 | <takkaria> | hsivonen: http://www.w3.org/2001/tag/2008/09/23-minutes#item06 |
| 15:58 | <BenMillard> | I thought there was a detailed review of the HTML5 sectioning and heading elements linked to from this channel recently, but I can't find it in the logs or my history |
| 15:58 | <BenMillard> | any ideas? |
| 15:58 | <BenMillard> | it was on a blog |
| 15:58 | <annevk3> | BenMillard, it's linked from the latest this week in HTML5 |
| 15:59 | <annevk3> | iirc |
| 15:59 | <BenMillard> | annevk3, you're a genius! |
| 16:00 | BenMillard | pats annevk3 on the back. |
| 16:00 | BenMillard | bookmarks the page. |
| 16:01 | <annevk3> | takkaria, I have the feeling "we"'re quite aligned with the TAG actually; it seems that sometimes they misunderstand HTML5 and value a different approach to spec writing |
| 16:01 | <annevk3> | but that is mostly an editorial issue and should therefore not cause much conflict |
| 16:02 | <takkaria> | the idea that, e.g. you can split the parsing section into "clean" and "not clean" and have them in seperate specs is mad, though |
| 16:03 | <annevk3> | it kind of depends on what they mean with "clean", "not clean", and "parsing" :) |
| 16:03 | <takkaria> | because processors will have to implement "not clean", and having them in seperate specs will only create duplication, confusion, and faulty implementation |
| 16:03 | <annevk3> | if by "clean" they mean writing and by "not clean" whatever browsers have to do, we'd be nearly there |
| 16:04 | <annevk3> | except that currently it's two separate sections rather than two separate specifications |
| 16:04 | <takkaria> | I guess. I get the impression they wouldn't be satisfied with an authoring guide and a specification though |
| 16:04 | <annevk3> | I wasn't talking about an authoring guide, I was talking about section 8.1 |
| 16:04 | <takkaria> | they don't like the language specification including enough detail to write a browser with, afaict |
| 16:05 | <takkaria> | mm |
| 16:06 | <annevk3> | seems kind of weird for the W3C to encourage specs that browsers can't interoperably implement :) |
| 16:06 | <annevk3> | maybe the F2F next week with the TAG will help |
| 16:07 | <takkaria> | I guess some of this comes down to my philosophy of language... the meaning of a language found in how the language is used. to try and specify the meaning of something whilst ignoring how it's used seems about the most futile and unrewarding task one can set oneself |
| 16:07 | <hsivonen> | takkaria: ah. old minutes. I wondered if there were new ones |
| 16:08 | takkaria | hasn't been around much since the end of September, so they're new to me :) |
| 16:09 | <hsivonen> | takkaria: my story is that the "Writing" section is the clean section for parsing |
| 16:10 | <Dashiva> | Every time I search for things about java, I find articles from 2004 or older |
| 16:11 | <zcorpan> | annevk3: the "clean" parsing spec could be a view of the spec proper with the steps after any parse error instead says "Abort." |
| 16:11 | <hsivonen> | Dashiva: everything has already been said about Java :-) |
| 16:11 | <annevk3> | http://www.w3.org/2001/tag/2008/10/09-minutes.html are the latest minutes |
| 16:12 | <annevk3> | next telcon is Oct 16 |
| 16:13 | <annevk3> | zcorpan, like I said, it's unclear what is meant with "parsing" and "clean" |
| 16:14 | <Dashiva> | hsivonen: I'm a bit hesitant to take advice about String vs StringBuffer from before StringBuilder even existed :) |
| 16:14 | <takkaria> | I like this bit from the minutes on the 24th: |
| 16:14 | <takkaria> | TVR: There is a lot of broken stuff out there, and that has to be acknowledged, but the market share argument is spurious. |
| 16:14 | <takkaria> | [scribe didn't understand why] |
| 16:15 | <hsivonen> | I like how irc.cgi mentioned in the TAG minutes actually depends on browser behavior that intertwines previously unspecified things. |
| 16:16 | <annevk3> | hsivonen, quite often documents produced by the TAG rely on some kind of error recovery :) |
| 16:16 | <Dashiva> | Says there's no reason to manually use stringbuffer since the JVM will automatically make one for most simple cases, makes sense. But on the other hand, stringbuffer is synced so has overhead compared to stringbuilder in single-threaded uses. |
| 16:16 | <annevk3> | especially character encoding |
| 16:17 | <hsivonen> | Dashiva: actually, it's javac that makes one |
| 16:18 | <Dashiva> | I'm new to the terminology. Some magic part of the system that isn't me does it :) |
| 16:18 | <hsivonen> | and nowadays javac should make a StringBuilder |
| 16:19 | <Dashiva> | Yeah, I'm delving into the byte code of a test class now, and it says stringbuilder. But I notice it creates new temporary stringbuilders for every if statement and other branches... |
| 16:30 | <gsnedders> | "AM: I'm new to this area... the WHATWG is new on my radar. Looking at the landscape, I wonder if the chances of having impact are so low that... well... should we use our time for other things?" |
| 16:32 | <BenMillard> | gsnedders, I started packing clothes for TPAC 2008 today |
| 16:32 | <gsnedders> | BenMillard: Heh. I'm in France! :P |
| 16:33 | <BenMillard> | gsnedders, yeah I read! the PS2 is already wrapped up in 2 jumpers and packed, btw ;) |
| 16:33 | <annevk3> | today? that's early :) |
| 16:33 | <gsnedders> | BenMillard: I have, beside me, F1: '05, NFS:HP2, a controller, and a memory card. And no PS2. |
| 16:33 | annevk3 | usually packs half an hour before he leaves |
| 16:33 | <BenMillard> | gnsedders, perfect. |
| 16:34 | <BenMillard> | annevk3, this way gives me about a week of "oh shit I REALLY should pack that!" which, otherwise, would be occuring while at the actual event :D |
| 16:36 | <BenMillard> | LOL, my blog says I've made 2528 entries! http://projectcerbera.com/blog/archive |
| 16:36 | BenMillard | makes a beeline for his build scripts... |
| 16:39 | <gsnedders> | HTTP is odd. |
| 16:40 | BenMillard | noticed he wasn't resetting a counter when running the script repeatedly...d'oh |
| 16:40 | <gsnedders> | BenMillard: heh |
| 16:43 | <mcarter> | has anyone seen this panel on html5 and websocket? http://www.svwebbuilder.com/page/10%2F29%2F2008+The+Chronicles+of+Web+Standard:+the+HTML+5,+the+Comet+and+the+WebSocket?t=anon |
| 16:43 | <annevk3> | BenMillard, you're not using some blog software? |
| 16:43 | <mcarter> | I saw it a week ago and emailed them and asked to be put on |
| 16:46 | <annevk3> | it hasn't happened yet it seems? |
| 16:46 | <annevk3> | slightly out of date though, "Dion Almaer, Open Web Advocate at Google" |
| 16:47 | <Dashiva> | hsivonen: I don't support you know of a resource with information about how expensive the various bytecode instructions are? |
| 16:50 | <BenMillard> | annevk3, that's correct but it might change at some point |
| 16:51 | <annevk3> | mcarter, "Official Contributor for W3C HTML5" :) |
| 16:52 | <mcarter> | annevk3, =) |
| 16:52 | <mcarter> | annevk3, i am in the acknowledgments, after all |
| 16:53 | <mcarter> | and no one knows what whatwg is... |
| 16:53 | <BenMillard> | mcarter, so am I...it's a neat feeling :) |
| 17:02 | <BenMillard> | I'm going to split my 2008 collection into several pages...but where should I make those splits? http://projectcerbera.com/web/study/2008/collection |
| 17:03 | <BenMillard> | I considered turning each heading into a page and using heading levels to produce URL depth, but /web/study/2008/list/navigation seems a bit longwinded... |
| 17:04 | <BenMillard> | if I split on <h2> and let the result pages have all their <h3> sections, a couple of pages will still have 200+ entries |
| 17:04 | <BenMillard> | s/result pages/resulting pages/ |
| 17:05 | <BenMillard> | Hixie, what manner of splitting would you find most useful? ^^^ |
| 17:06 | <BenMillard> | I'll e-mail my mentors at Mozilla, see if they have a preference |
| 17:09 | <mcarter> | annevk3, oh, for the record, I didn't use that phrasing. I used "He is an officially recognized contributor to the W3C HTML5 specification, particularly for his work with the WebSocket proposal. " |
| 17:10 | <mcarter> | annevk3, the panel organizers couldn't even get my name right; much less hope that they'd describe my relationship to the spec properly =) |
| 17:10 | <gsnedders> | I do like how Opera fails all of my HTTP tests. |
| 17:15 | <BenMillard> | Hixie, at the moment I think splitting the collection on <h2> will give the best balance but I'd still like your POV. |
| 17:18 | <BenMillard> | gsnedders, Nominet won't let me register ben.uk as a replacement for projectcerbera.com :( |
| 17:18 | <BenMillard> | gsnedders, so maybe I'll get http://b.co.uk/ to show how stupid it is to dissallow registrations in the 2nd level of the .uk ccTLD |
| 17:18 | <gsnedders> | BenMillard: :P |
| 17:18 | <annevk3> | mcarter, heh |
| 17:18 | <gsnedders> | BenMillard: Why not http://be.a.co.uk? |
| 17:19 | <BenMillard> | gsnedders, I'd like my protest registration to still be usable |
| 17:20 | <annevk3> | prolly can't have a label of one character at that position |
| 17:22 | <BenMillard> | annevk3, ah that's indeed what the WHOIS says...but there are ccTLDs which let you do that, it's just a bit more expensive. |
| 17:23 | <BenMillard> | (http://webwhois.nic.uk/cgi-bin/whois.cgi?query=b.co.uk&WHOIS+Submit.x=37&WHOIS+Submit.y=13) |
| 17:24 | <BenMillard> | I've actually been having a good but very slow conversation with someone who works there, so there's always hope for ben.uk |
| 17:35 | gsnedders | wonders what has just eaten over 1GB |
| 17:57 | <gsnedders> | Planning on doing my AH Computing project and procrastinating and working on http-parsing instead… Not good. |
| 18:03 | <Philip`> | Dashiva: Expensive in terms of execution time? That can vary by several orders of magnitude in a single run of the program, so it's kind of impossible to give an answer |
| 18:04 | <Dashiva> | The relative costs, not absolute |
| 18:05 | <Philip`> | The relative costs can vary by several orders of magnitude |
| 18:06 | <Philip`> | e.g. I guess a program would spend relatively more time doing arithmetic when it starts up, but that'll all get JITted to be really fast and it'll end up spending more time chasing pointers and getting cache misses or whatever |
| 18:08 | <Dashiva> | You're getting closer |
| 18:09 | <Philip`> | and you have to worry about e.g. garbage collection, where allocating memory has approximately zero immediate cost (since it might just be incrementing a pointer) but can have a much more significant longer-term cost |
| 18:09 | <Philip`> | so I'm not sure what kind of information exists that would be helpful for what you're asking for, and I'm not even sure what you're asking for :-) |
| 18:10 | <Dashiva> | Sure the information exists, that's how you optimize compilers :) |
| 18:11 | <Philip`> | If you're targetting JVM bytecode, you don't optimise your compiler, since that's the JVM's job :-) |
| 18:11 | <Dashiva> | Pushing an immediate operand and calling a virtual function aren't exactly on the same complexity level |
| 18:11 | <Philip`> | The JVM might inline that virtual function call so it has no cost at all |
| 18:12 | <Dashiva> | Not very virtual then |
| 18:12 | <Philip`> | The JVM can be sure that it's exactly equivalent to if it were virtual |
| 18:13 | <Philip`> | e.g. if it knows the object is of type T and no class exists that extends T, then it could directly call T's method without the virtual indirection |
| 18:14 | <Philip`> | And pushing an operand onto the stack doesn't have a well-defined cost either, because it'll all get translated into register-based code |
| 18:16 | <Dashiva> | Now suppose I know what kind of code I'm writing, and I know that virtual call is very virtual indeed |
| 18:17 | <Philip`> | I suppose so |
| 18:17 | <Philip`> | Now what? :-) |
| 18:18 | <Dashiva> | I'm proposing that it will be more expensive than a push :) |
| 18:18 | <Philip`> | But a push doesn't have a well-defined cost :-p |
| 18:20 | <Dashiva> | Sure, but good job doing a function call without at least one push :P |
| 18:21 | <Philip`> | That's easy - you just specialise the function which does that function call, on the type of the object you're calling virtually, and then the function call itself is no longer virtual and can be inlined quite happily and maybe won't have any cost at all :-) |
| 18:22 | <Philip`> | whereas maybe that one push will force the JITter to spill registers and it'll slow the whole method horribly |
| 18:22 | <Dashiva> | You'd rather abuse the poor cache with duplicate code, shame on you |
| 18:23 | <Philip`> | Maybe most of the duplicates almost never get executed |
| 18:24 | <Philip`> | Anyway, I've got way more cache than I used to have RAM just a few years ago ;-) |
| 18:24 | <Philip`> | and I would say that's more than I used to have disk space a few years before that, but I think I'd be lying |
| 18:24 | <Dashiva> | I do have more RAM than I had disk space |
| 18:25 | <Philip`> | I have that, I just don't have more cache :-( |
| 18:25 | <Dashiva> | I suppose it depends on what level cahce you count |
| 18:25 | <Philip`> | I count the bigger one because it sounds more impressive |
| 18:26 | <Dashiva> | Those are like 4-8 MB now, aren't they? |
| 18:27 | <Philip`> | I have 4MB, presumably shared between all the cores |
| 18:28 | <Dashiva> | Then again, I have memories of an apple II which I'm not even sure had a harddisk |
| 18:29 | <Philip`> | Oh, looks like it's 4MB shared between two cores, so my quad-core one must have 8MB total |
| 18:30 | <Philip`> | So, plenty of space to store duplicated code! |
| 23:18 | <hyuuu2> | what is the size of whatwg_db? I tried googling and could not find it? |
| 23:27 | <Hixie> | hyuuu2: whatwg_db? |
| 23:30 | <hyuuu2> | Hixie: the client side storage |
| 23:34 | <Hixie> | what about it? |
| 23:43 | <Dashiva> | Maybe there's a hidden message in the seemingly unrelated tags mr last week is using |