00:55
<jarib>
z~
01:25
<MikeSmith>
are there any command-line utilities that, given a file, will report the character encoding of the file?
01:27
<jcranmer>
file, maybe?
01:35
<MikeSmith>
jcranmer: indeed
01:35
<MikeSmith>
thanks
01:36
MikeSmith
did not know about the --mime-encoding switch in file
01:55
<Hixie>
Philip`: http://canvex.lazyilluminati.com/survey/2007-07-17/analyse.cgi/pages/tagattr/img/longdesc 500
02:54
<MikeSmith>
file command doesn't seem to know the difference between a us-ascii file and a utf-8 one
03:05
<wirepair>
file -bi doesn't work?
03:07
MikeSmith
tries file -bi
03:08
<MikeSmith>
wirepair: nope
03:08
<wirepair>
and isn't us-ascii part of utf-8? heh
03:08
<jcranmer>
presumably it can't tell if there are no high-bit characters
03:09
<wirepair>
yeah or there's no BOM
03:10
<MikeSmith>
validator.nu seems to be smarter - http://validator.nu/?doc=http%3A%2F%2Fwww.w3.org%2FTR%2Fhtml-markup%2F
03:10
<MikeSmith>
too smart for its own damn good
03:13
<wirepair>
no it's not
03:13
<wirepair>
it's reading the servers charset tag
03:13
<wirepair>
;>
03:14
<wirepair>
Content-Type: text/html; charset=utf-8
03:14
<wirepair>
that's why it disagree's i imagine
03:14
<wirepair>
er disagrees
03:14
<wirepair>
i see no bom nor non-ascii codes in that html file
03:14
<wirepair>
only reference to utf-8 is the server's content-type header
03:26
<MikeSmith>
wirepair: ah
03:36
<wirepair>
just my guess though ;>
03:37
<MikeSmith>
wirepair: I'm not familiar with that part of the validator.nu
03:38
<wirepair>
oh duh it's right there
03:38
<wirepair>
under parser
03:38
<wirepair>
says parser: 'automatically from content-type'
03:38
<MikeSmith>
but the fact that hsivonen has is reporting, "disagrees with the actual encoding of the document", made me think that he must have it doing something to actually check the encoding, not just relying on the headers
03:39
<MikeSmith>
wirepair: I think that only is used for deciding whether to parse is as text/html or as XML
03:39
<wirepair>
gotcha
03:39
MikeSmith
makes note to ask hsivonen about it when he gets back
03:40
<wirepair>
that site isn't very helpful
03:40
<MikeSmith>
which site?
03:40
<wirepair>
validator
03:40
<MikeSmith>
what's not useful about it?
03:40
<wirepair>
the fact that it doesn't tell you where it decided it matches utf-8
03:40
<wirepair>
and not ascii
03:41
<wirepair>
because i'm looking at the raw bytes, and i see no multibytes just straight up ascii heh
03:41
<MikeSmith>
yeah, it probably could provide more details
03:41
<MikeSmith>
I guess I should just go ahead and look at the htmlparser code and see for myself
03:43
<MikeSmith>
hmm, there's not "ack" macports port, it seems
03:44
MikeSmith
falls back to find . | xargs grep
03:49
<MikeSmith>
wirepair: http://hg.mozilla.org/projects/htmlparser/file/546412142175/src/nu/validator/htmlparser/io/Driver.java
03:49
<MikeSmith>
in case you're curious
03:50
<MikeSmith>
it seems that at the point where it emits that error, it hasn't recorded how it actually determined the encoding
03:50
MikeSmith
looks at getActualHtmlEncoding()
03:56
<wirepair>
found something?
03:59
<MikeSmith>
it's using InputSource.getEncoding()
03:59
<MikeSmith>
from org.xml.sax
04:00
<MikeSmith>
http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/InputSource.html#getEncoding()
04:00
<MikeSmith>
I have no clue what means getEncoding actually uses to determine the encoding
04:01
<wirepair>
yeh,, no idea heh
04:07
<MikeSmith>
actually, it's just a simple getter
04:07
<wirepair>
wtf
04:07
<wirepair>
heh
04:08
<wirepair>
so something is supplyin gthe stream with an encoding ?
04:08
<wirepair>
kinda makes the whole validation thing moot doesn't it?
04:08
<MikeSmith>
the magic is here: http://hg.mozilla.org/projects/htmlparser/file/546412142175/src/nu/validator/htmlparser/io/HtmlInputStreamReader.java
04:09
<wirepair>
i didn't see a BOM so...
04:09
<wirepair>
again, would be better if the validator says where it no longer matches the expected type
04:10
<MikeSmith>
It seems to be using jchardet and/or ICU4J
04:10
<wirepair>
so people wouldn't have to look through the validator code to figure out how it's determining hehe
04:10
<MikeSmith>
true
04:10
<wirepair>
i say just wait ;>
04:12
<MikeSmith>
well, at this point, I'm reasonably sure it is actually doing genuine character-encoding detection, not just relying on the Content-Type header
04:12
<MikeSmith>
actually, I already knew that, because there are times when it will report that the character-encoding in the Content-Type header doesn't match the actual encoding of the document
04:13
<MikeSmith>
anyway, I need to get some grub
04:13
<MikeSmith>
wirepair: btw, you have a lot of sento in Oota-ku
04:14
<MikeSmith>
a number of which are real onsen
04:14
<MikeSmith>
well, real onsen water
04:14
<wirepair>
ah not much of an onsen person
04:14
<MikeSmith>
http://www21.ocn.ne.jp/~spa-mich/todofuken/tokyo/tokyo.htm
04:14
<MikeSmith>
I am nuts for onsen
04:15
<wirepair>
ha
04:15
<wirepair>
i'll show the wife
04:15
<wirepair>
thanks ;>
04:16
<MikeSmith>
yeah, for some reason you all have more onsen-sento there than any other part of the city, by a wide margin
04:17
<wirepair>
weird..
04:17
<wirepair>
wonder why that is
04:31
<MikeSmith>
wirepair: I think one reason might be that Oota-ku is just really big
04:31
<MikeSmith>
geographically
04:48
<wirepair>
how long you been in japan mike?
04:51
<MikeSmith>
wirepair: 8 years
04:51
<wirepair>
wow, quite a bit of time ;>
04:51
<wirepair>
2x me hehe
04:51
<wirepair>
i imagine your japanese must be pretty damn good by now hehe
04:54
<MikeSmith>
wirepair: my Japanese is actually pretty bad
04:54
<wirepair>
didn't study or gave up studying?
04:54
<wirepair>
hehe
04:55
<MikeSmith>
I studied some, but mostly learned on the job and from my daughter, who's 12 years old now
04:55
<MikeSmith>
she and I only speak Japanese to each other
04:56
<wirepair>
interesting
04:56
<MikeSmith>
she understands a lot of English, but doesn't speak English much
04:56
<wirepair>
yeah i've seen that, where the child understand what you say, but will just answer in japanese
04:56
<MikeSmith>
yeah
04:57
<MikeSmith>
she is starting to study English more, and will be studying it at school when she starts junior-high in April
04:57
<wirepair>
crazy
04:57
<MikeSmith>
she teaches me a lot of words, actually
04:57
<wirepair>
i imagine her pronounciation will be better than most
04:57
<wirepair>
hehe
04:58
<wirepair>
funny i was teaching a family in laws kid a little english (he's like 3) and his father was there, i said truck in english pronounciation, and his father said it in japanese
04:58
<wirepair>
the kid was like 'which is it?!'
04:58
<MikeSmith>
heh
04:58
<wirepair>
he thought they were completely different words
04:59
<MikeSmith>
yeah, it's like orange, or cake, or many others
04:59
<MikeSmith>
truck is a tough one, though
04:59
<wirepair>
yup
05:00
<MikeSmith>
"tr" is just not amenable to katakana-ized pronunciation
05:00
<wirepair>
chi-a-ru
05:00
<wirepair>
hehe
05:01
<MikeSmith>
but I think it's good for kids to learn that people pronounce the same words in different ways
05:01
<wirepair>
yeah definitely
05:01
<MikeSmith>
it's definitely confusing when they are young, though
05:03
<MikeSmith>
one example is the way some Japanese teachers of English in secondary schools pronounce the word "the"
05:03
<wirepair>
za-?
05:03
<MikeSmith>
which is like "za"
05:03
<wirepair>
yeah
05:03
<MikeSmith>
yeah
05:04
<MikeSmith>
some people think it's just wrong to teach kids to pronounce it that way
05:04
<wirepair>
i don't think too highly of the japanese educational system to be honest though
05:04
<wirepair>
not from the things i've heard
05:04
<MikeSmith>
yeah, the system has some problems, for sure
05:04
<MikeSmith>
but about particular case of "za", I don't think it's a big deal at all
05:05
<MikeSmith>
because for one thing, it's also the way some European non-native-English speakers say it soo
05:05
<wirepair>
yeah, i'm more concerned with my child sitting for 8hours and then being expected to regurgitate the information back
05:05
<wirepair>
;>
05:05
<wirepair>
not that i have any at the moment, but when i do heh
05:06
<MikeSmith>
well, my own secondary education wasn't exactly a thrill ride
05:07
<wirepair>
at the time i thought mine was terrible, looking back and hearing other peoples experiences i guess it was pretty damn good
05:07
<wirepair>
heh
05:07
<MikeSmith>
I had teachers who were supposedly better trained and more enlightened, but still most of them sucked at actually teaching
05:07
<wirepair>
i only had a few like that
05:07
<MikeSmith>
teaching well is a rare talent
05:07
<wirepair>
indeed.
05:08
<MikeSmith>
I taught high school on contract for 3 years or so
05:08
<wirepair>
ah so you got to see it firsthand ;>
05:09
<MikeSmith>
well, it was enough for me to realize I couldn't do it well, and needing to find some other way to earn money
05:09
<wirepair>
ahha
05:09
<wirepair>
gotcha
05:09
<MikeSmith>
anyway, in 6 years of primary school, my daughter has had some pretty good teachers, and some pretty bad ones
05:09
<MikeSmith>
the teachers do make a big difference
05:10
<wirepair>
yeah
05:10
<MikeSmith>
last year, her teacher was a young-guy, first-year teacher, and he didn't really know what he was doing, and her grades went down
05:10
<wirepair>
ahh that's a shame
05:11
<MikeSmith>
this year, she had a much older, more experienced, no-nonsense teacher and she learned a lot more and turned all her grades around
05:12
<MikeSmith>
I know there are some good teachers in secondary schools here, too
05:12
<MikeSmith>
along with mediocre and bad ones
05:13
<MikeSmith>
it's partly just the luck of the draw, I guess
05:13
<wirepair>
yeah i'd like to know what the curriculum is like, my understanding is there's little to know real teaching of the scientific process until college
05:13
<wirepair>
s/know/no
05:14
<wirepair>
but hey what do i know, i never even went to college ;>
05:14
<MikeSmith>
I think the system expects -- or even requires -- a lot more personal responsibility on the part of students and their parents
05:15
<wirepair>
yeah, unfortunately what i've seen here is an unbelievable amount of pressure on teachers to take care of kids
05:15
<MikeSmith>
the thing I value most about my college experience was the many opportunities it provided for relaxed dope smoking
05:15
<wirepair>
hahah
05:16
<wirepair>
see i did that in private school for 2 years, i got it out of my system
05:16
<wirepair>
then i got a job during the bubble, it bust, and all my friends got out of college and couldn't find jobs when i had 4 years experience ;>
05:17
<wirepair>
my timing was impeccable
05:17
<MikeSmith>
you planned that well
05:18
<wirepair>
just very lucky
07:12
<othermaciej>
MikeSmith: check out the status on this: http://www.w3.org/TR/2010/WD-html-bidi-20100304/#bidi-isolation
07:12
<othermaciej>
MikeSmith: "This document is an editors' copy that has no official standing."
07:13
<othermaciej>
that's probably not right
07:13
<MikeSmith>
oops
07:13
<othermaciej>
MikeSmith: also I surprisingly hadn't heard about that document
07:13
<MikeSmith>
I will fix it in-place now
07:13
othermaciej
wonders why the proposals in that document weren't proposed to the HTML WG and hopes they will be at some point
07:14
<MikeSmith>
othermaciej: I probably should not admit this, but the first I saw of that doc was this announcement
07:15
<MikeSmith>
I think Richard mentioned something about it to me, but it didn't register as being something closely related to HTML
07:15
<othermaciej>
glad it's not just me
07:16
<othermaciej>
Looking at the TransReq Philippe did say it should be be brought to the attention of the HTML WG
07:17
<MikeSmith>
well
07:18
<MikeSmith>
it's odd that they chose to publish it as WD first
07:18
<MikeSmith>
the "bring to attention of the HTML WG" step would seem like it should have better occurred first
07:18
<MikeSmith>
wait
07:19
<MikeSmith>
it's about bidi
07:19
<MikeSmith>
so they are doing everything backwards
07:19
<MikeSmith>
sorry, not backwards, just different-wards
07:19
<MikeSmith>
it's all relative
07:23
<MikeSmith>
hsivonen: btw, I wanted to ask you about the character-detection mechanism that validator.nu uses
07:24
<MikeSmith>
hsivonen: http://validator.nu/?doc=http%3A%2F%2Fwww.w3.org%2FTR%2Fhtml-markup%2F
07:24
<MikeSmith>
"Internal encoding declaration us-ascii disagrees with the actual encoding of the document (utf-8)"
07:25
<MikeSmith>
but that document actually has no non-ascii characters in it, and no BOM
07:26
<MikeSmith>
so I assume the character-detection code is actually also using the Content-type header
07:27
<MikeSmith>
not just checking the "actual encoding" of the document
07:28
<MikeSmith>
if so, I'm wondering if that error message might be refined to say, "disagrees with the actual encoding of the document and/or the Content-Type header the document is being served with (utf-8)"
07:28
<MikeSmith>
or something similar
07:30
<hsivonen>
I guess the actual encoding is the one named on the http level in this case
07:30
<zcorpan>
MikeSmith: pong
07:31
<MikeSmith>
hsivonen: OK
07:31
<hsivonen>
maybe 'actual' is a philosophical/onntological question and the message should say something else
07:31
<othermaciej>
heh, bidi
07:32
<MikeSmith>
hsivonen: yeah, the word "actual" is what threw me
07:32
<hsivonen>
in this case, actual means the encoding that's actually used for decoding
07:32
<MikeSmith>
ah
07:32
<MikeSmith>
that's more like maybe "effective"
07:33
<MikeSmith>
I can't think of any great suggestions other than that one
07:33
<MikeSmith>
which is not great
07:33
<MikeSmith>
anyway, I'm not sure it's worth changing
07:33
<MikeSmith>
I had just been wondering
07:34
<MikeSmith>
zcorpan: I wanted to tell you I made some more changes to the markup doc based on the errors you reported a while back
07:35
<MikeSmith>
zcorpan: http://www.w3.org/TR/html-markup/syntax.html#doctype-syntax
07:36
<MikeSmith>
my rationale for organizing the description of doctypes that way (instead of the way Hixie has it) is that I wanted to try to have the description of what a "normal" HTML doctype is to be as simple as possible
07:37
<MikeSmith>
I don't know if "normal doctype" is the best choice as far a terminology
07:38
<MikeSmith>
but anyway, I did correct the description of "deprecated doctype" to remove any reference to the XML definition of what a docytpe is
07:38
<MikeSmith>
http://www.w3.org/TR/html-markup/syntax.html#deprecated-doctype
07:39
<annevk>
the piece on W3C news about H:TML says more about what it is not than what it is :/
07:39
<MikeSmith>
heh
07:39
<zcorpan>
MikeSmith: http://www.w3.org/Bugs/Public/show_bug.cgi?id=9145
07:40
<MikeSmith>
annevk: my fault, since it's word-for-word from the abstract
07:40
<MikeSmith>
zcorpan: looking now
07:40
<MikeSmith>
OK
07:41
MikeSmith
makes that same change now
07:42
<MikeSmith>
hsivonen: "computed encoding"?
07:42
<zcorpan>
MikeSmith: "Conditionally, depending on whether it is part of a permitted-public-ID-system-ID-combination, the following parts, in exactly the following order:" doesn't say whether the condition is true or false
07:42
<zcorpan>
MikeSmith: maybe "If it (what?) is part of a permitted-..."
07:42
<MikeSmith>
yeah
07:43
<MikeSmith>
problem is, I don't know how to describe that condition
07:43
<MikeSmith>
the condition is basically, if it ends up looking like one of the doctypes in the list below that, then true
07:43
<MikeSmith>
otherwise false
07:44
<zcorpan>
it's a bit confusing
07:44
<zcorpan>
i think Hixie's text is less confusing, at least to me :)
07:45
<MikeSmith>
I may end up changing it to that
07:46
<MikeSmith>
I wanted to first try to see if there were any way to make it any clearer
07:46
<zcorpan>
MikeSmith: maybe you could have two tables, one for html which has optional SI, and one for xhtml which doesn't
07:46
<MikeSmith>
hmm, yeah
07:46
<MikeSmith>
that would be slightly better at least
07:47
<MikeSmith>
zcorpan: I also changed the description of what a conformant XML document is (the other error you reported)
07:48
<hsivonen>
I wonder if a MacBook can be fooled to switch its VNC resolution to something higher than the res of the built-in screen without connecting anything to the mini-DVI port
07:48
<MikeSmith>
http://www.w3.org/TR/html-markup/documents.html#syntax-document-xml
07:48
<othermaciej>
annevk: looks like it's about 50/50 between what it is and what it isn't
07:49
<othermaciej>
it is funny that the one document not produced by the HTML WG (and something of a surprise to us) has by far the longest description
07:49
<MikeSmith>
zcorpan: I am planning to make a couple more tweaks based on the other message you sent, about "this specification does not define any additional syntax-level requirements"
07:51
<annevk>
othermaciej, the W3C clearly hates HTML5 much like it hates babies
07:52
<othermaciej>
annevk: I thought that was Adobe
07:52
<annevk>
oh, they're not the same?
07:52
<othermaciej>
heh
07:52
<othermaciej>
seriously though, HTML5 plus three other documents get less total space in the description than any other drafts
07:52
zcorpan
wonders what he has to do to see the browser choice screen
07:54
<zcorpan>
http://www.w3.org/TR/2010/WD-html-bidi-20100304/#br-as-separator - wonder if that matches what html5 says
07:55
<annevk>
zcorpan, visit http://www.browserchoice.eu/ ?
07:56
<othermaciej>
I dunno, it's funny that they used HTML4 as their baseline reference
07:56
<annevk>
zcorpan, I think dbaron mentioned that HTML5 should say something about that (iirc)
07:56
<annevk>
zcorpan, not sure if it was followed through
07:56
<zcorpan>
annevk: i thought i'd get something automatically by setting ie to default browser and doing a windows update
07:57
<annevk>
zcorpan, oh like that
07:57
<annevk>
zcorpan, dunno
07:58
<zcorpan>
how many of the non-top-5 browsers in the screen use trident?
07:58
<paul_irish>
maxthon does
07:59
<zcorpan>
yes, and flock doesn't, what about the others?
07:59
<zcorpan>
k-meleon also doesn't
07:59
<zcorpan>
avant is trident
08:00
<zcorpan>
looks like sleipnir is a trident browser
08:01
<zcorpan>
flashpeak too
08:01
<paul_irish>
and maybe AOL?
08:02
<othermaciej>
there are several trident browsers, according to the news
08:03
<othermaciej>
did they fix the randomization on that page yet?
08:04
<zcorpan>
trident: 6, gecko: 3, webkit: 2, presto: 1
08:05
<othermaciej>
zcorpan: looks like it doesn't match HTML5 - "A br element does not separate paragraphs for the purposes of the Unicode bidirectional algorithm. [BIDI]" http://dev.w3.org/html5/spec/Overview.html#the-br-element
08:08
annevk
wonders what browsers implement now
08:08
<othermaciej>
according to the bidi requirements draft, WebKit and IE do not implement the HTML5/HTML4 rule but instead do treat <br> as a paragraph break for bidi algorithm purposes
08:09
<othermaciej>
the draft also says this behavior is better (I think)
08:11
<annevk>
I see
08:12
<annevk>
I wonder why they want through the trouble of publishing a separate document rather than sending feedback on HTML5...
08:17
<othermaciej>
I dunno
08:18
<othermaciej>
this could be, like, 10-20 bug reports
08:18
<othermaciej>
most of which would be uncontroversial except perhaps trivial syntax details
08:19
<othermaciej>
(for example the proposed bdi attribute should be a standard html-style boolean attribute; shouldn't use attributes with underscore; etc)
08:20
<annevk>
some of the guidelines should not be in HTML I think, e.g. the bit about <pre> in http://www.w3.org/TR/2010/WD-html-bidi-20100304/#newline-as-separator seems like it should be in CSS
08:24
<MikeSmith>
zcorpan: how's the following sound?
08:24
<MikeSmith>
[[
08:25
<MikeSmith>
A conformant document in the XML syntax must be a well-formed XML document, as defined in the XML specification [XML], and its root element, as defined in the XML specification [XML], must be an html element.
08:25
<MikeSmith>
]]
08:25
<zcorpan>
MikeSmith: the next paragraph seems to repeat the well-formedness requirement
08:26
<roc>
'bdi' is a terrible name
08:26
<zcorpan>
MikeSmith: how about saying it must be namespace-well-formed, once?
08:26
<roc>
some of these issues were discussed briefly on public-html ages ago
08:26
<MikeSmith>
zcorpan: OK
08:27
<MikeSmith>
roc: yeah
08:27
<MikeSmith>
I recall now Richard mentioning the <br> issue to me a while back
08:35
<MikeSmith>
zcorpan:
08:35
<MikeSmith>
"A conformant document in the XML syntax must be a namespace-well-formed XML document, as defined in the XML specification [XML] and Namespaces in XML 1.0 specification [XMLNS], and its root element must be an html element."
08:35
<MikeSmith>
and I turned the "Documents in the XML syntax must not make use of any features of the HTML syntax that do not follow XML well-formedness constraints (for example, documents in the XML syntax must not use unquoted attribute value syntax and must not omit tags).
08:35
<MikeSmith>
" part into a note
08:37
<zcorpan>
s/as defined in the XML specification [XML] and //
08:38
<MikeSmith>
OK
08:38
<zcorpan>
isn't the root element required by the content models, btw?
08:41
<MikeSmith>
zcorpan: it's otherwise not explicitly stated anywhere for the XML/XHTML document case
08:41
<MikeSmith>
it is stated explicitly for the text/html case -
08:41
<MikeSmith>
file:///opt/workspace/html5/markup/documents.html#conformant-documents
08:42
<MikeSmith>
oops
08:43
<MikeSmith>
http://dev.w3.org/html5/markup/documents.html#syntax-document-html
08:43
zcorpan
gets a twitter account
08:48
<MikeSmith>
hsivonen: "operative encoding"
08:51
<Philip`>
Hixie: The analyse.cgi stuff is intentionally broken since I moved to a new server and don't really want to bother setting up all the databases and everything
08:51
<Philip`>
It's fixable but it depends on whether anybody cares enough
08:53
annevk
follows zcorpan
08:57
<Hixie>
Philip`: k
10:43
<mut>
#
10:43
<jgraham>
!
10:43
<annevk>
~
10:44
<mut>
$(':(').show();
10:44
<jgraham>
10:44
<annevk>
you usually hide sad faces
10:45
<jgraham>
Only if you're a clown
10:45
<gsnedders>
jgraham: It's a Javascript library, duh. $ is awesome. :P
10:45
<gsnedders>
Normally my eyes are _above_ my mouth.
10:46
jgraham
is horribly confused
10:46
gsnedders
is good at making jgraham horribly confused
10:46
<jgraham>
You are quite the confusing person
10:47
<mut>
im about to get trout slappy
10:47
<beowulf>
i haven't been slapped by a wet trout in years
10:47
<mut>
"This program has stopped responding" <----- :(
10:47
<jgraham>
Fun game: read ꦕꦫꦏꦤ꧀
10:48
<beowulf>
does the internet still have such things?
10:48
<jgraham>
(gsnedders isn't allowed to play)
10:48
<mut>
would you like to lose all of your work
10:48
<gsnedders>
Spoil sport.
10:48
mut
troutslaps beowulf
10:48
<mut>
;)
10:48
workmad3
slaps mut around a bit with a wet trout
10:48
<mut>
haha
10:48
<gsnedders>
jgraham is such a mean guy.
10:48
<mut>
ewwww moist
10:48
<workmad3>
you need to get a troutslap right :P
10:49
<mut>
ah im on a java applet, no troutslaps
10:49
<workmad3>
well, I just type em in manuallp
10:49
<workmad3>
*manually
10:49
jgraham
feels his game may have been lost in YAMPITS
10:49
<workmad3>
but I think mIRC used to have a /slap command to do it for you :)
10:49
<mut>
show a man a troutslap button, he will troutslap for a day, teach a man /me, and he will troutslap for life
10:50
<beowulf>
lol
10:50
<gsnedders>
jgraham: That's what you get for posting arbitary Unicode codepoints
10:51
<jgraham>
They're not arbitay. That's the point :)
10:51
<gsnedders>
Well, seeming I'm forbidden from playing, you could probably guess I know what they are.
10:52
<annevk>
jgraham, for that I would have to be funny
10:52
<beowulf>
jgraham: ok, explain the game, i didn't get to kill or blow anyone up
10:53
<Philip`>
Google is worringly fast
10:53
<jgraham>
annevk: Now you confused me
10:53
<gsnedders>
Go annevk!
10:53
<Philip`>
I searched for jgraham's string and it found the IRC logs from here
10:54
<jgraham>
That's how Hixie reads irc
10:56
annevk
waits for jgraham to implode
10:57
mut
sidesteps away from jgraham
10:58
annevk
advices people with nicks starting with a "j" to invoke /nick
10:59
<zcorpan>
jgraham: is it carakan?
10:59
<gsnedders>
zcorpan: yes.
10:59
<zcorpan>
yay
11:01
<annevk>
MessagePort.onmessage is somewhat ugly
11:01
<annevk>
but I guess it works
11:03
<jgraham>
zcorpan: Specifically is is the word "carakan" spelt out in Carakan symbols
11:05
<jgraham>
Sadly I can't find any fonts with support for it
11:09
<Philip`>
jgraham: Could probably make one easily by renumbering the font in http://hanacaraka.fateback.com/dok&down.htm
11:12
<jgraham>
Intersting
11:14
<Philip`>
Not really, because there's no reason to ever read or write anything in that language
11:16
<jgraham>
Sure there is. Just 30 minutes ago it would have helped you understand this very channel
11:30
<gsnedders>
Philip`: That's what I thought yesterday.
11:30
<gsnedders>
Philip`: If you're in school in Java it's useful
11:40
<virtuelv>
Opera's IRC client has /slap which slaps you around a bit with a wet trout
11:41
<virtuelv>
Aren't google going to start realtime indexing of results, soon?
11:41
<virtuelv>
as in you can use PubSubHubbub
11:42
<jgraham>
Yes
11:44
zcorpan
slaps a large trout around a bit with virtuelv
11:45
jgraham
thinks he has accidentially discovered that there are two bands called Camera Obscura
11:45
<gsnedders>
By Spotify being confused
11:45
<gsnedders>
?
11:45
<zcorpan>
virtuelv: it's large, not wet
11:45
<jgraham>
gsnedders: Yes
11:45
<gsnedders>
I see that too often
11:46
<jgraham>
It's a little jarring when you go from melodic Scottish pop to... something
11:46
<jgraham>
s/pop/indie pop/ or something
11:49
<jgraham>
Ah "post hardcore" apparentley
11:49
<jgraham>
At least according to wikipedia
11:49
<gsnedders>
Oh dear.
11:49
<jgraham>
Oh dear isn't even close
12:28
<mut>
haha sweet, my canvas page works on my android phone! :)
14:37
<Lachy>
it just seems like the DE proponents won't be happy with anything less than XML-style namespaces, despite having so many extensibility points in HTML5 already.
14:37
<zcorpan>
http://chikuyonok.ru/ambilight/
14:38
<Lachy>
nice.
14:40
<gsnedders>
Lachy: There's a lot of specs already written that are designed for the current namespace structure within the DOM, and none of the HTML5 extensbility points allow me to put, e.g., dc into HTML5
14:40
<LoneStar99>
Morning all!
14:41
<Lachy>
gsnedders, so? I consider that a feature, not a bug
14:41
<gsnedders>
Lachy: But what do I do when I want to add DC to my markup?
14:41
<LoneStar99>
Can anything be drawn on canvas which does not use " beginPath(); "?
14:42
<gsnedders>
Lachy: So that I can take my HTML document and pass the DOM into my existing toolchain?
14:42
<Lachy>
what do you want to add DC markup for in the first place, which isn't catered for by existing metadata elements in HTML, or which couldn't be addressed through microformats or microdata?
14:44
<gsnedders>
Lachy: The summary of a section cannot be fetched programmatically; µf and µdata both require forks in my codebase at a DOM level for handling HTML differently to generic XML.
14:44
<Philip`>
LoneStar99: Not sure what you mean
14:45
<Philip`>
LoneStar99: You ought to use beginPath every time you start drawing a new path, but things like drawImage and fillRect don't use paths
14:45
<Lachy>
gsnedders, are you giving a serious use case here and actually arguing that we should support namespaces in HTML, or are you just being hypothetical?
14:45
<LoneStar99>
in other words, can a drawing "sketching" be done without using "beginPath();" "moveTo" and "lineTo"
14:45
<Philip`>
LoneStar99: You could do it by just drawing images or drawing lots of little rectangles, but that'd be a silly way to draw lines compared to using lineTo :-)
14:45
<gsnedders>
Lachy: I'm trying to show you there are serious use cases here, and that people do have codepaths to deal with these things and supporting the HTML 5 way of doing things leads to little gain but a lot of additional complexity.
14:47
<Lachy>
sure, but the additional complexity of trying to support namespaces in HTML, compared with the little gained by supported those largely obscure and insignificant cases in practice, proves it's just not worth it
14:47
<gsnedders>
No, the additional complexity _depends_ upon the serialization chosen.
14:48
<Lachy>
then don't choose HTML if you depend on XML-specific features
14:48
<jgraham>
Requiring namespaces introduces a lot of complexity for authors
14:48
<jgraham>
By comparison I have rather little sympathy for implementors
14:48
<gsnedders>
Lachy: Feeds online are not an obscure or insignificant case, and currently require duplicated data
14:49
<gsnedders>
jgraham: Indeed, I think there are plenty of ways to cope with namespaces without additional complexity for authors in the pure-HTML case.
14:49
<Lachy>
gsnedders, wtf do feeds have to do with supporting namespaces in the HTML serialisation?
14:49
<jgraham>
e.g. not having namespaces?
14:49
<jgraham>
(and I also don't get the relevance of feeds)
14:50
<LoneStar99>
Philip`: how would I be able to drawing a sketching "drawing" tons of rectangles?
14:50
<LoneStar99>
with
14:50
<gsnedders>
Lachy: Why do I have to post both an HTML and Atom edition of my blog for feed readers? Why can feed readers not programmatically read content from the HTML?
14:50
<Philip`>
gsnedders: Because HTML parsers are rubbish and buggy
14:51
<Philip`>
or slow
14:52
<jgraham>
gsnedders: They can. There is no problem here
14:52
<gsnedders>
Philip`: All OS X feed readers have a decent HTML parser available at an OS level; I presume the same is true on Windows with mshtml.ddl
14:52
<gsnedders>
jgraham: But they cannot extract all the semantics they can get with Atom
14:53
<jgraham>
But DE wouldn't magically make that happen because in practice no one would use the extensions anyway
14:53
<Philip`>
gsnedders: Does it provide an actual standalone HTML parser than gives you back a DOM and is just as easy to use as XML parser libraries?
14:53
<jgraham>
An author that cares can already use the HTML->Atom conversion algorithm to get almost everything
14:53
<LoneStar99>
Philip': issue I have with "beginPath();" is that my code used to work without a "moveTo();" the code now, needs a " moveTo();" and notice on drawings, line are automatically connected when they should not be connected
14:54
<gsnedders>
Philip`: My memory from when I looked at it before was that it wasn't very hard.
15:05
<Lachy>
gsnedders, there have been various attempts at doing that (hAtom, the "extract an Atom feed" algorithm in HTML5), but so far it seems the market isn't really interested in pushing those kinds of techniques. Besides having a CMS generate an Atom feed automatically is a solved problem that authors just don't have to worry about.
15:09
<gsnedders>
So duplicated data isn't a problem when we have tools?
15:12
<Lachy>
if it wasn't already a solved problem, I'd care more about the duplication
15:21
<Philip`>
gsnedders: Data isn't duplicated - there's a single copy of each blog post in the database
15:21
<Philip`>
and so you can avoid all the problems like duplicates getting out of sync with each other
15:40
<mut>
anyone know of a good canvas tutorial?
15:45
<LoneStar99>
mut: what u trying to do with canvas?
15:46
<miketaylr>
mut: http://dev.opera.com/articles/view/html-5-canvas-the-basics/ && https://developer.mozilla.org/en/Canvas_tutorial are pretty good
15:46
<mut>
im drawing staircases in canvas
15:47
<mut>
but just thinking of some other things to do, which are currently beyond me :P
15:47
<LoneStar99>
yeah, try the above links, those are the ones I have uded
15:47
<LoneStar99>
used
15:47
<mut>
thanks mike btw :)
15:48
<mut>
yea im sure I can do what i was planning, but I have had a few more ideas for usablility (zoom and drag functionality ala googlemaps)
16:13
<TabAtkins>
Oh man, only 5 days before my lightcone envelopes HR222.
16:15
<Philip`>
http://thomas.loc.gov/cgi-bin/bdquery/z?d109:h.r.00222: - "To prohibit the expenditure of Federal funds to conduct or support research on the cloning of humans, and to express the sense of the Congress that other countries should establish substantially equivalent restrictions."
16:16
<Philip`>
TabAtkins: ^ That HR222?
16:16
<TabAtkins>
No, look for the first one involving stars.
16:17
<Philip`>
Oh
16:18
<Philip`>
Happy almost about 24.3rd birthday, then
16:20
<Dashiva>
http://twitter.com/heycam/status/10003477514
16:20
<Dashiva>
Maybe I should tell heycam how buses in Norway don't play radio anymore because of inspectors from the local RIAA equivalent
16:47
<mut>
hmm opera dosent seem to handle save() and restore() when combined with scale()...well not the same as firefox or ie +excanvas
16:48
<Philip`>
The problem might be that it applies the transformation when you call stroke/fill, instead of applying it when you're adding points to the path
16:48
<Philip`>
(so if you change the transformation between constructing the path and stroking/filling then it'll break)
17:11
<AryehGregor>
Where are the W3C Editor's Drafts?
17:11
<AryehGregor>
They seem to be cunningly hidden.
17:11
<AryehGregor>
Even the link on the HTMLWG page to the latest editor's draft links to a WD.
17:12
<Philip`>
http://dev.w3.org/html5/ ?
17:13
<AryehGregor>
Oh, wait, I get it.
17:13
<Philip`>
I think the ones like http://dev.w3.org/html5/spec/ just haven't been changed back to the ED colours yet
17:13
<AryehGregor>
The latest editor's drafts are actually WDs right now?
17:13
<AryehGregor>
Or something.
17:17
<Philip`>
AryehGregor: Yes
17:17
<Philip`>
They were changed in e.g. http://dev.w3.org/cvsweb/html5/spec/index.html.diff?r1=1.807&r2=1.808
17:18
<Philip`>
("front matter updates for publication this week", 2.5 weeks ago)
17:18
<Philip`>
and will presumably be changed back soon
17:26
<LoneStar99>
Philip': you know of a tutorial, of how to draw a lines with tons of squares, like you mentioned before?
17:27
<Philip`>
LoneStar99: I expect there's lots of things talking about how to implement line rasterization algorithms, but it seems like a terrible idea :-)
17:28
<LoneStar99>
Philip: it does, but i know of an app, that does it and works really well...
17:29
<annevk>
omg http://www.w3.org/Bugs/Public/show_bug.cgi?id=9197
17:29
<annevk>
evil
17:29
<Philip`>
Using beginPath/moveTo/lineTo is the right way to draw lines, and it should be able to do everything you need, so if your code has bugs then you just need to fix those bugs
17:30
<LoneStar99>
Philip`: the thing it might not be my app, it might be the OS and need to find a work around...
17:33
<Philip`>
That seems unlikely
17:33
<LoneStar99>
tried everything... it just seems that my app randomly begins to connect lines and i think it has to do with "context.moveTo(this.previous_x, this.previous_y);" but it need the line to work...
17:35
<Philip`>
It sounds like you just have a bug somewhere, but I don't know what your code is doing so I have no idea where it might be wrong
17:38
<LoneStar99>
Philip' http://pastebin.com/uNxvLdL4
17:43
<Philip`>
LoneStar99: You need to set previous_x and previous_y in mousedown, otherwise they'll be left as whatever they were in the last mousemove even if you released the mouse, I guess
17:46
<LoneStar99>
Philip': have tried that and it still begins to screw up after awhile
17:47
<TabAtkins>
Tried logging the events and the values they see for previous_x and previous_y?
17:48
<Philip`>
LoneStar99: By the way, why is the drawImage line there?
17:48
<Philip`>
Also, why is the stroke() not at the end of mousemove?
17:50
<tantek>
Hixie, does microdata itemref permit referencing an id of an ancestor?
17:50
<tantek>
e.g. <span itemscope id=a><span itemprop=turtle itemscope id=b itemref=a></span></span>
17:51
<TabAtkins>
It might run afoul of the cycle-breaking algo, but there's no explicit restriction against such a thing.
17:51
<TabAtkins>
I haven't kept up with the cycle algo, though.
17:51
<TabAtkins>
foolip would have more info, I think.
17:51
<tantek>
TabAtkins - what cycle breaking algo? none specified here: http://www.w3.org/TR/microdata/#attr-itemref
17:52
<tantek>
it just says "a list of additional elements to crawl to find the name-value pairs of the item."
17:53
<tantek>
which in the example above, gives you infinitely nested items, each with a turtle property whose value is the next nested item with a turtle property etc.
17:53
<tantek>
turtles all the way down ;)
17:53
<tantek>
when do you stop crawling?
17:53
<LoneStar99>
Philip': i makes things look anti-aliasing
17:54
<TabAtkins>
tantek: http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html#associating-names-with-items
17:54
<TabAtkins>
Dunno if this is the latest version of the cycle-breaker. You'd have to ask foolip, or get Hixie.
17:55
<tantek>
ah - ok: If root is in memory, then the algorithm fails; abort these steps.
17:55
<tantek>
therefore microdata effectively makes referencing an id of an ancestor a NOP
17:56
<TabAtkins>
If the ancestor is already part of the item, yes.
17:56
<TabAtkins>
If it's an ancestor in the DOM, higher up than the start of the item, though, then should be okay.
17:56
<tantek>
sure
17:56
<tantek>
microformats include-pattern has the same restriction
17:57
<tantek>
but I didn't see it in the W3C microdata draft
17:57
<tantek>
so I wondered if Ian had somehow permitted itemref inclusion of ancestors
17:57
<tantek>
apparently not
17:57
<TabAtkins>
Is that algo in the w3c draft, or are the two versions differeing significantly?
17:58
<LoneStar99>
Philip': Maybe not, the drawImage stuff does nothing from i can see
17:59
<tantek>
TabAtkins - the w3c draft says the same: http://www.w3.org/TR/microdata/#associating-names-with-items
17:59
<TabAtkins>
kk.
17:59
<tantek>
I just didn't find it because it doesn't reference itemref explicitly
17:59
<tantek>
itemref on an ancestor being a NOP is a side effect you have to figure out from the algo
17:59
<tantek>
rather than being explicit
17:59
<TabAtkins>
Yes.
17:59
<tantek>
which is going to confuse authors
18:00
<tantek>
when they ask why doesn't this work
18:00
<TabAtkins>
The simple and obvious answer would be "because that would make an infinite loop, don't do that".
18:00
<TabAtkins>
You don't need to point them at the algo for that.
18:02
<tantek>
much better to describe it up front IMHO
18:02
<tantek>
e.g.
18:02
<tantek>
http://microformats.org/wiki/include-pattern#in_general
18:02
<tantek>
To prevent infinite loops, if a class="include" refers to itself or to an ancestor in the parse tree, then it is ignored and has no effect on the parser.
18:02
<LoneStar99>
are there any webOS developers here?
18:03
<TabAtkins>
tantek: But the situation is more subtle with microdata, because it permits reference to ancestors; it merely prevents such a reference from causing an infinite loop.
18:03
<tantek>
LoneStar99 try #webkit
18:04
<tantek>
TabAtkins - not true - the ancestor is already in memory from the parse in progress
18:04
<tantek>
thus the reference to ancestor immediately fails in step 1
18:04
<tantek>
assuming you're parsing microdata from the root of document downward
18:05
<tantek>
which all the "converting to ..." (insert format here) algorithms do
18:05
<LoneStar99>
tantek: there is a webos channel, but wanted to see if someone could see the issues i see with my code... but anyways time for lunch! thanks for all the help be back later
18:05
<tantek>
LoneStar99 - good to know!
18:08
<tantek>
btw - given that itemref causes an actual crawl of the targets of the itemref it is not really a "ref" (like href), it is more like a "src" (like <img src>)
18:08
<tantek>
itemsrc would more accurately convey what itemref does
18:08
<TabAtkins>
tantek: I believe that that algo starts by assuming the root is an item, that is, it has @itemscope.
18:09
<tantek>
TabAtkins - sure - but that makes no difference to the breaking of recursion
18:09
<tantek>
or ancestral reference
18:09
<tantek>
alternatively, iteminclude would also better convey what itemref does
18:10
<TabAtkins>
<div id=foo itemprop=foo>foo <div itemscope itemref=foo></div></div> would affect it, wouldn't it?
18:13
<tantek>
TabAtkins - yes - not a particularly useful case though
18:13
<tantek>
as typically you get a need in nested objects to refer to (include) a common parent object
18:13
<TabAtkins>
No, but that's the reason why Ian often forgoes prose descriptions of algos - they don't hit all cases.
18:14
<tantek>
sure, but then that makes it harder for authors
18:14
<tantek>
authors don't typically "get" the procedural descriptions of the algos
18:14
<TabAtkins>
Indeed.
18:15
<tantek>
and one of the claims of microdata is that it is "easier" for authors
18:15
<tantek>
thus I would say that claim is refuted by this
18:15
<tantek>
TabAtkins - if you want to see a discussion of a real world example of nested objects referring to a parent object, /join #microformats
18:16
<tantek>
we're discussing hProduct + hReview there now
18:16
<TabAtkins>
Oh, I don't doubt the use-case. I use circularly-nested data structures all the time.
18:16
<tantek>
all the time?
18:16
<tantek>
or are you being facetious ;)
18:16
<TabAtkins>
No, I really do use them a lot.
18:17
<TabAtkins>
It's very useful to embed a reference to the parent in a child.
18:18
<tantek>
a reference yes. but an include no. and itemref is an include, not a reference. hence my point about terminology.
18:18
<TabAtkins>
That's valid.
18:19
<TabAtkins>
Then suggest some accurate prose, or suggest a change to the algo to reflect the simpler prose.
18:19
<TabAtkins>
Such as disallowing all ancestor references.
18:19
TabAtkins
goes to lunch.
18:20
<JonathanNeal_oww>
Hey all.
18:20
<JonathanNeal>
I'm trying to come up with practical naming conventions for the IDs and Classnames in my layout template.
18:21
<JonathanNeal>
I was trying to follow the ARIA roles list to name most of my elements.
18:58
<Philip`>
JonathanNeal: I suggest using boys' names for classes and girls' names for IDs
18:58
<JonathanNeal>
Ha.
18:58
<Philip`>
Helps to keep them easily distinguishable
18:58
<JonathanNeal>
I found an ARIA name.
18:58
<JonathanNeal>
role="main" so I named it main.
19:07
<Hixie>
tantek: please send microdata feedback to the list or use the review comments tool in the whatwg version to file a bug so i don't lose it -- thanks
19:18
<mpilgrim>
I don't really understand the purpose of the "fallback" section in a cache manifest file
19:19
<mpilgrim>
i see the use case for the "explicit" section (stuff you need offline)
19:19
<mpilgrim>
and i see the use case for the "online whitelist" section (stuff like tracking CGI scripts that don't make sense offline)
19:20
<mpilgrim>
there's only one example in the spec of using a "fallback" section, and i don't fully understand it
19:20
<mpilgrim>
scratch that, i don't understand it at all
19:22
<Hixie>
imagine a site like flickr
19:22
<Hixie>
which has one page per image
19:23
<Hixie>
now imagine the user, while offline, adds a bunch of images
19:23
<Hixie>
and follows links to those images
19:23
<Hixie>
if we didn't have the fallback section, those links would be dead
19:24
<mpilgrim>
...
19:25
<mpilgrim>
ok, so offline flickr
19:26
<mpilgrim>
suppose http://www.flickr.com/photos/f8dy/ links to a manifest file
19:27
<Hixie>
crap meeting gotta go
19:28
<mpilgrim>
http://www.flickr.com/photos/f8dy/327774195/ (and, say, 99 other recent photo pages) is listed in the explicit section
19:28
<mpilgrim>
along with http://farm1.static.flickr.com/142/327774195_2d2b67753e.jpg which is the image on that page
19:31
<tantek>
Hixie, will do. For reference, my feedback items are described here: http://krijnhoetmer.nl/irc-logs/whatwg/20100305#l-781 I'll clean up that text and send it to public-html.
19:32
tantek
was trying to figure out what about that photo of towels over mpilgrim's feed made it "explicit".
19:32
<mpilgrim>
haha
19:33
<mpilgrim>
pooh porn
19:33
<mpilgrim>
rule 34 predicts its existence
19:36
<mpilgrim>
a fun fact about the cache manifest: if there are no explicit section headers, all the listed resources are implicitly in the "explicit" section
19:37
<mpilgrim>
i tried to explain this with a straight face for my book, but i failed
20:08
<knowtheory>
Hey othermaciej :)
20:08
<othermaciej>
hello
20:11
<knowtheory>
are CSS animations incorporated into a component of HTML5 or into a new CSS standard?
20:11
<knowtheory>
I'm trying to figure out the degree of complexity and organizational capaobilities of CSS animations (basically, how one would work w/ 'em for complex examples)
20:24
<TabAtkins>
knowtheory: CSS Animations are (unsurprisingly ^_^) a CSS Module.
20:24
<knowtheory>
TabAtkins: in HTML5 then? :D
20:24
<TabAtkins>
Haha.
20:25
<knowtheory>
hunh, exciting, http://www.w3.org/TR/css3-ui/ just crashed a bunch of tabs in chrome
20:26
<knowtheory>
yeah freaky, consistent crash on that page.
20:26
<knowtheory>
safari renders it fine though
20:26
<TabAtkins>
Huh, no crash for me. Windows, Chrome 4.
20:27
<knowtheory>
yeah osx 5.0.307.11 b
20:27
<miketaylr>
works fine in 5.0.345.0 (40651)/Mac
20:27
<miketaylr>
(well, chromium)
20:27
<knowtheory>
even more exciting! :)
20:37
<knowtheory>
ah there we go: http://dev.w3.org/csswg/css3-animations/
20:42
<TabAtkins>
knowtheory: Ah man, I'm sorry, I would have linked you to it immediately if I knew you were looking for it.
20:43
<knowtheory>
TabAtkins: no worries!
20:59
<tantek>
I did encode actual example uses of CSS3 UI properties in the spec itself - I wonder if that may be causing the crash - certainly was not intentional.
21:05
<knowtheory>
tantek: it's all your fault!
21:05
<knowtheory>
since someone mentioned that chromium wasn't seeing that behavior
21:05
<knowtheory>
i figure it's just a bug in this version of chrome
21:07
<miketaylr>
knowtheory: heh, i think you're right: http://miketaylr.com/post/bcbf19c8.png
21:07
<miketaylr>
i crash using the same version of chrome, but am fine in chromium
21:08
<knowtheory>
miketaylr: i filed a bug on the chromium tracker :)
21:09
<miketaylr>
cool
21:11
<knowtheory>
miketaylr: http://code.google.com/p/chromium/issues/detail?id=37546
21:11
<knowtheory>
(also for you tantek if you are interested)
21:16
<knowtheory>
man, that was fast, the bug i reported has already been triaged and assigned
21:25
<dglazkov>
knowtheory: speed is what we do :)
21:25
<dglazkov>
that didn't come out right
21:26
<knowtheory>
haha :D
21:27
<mpilgrim>
woohoo, i have a working offline web application
21:28
<mpilgrim>
whose sole purpose is to display information on whether or not it is a working offline web application
21:30
<mpilgrim>
it works in 2 browsers!
21:31
<mpilgrim>
my work here is done
21:38
<othermaciej>
hawt
21:38
<othermaciej>
annevk: does html5-diffs have a bug component?
21:52
<mpilgrim>
no, scratch that
21:52
<mpilgrim>
i can't get it to register updates in firefox
21:53
<mpilgrim>
http://diveintohtml5.org/examples/clock.html
21:53
<mpilgrim>
manifest is at http://diveintohtml5.org/examples/clock.html5cache
21:53
<Hixie>
why "html5"cache?
21:53
<mpilgrim>
firefox properly downloads it and can use it offline
21:54
<mpilgrim>
but when i update the JS file with new code and update the manifest file with a version-specific comment, it never picks up the updated resources
21:54
<Hixie>
does it try to fetch the manifest when you load the page?
21:54
<mpilgrim>
curl -I confirms that the etag and last-modified headers of the manifest file are changing
21:55
<mpilgrim>
oh bloody hell, my expires headers are wrong
21:55
<othermaciej>
what's the expiration on the manifest?
21:55
<mpilgrim>
yeah, just got there
21:55
<mpilgrim>
hang on
22:07
<temoto>
Hello. I want to try html5lib instead of BeautifulSoup to parse arbitrary HTML found on the web. What i'm [currently] interested is only about finding <a> elements and taking their href attribute value. (as opposed to keeping Soup interface) So which is the fastest way to iterate all <a> elements?
22:14
<mpilgrim>
woohoo, http://diveintohtml5.org/examples/offline/clock.html works in 2 browsers!
22:14
<mpilgrim>
hixie: i don't know why i called it ".html5cache"
22:15
<mpilgrim>
i needed a unique file extension to set the content-type
22:15
<Hixie>
and you didn't like .manifest like the spec suggests? :-P
22:16
<mpilgrim>
i missed that
22:16
<mpilgrim>
that doesn't conflict with anything else in MIME-world?
22:16
<Hixie>
not to my knowledge
22:17
<mpilgrim>
("MIME-world" reminds me of the underwater minus level in Super Mario Bros. -- hard to get into and impossible to win)
22:24
<mpilgrim>
while we're on the subject, do you have a suggestion for a MIME type for .ttf files?
22:24
<Hixie>
font/truetype?
22:24
<Hixie>
might need registering
22:24
<mpilgrim>
it's one of those MIME-world trick questions, i think
22:25
<mpilgrim>
AFAICT, there's nothing registered
22:25
<mpilgrim>
and all the experimental or vendor-specific alternatives are horrific
22:25
<Hixie>
ah. then you just volunteered to register it!
22:25
<mpilgrim>
apparently it doesn't matter because font-face-supporting browsers ignore the mime type
22:26
<Hixie>
yeah well
22:26
<mpilgrim>
but i got email complaints because my fonts were being served as text/plain, which is arguably the worst default ever
22:26
Hixie
wishes we could abandon MIME types for anything that can be unambiguously identified by the leading bytes
22:26
<mpilgrim>
and judging by the online discussions i've found on the topic, registering it is impossible
22:26
<Hixie>
why is registering it impossible?
22:27
<mpilgrim>
maybe not theoretically impossible
22:27
<mpilgrim>
but no one has managed it yet
22:27
<mpilgrim>
despite years of trying
22:27
<mpilgrim>
and no, i'm not volunteering to register it
22:28
<mpilgrim>
i don't need any more email from Those People
22:30
<Hixie>
<img alt="Stamp It" onerror="this.src='/icon.gif';" src="" align="left" border="0" height="32" width="32">
22:30
<Hixie>
wtf
22:30
<mpilgrim>
hooray for alt text!
22:30
<mpilgrim>
does that ever work?
22:30
<mpilgrim>
(the onerror part, i mean)
22:33
<Hixie>
apparently
22:33
<Hixie>
src="" triggers onerror, which sets the icon, or something
22:33
<mpilgrim>
awesome
22:34
<mpilgrim>
so you were explaining the fallback section of the manifest
22:34
<mpilgrim>
using flickr as an example
22:34
<Hixie>
yes
22:34
<mpilgrim>
i don't understand it yet
22:35
<Hixie>
it lets you cache a small part of a site and have graceful fallback for the rest of the site while offline
22:37
<mpilgrim>
and by "graceful fallback" you mean "a page that says this page is not available offline"
22:37
<mpilgrim>
in lieu of a browser-level error message
22:37
<mpilgrim>
?
22:37
<Hixie>
not necessarily; if you have the information locally to render the page, e.g. if bugzilla has a copy of the bug in its client-side database, you can just render the page locally
22:38
<temoto>
Hello. I want to try html5lib instead of BeautifulSoup to parse arbitrary HTML found on the web. What i'm [currently] interested is only about finding <a> elements and taking their href attribute value. (as opposed to keeping Soup interface) So which is the fastest way to iterate all <a> elements?
22:39
<mpilgrim>
that makes sense for bugzilla because each page is "show_bug.cgi?id=foo" and the only thing that changes is foo
22:39
<mpilgrim>
earlier you mentioned a hypothetical offline flickr
22:39
<mpilgrim>
flickr uses unique URLs for each photo page
22:41
<mpilgrim>
are you saying that you could set up a wildcard so that all unknown (uncached) URLs got handled by a master page like show_photo.cgi?id=foo
22:41
<Hixie>
i just meant an image site in general, dunno abotu flickr specifically
22:41
<mpilgrim>
?
22:41
<Hixie>
that's what the fallback stuff does, yes
22:42
<mpilgrim>
i see
22:43
<mpilgrim>
that was the missing link
22:43
<mpilgrim>
i didn't know that fallback URLs could be wildcards
22:43
<mpilgrim>
now i see the bit about "fallback namespace" and "URLs as prefix match patterns"
22:43
<Hixie>
they work the same as the online whitelist, but with a fallback url
22:44
<mpilgrim>
can i declare a specific URL in the explicit section that would also match a fallback namespace?
22:44
<mpilgrim>
like
22:44
<mpilgrim>
CACHE MANIFEST
22:44
<mpilgrim>
CACHE:
22:44
<mpilgrim>
images/cat.jpg
22:45
<mpilgrim>
FALLBACK:
22:45
<mpilgrim>
images/ missing.jpg
22:45
<Hixie>
what do you mean by "can i" exactly?
22:46
<mpilgrim>
will the browser cache images/cat.jpg and use it when i say <img src="images/cat.jpg"> ?
22:46
<mpilgrim>
the URL matches a resource listed in the explicit section, and also a fallback namespace listed in the fallback section
22:46
<mpilgrim>
which one wins?
22:46
<Hixie>
yes
22:46
<Hixie>
If a resource is listed in the explicit section or as a fallback entry in the fallback section, the resource will always be taken from the cache, regardless of any other matching entries in the fallback namespaces or online whitelist namespaces.
22:46
<mpilgrim>
ok
22:48
<mpilgrim>
now here's another question
22:48
<mpilgrim>
i've been trying to set up all of diveintohtml5.org as an offline web app
22:48
<mpilgrim>
but i don't want to do it by default
22:49
<mpilgrim>
i want you to click a link "go offline" and go to a page that gives a progress bar
22:49
<mpilgrim>
(in firefox this page would also display the prompt "do you want this site to store local data" or some such)
22:49
<mpilgrim>
(in safari there is apparently no prompt)
22:49
<mpilgrim>
IOW, i don't want every page to point to the manifest file
22:50
<Hixie>
if a page doesn't point to the manifest, it can't be cached for offline use
22:50
<mpilgrim>
but i want the go_offline.html page to point to ta manifest file that includes all the other HTML pages (and their scripts, stylesheets, and images)
22:50
<Hixie>
each page that is to work offline has to opt in to working offlien
22:51
<mpilgrim>
so page A *must* point to a manifest file in order to be used offline?
22:51
<mpilgrim>
even if page B points to a manifest file that includes page A?
22:52
<Hixie>
yes
22:52
<mpilgrim>
even after the user visits page B and consents to storing local data?
22:52
<Hixie>
yes
22:52
<mpilgrim>
that sucks
22:53
<mpilgrim>
i don't want every page of my site popping up a scary infobar about "storing local data"
22:53
<Hixie>
your site isn't an application
22:53
<mpilgrim>
sure it is
22:53
<mpilgrim>
it's an interactive ebook
22:53
<mpilgrim>
it has interactive elements
22:54
<mpilgrim>
and scripts that give live results based on the current browser environment
22:54
<LoneStar99>
is Philip` around?
22:54
<Philip`>
Maybe
22:54
<Hixie>
mpilgrim: then just stick a manifest on each page
22:54
<Hixie>
mpilgrim: and let the user decide whether to go offline or not
22:55
<LoneStar99>
Philip` have a video with the issue at hand http://video.yahoo.com/watch/7098996/18475648
22:55
<mpilgrim>
that user experience sucks
22:55
Philip`
can't watch videos currently
22:55
<Hixie>
the user experience is in the hands of the user agents, so get them to make it better
22:56
<LoneStar99>
Philip` ok will ping you later
22:56
<mpilgrim>
that's a shitty cop-out of an answer
22:56
<mpilgrim>
this was possible in gears, was it not?
22:56
<mpilgrim>
because everything was scripted, including the downloading of the manifest file, etc.
22:56
<Hixie>
no idea
22:57
<Hixie>
letting the user agent be in charge of the user experience is not a cop-out answer, it's the way the web is designed to work
22:58
<LoneStar99>
if anyone has exprience with canvas can you look at the following video and tell me what is going on: http://video.yahoo.com/watch/7098996/18475648
22:58
<mpilgrim>
in html5, you can't script the downloading of the manifest file because you can't dynamically set the manifest attribute
22:59
<Hixie>
correct
22:59
<Hixie>
a page is either part of an application or it isn't
22:59
<mpilgrim>
i want a page to decide at runtime whether it is part of an application or it isn't
23:00
<Hixie>
can't be done
23:00
<Hixie>
well, you could have the server dynamically decide whether to set manifest="" or not, i guess
23:00
<Hixie>
but you'd have to reload the page or load it in an iframe or something to trigger teh load
23:00
<mpilgrim>
based on what? HTTP request headers?
23:01
<Hixie>
cookies, probably
23:01
<mpilgrim>
i suppose that would work
23:01
<Hixie>
it's not the intended use case though
23:01
<Hixie>
the intended use case is applications that are unambiguously applications
23:02
<mpilgrim>
MY SITE IS UNAMBIGUOUSLY AN APPLICATION
23:02
<mpilgrim>
it is ambiguously an offline application
23:02
<Hixie>
your site is apparently insecure about its application status, if it's not willing to always be an offline application :-)
23:03
<mpilgrim>
how are applications like gmail supposed to migrate to html5 if they can't offer an online application and an offline application at the same URL?
23:03
<Hixie>
what's the difference?
23:04
<Hixie>
between an "online" app and an "offline" app, i mean
23:05
<mpilgrim>
i navigate to http://mail.google.com/ in firefox
23:05
<mpilgrim>
i log in
23:05
<mpilgrim>
i click "settings"
23:05
<mpilgrim>
i click "offline"
23:06
<Hixie>
why?
23:06
<mpilgrim>
i click "enable offline access"
23:06
<Hixie>
here's how it should work:
23:06
<Hixie>
you navigate to http://mail.google.com/ in firefox
23:06
<Hixie>
you log in
23:06
<Hixie>
end of story
23:06
<mpilgrim>
it pops up a pseudo-dialog titled "install offline access for gmail"
23:07
<mpilgrim>
because not every user who logs into gmail wants, needs, or is operating in a safe browser environment to have offline access
23:07
<mpilgrim>
the pseudo-dialog i am reading right now says "This feature will download your email messages onto this computer. Please make sure it is not a public or shared computer."
23:08
<Hixie>
sure, actually downloading the mail might be something you want to do after checking a pref
23:08
<Hixie>
but that's just making the mail available offline, that's not making the _app_ available offline
23:09
<Hixie>
the data part has nothing to do with the cache manifest
23:09
<Hixie>
you can download that without making an "offline" app
23:09
<mpilgrim>
so your ideal user experience is signing up for gmail, logging in for the first time, and getting an infobar saying "this site is asking to store local data [allow] [deny] [learn more]"
23:09
<Hixie>
no
23:09
<Hixie>
there's no reason for the user agent to ask the user about caches
23:09
<Hixie>
it's basically no different than an HTTP cache
23:10
<mpilgrim>
but firefox does, demonstrably, ask the user for permission before storing any data in the applicationCache
23:10
<Hixie>
file a bug
23:10
<Hixie>
or use a different browser
23:10
<mpilgrim>
i'm using firefox 3.6 on windows
23:10
<mpilgrim>
though i assume firefox on other platforms offers an identically bad experience
23:10
<Hixie>
browsers can show whatever prompts they want if they want to make their UI less than ideal
23:11
<Hixie>
it's a tradeoff they have to make between convenience and giving the appearance of... something? not sure what the dialog helps with in this case, privacy? security? dunno.
23:13
<mpilgrim>
presumably the site could use it as a super-tracking cookie? i don't know how useful it would be since it wouldn't be accessible cross-domain
23:13
<Hixie>
it can set cookies without prompting, too
23:13
<mpilgrim>
indeed
23:14
<Hixie>
i agree that if you enable the cookie dialog, then it makes sense to prompt for appcache, web storage, web db, etc
23:14
<Hixie>
probably should also prompt with every link click, since the IP address, User-Agent string, and other parts of the HTTP message can more or less uniquely identify users even without cookies
23:17
<mpilgrim>
so, assuming i wanted to serve different static HTML files based on cookies
23:17
<mpilgrim>
i'd need a CGI script that set the cookie
23:17
<Hixie>
or javascript
23:17
<mpilgrim>
ok
23:17
<mpilgrim>
expires/caching headers set to 0 so HTML pages would always refresh from the server
23:18
<mpilgrim>
a Vary: Cookie header
23:18
<mpilgrim>
two copies of each .html file (one with the manifest attribute, one without)
23:18
<mpilgrim>
and some mod_rewrite magic that served the appropriate .html file based on the cookie in the HTTP request headers
23:19
<Hixie>
or just put the manifest on every file and make the manifest itself be the only one with magic
23:19
mpilgrim
is suddenly overwhelmed with the memory of the classic "and then a miracle occurs -->" tshirt
23:19
<mpilgrim>
no, i'm pretty sure the presence of the manifest attribute is what triggers firefox's infobar
23:20
<Hixie>
oh, right, if you want to work around firefox's ui issues you'd probably have to do that, yes
23:20
<mpilgrim>
EVERYONE WILL WANT TO WORK AROUND FIREFOX'S UI ISSUES
23:21
<Hixie>
if everyone hates firefox's ui, i imagine it'll change
23:21
<mpilgrim>
I AM JUST THE FIRST PERSON WHO HAS EVER TRIED
23:21
<Hixie>
i would recommend filing a bug with them explaining that the prompt doesn't really do anything helpful rather than yelling here :-)
23:21
<mpilgrim>
mobile gmail already does UA sniffing and only presents the offline-capable version to supported browsers (based on HTTP_USER_AGENT, i assume)
23:22
<mpilgrim>
and everyone else is still using gears
23:22
<mpilgrim>
(where "everyone else" includes zoho, rememberthemilk, and wordpress)
23:23
<mpilgrim>
(and the "supported browsers" that mobile gmail sniffs are all based on webkit and don't present any stupid UI prompts)
23:23
<mpilgrim>
(so it is quite likely that this problem has literally never come up)
23:23
<annevk>
othermaciej, I just use my inbox
23:24
<annevk>
othermaciej, so no
23:26
<mpilgrim>
i suppose my firefox bug report would be stronger if I blindly offline-enabled every page of my site and then included copies of the hate mail i expect to get from people who think my site is taking over their computer
23:28
<annevk>
this peer-to-peer stuff is interesting
23:29
<annevk>
are we taking on IM? :)
23:29
<Hixie>
annevk: dunno, i just threw IM in there because i noticed most if not all video conferencing systems also do peer-to-peer IM during the connection
23:31
<annevk>
so the way this API works is that you negotiate a unique identifier via a third-party server to establish a peer-to-peer connection?
23:32
<Hixie>
no third-party server in theory
23:33
<Hixie>
it depends on what protocol we end up building this on, but getAddress() e.g. could just return an IP address and port
23:33
<Hixie>
(of the user's machine)
23:33
<annevk>
but how do you give that to a friend?
23:34
<Hixie>
oh well i assume you're talking to them somehow already, e.g. you have a websocket connection to the server of the page the script is from
23:34
<Hixie>
and they do too
23:34
<Hixie>
e.g. for chatting in-game
23:34
<Hixie>
you would both be connected to the game server
23:34
<annevk>
right, so you have a third-party server
23:34
<Hixie>
well it's more a second-party server, but yeah
23:35
<Hixie>
(user, server, other player -- the other player is the third party)
23:35
<Hixie>
you could also just sent it by e-mail or something :-)
23:35
<annevk>
sure or you could phone the guy
23:35
<Hixie>
yeah
23:36
<Hixie>
but generally i don't think these address strings will be pretty
23:36
<annevk>
but that's not really going to happen I think :)
23:36
<annevk>
right
23:36
<Hixie>
you could imagine if we do NAT traversal that the string will include all kinds of stuff for how to poke holes in the firewalls
23:36
<Hixie>
but again, that depends on whatever we decide to build this on
23:38
<Hixie>
annevk: btw would be good to get opera's feedback on http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-February/025280.html
23:38
<annevk>
i didn't quite get it
23:39
<Hixie>
hsivonen: your feedback would likely also be useful (on http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-February/025280.html )
23:39
<Hixie>
annevk: that's probably good feedback to send :-)
23:40
<annevk>
btw, do I misunderstand the subprotocol idea or do the people on hybi misunderstand it?
23:40
<annevk>
maybe both :)
23:40
<Hixie>
there's certainly been a lot of confusion on that issue
23:40
<Hixie>
not sure why
23:41
<Hixie>
i don't remember seeing anything from you about it so no idea if you understand it or not :-)
23:43
<franksalim>
annevk, how do you understand it?
23:45
<annevk>
I don't
23:45
<annevk>
e.g. "I would like the toString method to be called with 'html '"
23:46
<annevk>
but toString() has no arguments in this context
23:46
<annevk>
afaik
23:46
<franksalim>
where is that?
23:46
<annevk>
oh, are you talking about the subprotocol thingie?
23:47
<franksalim>
oh yes, i meant subprotocol. i see you were talking about http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-February/025280.html
23:49
<annevk>
well, I think the idea is that the subprotocol indicates how the data transmitted in the frame types is supposed to be processed, but I don't think the idea is that you can simply use all the frame types if you have a custom subprotocol
23:50
<franksalim>
I think that is correct
23:51
<franksalim>
Ports usually indicate the protocol, but because ws:// does not use host/port addressing, 'subprotocol' indicates the protocol instead
23:52
<franksalim>
Either new protocols or existing TCP protocols bound to ws
23:52
<annevk>
i.e. I am pretty certain we end up having distinct frame types for ByteArray and Stream and that a subprotocol cannot change the meaning of that
23:53
<franksalim>
annevk, so you're pretty sure we need frame types and not just a bidirectional byte stream like TCP?
23:54
<annevk>
yeah, exposing TCP to JavaScript directly won't fly
23:55
<franksalim>
for technical reasons or other reasons?
23:58
<annevk>
security, mostly
23:58
<franksalim>
I would be perfectly happy with TCP in JavaScript after the WebSocket handshake
23:58
<annevk>
oh I see
23:58
<annevk>
interesting thought
23:59
<annevk>
the reason for that is that JavaScript prolly works better being event-based
23:59
<annevk>
but I'm on shaky grounds here
23:59
<annevk>
Hixie would know