| 00:10 | cardona507 | waves bye bye to the web sql database |
| 00:33 | <AryehGregor> | Ugh, Android-like security model for the web: http://blog.chromium.org/2010/11/app-permissions.html |
| 00:34 | <AryehGregor> | That's one of the lamest parts of Android, everyone winds up just giving everything full access to their phone. |
| 00:34 | <AryehGregor> | There has to be a saner way to do it than that. |
| 00:34 | <boogyman> | Stuxnet ftw :-s |
| 00:35 | <gsnedders> | AryehGregor: Give me full-access to your phone. |
| 00:36 | <AryehGregor> | gsnedders, by "everyone" I meant "normal people", not "me". |
| 00:37 | <AryehGregor> | At a minimum, users need to be able to deny requested permissions. |
| 00:38 | <AryehGregor> | If some random app claims to need geolocation for no plausible reason, I should be able to deny it. |
| 00:38 | <AryehGregor> | But I don't even care about geolocation, I'm talking about random apps I've tried to install that say they want the rights to *make* *calls*. |
| 00:39 | <AryehGregor> | Like games and stuff. |
| 00:39 | <AryehGregor> | Everyone else just blindly installs all this stuff. |
| 01:54 | <Sonja> | any recommended <canvas> tutorials for drawing lines and shapes ? |
| 01:56 | <TabAtkins> | Sonja: Try http://diveintohtml5.org/canvas.html#divingin |
| 01:57 | <Sonja> | merci |
| 04:47 | <MikeSmith> | manogo |
| 06:19 | <MikeSmith> | hsivonen: I wanted to ask if you could please redeploy validator.nu today if you have time |
| 06:20 | <MikeSmith> | mainly to get the missing-but-required attributes checking live |
| 06:23 | <hsivonen> | MikeSmith: ok |
| 06:24 | <hsivonen> | I guess I should distupgrade my VMs while I'm at it |
| 06:24 | <MikeSmith> | hsivonen: by the way, I spent some time looking into what it would take to port the validator-nu branch changes back to trunk |
| 06:25 | <hsivonen> | MikeSmith: what's your conclusion? |
| 06:25 | <MikeSmith> | too much work :( |
| 06:25 | <hsivonen> | :-( |
| 06:25 | <MikeSmith> | plus, the required-but-missing attributes reporting in the trunk is near worthless |
| 06:27 | <hsivonen> | even more :-( |
| 06:30 | <MikeSmith> | hsivonen: take a look at https://gist.github.com/706192 |
| 06:30 | <MikeSmith> | what the trunk seems to do is just list out all the allowed attributes |
| 06:31 | <hsivonen> | MikeSmith: wow. that sucks |
| 06:31 | <MikeSmith> | yeah |
| 06:38 | <Sirisian> | Anyone here much about WebSockets in relation to binary data/ArrayBuffer stuffs? |
| 06:39 | <Sirisian> | hear* |
| 06:40 | <zcorpan> | "Errors that result in disproportionally poor performance" in http://www.whatwg.org/specs/web-apps/current-work/complete/introduction.html#conformance-requirements-for-authors still bugs me; i'm totally unconvinced that the example results in disproportionally poor performance |
| 06:40 | <nessy> | Sirisian: other than base64 encoding it? ;-) |
| 06:41 | <Sirisian> | I'm using a 7 bit format |
| 06:42 | <Sirisian> | well that's the idea. I hoped that after all this time the binary format was defined, but when I checked I noticed no change. |
| 06:42 | <Sirisian> | Kind of curious why since ArrayBuffer exists. |
| 06:44 | <hsivonen> | zcorpan: that's not a great example |
| 06:49 | <Sirisian> | nessy, know if anyone has brought that up to Hixie yet? |
| 06:49 | <Sirisian> | I know he made a note in the spec about it |
| 06:49 | <nessy> | I'm sure it's on the roadmap, but maybe not in focus right now |
| 06:50 | <zcorpan> | hsivonen: can you think of a better example? |
| 06:51 | <hsivonen> | zcorpan: anything that reconstructs the active formatting elements a few times |
| 06:55 | <zcorpan> | <p><a><b><i><s><p>x<p>x<p>x |
| 06:58 | <zcorpan> | or maybe <p><a><b><i><s></p><p>x</p><p>x</p><p>x</p> to not make authors think that omitting </p> is what results in bad perf |
| 06:59 | <hsivonen> | I'm impressed that the W3C processes allowed the "Beware" note on http://www.w3.org/TR/webdatabase/ |
| 07:00 | <heycam> | that yellow dotted border is... unpleasant |
| 07:02 | <zcorpan> | the styling gives the expectation that the text is something like "FIRE!!!! GET OUT OF THE BUILDING!" |
| 07:03 | <hsivonen> | validator.nu is going to undergo a couple on distribution upgrades. expect downtime |
| 07:03 | <hsivonen> | zcorpan: isn't that the right expectation for an API that is backed by the implementation details on a particular piece of software that isn't designed with the Web platform stability in mind? |
| 07:07 | <zcorpan> | only if half of the relevant vendors refuse to implement it :) |
| 07:22 | <hsivonen> | oh. awesome. validator.nu broke itself during the distribution upgrade |
| 07:23 | <hsivonen> | I pointed the DNS for validator.nu to the VM that's serving html5.validator.nu |
| 07:37 | <slartsa> | I've never committed a dist upgrade on a server without something to back up with in case of emergency |
| 07:49 | <hsivonen> | slartsa: well, I have two VMs that can supply the validator services for either html5.validator.nu, validator.nu or both, but I don't have bugzilla.validator.nu and about.validator.nu replicated to two VMs |
| 07:49 | <hsivonen> | I do have a tarball with backups, though |
| 07:50 | <hsivonen> | It will take a while to figure out how to restore bugzilla.validator.nu and about.validator.nu |
| 07:50 | <hsivonen> | the basic problem is that I don't employ a sysadmin myself and I'm myself a software developer and not a sysadmin |
| 07:52 | <slartsa> | augh, hope you'll sort things out |
| 07:56 | <hsivonen> | MikeSmith: anyway, I believe html5.validator.nu has been redeployed, but it's currently CSS-naked |
| 07:56 | <MikeSmith> | ok |
| 07:56 | <MikeSmith> | thanks |
| 08:37 | <hsivonen> | my hosting provider told me they've heard from other customers that Ubuntu upgrades are broken |
| 08:38 | <hsivonen> | I expect to migrate to a fresh Lucid image today |
| 08:38 | <hsivonen> | (at this point, one probably should dump Ubuntu and move to CentOS, but I don't want to deal with multiple distros) |
| 08:54 | <asmodai> | cute http://www.20thingsilearned.com/ |
| 08:57 | <hsivonen> | I was too lazy to view source. what do they use to implement the page turn graphics? |
| 09:08 | <nessy> | hsivonen: CSS transitions - nicely done actually |
| 09:08 | <hsivonen> | nessy: interesting. I didn't know you could do that with CSS transitions |
| 09:13 | <paul_irish> | fairly sure its a pretty heavy use of canvas for the page turn. |
| 09:16 | hsivonen | wonders if the message of 20 things is that the Chrome Team views Web users as children, since the book is in a children's book format |
| 09:19 | <annevk> | "Tweets While High is now following you on Twitter!" |
| 09:20 | hsivonen | turned new follower notifications off long ago |
| 10:02 | <Rik`> | nessy: I also think it is canvas for the page turn |
| 10:03 | <Rik`> | hsivonen: the message of 20things is "we're teaching you the web while doing nasty browser sniffing" |
| 10:15 | <jgraham> | Google do love their browser sniffing |
| 10:35 | <Rik`> | I'm wondering if Google has heard of this thing called Modernizr |
| 10:36 | <Peter`> | its creator works for Google, so I'm pretty sure they do |
| 10:37 | <Rik`> | Peter`: that was ironic :) |
| 10:38 | <Peter`> | that'd make sense :p I shouldn't randomly switch to IRC while working |
| 10:51 | <zcorpan> | http://www.whatbrowser.org/ doesn't know about Minefield |
| 10:54 | <zcorpan> | also nice: "Try a new browser for your Mac: ... Internet Explorer" |
| 10:54 | <jgraham> | Or Opera 11 |
| 10:55 | <jgraham> | and yeah, it suggests I download IE on Linux |
| 10:55 | <jgraham> | (what is the point of this site?) |
| 10:55 | <annevk> | IE on Linux is great |
| 10:56 | <zcorpan> | hmm, now when i reload the page, the IE link is gone |
| 11:04 | <Rik`> | jgraham: provide information to Chrome marketing about how people choose a new browser |
| 11:10 | <zcorpan> | reading about browser cookies makes me need to eat a real cookie |
| 11:34 | <hsivonen> | whatbrowser.org can't recognize Opera Mini or Opera Mobile |
| 12:20 | jgraham | wishes javascript looked more like CoffeeScript without an intermediate compilation step |
| 13:37 | <annevk> | wait, so now using a tracker on someone's personal domain is considered acceptable? |
| 13:37 | <annevk> | (re IANA email) |
| 13:37 | <annevk> | funny how that works |
| 13:44 | <hsivonen> | annevk: which email? is this the case where the registry is at the IANA but the front end is on mnot's domain? |
| 13:45 | <hsivonen> | s/the front/a front/ |
| 13:45 | <annevk> | and the tracker |
| 13:45 | <annevk> | with issues and "reserved" items |
| 13:45 | <annevk> | not that it any way solves the single overview of all values potentially in use case discussed at TPAC |
| 13:45 | <annevk> | but Julian is still confused apparently |
| 14:13 | <annevk> | http://maplight.org/us-congress/bill/111-s-3804/874681/total-contributions o_O |
| 15:34 | <hsivonen> | so the previous host of all validator.nu stuff except html5.validator.nu is taking a long time to set up a new VM with the data of the old VM |
| 15:34 | <hsivonen> | in the mean time, I created a throw-away VM elsewhere and restored about.validator.nu onto it |
| 15:35 | <hsivonen> | so html5.validator.nu operation should return to normal (with styles and scripts) once DNS updates propagate |
| 15:37 | <hsivonen> | apparently, the right way to do things is to have some scripts for rsyncing a clone of the server to another VM. maybe I should have that |
| 15:38 | <hsivonen> | so one could create a new VM, rsync to it and throw the old VM away |
| 15:46 | <hsivonen> | also, I learned that it's slow to dig a few (<< 20 GB) out of the hosting provider's backup system |
| 16:45 | <smaug____> | annevk: what do you think about moving .classList to Web DOM Core? |
| 16:52 | <annevk> | smaug____, we had a plan to move classList, className, and id to DOM Core |
| 16:52 | <annevk> | smaug____, as well as getElementsByClassName |
| 16:52 | <smaug____> | ok, good |
| 16:52 | <smaug____> | hmm |
| 16:52 | <smaug____> | "had"? |
| 16:53 | <annevk> | smaug____, sorry, have |
| 16:53 | <smaug____> | good :) |
| 16:53 | <annevk> | smaug____, :) |
| 16:53 | annevk | will be back Monday evening |
| 17:42 | <TabAtkins> | Dammit, Firefox is broken on my system now. Wtf. From a fresh boot, I try to open it and immediately get the "Firefox is already running" message. |
| 17:42 | <TabAtkins> | This bothers me because making gradient diagrams is way easier in FF, since they actually implement the syntax. |
| 17:43 | <Ms2ger> | $ killall firefox-bin |
| 17:43 | <TabAtkins> | "firefox-bin: no process found" |
| 17:43 | <AryehGregor> | Do not try that if you're running Firefox on Solaris. :) |
| 17:44 | <AryehGregor> | $ ps aux | grep firefox |
| 17:44 | <Ms2ger> | I'm assuming Tab is sane |
| 17:44 | <AryehGregor> | Be careful what you assume. |
| 17:44 | <AryehGregor> | Especially in this channel. |
| 17:44 | <Ms2ger> | Well, sane enough not to use solaris |
| 17:44 | <AryehGregor> | I mean, maybe he was just heeding the topic. |
| 17:44 | <TabAtkins> | I have no idea what the implications of anything on Solaris are, as I've never run it. |
| 17:45 | <AryehGregor> | "killall" on Solaris means "kill all processes". |
| 17:45 | <AryehGregor> | On Linux it means "kill all processes with the given name". |
| 17:45 | <AryehGregor> | Hilarity ensues. |
| 17:45 | <TabAtkins> | AryehGregor: 107020 4729 0.0 0.0 6468 892 pts/3 S+ 09:50 0:00 grep firefox |
| 17:45 | <TabAtkins> | So... nothing. |
| 17:45 | AryehGregor | wouldn't know this stuff, but the Wikimedia toolserver runs almost all Solaris because River Tarnell likes Solaris, and I'm a toolserver root |
| 17:46 | <AryehGregor> | TabAtkins, so it must be checking for a lock file or something, right? Try "strace firefox 2>&1 | grep 'open('" and see what files it's trying to open. |
| 17:46 | <AryehGregor> | (Or you could, like, ask one of the several Mozilla developers here instead of listening to me, but then I'd have nothing to say) |
| 17:47 | <TabAtkins> | The only thing that seems useful is the very last call, where it does 'open("/usr/lib/firefox-3.6.12/firefox", O_RDONLY) = 3 |
| 17:48 | <AryehGregor> | Surely the lock file (or whatever) is per-user, so /usr/lib seems unlikely. |
| 17:48 | <AryehGregor> | Also, what kind of weird distro are you using that puts stuff in /usr/lib/firefox-3.6.12? |
| 17:48 | <TabAtkins> | Goobuntu default. |
| 17:48 | <AryehGregor> | Oh, looks like Ubuntu does that too. |
| 17:49 | <AryehGregor> | I wonder why it's not just /usr/lib/firefox/. |
| 17:49 | <AryehGregor> | Anyway, I'm using the Firefox 4 beta instead. It's much nicer, maybe you should just switch to that. |
| 17:49 | <TabAtkins> | I should. |
| 17:49 | <AryehGregor> | (although maybe you'll get the same error) |
| 17:49 | TabAtkins | goes to do that. |
| 17:51 | <TabAtkins> | Dammit, same problem. |
| 17:51 | <romeo_> | rm ~/.mozilla/firefox/********.Default/lock or something like that |
| 17:51 | <AryehGregor> | It's got to be something in your profile. |
| 17:51 | <AryehGregor> | Why doesn't Firefox check whether anything else actually has the lock file open, and ignore it if not? Or something like that? |
| 17:52 | <AryehGregor> | Silly Firefox. |
| 17:52 | <AryehGregor> | (presumably it does and this is something more subtle) |
| 17:52 | <TabAtkins> | romeo_: Killed the lock, tried again, no go. |
| 17:52 | <romeo_> | I haven't had lock file problems for years. Used to be a common issue with netscape |
| 17:52 | <AryehGregor> | Nuke it from orbit. It's the only way to be sure. |
| 17:53 | <TabAtkins> | For real. |
| 17:53 | TabAtkins | FIRES ZE MISSILES. |
| 17:54 | <TabAtkins> | Ah, hrm. An attempt to rm -rf the .mozilla folder is dying with two files that can't be removed because "Device or resource busy". |
| 17:55 | <AryehGregor> | . . . |
| 17:55 | <AryehGregor> | What does that even mean on Unix? |
| 17:55 | <TabAtkins> | I don't know. |
| 17:55 | <AryehGregor> | Also, you could have just moved it to .mozilla-old. |
| 17:55 | <TabAtkins> | Bah. |
| 17:55 | <TabAtkins> | Too late now! |
| 17:56 | <Philip`> | You probably need "strace -f", since firefox is just a wrapper script |
| 17:56 | <AryehGregor> | Interesting observation. |
| 17:56 | <charlvn> | i think the binary is called firefox-bin |
| 17:57 | <AryehGregor> | Well, I knew that, but I didn't know how strace worked. |
| 17:57 | <AryehGregor> | I just blindly run it on random commands without actually understanding what I'm doing. |
| 17:57 | <AryehGregor> | It's fun! |
| 17:57 | <TabAtkins> | Um. Firefox works now? |
| 17:57 | <TabAtkins> | The beta, at least. |
| 17:57 | <TabAtkins> | ...huh |
| 17:57 | <AryehGregor> | (like, I have no idea if grepping for "open" made any sense here, maybe it would be getting file descriptors through some other syscall, I dunno) |
| 17:58 | <TabAtkins> | Anyway, I apparently killed *something* useful, because I'm no longer being blocked. Yay! |
| 17:59 | <Philip`> | lsof is useful if you want to see what's got a particular file open/locked/etc |
| 17:59 | <TabAtkins> | No clue where this thing is trying to store my profile now, though. |
| 18:00 | <AryehGregor> | It didn't recreate the directory? |
| 18:01 | <TabAtkins> | Oh, there it is got it. |
| 18:05 | <TabAtkins> | Thanks, everyone. High fives all around. |
| 18:06 | <AryehGregor> | Thanks for helping you decide to fix a Firefox problem by just deleting your .mozilla directory since none of us had any idea what was causing the problem, and none of us actually directly suggested the solution of deleting the directory anyway? |
| 18:07 | <AryehGregor> | Well, you're welcome, then. |
| 18:07 | <TabAtkins> | Dude, you said "nuke it from orbit". I don't know how to interpret that other than "rm -rf the fucker". |
| 18:09 | <AryehGregor> | Well, yeah, I guess so. |
| 18:09 | <AryehGregor> | I wasn't really serious, though. |
| 18:11 | <TabAtkins> | Ah well, I was certain I could repair the damage if I did something wrong, so I rolled with it. |
| 18:19 | <charlvn> | you know you're speaking to geeks when they do a full post mortem of getting firefox to work again :P |
| 18:43 | <TabAtkins> | Ah, abusing gradients to make diagonal lines for my diagram is fun. |
| 18:43 | <TabAtkins> | Screw SVG. ^_^ |
| 18:44 | <shepazu> | TabAtkins: same to you and more of it :) |
| 18:44 | <TabAtkins> | It's SVG's fault for being an XML language. |
| 18:48 | <TabAtkins> | shepazu: Do you have "SVG" in your nicknames file or something? |
| 18:49 | <shepazu> | TabAtkins: colloquy lets you set up alert rules |
| 18:50 | <TabAtkins> | Yeah, that's what I was wondering. You seem to show up magically when SVG is mentioned. |
| 18:50 | <Ms2ger> | "We are about to start implementing stream.record() and StreamRecorder." |
| 18:50 | <shepazu> | did someone mention SVG? |
| 18:50 | <Ms2ger> | Fun |
| 18:51 | <TabAtkins> | shepazu: I did? |
| 18:52 | <shepazu> | ah, that explains it :P |
| 20:14 | <Ms2ger> | (FTR, yes, I'm male) |
| 20:17 | <TabAtkins> | Ms2ger: ?_? |
| 20:34 | <gsnedders> | Ms2ger: So we don't get to call you "it" anymore? Lame. |
| 20:35 | <Ms2ger> | :( |
| 20:37 | <Dashiva> | Note that he didn't specify he was human |
| 21:40 | <Sirisian> | Hixie, did you see my question yesterday? |
| 21:45 | <Hixie> | what was it? |
| 21:45 | <Sirisian> | I was wondering if you had found a nice solution for websocket binary data like using ArrayBuffer or something? I've been waiting for it. |
| 21:45 | <Hixie> | oh dunno, i don't really do websockets anymroe |
| 21:46 | <Sirisian> | oh! |
| 21:46 | <Sirisian> | Do you know who does? |
| 21:46 | <Hixie> | ian fette is the editor of the protocol spec |
| 21:46 | <Hixie> | once they've figured out what the protocol should be i'll update the api accordingly |
| 21:46 | <Sirisian> | Is he on IRC much? |
| 21:47 | <Hixie> | he might be in #chromium |
| 21:47 | <Hixie> | dunno |
| 21:51 | <TabAtkins> | He's not at his desk right now, so he may not be available today. |
| 21:51 | <Hixie> | basically from the week before thanksgiving until the second week of january, silicon valley goes on vacation |
| 21:51 | <Hixie> | so... yeah |
| 21:56 | <othermaciej> | the work on the protocol spec has not been making good progress lately |
| 22:02 | <Okee> | This channel post private information to the internet, including the source of the ISP connection. How do we get this info removed? |
| 22:02 | <aho> | huh? |
| 22:03 | <Hixie> | there is no way to have it removed |
| 22:03 | <aho> | i mean... this is IRC, right? :> |
| 22:06 | <heycam> | Okee, http://freenode.net/faq.shtml#cloaks if you don't want people to know where you're connecting from |
| 22:06 | <charlvn> | Okee: are you referring to Krijn's logs? |
| 22:06 | <heycam> | (that's specific to the Freenode network though, not just this channel) |
| 22:16 | <Sirisian> | TabAtkins, interesting. I'll come back in a few weeks then. |
| 22:29 | <Bugaroo> | Your link for cloaks is no good. |
| 22:30 | <Bugaroo> | The link says to ask ops to turn it on for us. |
| 22:31 | <Bugaroo> | The links says to just ask a network staffer to turn it on for us. So who is the network staffer? |
| 22:31 | <Hixie> | why would we want to turn it on? |
| 22:35 | <Bugaroo> | why not? |
| 22:35 | <Hixie> | because people tend to be more responsible when they're not anonymous |
| 22:35 | <Bugaroo> | People don't want their ISP broadcast in Google Search engine. I think this is a reasonable thing to ask for. |
| 22:36 | <TabAtkins> | Why not? IPs are public information. |
| 22:36 | <Bugaroo> | Tell that to all of the people who are victims of identity theft and hacked online bank account. Or worse yet, people contacted by government regulators. |
| 22:37 | <TabAtkins> | The former has nothing to do with IP addresses. The second does, but that's why you protect *yourself* with an anonymizing service, since otherwise everyone in the chain knows who you are. |
| 22:37 | <Hixie> | i don't understand the relationship between one's ISP being logged and the above situations. |
| 22:37 | <Bugaroo> | It depends. The manner that you are broadcasting information is not appropriate. The fact that you are this great guru, all ominipotent, who knows what is good for people, sounds a bit egocentric. |
| 22:37 | <Hixie> | o_O |
| 22:38 | <Bugaroo> | I want my credentials removed from Google. I haven't given you permissin to put them on there, and your privacy disclosure was a bit lacking as to the extent of your policies. |
| 22:38 | <Hixie> | credentials? |
| 22:38 | <TabAtkins> | Um, no. The fact is that I actually understand the security implications of the matter, and realize that cloaking your IP solely at the endpoint is a useless gesture. |
| 22:39 | <Hixie> | i don't understand. if you think "government regulators" are searching google to get your IP from IRC logs, what makes you think they might not also be running the Freenode IRC servers in the first place? |
| 22:39 | <TabAtkins> | If you want anonymity, that's your responsibility. It has to be done at the earlist possible point in the chain, or else the entire thing is futile. |
| 22:39 | <Bugaroo> | This is what I mean about the condescending nature of this channel. |
| 22:40 | <Bugaroo> | There was no disclosure in this channel that your ISP is going to be publicly uploaded to Google's index. |
| 22:41 | <TabAtkins> | That's because *the entire internet, and every router between you and freenode* notes and possibly records and broadcasts your IP address. |
| 22:41 | <TabAtkins> | Your IP address is publicly-available information, with no expectation of privacy. |
| 22:42 | <Hixie> | actually the fact that the channel is logged is listed in the channel topic, as per the Freenode policies, which you agreed to when you read the /motd message when you connected |
| 22:42 | <Hixie> | so you _were_ notified. |
| 22:42 | <privacy_violated> | Your decision to broadcast information from this channel is not support by many people. Your attitude is a bit conceited and fails to take into account the needs of others who use this channel. |
| 22:42 | <TabAtkins> | Sigh. /mute |
| 22:43 | <Hixie> | you misunderstand the nature of security and privacy on the internet. It is true that we are not very good about teaching security and privacy fundamentals on this channel, but that's not really what this channel is about. |
| 22:43 | <privacy_violated> | I am plan on filing a formal complaint with Freenode administrators. For reasons unknown, you are not taking this matter seriously. |
| 22:44 | <Craig`> | alright guys, where would you recommend me starting for canvas game devZ |
| 22:45 | <Hixie> | pv: ok, please let me know how that goes |
| 22:45 | <Hixie> | Craig`: what's your experience with programming so far? |
| 22:47 | <Craig`> | id class myself as decent, ive been learning js lately, know the syntax etc just i havent really had a project as such |
| 22:48 | gsnedders | wonders what to do as free programming project for uni (which must be in Python…) |
| 22:48 | gsnedders | wants to do something siny |
| 22:48 | <gsnedders> | *shiny |
| 22:49 | <Philip`> | gsnedders: A raytracer with chrome spheres? |
| 22:50 | <Hixie> | gsnedders: make anolis way faster? :-) |
| 22:50 | <Craig`> | Hixie, so basically i have programming experience just none whatsoever in game dev |
| 22:51 | <Hixie> | gsnedders: or make it do multispec cross-references, multipage splitting, and index generation :-) |
| 22:51 | <Hixie> | Craig`: ah, hm |
| 22:51 | <Hixie> | Craig`: i dunno then, i'm in pretty much the same boat :-) |
| 22:51 | <charlvn> | gsnedders: if you want to do something with the web and a python server, tornado is awesome for websockets |
| 22:52 | <Craig`> | i know js syntax, and html/css to a deep level |
| 22:52 | <Craig`> | gah im typing slow because of dvorak |
| 23:01 | <TabAtkins> | Craig`: Try out some simple games. Checkers, or even tic-tac-toe first. That should only take a few hours to get right, and will teach most of the fundamentals of game programming. |
| 23:01 | <TabAtkins> | Then do something more fun, like Worms. |
| 23:02 | TabAtkins | has a demo of a simple Worms-like game he livecoded as part of a talk on developing games with Canvas. |
| 23:03 | <Craig`> | thanks, its just im unsure if i'd be able to solely work out the game logic |
| 23:04 | <TabAtkins> | Right, so start with a super-trivial game like ttt so you can learn how turn flow, painting order, etc. works before saddling yourself with a more complicated project. |
| 23:04 | <Hixie> | tab's advice is good |
| 23:04 | <Hixie> | also, url to worms game?! |
| 23:05 | Philip` | notes that some people have been working on porting http://www.hedgewars.org/ (Worms clone) to JS |
| 23:07 | <TabAtkins> | Hixie: http://www.xanthir.com/blog/b48D1 |
| 23:08 | <TabAtkins> | It's very simply, and mainly intended as a didactic aid, not an actual game. |
| 23:08 | <Craig`> | thanks TabAtkins |
| 23:08 | <Hixie> | neat |
| 23:09 | <Hixie> | i like how you can keep firing while it's your turn :-P |
| 23:09 | <TabAtkins> | Like I said, simple and intended for didactic purposes only. ^_^ |
| 23:09 | <TabAtkins> | Otherwise known as "I coded the whole thing the morning of my talk" |
| 23:11 | <Hixie> | very neat |
| 23:11 | <TabAtkins> | I need to finish it out sometime and hand it over to the devrel team. |
| 23:12 | <Hixie> | i've been playing with doing a multiplayer dungeon crawl type game, but i have no experience doing realtime client/server gaming code so i got bogged down in trying to write that part of the code |
| 23:12 | <Hixie> | haven't worked on it in ages though |
| 23:12 | <Hixie> | maybe i'll work on it some next week |
| 23:15 | <Craig`> | i just never get around to programming things, heh |
| 23:29 | <aho> | js/canvas is very easy to use |
| 23:30 | <aho> | it's like any other 2d api... just a bit easier :> |
| 23:30 | <boogyman> | thanks for stating your opinion |
| 23:33 | <aho> | Craig`, got some simple code over here: http://kaioa.com/node/104 |
| 23:33 | <Craig`> | cheers |
| 23:33 | <aho> | and that simpleLoader thingy explained: http://www.reddit.com/r/javascript/comments/e5vhj/emulating_lossy_rgba_images_with_html5s_canvas/c15jr22 |
| 23:35 | <aho> | wondered if i should write some straightforward game tutorial |
| 23:35 | <Craig`> | i always have ideas just if after googling a bit and no luck i tend to just go on games or alike |
| 23:35 | <aho> | (simpler than pong) :> |
| 23:35 | <Craig`> | id like that |
| 23:36 | <Hixie> | there's a lot of tutorials for the simple stuff, and there's lots of books on the advanced stuff, but what i haven't found is tutorials introducing the middle ground stuff, like how to actually implement multiplayer real-time games in principle (handling lag and the like) |
| 23:36 | <aho> | but first i gotta write about this: http://kaioa.com/k/bugger/bugger.js |
| 23:36 | <aho> | because it's so f-ing silly :) |
| 23:36 | <heycam> | is there a list of split-out specs that have been published at the w3c that still exist in the whatwg full version? |
| 23:36 | <Hixie> | yeah, it's on the whatwg faq |
| 23:37 | <heycam> | ah http://wiki.whatwg.org/wiki/FAQ#What_are_the_various_versions_of_the_spec.3F thanks |
| 23:38 | <aho> | handling lag is a f-ing mess |
| 23:38 | <Craig`> | so yeah, is there a list or alike for games to try to implement starting from easy? heh. |
| 23:39 | <aho> | i can explain the concepts of a game called ping (first game i ever wrote)... it's the bare minimum... it's just enough to call it a game |
| 23:40 | <aho> | there are two lanes... and a paddle which can be either on the left lane or the right one. a ball drops randomly... and you gotta deflect it... you can switch the lanes by pressing a key |
| 23:40 | <aho> | over time it gets faster |
| 23:40 | <Craig`> | tbh after reading some tuts i think i could have a go at pong |
| 23:40 | <aho> | and you get more points |
| 23:40 | <aho> | :> |
| 23:41 | <aho> | shoot em ups (the simple kind that is) are also very easy to write |
| 23:42 | <Craig`> | im guessing that once youve got the basics they seem to become easier |
| 23:42 | <Hixie> | singleplayer (or locally multiplayer) pong and tic tac toe are both good starting games |
| 23:43 | <aho> | or apple chess |
| 23:43 | <Hixie> | i did rock paper scissors long ago :-) http://software.hixie.ch/fun/games/rps |
| 23:43 | <Hixie> | apparently the images for rock and paper have broken |
| 23:44 | <aho> | Adobe's license agreement for downloading Acrobat Reader is a PDF. Well done Adobe. Well done. - https://twitter.com/#!/robarnold/status/5753460003704833 |
| 23:44 | <aho> | haha |
| 23:44 | <Craig`> | heh cool Hixie |
| 23:44 | <Hixie> | here's my tic tac toe http://software.hixie.ch/fun/games/tic-tac-toe |
| 23:45 | <Hixie> | did most of those over christmas of 2000 iirc |
| 23:45 | <aho> | http://mbtic.com/ddd (still not finished) :f |
| 23:46 | <aho> | 100% pure backtracking :) |
| 23:46 | <aho> | i do like logic maze games though |
| 23:47 | <boogyman> | Hixie: ttt fail :P |
| 23:48 | <Craig`> | aho, i like that; you make it? |
| 23:48 | <aho> | ye |
| 23:48 | <Craig`> | very nice |
| 23:48 | <aho> | ~3kb js + ~83kb blob file |
| 23:49 | <aho> | <4kb for the page :) |
| 23:49 | <Hixie> | aho: pretty neat |
| 23:49 | <Hixie> | and pretty pretty too :-) |
| 23:49 | <Craig`> | im interested in webgl but im wanting to play around with canvas first |
| 23:49 | <aho> | :)~ |
| 23:50 | <Hixie> | boogyman: how is it fail? |
| 23:51 | <Philip`> | Hixie: RTS-style multiplayer, or FPS-style multiplayer, or something else? |
| 23:51 | <Hixie> | Philip`: not sure what difference it makes in this context, can you elaborate? |
| 23:51 | <aho> | http://kaioa.com/k/rm2.avi <- also need to port that one over :) |
| 23:51 | <boogyman> | if the "computer" goes first and game ends on a draw, the last piece isn't placed prior to the "It's a draw" message being shown |
| 23:51 | <aho> | would be perfect as small n silly web game |
| 23:52 | <Hixie> | boogyman: it says "it's a draw" as soon as the game is a draw |
| 23:53 | <Hixie> | boogyman: which can be before all the pieces are placed |
| 23:53 | <boogyman> | Then it fails on the draw logic |
| 23:53 | <TabAtkins> | Hixie: ttt is solved. You should just say "It's a draw" immediately. ^_^ |
| 23:53 | <Philip`> | Hixie: RTS usually has a lot more objects moving around the world, and usually allows more latency - you can press a key and then your input gets shared across the network and then executed simultaneously by every player perhaps 300ms later, and nobody notices the delay |
| 23:53 | <Craig`> | aho, thats brilliant! |
| 23:54 | <aho> | :) |
| 23:54 | <Hixie> | TabAtkins: it's not a draw if you play poorly :-) |
| 23:54 | <Craig`> | id love to be able to make things like that D: |
| 23:54 | <Hixie> | Philip`: i guess FPS, then, though it's actually a 2d over-the-top rendering in the current implementation |
| 23:54 | <Philip`> | Hixie: FPS requires much more responsive input, so usually it does some approximate client-side prediction and then tries to catch up with the server to stay in sync |
| 23:55 | <Hixie> | Philip`: imagine multiplayer pacman, where the position of the ghosts can't be 300ms behind |
| 23:55 | <boogyman> | Hixie: A draw can be already determined with 2 pieces yet to play |
| 23:55 | <Hixie> | Philip`: diablo 2 might be another good analogue |
| 23:56 | <Hixie> | boogyman: yeah i think it's only testing it on the computer's turn |
| 23:56 | <TabAtkins> | Hixie: Luckily for things like Pacman, you can do prediction pretty easily. |
| 23:56 | <Hixie> | TabAtkins: yeah, but it'd still be nice to have a tutorial somewhere that walked someone through this. It's not a hard problem, it's just something for which I've never seen good beginner tutorials. |
| 23:57 | <Hixie> | boogyman: specifically iirc what happens is that if the computer determines it can't either win or lose, it just says "it's a draw" instead of picking a move at random |
| 23:57 | <boogyman> | Yeah, I understand the logic :P |
| 23:57 | <Hixie> | well it's not a fail :-P |
| 23:57 | <TabAtkins> | Hixie: I guess I'll write on, then? |
| 23:57 | <Hixie> | TabAtkins: that'd be awesome :-) |
| 23:58 | TabAtkins | has too many projects he wants to do this weekend since he has the whole thing to himself. |
| 23:58 | TabAtkins | will probably end up doing none of them and just playing video games instead. |
| 23:58 | <Philip`> | Hixie: Okay, that sounds closer to the FPS style since you want to respond to player inputs faster than the network latency |
| 23:58 | <boogyman> | It's a half fail, because you stated as soon as the game is a draw, well it's a draw when neither player can win, not only if the computer cannot win |
| 23:59 | <Craig`> | brb moving from desktop to laptop |
| 23:59 | TabAtkins | forgot that his wife is now involved in the story of Brutal Legend, and so he probably can't play it this weekend without her. |
| 23:59 | <Hixie> | Philip`: yeah |
| 23:59 | <Dashiva> | Story |
| 23:59 | <Dashiva> | That's also a word to use to describe it |
| 23:59 | <Hixie> | boogyman: it's just attempting to act like a human -- i generally when playing would not say "it's a draw" after i played, only before i played. |
| 23:59 | <Philip`> | Hixie: If it was the other thing then I would have pointed at http://www.gamasutra.com/view/feature/3094/1500_archers_on_a_288_network_.php?print=1 as a useful article, but it's probably entirely irrelevant here |