| 03:38 | <G0k> | any good fights today? |
| 04:00 | <Lachy> | G0k, there's a bit of fighting in the comments http://blog.whatwg.org/omit-alt :-) |
| 04:01 | <Lachy> | hi MikeSmith |
| 04:02 | <MikeSmith> | Lachy - hei |
| 04:02 | <Lachy> | did you ever receive a response to this http://lists.w3.org/Archives/Public/www-archive/2007Aug/0046.html ? |
| 05:17 | <jwalden> | Hixie: ping |
| 05:33 | <Hixie> | hey |
| 05:39 | <jwalden> | Hixie: regarding postMessage, did you intend for the event to be dispatched at the target window's document? I'd thought, when I requested it be moved to Window, that the dispatch target would change too |
| 05:39 | <MikeSmith> | Lachy - sorry, was having some machine troubles, then just gave up and went to lunch |
| 05:39 | <jwalden> | Hixie: I can send an email about it if you think it's reasonable, just wanted to get an opinion first |
| 05:41 | <Hixie> | jwalden: i didn't consider them related |
| 05:41 | <Hixie> | jwalden: in fact thinking about it maybe it should fire at the body element |
| 05:41 | <Hixie> | jwalden: feel free to send mail, not sure we'd want it to fire at Window though |
| 05:42 | <jwalden> | hrm |
| 05:43 | <G0k> | Hixie: hate to keep bugging about it but i was wonder if you wanted to post that last email i sent you about networking-event-source to http://www.whatwg.org/issues/ |
| 05:45 | <jwalden> | I guess I'll change my implementation to fire at document; if you thought a change to window might happen, I'd propose it, but I don't really like firing at document.body ;-) |
| 05:48 | <Hixie> | G0k: http://www.whatwg.org/issues/ automatically updates from my imap folders around 5am every day |
| 05:48 | <Hixie> | jwalden: heh |
| 05:49 | <G0k> | Hixie: er...i sent that email from 2 weeks ago but it's not there |
| 05:49 | <Hixie> | G0k: uri? |
| 05:49 | <G0k> | i never posted it to the main list, i sent it straight to you |
| 05:52 | <Hixie> | hm |
| 05:52 | <Hixie> | subjet line? |
| 05:52 | <G0k> | Re: about event-source |
| 05:52 | <G0k> | talks about true/false and some other stuff |
| 05:52 | <Hixie> | oh |
| 05:53 | <Hixie> | you sent it straight to me |
| 05:53 | <Hixie> | so it'll never appear on the list |
| 05:53 | <Hixie> | i hide e-mails that weren't cc'ed publically |
| 05:53 | <Hixie> | (i get a lot of confidential e-mail about the spec that ends up in my folders) |
| 05:54 | <G0k> | ah |
| 05:55 | <G0k> | so should i reformulate and echo it to the list? |
| 05:55 | <Hixie> | nah it's still on my list, it just doesn't show up on the site |
| 05:55 | <G0k> | ah |
| 05:56 | <G0k> | oh and uh anyone interested in my webkit implementation can play with it http://bugs.webkit.org/show_bug.cgi?id=14997 |
| 05:56 | <G0k> | so...so there |
| 05:57 | <Hixie> | :-) |
| 05:57 | <G0k> | what do we want next? video elements? |
| 05:58 | <Hixie> | in webkit? |
| 05:58 | <G0k> | well i dunno i guess i kinda feel like just trying to implement stuff is a good way to find which parts of the spec are confused |
| 06:00 | <G0k> | but hey, maybe the "finalize first, implement later" method is better. :) |
| 06:11 | <Hixie> | G0k: no, implemention in tandem with spec development is definitely the way we want it :-) |
| 06:11 | <G0k> | yeah so. :) |
| 06:12 | <G0k> | actually i think it might be cool to make some kind of more general reference implementation just for this purpose |
| 06:12 | <G0k> | maybe built on html5lib? |
| 06:12 | <Hixie> | i wouldn't recommend building a reference implementation browser |
| 06:12 | <Hixie> | you'll be here for decades |
| 06:13 | <G0k> | it doesn't need to work for real pages though |
| 06:13 | <G0k> | i feel like my concern is that if you start implementing in an existing thing |
| 06:14 | <G0k> | then you might accidentally create an installed base for a feature which will have to change |
| 06:32 | <jwalden> | work in a non-release branch :-) |
| 06:33 | <Hixie> | G0k: eh, it's part of hte game |
| 06:34 | <G0k> | yeah so....get these specs finalized faster people! :) |
| 06:34 | <jwalden> | better > faster |
| 06:35 | <G0k> | has anyone tried implementing any of WF2? |
| 06:35 | <G0k> | or...3 i guess |
| 06:36 | <Hixie> | opera has most of wf2 done |
| 06:36 | <Hixie> | and shipped, even |
| 06:36 | <G0k> | k. sounds like a place to start/continue |
| 06:37 | <Hixie> | see also the whatwg blog about a week ago or so |
| 06:37 | <Hixie> | someone's done a js version |
| 06:41 | <G0k> | input type="search" never made it into a spec? |
| 08:25 | gsnedders | had a dream of Hixie's deayh :\ |
| 08:44 | <Dashiva> | deayh? |
| 09:05 | <mpt> | Don't ask :-) |
| 09:46 | <Lachy> | gsnedders, did you mean s/deayh/death/? |
| 09:47 | <zcorpan> | gsnedders: you're still on the html wg? |
| 09:50 | <Lachy> | zcorpan, was he thinking about leaving? |
| 09:54 | <zcorpan> | Lachy: http://krijnhoetmer.nl/irc-logs/html-wg/20070824#l-457 |
| 09:55 | <Lachy> | wow, looks like I have a lot of logs to read to find out why |
| 09:57 | zcorpan | unsubscribed from www-style...again |
| 09:58 | <Lachy> | I haven't been reading www-style lately. what's happening on it? |
| 09:59 | <zcorpan> | not much interesting (to me anyway) |
| 10:37 | <Lachy> | hmm. those IRC logs are depressing to read |
| 11:23 | <zcorpan> | indeed |
| 12:51 | <zcorpan> | http://simon.html5.org/temp/annotate.html |
| 12:52 | <zcorpan> | demo for the status updater js |
| 12:59 | <zcorpan> | wonder if getting innerHTML in html should serialize U+00A0 characters as |
| 13:03 | <zcorpan> | ie7 and firefox do, safari and opera don't |
| 13:21 | <Lachy> | zcorpan, is it a working demo? can I submit the form? |
| 13:23 | <Lachy> | it didn't work |
| 13:47 | <gsnedders> | Lachy: yes |
| 13:47 | <gsnedders> | zcorpan: no |
| 13:48 | <Lachy> | gsnedders, I can't remember what my question was |
| 13:48 | <gsnedders> | Lachy: "gsnedders, did you mean s/deayh/death/?" |
| 13:48 | <Lachy> | oh right |
| 13:49 | <gsnedders> | _really_ odd dream. |
| 13:49 | <Lachy> | gsnedders, was the "no" to zcorpan in response to you being on the HTMLWG? |
| 13:49 | <gsnedders> | Lachy: not having left the WG |
| 13:50 | <Lachy> | right, so you're staying for now. cool |
| 13:50 | <Lachy> | so how did Hixie die? |
| 13:50 | <gsnedders> | I dunno. I spent the whole dream trying to find that out. |
| 13:50 | <Lachy> | that's weird |
| 13:53 | <gsnedders> | tantek told me he had died in here. |
| 13:53 | <gsnedders> | :\ |
| 13:53 | <Lachy> | what? do you mean he told you in your dream? |
| 13:54 | <gsnedders> | yeah |
| 13:54 | <gsnedders> | dreaming about IRC :\ |
| 13:54 | <Lachy> | that's just sad |
| 13:54 | <gsnedders> | totally. |
| 13:54 | <Lachy> | ... the fact that you're dreaming about IRC |
| 13:54 | <gsnedders> | I've only once dreamed about _anything_ related to computers before |
| 13:56 | <Lachy> | Did I make an appearance in your IRC dream? |
| 13:57 | <gsnedders> | hmmm… |
| 13:57 | <gsnedders> | I think so |
| 15:11 | <Lachy> | zcorpan, yt? |
| 15:22 | <Lachy> | zcorpan, I created a basic form handler for the script, though it doesn't yet handle DB updating http://html5.googlecode.com/svn/trunk/status/update-markers.php |
| 15:23 | <zcorpan> | Lachy: nice! |
| 15:23 | <Lachy> | test it here http://lachy.id.au/temp/html5/annotate.html |
| 15:23 | <Lachy> | if you forget to enter an email and/or rationale, it will prompt you for it |
| 15:24 | <zcorpan> | Lachy: i think the idea is for the script to send an email to Hixie or someone who can approve the change before it updates the database |
| 15:25 | <Lachy> | ok, so it would have to somehow preserve the data temporarily somewhere while it awaits approval |
| 15:25 | <zcorpan> | yeah |
| 15:25 | <zcorpan> | perhaps also in the database but another table |
| 15:25 | <zcorpan> | or in the email |
| 15:26 | <Lachy> | it could check which fields have changed, and then include those fields in the query string |
| 15:26 | <zcorpan> | yeah |
| 15:27 | <zcorpan> | wonder what would happen if you make another change before the first was approved |
| 15:28 | <Lachy> | that wouldn't matter, they wouldn't get committed until the approval. So it would depend on the order in which Hixie approved them |
| 15:28 | <zcorpan> | i guess |
| 15:29 | <Lachy> | maybe it should have some authentication system so Hixie doesn't have to approve all changes. Authorised users could just commit directly |
| 15:29 | <Lachy> | though we'd need that anyway, so it couldn't be hacked |
| 15:30 | <zcorpan> | perhaps the js could figure out what the changes were so that the whole shebang isn't sent back to the php script |
| 15:30 | <zcorpan> | whatever is simplest |
| 15:32 | <Lachy> | easy way would be to include an empty value for the intial value so it doesn't get submitted if selected: <label class=initial><input ... name=foo value="" checked> TBW</label> |
| 15:34 | <zcorpan> | aha |
| 15:34 | <zcorpan> | radio buttons with empty values aren't submitted? |
| 15:36 | <zcorpan> | hmm, seems they are, just with no value... :) |
| 15:37 | <Lachy> | no, I was wrong. They are submitted |
| 15:37 | <zcorpan> | but the php script doesn't need to figure out what the changes were |
| 15:37 | <zcorpan> | just ignore the ones with no value |
| 15:37 | <Lachy> | yeah, that makes it easy |
| 15:38 | <zcorpan> | ok, i'll implement that in the js |
| 15:38 | <Lachy> | I'll update the PHP to check for empty values |
| 15:39 | <zcorpan> | the value "none" means that the initial was something else and the marker is to be removed |
| 15:43 | <Lachy> | I've updated the PHP |
| 15:53 | <zcorpan> | js updated too |
| 15:53 | <zcorpan> | i have a send email script in php somewhere |
| 15:54 | <zcorpan> | that sends emails encoded as utf-8 and works correctly with funny characters in headers |
| 15:58 | <zcorpan> | http://simon.html5.org/temp/mail-utf8.txt |
| 15:59 | <zcorpan> | although i guess the email address itself might well contain non-ascii characters too nowadays |
| 15:59 | <Lachy> | I deployed the new script on my server, it seems to work |
| 16:00 | <zcorpan> | nice |
| 16:00 | <Lachy> | I'm not sure how non-ascii email addresses work or if PHP would support them |
| 16:00 | <zcorpan> | probably not worth worrying about :) |
| 16:01 | <zcorpan> | i guess very few systems allow non-ascii in email addresses |
| 16:06 | <Lachy> | should we have this email comit-watchers as well? |
| 16:06 | <Lachy> | after it's confirmed |
| 16:07 | <zcorpan> | yeah that would be good |
| 16:07 | <zcorpan> | twitter? |
| 16:07 | <Lachy> | yes, that too |
| 16:07 | <Lachy> | I'm just implementing the email script now and to have it email me for testing |
| 16:09 | <zcorpan> | ok |
| 16:10 | <Lachy> | your email script was missing the format=flowed parameter |
| 16:13 | <zcorpan> | hmm, do you do wrapping of the body? |
| 16:14 | <zcorpan> | or does php do that? |
| 16:15 | <zcorpan> | $message = wordwrap($message, 72); ? |
| 16:18 | <zcorpan> | linebreaks in headers should be \r\n also |
| 16:18 | <zcorpan> | between headers that is |
| 16:19 | <zcorpan> | not sure if php wordwrap() is RFC 2646 compliant though :) |
| 16:22 | <zcorpan> | it's not |
| 16:23 | <zcorpan> | words shorter than 998 shouldn't be wrapped |
| 16:25 | <zcorpan> | soft linebreaks should also be SP CRLF |
| 16:30 | zcorpan | finds http://drupal.org/node/154218 which might be interesting |
| 16:33 | <Lachy> | probably doesn't matter for this, since I can control the line lengths manually. does the php mail() funciton replace \n with \r\n properly? |
| 16:33 | <zcorpan> | dunno |
| 16:38 | <zcorpan> | php should just do this boring processing by default :) |
| 16:39 | <zcorpan> | with options about encoding, format, and some others, and then Do The Right Thing |
| 16:40 | <webben> | PHP is not exactly the DTRTiest language ;) |
| 16:40 | <zcorpan> | indeed |
| 16:45 | <Lachy> | I suppose we should add some check to make sure only the values TBW, WIP, SCS and none will be accepted. At the moment, it doesn't do much input validation, which could be a problem |
| 16:46 | <zcorpan> | yeah |
| 16:46 | <Lachy> | should we restrict the length of the rationale, especially if we're going to twitter it? |
| 16:46 | <zcorpan> | seems reasonable |
| 16:46 | <zcorpan> | what does twitter accept? |
| 16:46 | <Lachy> | 140 chars total |
| 16:47 | <zcorpan> | we might want some context text in the twitter messages |
| 16:47 | <Lachy> | so if we send the twitter message as: "Status Update: $rationale", that leaves 125 chars for the rationale |
| 16:47 | <zcorpan> | yeah |
| 16:48 | <Lachy> | I'll add a comment to the PHP, update the JS to make the rationale input maxlength=125 |
| 16:48 | <Dashiva> | Is twitter 140 chars or 140 bytes, though? |
| 16:51 | <gsnedders> | chars |
| 16:54 | <zcorpan> | Lachy: i already updated the js |
| 16:55 | <zcorpan> | http://krijnhoetmer.nl/irc-logs/whatwg/20070524#l-461 |
| 17:03 | <Lachy> | I've committed the current PHP versions, feel free to fix some of the bugs, it's getting a bit late for me |
| 17:03 | <Lachy> | there's a TODO list at the top of the file |
| 17:03 | <zcorpan> | ok |
| 17:09 | <Lachy> | we'll need to wordwrap the rationale in the email. Just do wordwrap($rationale,72) and then fix then append a space before the new lines (if any) |
| 17:15 | <Lachy> | use wordwrap("Rationale: $rationale", 72, '\n', false); |
| 17:17 | <Lachy> | then, if you want to be really cautious, do wordwrap($body, 998, '\n', true); to ensure no line is longer than that which could happen with a long URL |
| 17:17 | <zcorpan> | not wordwrap("Rationale: $rationale", 72, ' \r\n', false); ? |
| 17:18 | <zcorpan> | maxlength is 125 already :) |
| 17:18 | <zcorpan> | we could cut at 125 before wrapping if it's longer |
| 17:18 | <Lachy> | yeah, I know, I just left it there as a reminder for when we do the twitter messages, and we need to do input validation for it |
| 17:19 | <Lachy> | probably where I check for empty $email and $rationale, we should also check for strlen($rationale) < 125 and check for a valid email address |
| 17:20 | <zcorpan> | yeah |
| 17:20 | <othermaciej> | good morning everyone |
| 17:21 | <zcorpan> | morning othermaciej |
| 17:21 | <Lachy> | should probably use mb_strlen also |
| 17:21 | <Lachy> | hi othermaciej |
| 17:21 | <othermaciej> | I've been away all weekend - any exciting flamewars? |
| 17:21 | <Lachy> | no, not since your last one with ROb |
| 17:21 | <Lachy> | :-) |
| 17:23 | <Lachy> | oh, but there's nearly a flamewar in the whatwg blog comments |
| 17:44 | <Lachy> | zcorpan, we should probably use this UTF-8 wordwrap function instead http://www.php.net/manual/en/function.wordwrap.php#57090 |
| 17:45 | <zcorpan> | Lachy: aha, cheers |
| 17:46 | <Lachy> | and it would probably be easier if all the word wrapping was handled in the sendMail function in mail-utf8.php |
| 17:46 | <Lachy> | that way, it doesn't need to be handled individually for each email we generate |
| 17:47 | <zcorpan> | ok |
| 17:54 | <zcorpan> | though utf8_wordwrap doesn't have a cut argument |
| 17:55 | <Lachy> | oh, well, it shouldn't be too hard to modify it |
| 17:55 | <Lachy> | I can probably do that tomorrow if you like |
| 18:00 | <zcorpan> | i'll look into it for a bit later today |
| 18:03 | <Lachy> | hmm. This comment suggests that wordwrap() doesn't preserve existing line breaks, but I just tested it and it seems to preserve them http://www.php.net/manual/en/function.wordwrap.php#53403 |
| 19:56 | <zcorpan> | Hixie: you have escape() on 2 more places... :) |
| 19:59 | <Hixie> | but those are for data: URIs |
| 19:59 | <Hixie> | aren't they ok? |
| 19:59 | <Hixie> | btw i updated the API docs for /issues/ to include the lower-level protocol |
| 20:01 | <markp> | Hixie: are you actively involved in html5lib coding? |
| 20:01 | <Hixie> | no |
| 20:02 | <markp> | who is? |
| 20:02 | <Hixie> | http://code.google.com/p/html5lib/ |
| 20:02 | <Hixie> | see "project owners" |
| 20:06 | <zcorpan> | Hixie: no, they're not ok. e.g. ☺ becomes data:text/html,%u263A instead of data:text/html,%E2%98%BA (you might even want to do data:text/html;charset=utf-8,... ) |
| 20:07 | <Hixie> | aah |
| 20:07 | <Hixie> | wtf is %u1234 |
| 20:07 | <zcorpan> | it's what escape() does |
| 20:07 | <zcorpan> | it replaces \ with % i think |
| 20:07 | <kingryan> | markp: you have a question about html5lib? |
| 20:08 | <Hixie> | zcorpan: changed |
| 20:08 | <Hixie> | man we need to kill escape()/unescape() then |
| 20:08 | zcorpan | is happy now :) |
| 20:08 | <Hixie> | or at least escape() |
| 20:08 | <Hixie> | i guess unescape() is fine |
| 20:08 | <zcorpan> | it's not |
| 20:09 | <Hixie> | does it not do +s or something? |
| 20:09 | <zcorpan> | %E2%98%Ba becomes \E2\89\BA |
| 20:09 | <Hixie> | oh it interprets as latin1? |
| 20:09 | <Hixie> | interesting |
| 20:09 | <zcorpan> | yeah, basically |
| 20:16 | <Hixie> | afk |
| 20:21 | <markp> | kingryan: yeah, i was talking with sam ruby about adding some test cases |
| 20:21 | <markp> | and enhancing its functionality as a validator |
| 20:21 | <markp> | for example, teaching it which attributes are allowed/required in which elements |
| 20:21 | <kingryan> | sounds good to me |
| 20:22 | <kingryan> | if you add test cases I'll update the ruby version :) |
| 20:22 | <markp> | and then later maybe some stuff around inline content vs. strictly inline content, etc. |
| 20:23 | <markp> | to start with, i'd like to refactor the parserError logging |
| 20:23 | <markp> | to use constants enumerated in constants.py |
| 20:23 | <markp> | we did that in feedvalidator and later used the constant names to link to documentation pages |
| 20:23 | <markp> | very useful |
| 20:24 | <kingryan> | nice |
| 20:24 | <markp> | any objection? |
| 20:24 | <kingryan> | not from me |
| 20:24 | <kingryan> | I work solely with the ruby port, though |
| 20:24 | <markp> | i see |
| 21:33 | Dashiva | ponders javascript sockets |
| 21:48 | <zcorpan> | per rfc2646, what do you do with words that are longer than 998 characters? insert a soft linebreak? |
| 22:38 | <Esine> | I read slashdot daily and I've seen AKAImBatman (Intelligent Blogger) post often. His sig says "Before you adopt Silverlight, read the WHATWG specs [whatwg.org]. Article coming soon...". Are you here AKAImBatman? :) What I came here to ask was about your thought about Silverlight. |
| 22:39 | <Esine> | I was on a computer event and there was a Microsoft stand where some microsoftie demoed Silverlight to me |
| 22:39 | <Dashiva> | I'd venture to guess the thoughts are related to avoiding single-vendor lockin :) |
| 22:40 | <Esine> | It really seemed quite nice and much better than Flash. I'm no lover (not hater) of Microsoft or proprietary technology, but still Silverlight seemed to be quite open. If the Mono guys can really make a good silverlight plugin for browsers and such I don't see much problem with it |
| 22:40 | <zcorpan> | how is it open? |
| 22:41 | <Esine> | I code websites a lot and I code to HTML 4.0 Strict (and some WHATWG extensions) and don't use Flash or anything, but.. really, Silverlight doesn't seem too bad if I can run it on every platform and I can develop software for it on every platform |
| 22:41 | <Esine> | well I *think* they have documented it all in Microsoft Developer Network (msdn.microsoft.com), but I'm not sure. I mean how else would the Mono guys do it? |
| 22:42 | <Esine> | So, I need you to tell me why is it bad, if it is open enough and most likely 90% people in 5 years will have it installed on their computers (because it will ship with a windows update most likely) |
| 22:42 | <kingryan> | Esine: can anyone else build silverlight implementations? |
| 22:42 | <Esine> | kingryan, yes. |
| 22:43 | <Esine> | See the moonlight website: http://www.mono-project.com/Moonlight |
| 22:43 | <Esine> | it's Silverlight implementation on Mono (C# interpreter for UNIX) |
| 22:43 | <kingryan> | so anyone = anyone using .Net or a .Net clone |
| 22:43 | <Esine> | and a browser plugin for it. It's sort of unstable right now but they're improving at rapid rate. I tried it out a month ago and only half of the examples on microsoft's site worked but.. |
| 22:44 | <Esine> | yes I understand that's not such a nice thing, but I understand you don't NEED to code in .Net to develop on it |
| 22:45 | <Esine> | You can call the functions in pure JavaScript if you wish, but .Net bytecode is for performance. I personally don't intend to code in .Net or any other managed toy language like that, but I can't see it as such a bad thing if it really and truly works under all platforms with no problems |
| 22:46 | <kingryan> | "working on all platoforms" is not the same as "being open" |
| 22:46 | <Esine> | very true indeed |
| 22:46 | <Esine> | but still it doesn't seem to matter in real life (see Flash for example) |
| 22:47 | <Esine> | I'm not sure how open really it is though |
| 22:47 | <Esine> | since they say everything is documented on MSDN |
| 22:47 | <kingryan> | flash has succeeded because it can do things that other technologies can't (right now) |
| 22:47 | <Esine> | what we're missing right now is a high performance technology we can use on Web |
| 22:47 | <kingryan> | flash is useful for online video because browsers don't have a compatible way to do it today, but they hopefully will in the future |
| 22:48 | <Esine> | you say SVG or Canvas, well guess what, they're slow as fsck (at least the current implementations on Konqueror, Opera and Mozilla) |
| 22:48 | <Esine> | and they can't do everything Flash (or Silverlight for that matter) can |
| 22:48 | <kingryan> | there's also http://www.whatwg.org/specs/web-apps/current-work/#video |
| 22:48 | <kingryan> | <video> |
| 22:48 | <Esine> | does WHATWG have a better solution than those? |
| 22:48 | <Esine> | I'll check that |
| 22:48 | <kingryan> | and <audio> |
| 22:48 | <zcorpan> | 3d canvas |
| 22:49 | <kingryan> | and sure, the implementations are currently slow, but that doesn't mean they can't be made to be fast |
| 22:49 | <kingryan> | at this point interoperability would be more important |
| 22:49 | <Esine> | I understand that but you can't get anyone to use them if they are slow |
| 22:49 | <webben> | kingryan: Flash popularity has more to do with an install base than theoretical interoperability. |
| 22:50 | <Esine> | since they offer nothing really exciting to the Web compared to other technologies, even though the other ones may not be as open |
| 22:50 | <kingryan> | webben: doesn't a large install base lead to interop? |
| 22:50 | <webben> | kingryan: Well no, not necessarily. |
| 22:51 | <webben> | kingryan: it just lowers the usability barrier on key platforms |
| 22:51 | <kingryan> | it seems to have helped flash, at least for online video |
| 22:51 | <othermaciej> | Silverlight is not an open standard |
| 22:51 | <othermaciej> | Microsoft controls it |
| 22:51 | <othermaciej> | maybe other people can build implementations today |
| 22:51 | <othermaciej> | but Microsoft is free to change it at any time |
| 22:51 | <othermaciej> | once it is no longer in their interests to allow clones |
| 22:52 | <Esine> | true.. |
| 22:52 | <webben> | othermaciej: Hmm. But presumably that would only apply to subsequent versions? (I haven't looked at the licence at all. I just know the Mono project has been developing a Linux version.) |
| 22:52 | <othermaciej> | <canvas> is fast enough to code simple 3D games with |
| 22:53 | <Esine> | othermaciej, actually no. I can't even run 20 _wireframe_ polygons on screen at a good FPS rate |
| 22:53 | <othermaciej> | Esine: http://canvex.lazyilluminati.com/ |
| 22:53 | <Esine> | yes I've seen that |
| 22:54 | <Esine> | but that isn't really complex, is it? |
| 22:54 | <Esine> | it doesn't render many polygons per frame |
| 22:55 | <Esine> | you say it doesn't matter since no one is going to code a Quake 3 on <canvas>. That's true, but still there are a lot other things where you need to be able to draw graphics very fast |
| 22:55 | <zcorpan> | we will have 3d canvas in due course, based on open gl es |
| 22:55 | <othermaciej> | in some screens there's probably quite a few more polygons than that, and I'm getting 30-50 fps |
| 22:55 | <kingryan> | Esine: I don't think performance is a big deal at this point. canvas can be made fast later. |
| 22:56 | <webben> | I wonder hows fast 3D (http://www.web3d.org/ ) is. |
| 22:56 | <webben> | s/3D/X3D/ |
| 22:56 | <othermaciej> | Safari's <canvas> impl is pretty fast, when doing 3D your bottleneck is more likely JS execution time doing the math |
| 22:56 | <othermaciej> | anyway |
| 22:56 | <Esine> | oh yes that too |
| 22:57 | <Esine> | JavaScript is very slow to parse and run at real time |
| 22:57 | <othermaciej> | open standards based web technology is indeed behind proprietary technologies in some areas |
| 22:57 | <Esine> | Flash and Silverlight run compiled bytecode which again is really fast |
| 22:57 | <othermaciej> | a big goal of HTML5 is to close the gap |
| 22:57 | <Esine> | so that's one problem too.. |
| 22:57 | <othermaciej> | even if you might still need Flash or Silverlight for some things, more things will be doable in pure web tech |
| 22:57 | <othermaciej> | there's no fundamental reason precompiled bytecode needs to be faster than JS |
| 22:57 | <Hixie> | othermaciej: so i was looking at flickr, and it's not clear to me what it would mean to take it offline, as an app |
| 22:57 | <othermaciej> | and modern JS engines are pretty fast |
| 22:58 | <Hixie> | othermaciej: is there really a problem with requiring that an offline app be written to work with a single top-level URI? |
| 22:58 | <Philip`> | Esine: http://blog.vlad1.com/archives/2007/07/28/149/ is a SVG vs Silverlight demonstration, in case you haven't seen it before |
| 22:58 | <othermaciej> | Hixie: I'd like to be able to view my own flickr photos, add tags and captions, and "upload" new photos (scheduling for real upload next time I'm online) when I don't have a net connection |
| 22:58 | <webben> | Hixie: Wouldn't it be a sort of synced iPhoto? |
| 22:59 | <othermaciej> | Hixie: right now I use iPhoto for that a lot of the time, basically only because it works offline |
| 22:59 | <Esine> | Philip`, no I haven't thanks |
| 22:59 | <Hixie> | othermaciej: ok but why would you want multiple top-level URIs for that? |
| 22:59 | <Philip`> | (Canvex doesn't draw 3D polygons at all - it's basically 2D, but extended vertically a bit) |
| 22:59 | <kingryan> | Hixie: have you looked at the flickr organizr ? |
| 22:59 | <Hixie> | kingryan: uri? |
| 22:59 | <othermaciej> | Hixie: well, flickr's current UI uses lots of different URIs |
| 22:59 | <kingryan> | http://flickr.com/photos/organize/ |
| 22:59 | <othermaciej> | Hixie: should we say they need to rearchitect their whole site to support offline mode? |
| 23:00 | <Philip`> | (I tried porting a JVM-based software 3D renderer to <canvas>, but JavaScript is just far too slow at doing all the matrix calculations to handle 3D polygons) |
| 23:00 | <kingryan> | it's all flash, but if you could take that offline it'd be really useful |
| 23:00 | <othermaciej> | anyway, I need to go get coffe |
| 23:00 | <othermaciej> | will be back |
| 23:00 | <webben> | Multiple URIs is good, since it allows bookmarking. |
| 23:00 | <kingryan> | Hixie: you might need a flickr account, though |
| 23:00 | <Hixie> | othermaciej: they will have to rearchitect anyway, they'd have to have all kinds of offline-specific things like an offline database, coping with updates, synchronising with conflicts, etc |
| 23:01 | <Philip`> | webben: I don't think the performance of X3D is something that really exists - it's just a way of describing scenes, and the performance depends entirely on the implementation |
| 23:01 | <Hixie> | kingryan: it won't let me see it (i haven't uploaded any photos) |
| 23:01 | <Hixie> | kingryan: was there anything specific about it you wanted me to look at? |
| 23:02 | <webben> | Philip`: I see what you mean. |
| 23:02 | <kingryan> | Hixie: nothing in specific, but it is like an "online iphoto" |
| 23:02 | <Hixie> | kingryan: ah ok |
| 23:02 | <Esine> | Philip`, I did a JavaScript and <canvas> 3D renderer/engine that does solid lightning and animation, but as I said before I could only get like 30fps with a _five_ polygon object on screen |
| 23:02 | <Philip`> | (i.e. it's like talking about the performance of RTF files, or something, so it's not relevant except to the extent that it dictates the architecture of the implementations) |
| 23:02 | <kingryan> | if they could take that offline, do the oranizing, then resync, it could be a useful use case |
| 23:02 | <Hixie> | webben: i'm not sure what it really means to talk about bookmarking the state of an offline app |
| 23:02 | <Esine> | that's why I was so interested in Silverlight.. because it seemed so fast |
| 23:03 | <webben> | Hixie: I guess it depends on how weblike the offline app is. Bookmarking makes perfect sense with offline web pages. |
| 23:03 | <Philip`> | OpenGL <canvas> would be much better - I had hundreds of texture-mapped polygons with specular lighting and reflective water underneath, going at 60fps with no problem :-) |
| 23:04 | <Hixie> | webben: i dont really see what it would mean to e.g. bookmark the state of gmail |
| 23:04 | <Esine> | Philip`, you mean you had that on the opengl <canvas> or normal 2d <canvas>? |
| 23:04 | <webben> | That's because Gmail isn't a remotely REST-like app. |
| 23:05 | <webben> | very little state is stored in simple URIs. |
| 23:05 | <Philip`> | Esine: The OpenGL one |
| 23:05 | <Esine> | is there any patch for adding opengl support for browsers? |
| 23:05 | <Esine> | Philip`, which browser? |
| 23:05 | <webben> | Flickr doesn't seem like that. |
| 23:05 | <Hixie> | webben: i don't see this as a problem... |
| 23:06 | <Philip`> | Esine: There's an experimental implementation in Mozilla, but I don't know if it still works, and you probably have to compile Firefox yourself to use it |
| 23:06 | <webben> | Hixie: I guess it's a problem if you're trying to maintain a consistent interface between offline and online. |
| 23:06 | <Esine> | Philip`, is it in the SVN trunk? |
| 23:06 | <Hixie> | webben: i would understand having the photo viewing side bookmarkable, since there you are viewing photos |
| 23:06 | <Philip`> | Esine: http://lxr.mozilla.org/seamonkey/source/extensions/canvas3d/ |
| 23:06 | <Hixie> | webben: but that's usually someone else's photos |
| 23:06 | <Esine> | thanks |
| 23:07 | <Hixie> | webben: for the app part -- changing tags, etc -- i don't really see what you would bookmark |
| 23:08 | <webben> | Hixie: Well, I guess I'd assume you'd still be able to browse your collection offline. |
| 23:08 | <Hixie> | webben: that would be a LOT of data to download |
| 23:08 | Philip` | predicts that OpenGL <canvas> would be great fun for anyone who cares about security (either breaking it or fixing it) in browsers... |
| 23:09 | <Hixie> | webben: but hm |
| 23:09 | <webben> | Hixie: I was kind of envisaging permanent sync. |
| 23:09 | <Philip`> | (2D <canvas> is bad enough for security already) |
| 23:09 | <webben> | If it's all about upload, I'm not sure how much value it would add to the existing tools. |
| 23:10 | <Esine> | Philip`, oh? mind telling me about that? |
| 23:10 | <Esine> | security implications of <canvas> |
| 23:10 | <Dashiva> | Intranet images mainly |
| 23:11 | <Philip`> | Esine: It's not really <canvas>'s fault, it's just the implementations - they tend to corrupt memory and crash, or expose random chunks of browser memory to scripts, because they have bugs (or use libraries with bugs) or forget to deal with certain cases |
| 23:12 | <Hixie> | webben: interesting |
| 23:12 | <Esine> | oh.. |
| 23:13 | <Philip`> | Esine: They're also big DOS targets - you can try creating massive bitmaps, or painting hugely complex shapes, and browsers tend to just freeze or crash instead of handling it gracefully |
| 23:16 | <webben> | Hixie: OTOH, I guess it would be free whereas the iPhoto plugin for Flickr actually costs money. |
| 23:19 | <othermaciej> | Hixie: assuming that flickr wanted back/forward to work, and wanted people to be able to send each other URLs to specific photos or photosets or profile pages etc, then the only way they could have a single top-level URI for offline mode is to use a single URI for the whole site |
| 23:19 | <othermaciej> | with fragment IDs |
| 23:19 | <othermaciej> | it seems very intrusive for offline support to require doing that to your site |
| 23:21 | <Philip`> | (Incidentally, I'd like to try implementing some subset of X3D if browsers provided a lower-level (OpenGL) rendering API - I don't really know anything about it, but it looks generally sensible and it'd be useful when you want convenience at the expense of flexibility) |
| 23:22 | <othermaciej> | so instead of http://flickr.com/photos/othermaciej/329780552/ you would have to have URLs like http://flickr.com/#photos/othermaciej/329780552 |
| 23:22 | <othermaciej> | and the server would only ever serve one actual page per person |
| 23:22 | <othermaciej> | I can imagine all sorts of ways this could be bad for their caching strategies |
| 23:29 | <Philip`> | Esine: By the way, have you seen http://polyhedra.org/poly/ which does 3D polygons at a reasonable speed when it's not just showing PHP errors? |
| 23:29 | <Esine> | no I haven't.. |
| 23:29 | <Esine> | I'll bookmark that page |
| 23:30 | <Hixie> | othermaciej: yeah |
| 23:30 | <Hixie> | othermaciej: i don't see how to do the offline stuff in a simple yet workable fashion without having a single top-level URL |
| 23:31 | <Hixie> | but clearly we'll have to do so |
| 23:31 | <Philip`> | Esine: (Also there's http://matt.west.co.tt/files/canvastastic/canvastastic_beta_1/eg/robot.html which is a less reasonable speed but not too awful) |
| 23:32 | <Esine> | yeah well that's around the same speed I was getting |
| 23:32 | <othermaciej> | Hixie: I will think on it more and reply to other aspects of your email, I've been asked to look at offline support more at work |
| 23:32 | <othermaciej> | the dancing robot doesn't look half bad in my Safari 3 build |
| 23:33 | <othermaciej> | I don't know what the FPS is |
| 23:33 | <kingryan> | the robot looks good in safari 3.0.3 |
| 23:34 | <Philip`> | http://canvex.lazyilluminati.com/3dmodel/example0.html pushes Canvastastic harder, but unfortunately it very much doesn't work in anything except Firefox |
| 23:35 | <Philip`> | (since it uses E4X to parse Collada models, and some JS1.7 bits just for fun) |
| 23:35 | <Esine> | yeah can't see anything in Opera |
| 23:37 | <Philip`> | I get 1.5fps |
| 23:46 | <markp> | wow, i so totally called this 3 months ago: http://diveintomark.org/archives/2007/05/02/silly-season#comment-9288 |
| 23:48 | <Dashiva> | Oh it's a markp |
| 23:49 | <Hixie> | i love the comment a bit lower down on that page |
| 23:49 | <Hixie> | saying "Matt Cutts : Google :: Silverlight : The Future" |
| 23:49 | <Hixie> | i can't tell if they're saying that silverlight is the best thing ever or if they're saying that silverlight is merely one tiny part of the future |
| 23:50 | <Dashiva> | Maybe it's SAT form. "Silverlight is to the future The Future as..." |
| 23:50 | <markp> | that's not the worst of it |
| 23:50 | <markp> | it's stuff like http://diveintomark.org/archives/2007/05/02/silly-season#comment-9310 that makes me realize how far away i am from most people |
| 23:51 | <Dashiva> | I recognize that comment, but I can't imagine how I managed to read through all the preceding ones without going mad |
| 23:53 | <markp> | it deteriorated rapidly after that |
| 23:54 | <markp> | as blogs are prone to do |
| 23:58 | <Dashiva> | I think the comment that blog comments have too low barrier of entry had something going for it |
| 23:59 | <Philip`> | Maybe that's why people started using CAPTCHAs like "7 - 2 = ?", to weed out the kind of people who leave comments at certain less-cultured sites |