[00:00] sanderjd has left the channel [00:11] k23z__: mikeal: what library is that ? [00:12] mde: I'm going to guess OAuth. :) [00:17] mikeal: node-oath [00:18] mde: Bingo! [00:18] saikat has joined the channel [00:30] zaach has joined the channel [00:34] bpot has joined the channel [00:36] zaach has joined the channel [00:39] cloudhead: micheil: you there? [00:40] o_o has joined the channel [00:42] jxson_ has joined the channel [00:43] jxson_ has joined the channel [00:43] ryah: oh man, reading the commonjs packages thread [00:43] ryah: scary [00:44] ryah: happy not to be involved [00:49] mikeal: i'm a little annoyed with that thread [00:49] mikeal: the spec is actually damn near done [00:49] mikeal: but people keep trying to either make it infinitely more complicated or rewrite it entirely [00:52] ryah: "lib" dir [00:52] ryah: seriously? [00:53] ryah: i think something simple could be done almost immediately [00:53] BrianTheCoder has joined the channel [00:53] ryah: { author: "Ryan Dahl", main: "src/postgres.js" } [00:54] ryah: i think that's all that needs to be done for level-0 [01:00] mikeal: why author :) [01:01] mikeal: the work i did forever ago was to move the vast majority of the spec from the required section to the optional section [01:03] visnup has joined the channel [01:06] Yuffster has joined the channel [01:12] kersny has joined the channel [01:13] joshbuddy has joined the channel [01:13] mjr_ has joined the channel [01:14] kersny has joined the channel [01:14] CIA-76: node: 03Ryan Dahl 07master * r125b868 10/ (6 files in 2 dirs): Add message tests - http://bit.ly/9nNPgr [01:15] kersny has left the channel [01:15] ryah: ^-- cool tests [01:15] ryah: instead of checking return value, it checks output [01:15] Tim_Smart: ryah: Does this load faster that the site from yesturday? http://timsmart.xen.prgmr.com:8000/ [01:16] ryah: i'm on my power connection nw [01:16] ryah: but yes [01:17] kersny has joined the channel [01:23] mjr_: Curse this intermittent Internet. [01:27] polotek has joined the channel [01:32] jxson has joined the channel [01:32] mitkok has joined the channel [01:35] cloudhead: how can I change the clientRequest timeout? [01:36] brainproxy: hmm, so I have a config file which I bring in with require at the top level of my app.js [01:36] brainproxy: like so [01:36] brainproxy: var myCfg = require('/path/to/config').configHash; [01:36] polotek: cloudhead: hmmm, haven't tried to do that yet [01:36] brainproxy: then I can get at the config has attribs at the top level [01:37] brainproxy: but what if I want to call on those same attribs within another script that I require from the top level [01:37] kodisha has joined the channel [01:37] jbrantly has joined the channel [01:37] keyvan has joined the channel [01:37] polotek: cloudhead: may not be supported on http.ClientRequest yet [01:37] cloudhead: polotek: hmm, do you know of a way to catch an error which wouldn't trigger the response event? [01:37] polotek: you can set it on the underlying stream I think [01:38] polotek: cloudhead: ? [01:38] polotek: brainproxy: just require it agian [01:38] cloudhead: polotek: I'm doing a request, but the server is crashing, and I want to detect that on the client-side [01:38] polotek: modules are cached so it won't run the code again [01:38] cloudhead: either from a timeout, or some other sort of event [01:38] polotek: you'll get the exact same object [01:38] cloudhead: right now, the connection just hangs [01:39] polotek: and you don't an "error" event at all? [01:39] polotek: cloudhead: ah now I get it [01:39] polotek: that's why you need timeout [01:41] cloudhead: polotek: yea [01:41] cloudhead: the error event doesn't seem to trigger [01:42] polotek: with ServerRequest you can get the underlying socket with req.connection [01:42] polotek: haven't tried it with clientreq [01:42] cloudhead: hmmm [01:43] cloudhead: request.connection works [01:43] cloudhead: but [01:44] cloudhead: I don't see a timeout key [01:48] kevm has joined the channel [01:48] polotek: cloudhead: it works [01:48] polotek: req.connection.setTimeout(1); [01:48] cloudhead: ahh it's a function [01:48] polotek: req.connection.addListener('timeout', function... [01:48] cloudhead: lemme try that [01:49] polotek: also it seems like you still get the "response" event from the clientRequest object [01:49] polotek: although I'm not sure what state it's in after a socket timeout [01:49] cloudhead: hmmmm weird [01:49] cloudhead: I must be having a different problem [01:50] kersny has joined the channel [01:58] [[zz]] has joined the channel [02:00] zaach has left the channel [02:01] kpx has joined the channel [02:03] kpx: Hi I was workin with Socket.IO chat example... Its was just not working the chat.html page in the browser says conecting.... BUt does nothing.... What could be wrong? [02:03] k23z__: has anyone ever wrote a game server in Node.js ? [02:04] kpx: k23z__: I believe there is asteroids in node js [02:04] kpx: massivly parallel asteroids [02:04] kpx: google it and see [02:04] kpx: i guess [02:04] aaronblohowiak has joined the channel [02:05] kpx: Any one for socket.IO? [02:06] aaronblohowiak: is there a good way to have the same templates used with javascript and ruby? [02:06] kpx: I placed some sys.puts code in the places where its accepting and sending messages but there is no o/p on the Command line? [02:07] kpx: I am fairly new to this.... [02:09] polotek: aaronblohowiak: haml? [02:09] Tim_Smart: Urgh I'm a noob. Has anyone here set up a domain name with prgmr.com ? [02:09] polotek: kpx: sorry, haven't used socket.io at all [02:10] kpx: There were quite a few people yesterday evening helping out.... [02:10] polotek: but send me your test code and I'll take a look [02:10] kpx: Its on Git hub [02:10] kpx: one sec [02:10] grantmichaels has joined the channel [02:11] kpx: http://github.com/LearnBoost/Socket.IO-node.git [02:11] kpx: polotek: http://github.com/LearnBoost/Socket.IO-node.git this I cloned [02:11] pgriess has joined the channel [02:12] kpx: do use --reciurse [02:12] kpx: do use --recuurse* [02:12] kpx: damn --recurse* [02:13] polotek: kpx: I mean I'll check out the test or demo code you are using [02:13] kpx: Hmm that only [02:13] kpx: its in the test directory [02:13] kpx: chat.html file [02:13] polotek: ah [02:13] kpx: there is a server.js in there that is to be started forst. [02:13] kpx: first* [02:18] kpx: polotek: the http server started does echo a response on the CLI but looks like the socket.io is not doing anything... [02:19] JimBastard_ has joined the channel [02:20] JimBastard_: ACTION burrrrp [02:21] polotek: kpx: what browser are you using? [02:21] kpx: chrome and FF [02:22] polotek: windows or mac? [02:22] kpx: Linux [02:22] kpx: Ubuntu [02:22] polotek: :) [02:22] saikat has joined the channel [02:22] kpx: Why do you ask me the browser? Some other people have asked that too? [02:23] kpx: why does that affect this app? [02:24] kpx: any ways for the onClientConnect() method of the server i put a simple sys.puts to see if it was picking up connected clients... [02:24] kpx: Zilch [02:24] kpx: Approx after line 45 in server.js [02:26] polotek: kpx: it's working just fine for me [02:26] polotek: chrome on the mac [02:27] kpx: Oh Ditto!!!!!!!! [02:27] kpx: Just got something [02:27] kpx: I replaced the server name with http://localhost [02:27] kpx: did you do the same? [02:27] kpx: ?? [02:27] polotek: kpx: what did you have before? [02:27] kpx: localhost [02:27] polotek: no, I always run a local webserver with a domain [02:27] kpx: ho http [02:29] polotek: reason people ask about browsers is because only the newest chrome and ff support websockets [02:29] polotek: it falls back to long-polling or some other methods in older browsers [02:29] kpx: polotek: tell me something this what is the advantage of this socket.IO in your opinion? [02:29] polotek: so depending on the browser there could be any of a number of things wrong [02:30] polotek: kpx: compared to what? traditional ajax? it's just better for real time [02:30] kpx: polotek: Oh ok [02:30] kpx: polotek: I actually wante to use it for multicasting [02:30] derferman has joined the channel [02:31] kpx: polotek: I believe a single instance of pure HTTP cant do t hat [02:31] kpx: polotek: As in when Written in nodeJs [02:32] polotek: kpx: don't know a lot about multicast [02:32] kpx: by multicasting i mean that respond only to selected clients not to everyone... [02:35] bradleymeck has joined the channel [02:36] wilmoore has joined the channel [02:39] ryah: damn, that test i just commited doesnt work.. [02:41] stevendavie has joined the channel [02:42] kodisha: just wanted to say that level of productivity when you write server side and client side in same language is amazing :) [02:43] kpx: So someone can explain to me the bigger picture here ... this Socket.IO is meant to be a websocket server? Which I hear is the latest "TCP for the Web"?? [02:45] Tim_Smart: Anyone here using prgmr.com on a domain? [02:47] bpot has joined the channel [02:48] k23z__: how do I use node-repl on a file.js ? [02:50] robrighter has joined the channel [02:51] micheil: cloudhead: now. [02:51] robrighter has left the channel [02:51] siculars has joined the channel [02:51] micheil: k23z__: using a synchronous require client side is a really bad idea, because you can't actually guarantee anything. [02:52] k23z__: ok [02:52] kersny: k23z_: like using it to acces your app? [02:52] k23z__: kersny: ya [02:52] kersny: var repl = require("repl"); [02:53] kersny: repl.start("node> "); to use stdin [02:53] kersny: but to actually access parts of the program you have to add them to the scope [02:54] micheil: cloudhead: you can get the underlying socket for anything that is a http or net request. [02:54] bmizerany has joined the channel [02:54] kersny: repl.start().scope.m = function(msg){sys.puts(msg)}; [02:54] kersny: then you can call m('hello') from the prompt [02:55] kersny: all the info: http://nodejs.org/api.html#repl-285 [02:57] polotek: anybody in here used the v8 profiler? [03:05] micheil: hmm.. [03:05] micheil: my websocket server may bite me in the arse if some does a draft76 handshake but the upgradeHead is detached.. [03:06] polotek: micheil: I hate it when that happens [03:06] JimBastard_: yo who knows about openAL and libao ? [03:06] JimBastard_: me and tmpvar are trying to figure out whats the easiest / best way to get audio [03:06] micheil: well, rather, the client would get in a broken state, wouldn't affect the server much [03:06] JimBastard_: ive got this JSONloops program its sick [03:06] JimBastard_: but i need a good audio pipe [03:06] JimBastard_: ryah you know anyone i can bug? [03:07] jah_ has joined the channel [03:07] polotek has left the channel [03:14] bradleymeck: i know open al, why [03:15] bradleymeck: programmer's guide is best way to tackle it still, sucks but tis true [03:17] keyvan has joined the channel [03:18] JimBastard_: hey bradleymeck [03:19] bradleymeck: mmm? [03:19] JimBastard_: so like, we just need a way to play a 24 bit wav file, with really low latency [03:19] JimBastard_: stereo* [03:19] JimBastard_: ive got http://github.com/Marak/JSONloops working, but its using afplay for its .play() [03:19] JimBastard_: and its sad [03:19] JimBastard_: but the sequencer is good to go [03:20] cloudhead: micheil: hey, wanted to ask you about something you said a couple days ago about mongoose [03:20] cloudhead: micheil: you said it couldn't do what it does and still be async [03:20] cloudhead: I was curious to know what you were refering to [03:20] bradleymeck: k, whats the question? [03:21] JimBastard_: bradleymeck: whats the easiest way / path of least resistance to get node playing audio files with open al, or something similiar [03:22] bradleymeck: alut + openal is pretty easy and cross platform, open up openal context -> open up default device -> make the buffers -> put buffers in sources -> add a listener -> play [03:23] bradleymeck: sadly no audio lib seems to want to make things easy, alut is considered deprecated as it did things that were easy to do (but quite repetitive) [03:23] JimBastard_: hrmmmm [03:24] JimBastard_: so like i could make this thing work in the browser with HTML5 audio [03:24] bradleymeck: html5 audio doesnt gen sounds :/ but you can pull down from server [03:25] JimBastard_: all i need for the first iteration is the ability to play 24bit stereo wav files with uber low latency [03:25] JimBastard_: html5 audio kinda sucks balls on latency [03:25] JimBastard_: if i could get a pipe out of node, i could do crazy amounts of sequencing and looping [03:25] JimBastard_: like javascript for audio sequencing is actually really bad ass [03:26] JimBastard_: ive got probably 300 or so original beats waiting to get sliced up as JSONloops too [03:26] JimBastard_: i do a bit of audio production [03:26] bradleymeck: ill try to rig up a simple thing over the weekend where you can throw it a stereo buffer [03:26] JimBastard_: dude that would be bad ass [03:27] bradleymeck: platform of choice? [03:27] JimBastard_: what would be easiest? i have a macbook over here [03:27] bradleymeck: ill try to not use alut then [03:27] JimBastard_: i think macbook would be best for proof of concept [03:27] bradleymeck: macs dont support alut is the thing lol [03:28] bradleymeck: so gotta write some junker code [03:29] jwm: linux ftw :) [03:29] bradleymeck: linux is deprecating it too T_T [03:32] JimBastard_: cross platform would be ideal [03:32] tmpvar has joined the channel [03:32] JimBastard_: but like, mac os and <1ms latency for a audio play would be amazing [03:32] JimBastard_: <20ms would still work [03:32] JimBastard_: as long as it didnt spike over 100ms [03:32] tmpvar: heh [03:33] JimBastard_: at +200ms you cant listen to the audio, its too fucked up [03:33] JimBastard_: 1/5 of a second off [03:33] jbrantly1 has joined the channel [03:33] steadicat has joined the channel [03:35] jakehow has joined the channel [03:35] jwm: why does audio have to be so much more complicated than video [03:36] ph^ has joined the channel [03:37] bradleymeck: cause by nature ppl care more about pretty pictures? [03:37] tmpvar: bradleymeck, what do you think about libao? [03:37] bradleymeck: never used [03:37] tmpvar: it looks pretty *simple* [03:37] tmpvar: but might be good for a first round [03:38] bradleymeck: i just like the support that openal has, its supported on almost everything [03:38] tmpvar: sure [03:39] softdrink has joined the channel [03:39] jwm: openal is better supported than opengl already? [03:39] jwm: hehe [03:40] JimBastard_: it looks like its building [03:40] JimBastard_: libao [03:41] JimBastard_: loaded as a module [03:41] shahbaz has joined the channel [03:42] kodisha: anyone have 2-3 minutes to check my node app? [03:43] kodisha: http://github.com/kodi/nodius [03:43] kodisha: checkout and run, and please tell me if do you see canvas charts auto updating in your browser [03:44] kodisha: ACTION is writing monitoring app [03:45] gerad has left the channel [03:45] JimBastard_: bradleymeck: http://github.com/tmpvar/node-libao [03:45] tmpvar: http://github.com/tmpvar/node-libao -- very first round [03:45] JimBastard_: ahaha [03:45] JimBastard_: pwnt [03:45] mscdex: ahhh, it's times like this i love node's speed and async [03:46] mscdex: watching tons of asterisk events fly by [03:46] mscdex: ;-) [03:46] tmpvar: nice [03:46] falconair: kodisha: "Error: Cannot find module 'lib/Request" [03:47] bradleymeck: cool, means less stuff on my plate, always good [03:47] joshbuddy has joined the channel [03:49] JimBastard_: fuck, updating repo [03:49] JimBastard_: ascii is almost done i might release him tonight [03:49] JimBastard_: asciimo* [03:49] JimBastard_: oops [03:50] chrischris has joined the channel [03:52] Tim_Smart has joined the channel [03:54] bradleymeck: does libao not support capture? [03:55] tmpvar: i dont think so [03:55] tmpvar: its pretty minimal [03:57] gbot2 has joined the channel [03:57] bradleymeck: awww, well some other time ill spend time on openal, but that should fit jim's needs for now [03:57] tmpvar: well [03:57] tmpvar: even if we get openal.. we still need a way to load sounds heh [03:58] bradleymeck: well we can fill buffers and pass em around [03:58] tmpvar: yeah, but then you have to convert them [03:58] JimBastard_: i hear sounds coming from tmpvar's machine ahh [03:59] tmpvar: libao gives you a bunch of that for free [04:00] bradleymeck: true, would have to make file support for a bunch of stuff but there are things already built to make raw buffers. The gains from openal for my interest are mainly for recording [04:01] tmpvar: maybe im mistaken [04:01] tmpvar: ah [04:01] tmpvar: alut is supposed to be *decent* [04:01] bradleymeck: it is decent, but macs no longer support it :/ [04:02] bradleymeck: and linux is also deprecating it [04:03] tmpvar: fail [04:04] tmpvar: i thought openal was the way to go.. i guess it is for playback/recording.. not file formats [04:05] bradleymeck: yub meant for raw audio, king of that, fails at anything not raw :/ [04:06] jah_ has joined the channel [04:12] twomashi has joined the channel [04:13] mscdex: i think my Asterisk instance got tired of me debugging my node script lol [04:21] JimBastard_: i am asciimo [04:22] nsm has joined the channel [04:22] mscdex: zztmmo! [04:23] bradleymeck: ...? [04:23] JimBastard_: hee hee yeah i just updated zztmmo [04:23] JimBastard_: for new node [04:23] JimBastard_: we updated nodejitsu [04:25] mscdex: yes but any actual new progress on zztmo? [04:25] mscdex: :\ [04:25] JimBastard_: naah, that project has low priority [04:25] mscdex: psh [04:26] JimBastard_: nefD and ryan[WIN] are the major contributors [04:26] JimBastard_: once i got nodejitsu live ill have some more time to work on showcase apps though [04:26] mscdex: Tim Sweeney is going to come after you with a comment like that [04:26] JimBastard_: bring it [04:26] bmizerany: how is the attitude towards waf around here? [04:26] JimBastard_: ACTION knows javascript-fu [04:26] JimBastard_: i like waffles [04:26] mscdex: i don't particularly care for waf [04:27] mscdex: but it has some nice things [04:28] bmizerany: yeah. I'm having a hell of a time getting it to do what I want. [04:28] mscdex: what's that? [04:29] bmizerany: run a .rl through ragel before compiling the binding.cc [04:29] mscdex: ACTION googles ragel [04:29] bmizerany: mscdex: state machine generator. the command I need is `ragel -G2 -o proto.cc proto.rl` [04:30] mscdex: oh [04:30] bmizerany: but I have a few .rl files. I want to find the trick to just say %.rl like in Make [04:30] mscdex: maybe use a glob in python [04:31] mscdex: then loop [04:31] bmizerany: mscdex: ug. there is no nicer way in waf? [04:31] mscdex: i dunno [04:31] bmizerany: hrm [04:31] mscdex: i'm not a python expert [04:31] bmizerany: mscdex: I mean.. really? http://freehackers.org/~tnagy/wafbook/index.html#_a_compiler_producing_source_files_with_names_unknown_in_advance [04:31] mscdex: i've used it once (besides waf) for educational purposes and that's about it [04:32] mscdex: yeah heh many times i'd rather just have a Makefile [04:33] bmizerany: mscdex: they talk about how make is flawed, then say that is how to handle a very common scenario. pffft. [04:33] mscdex: that's how to handle it in waf anyway ;-) [04:33] bmizerany: unfortuantly, all the meat of building a node-addon is in waf [04:37] grantmichaels has joined the channel [04:44] keyvan has joined the channel [04:45] bradleymeck: i think the word pythonic should be outlawed, hear it too much, and will bring it up every time i see python [04:47] ajpiano has joined the channel [04:49] Tim_Smart: Can someone ping fostle.com and tell what ip they get? [04:53] Aria has joined the channel [04:54] JimBastard_: i know python [04:54] JimBastard_: hissssssssssssss hissssssss [04:55] Tim_Smart: I made a gtk gui in python. python is kinda nice [04:57] mscdex: meh [05:02] wilmoore_ has joined the channel [05:03] tmpvar: gtk, meh [05:03] tmpvar: python, meh [05:09] visnup has joined the channel [05:16] micheil: cloudhead: I was referring to the use of promises, which aren't truly async. [05:16] tmpvar: huh? [05:17] cloudhead: micheil: you're saying promises aren't async, or the kind mongoose uses? [05:17] micheil: or, atleast, to make an async module act synchronously, you're adding in a lot of complexity [05:17] cloudhead: cause promises sure are async [05:17] micheil: it's like coroutines, from my perspective. [05:17] cloudhead: but it doesn't act synchronously [05:17] cloudhead: it takes a callback [05:17] micheil: okay, wrong module, I was meaning what mongoose does [05:18] cloudhead: that's what I said [05:18] micheil: it's using a lot of extra stuff to try and make it look sync, and remove a lot of callback nesting [05:18] cloudhead: isn't it just chained promises? [05:18] micheil: I don't think it is. [05:18] cloudhead: hmm [05:18] cloudhead: cause they have a QueryPromise object [05:19] cloudhead: I don't see why it wouldn't be possible to do in an async way [05:19] cloudhead: just curious cause I might be implemented something like it [05:19] micheil: it seems sync, also the code complexity is heaps. [05:19] cloudhead: hmm [05:22] cloudhead: it seems like it just lazily builds the query [05:22] cloudhead: and on an 'action', like forEach or count, it dispatches the query [05:23] micheil: hm.. [05:25] kriskowal has joined the channel [05:26] Tim_Smart1 has joined the channel [05:27] o_o has joined the channel [05:27] micheil: cloudhead: put this way, anything that has to deal with a synchronous state in an async environment will have to be crazy [05:27] micheil: (read SMTP clients) [05:27] cloudhead: micheil: what is the synchronous state in the case of mongoose? [05:28] micheil: it's been a while since I've read the code, but the way things are being handled & returned, it happens synchronously. [05:28] cloudhead: hmm [05:29] micheil: I may not even know what I'm talking about though, I work with protocols. [05:30] cloudhead: hehe [05:30] cloudhead: well, looking at the API, I'm pretty sure it can be done asynchronously [05:30] cloudhead: whether mongoose does it properly or not that I don't know [05:30] cloudhead: but it looks like it does [05:31] cloudhead: for instance find() returns a QueryWriter instance, which just builds up a query [05:31] cloudhead: then you exec() [05:31] cloudhead: to send the db request [05:31] cloudhead: the only fishy thing are the queues [05:31] cloudhead: User.find({username: 'john'}).exec().all(fn) [05:31] cloudhead: this is fishy [05:31] tmpvar has joined the channel [05:32] cloudhead: but I think exec() just returns a promise here [05:32] cloudhead: "A promise is a special object that acts as a queue if MongoDB has not resulted the results, and executes the methods you call on it once the results are available." [05:33] micheil: yeah, it's really rather odd [05:33] cloudhead: so essentially if you do find().first().last().first(), you're chaining promises [05:33] cloudhead: they all return a promise [05:34] micheil: yeah, I'm not a fan of it myself. [05:34] micheil: personally I'll probably write a wrapper for mongo that allows me something similar to mongomapper [05:34] cloudhead: hmm [05:36] cloudhead: I think it's async though -- what's confusing is it'll queue up methods to be executed when the results are available [05:39] ryah: hi [05:39] micheil: hey [05:45] Tim_Smart: This is weird. One minute my domain has the right IP address, then all of a sudden it reverts to the old ip [05:46] dabreaka has joined the channel [05:46] Aria: Mismatched primary and backup nameservers? [05:48] Tim_Smart: Not sure. All 4 name servers on the registrar are set to the right service [05:49] Aria: Yeah, but do they return the same data? [05:49] Tim_Smart: Uh, where do I check/ [05:49] Tim_Smart: I'm don't do this very often [05:50] Tim_Smart: *I [05:50] unomi has joined the channel [05:50] Aria: dig thedomain @thefirstnameserver, repeat @secondnameserver [05:52] Tim_Smart: Yup, they do [05:53] Tim_Smart: Maybe my ISP [05:53] Tim_Smart: has a weird DNS [05:54] Aria: If they mismatch, since those are direct queries, they don't involve your ISP's resolvers -- the data would be mismatched at the source. [05:54] Tim_Smart: Aria: What does http://fostle.com/ load for you? [05:54] joshbuddy has joined the channel [05:55] Aria: Google DNS gives servfail looking it up. So the HTTP connection fails. [05:55] Tim_Smart: It should resolve to 68.68.99.215 [05:55] Aria: Yeah. It doesn't resolve at all. [05:56] Aria: Querying directly, I get NOERROR -- otherwise known as "domain exists, but no record found" [05:56] mscdex: NOERROR sounds like success :P [05:57] Aria: Hehe. It does. And it is. "Yup. We successfully found nothing." [05:57] mscdex: ;-) [05:57] Tim_Smart: OK. Well I will wait for another hour or so, and see if was a case of jumping the gun [05:57] Tim_Smart: http://ping.eu/ping/ pings the right ip [05:57] Aria: Hehe. I'd carp now... DNS providers should stop enforcing slow updates. [05:57] mscdex: fostle.com works for me [05:58] Aria: Interesting. Regional-specific DNS? [05:58] mscdex: heh [05:59] mscdex: i'm using my automatic ISP-provided DNS servers [05:59] Tim_Smart: Same. And I'm still resolving to the old IP ( 38.110.198.36 ) [06:00] Aria: Hm. Qwest's return good data, Google's return none. [06:00] Aria: (205.171.2.65 vs 8.8.8.8 as resolvers) [06:01] Tim_Smart: Oh well, http://www.opendns.com/support/cache/ returns the proper IP [06:01] Tim_Smart: So I'm just going to wait for a bit [06:03] Aria: Cool. Weird problem, in that it varies so much [06:05] mscdex: yup [06:06] mscdex: that's the interwebz for you [06:06] micheil: Tim_Smart: if you're getting odd stuff from dns, try pointhq for managing it.. [06:06] micheil: I've used them for the past 6 months, and when it came time to move servers, I only had about 2 seconds downtime. [06:09] Tim_Smart: micheil: It doesn't seem to have anyway of managing CNAME and MX records though [06:09] Tim_Smart: atm I'm using dnsexit.com [06:09] micheil: Tim_Smart: it does. [06:09] micheil: Tim_Smart: at my domain name seller's site, it points to dns*.pointhq.com [06:09] Tim_Smart: nvm, I'm blind [06:10] micheil: then from there pointhq redirects cname, mx, txt, srv etc [06:13] mscdex: too bad everydns.com was bought out and you can't register for free anymore :-\ [06:15] mikeal has joined the channel [06:17] agnat has joined the channel [06:27] jstewart1 has joined the channel [06:30] qFox has joined the channel [06:33] Tim_Smart: micheil: OK I moved everything to pointhq [06:35] micheil: k [06:51] Tim_Smart has joined the channel [06:56] Tim_Smart has joined the channel [06:56] hdon has joined the channel [07:02] kriskowal_ has joined the channel [07:03] Tim_Smart1 has joined the channel [07:10] Tim_Smart1 has joined the channel [07:15] tmpvar has joined the channel [07:16] tmpvar has joined the channel [07:17] markwubben has joined the channel [07:18] dabreaka has joined the channel [07:20] Tim_Smart has joined the channel [07:22] Tim_Smart has joined the channel [07:23] jedschmidt has joined the channel [07:39] dabreaka_ has joined the channel [07:53] jetienne has joined the channel [07:56] Tim_Smart has joined the channel [07:57] jedschmidt has joined the channel [07:59] nsm has joined the channel [08:18] ithinkihaveacat has joined the channel [08:30] BrianTheCoder has joined the channel [08:32] zomgbie has joined the channel [08:42] mitkok has joined the channel [08:52] ithinkihaveacat has joined the channel [09:15] ewdafa has joined the channel [09:16] statim has joined the channel [09:20] micheil: JimBastard: do you have a library that can capture audio? [09:22] Tim_Smart: Would be cool to get some gstreamer bindings in the ecosystem [09:38] Tim_Smart has joined the channel [09:42] caolanm has joined the channel [09:48] nsm has joined the channel [09:51] hellp has joined the channel [10:13] agnat has joined the channel [10:14] agnat has joined the channel [10:16] teemow has joined the channel [10:32] markwubben has joined the channel [10:43] mitkok has joined the channel [10:49] k23z__: any possibility of putting a breakpoint on a particular line in a node.js script ? [10:49] k23z__: and then firing up the whole thing [10:49] therp has joined the channel [10:50] k23z__: so that it breaks when it reaches that [10:50] k23z__: I dunno how to do that, any ideas ? [10:50] Tim_Smart: while (true) {} hehe [10:50] therp: sorry folks for the noob question, but how do I set the body of an outgoing POST request in the context of http.createClient? [10:50] k23z__: while(true){//not false} [10:51] Tim_Smart: therp: request.write(body);? [10:52] therp: var client = http.createClient(...); request = client.request("POST",...); request.write("foo"); request.addListener(..) like that? [10:53] Tim_Smart: therp: http://nodejs.org/api.html#http-client-177 [10:53] Tim_Smart: http://nodejs.org/api.html#http-clientrequest-182 in particular [10:53] therp: ah! there is the "NOTE:" [10:53] therp: thanks [10:54] therp: .end() triggers all the actions [10:56] jetienne: anybody to fix the "onclick" in nodejs side bar ? clicking doesnt change the # in the url... while it should. [10:59] Tim_Smart has joined the channel [11:00] therp: Tim_Smart: thanks for the answer [11:02] therp: one more question :) .. is there a way to make http.createClient + requests synchronous? In this particular case I prefer no callbacks [11:02] therp: s/this/my/ [11:02] micheil has joined the channel [11:06] Tim_Smart has joined the channel [11:06] pandark_ has joined the channel [11:07] femto has joined the channel [11:08] Tim_Smart: therp: Nope, no sync version of http [11:08] therp: is there way to spinlock? [11:09] therp: +a [11:09] Tim_Smart: spinlock? [11:09] therp: asyncWithCallBack(...,function() { ...; releaseSpinlock.up() }); while(releaseSpinlock.wait()); [11:10] therp: or similar.. [11:10] therp: or will something panic if the request handler doesn't return for a "long" time [11:12] keeto has joined the channel [11:17] Tim_Smart: therp: I'm not really following you :/ [11:23] therp: Tim_Smart: that's the idea http://hpaste.org/fastcgi/hpaste.fcgi/view?id=26369#a26369 [11:23] therp: ugly [11:24] therp: sorry should have made that a bit more minial [11:25] Tim_Smart: therp: Just listen for the 'end' event on the response [11:26] therp: that would just give another listener .. you're missing the idea: to force http back to synchronous behaviour [11:27] Tim_Smart: I don't think that would be possible [11:29] Tim_Smart: therp: Whats the use case for sync http? [11:29] therp: Tim_Smart: I'm querying the API of facebook, for some session key exchange.. [11:30] therp: well, it's not particularly special.. [11:30] therp: however there is no reason to be async here.. [11:30] Tim_Smart: Except for blocking your entire event loop [11:31] therp: isn't nodejs multithreaded anyway? [11:31] Tim_Smart: nope [11:31] Tim_Smart: You code runs in a single thread [11:31] Tim_Smart: *Your [11:31] therp: uh. [11:31] therp: well then.. gotta be async [11:32] jetienne: in my opinion, async is good for perf, but sync is much more readable... so to write small scripts where perf is irrelant, this become quite a burden [11:32] jetienne: so to provide sync and async is good :) [11:32] jsilver has joined the channel [11:33] Tim_Smart: jetienne: It all depends on how you write the code [11:33] Tim_Smart: I use a parallel library I made, and my code is usually pretty light on nesting [11:34] jetienne: Tim_Smart: do a simple open/seek/read/close in async, and then do it in sync. i have hard time believing the async version will be even closer to sync version [11:34] jetienne: Tim_Smart: can you paste example of the result ? [11:34] jetienne: with your lib i mean [11:34] jetienne: maybe my style of coding is improper [11:35] Tim_Smart: Read 4 different files, then write to 4 different file or something? [11:35] Tim_Smart: I can make a quick example I guess [11:36] keyvan has joined the channel [11:43] jsilver: yo [11:43] jsilver: keyvan [11:44] keyvan: sup [11:44] jsilver: oh hey [11:44] jsilver: pass the fuck out? [11:44] keyvan: watching a vid [11:44] jsilver: i drank redbull [11:44] keyvan: lol [11:44] jsilver: lol [11:44] keyvan: word [11:44] jsilver: i will sleep soon [11:44] jsilver: but im chillin now [11:44] keyvan: cool [11:44] jsilver: lol [11:45] jsilver: #mindynamics is cool too [11:45] jsilver: if ya dont wanna spam here [11:45] keyvan: kk [11:45] jsilver: ;) [11:48] Tim_Smart: jetienne: In terms on LOC, you will never get shorter than sync code. Here is an async example using that lib: http://pastie.org/1011314 [11:49] Tim_Smart: *terms of [11:52] jetienne: Tim_Smart: clearly nicer than my code :) [11:53] jetienne: http://github.com/jeromeetienne/node-neoip/blob/master/tmp/oload_stress_test/ez_fileutils.js <- here is a open/seek/read/close i use [11:53] jetienne: this is why i need to put that in a "library", i cant spread this kind of thing everywhere [11:55] maushu has joined the channel [11:56] markwubben has joined the channel [11:56] Tim_Smart: jetienne: Parallel won't exactly fit that situation, but I might make a library that will [11:57] Tim_Smart: creationix also made a library called step [11:58] jetienne: Tim_Smart: nice :) [12:01] Tim_Smart1 has joined the channel [12:03] jsilver: hi [12:22] dabreaka has joined the channel [12:30] jsilver has joined the channel [12:35] keeto has joined the channel [12:37] jah_ has joined the channel [12:42] micheil has joined the channel [12:43] jetienne has joined the channel [12:56] Tim_Smart has joined the channel [13:02] sechrist_ has left the channel [13:07] javajunky has joined the channel [13:11] jakehow has joined the channel [13:11] jsilver has joined the channel [13:20] markwubben_ has joined the channel [13:31] mw has joined the channel [13:32] zomgbie has joined the channel [13:36] gwoo has joined the channel [13:37] pkrumins has joined the channel [13:40] caolanm has joined the channel [13:49] boaz has joined the channel [13:58] javajunky has joined the channel [14:09] bmizerany has joined the channel [14:12] magcius has joined the channel [14:13] bradleymeck has joined the channel [14:15] siculars has joined the channel [14:15] Tim_Smart: jetienne: http://github.com/Tim-Smart/node-parallel [14:16] k23z__: Tim_Smart: what's that ? [14:16] Tim_Smart: k23z__: Writing tasks that run stuff in parallel, or tasks similar to creationix's step [14:17] Tim_Smart: I'll update the test.js with more examples [14:22] caolanm: well, since we're pimping async modules ;) http://github.com/caolan/async [14:22] jetienne has joined the channel [14:22] caolanm: I think we must have one each by now, heh [14:31] Tim_Smart: Added more test cases :) [14:33] caolanm: Tim_Smart: looks interesting, its a little hard to tell what's going on from the tests though [14:33] caolanm: docs would be nice :D [14:33] Tim_Smart: Hehe. I'm bad at docs [14:35] caolanm: docs are hard work and boring [14:35] caolanm: but oh so useful [14:35] caolanm: heh [14:36] Tim_Smart: caolanm: A little out of date (new Parallel is now new Task, and does have Sequence), but http://gist.github.com/438828 [14:37] Tim_Smart: *doesn't [14:39] caolanm: Tim_Smart: yes, that's helpful :) [14:40] caolanm: cool :) [14:40] caolanm: dynamically adding tasks is neat [14:40] Tim_Smart: yeah, its more suited for create multiple complex tasks, then running them at a later date, or multiple times [14:40] Tim_Smart: *creating [14:46] Tim_Smart: Right, I'm off. 'night [14:46] caolanm: 'night [14:49] ajpiano has joined the channel [14:54] joshbuddy has joined the channel [14:57] boaz has joined the channel [14:59] markwubben has joined the channel [15:04] ajpi has joined the channel [15:07] CIA-77 has joined the channel [15:07] zomgbie has joined the channel [15:12] jah_ has joined the channel [15:17] kersny has joined the channel [15:41] dabreaka has joined the channel [15:54] kuya: node has nothing like __nosuchmethod__ on objects does it? [15:55] maushu has joined the channel [15:55] markwubben has joined the channel [15:59] markwubben has joined the channel [16:00] boaz has joined the channel [16:01] boaz has left the channel [16:04] steadicat has joined the channel [16:05] markwubben_ has joined the channel [16:08] micheil: kuya: nup, because v8 doesn't include it [16:08] micheil: kuya: and v8, despite having patches for it, won't include it until webkit's javascript core implements it [16:13] kuya: thanks micheil [16:13] micheil: no worries [16:13] micheil: feel free to patch JS Core so v8 can get it [16:18] zaach has joined the channel [16:20] kriskowal has joined the channel [16:27] kuya: ill wait :) [16:32] jak has joined the channel [16:33] cloudhead has joined the channel [16:34] derferman has joined the channel [16:34] softdrink has joined the channel [16:36] jedschmidt has joined the channel [16:36] dabreaka has joined the channel [16:37] bradleymeck has joined the channel [16:37] joshbuddy has joined the channel [16:38] jak: Hi, I got the geddy project from git, but when I run 'make install' I get the following output: [16:38] jak: Error: {"message":"Command failed: chown: invalid user: `undefined:undefined'\n","stack":"Error: Command failed: chown: invalid user: `undefined:undefined'\n\n at ChildProcess. (child_process:78:15)\n at ChildProcess.emit (events:32:26)\n at ChildProcess.onexit (child_process:128:12)\n at node.js:221:9","killed":false,"code":1,"signal":null} [16:38] jak: Anyone have any ideas? [16:43] ewdafa has joined the channel [16:43] Yuffster has joined the channel [16:49] steadicat has joined the channel [16:50] jak has joined the channel [16:50] mikeal: mde: ^^ [16:54] ctp has joined the channel [16:54] slaskis has joined the channel [16:57] keeto has joined the channel [17:03] markwubben has joined the channel [17:10] hdon has joined the channel [17:10] zomgbie has joined the channel [17:20] joshbuddy has joined the channel [17:22] sechrist has joined the channel [17:27] markwubben has joined the channel [17:37] bradleymeck has joined the channel [17:45] zaach has left the channel [17:49] mikeal has joined the channel [17:50] deanlandolt_home has joined the channel [17:56] sechrist_ has joined the channel [18:09] kriskowal has joined the channel [18:10] ddollar has joined the channel [18:13] sechrist has joined the channel [18:16] steadicat has joined the channel [18:16] softdrink has joined the channel [18:20] stagas has joined the channel [18:21] saikat has joined the channel [18:22] MaSch has joined the channel [18:22] MaSch: hi [18:22] BBB has joined the channel [18:23] mscdex: hola [18:24] zaach_ has joined the channel [18:25] [[zz]] has joined the channel [18:28] derferman has joined the channel [18:38] tmpvar has joined the channel [18:45] chrischris has joined the channel [18:46] stagas has joined the channel [18:51] jak: hello [18:53] jak: I got the geddy project from git, but when I run 'make install' I get the following output: [18:53] jak: Error: {"message":"Command failed: chown: invalid user: `undefined:undefined'\n","stack":"Error: Command failed: chown: invalid user: `undefined:undefined'\n\n at ChildProcess. (child_process:78:15)\n at ChildProcess.emit (events:32:26)\n at ChildProcess.onexit (child_process:128:12)\n at node.js:221:9","killed":false,"code":1,"signal":null} [18:53] jak: Anybody have any ideas? [18:54] pgriess has joined the channel [18:59] bradleymeck has joined the channel [19:03] femtoo has joined the channel [19:06] markwubben has joined the channel [19:07] visnup has joined the channel [19:07] sechrist: is there a way to get a variable between requires, like a global variable? [19:07] sechrist: without explicitly passing it [19:09] b_erb has joined the channel [19:09] tmpvar: jak, run sudo? [19:09] tmpvar: sechrist, global is global ;) [19:09] jak: @tmpvar yes running sudo [19:14] sechrist: tmpvar: i beg to differ [19:15] sechrist: if I define var blah and do requires [19:15] sechrist: blah is not accessible [19:15] sechrist: in the require'd code [19:15] tmpvar: global.blah [19:15] sechrist: oh oh lol [19:15] tmpvar: :P [19:15] tmpvar: jak, i'd try passing a user and group? [19:18] sechrist: tmpvar: if I have a uncaught exception handler how do I print out a stack trace? [19:19] caolanm: right, enough coding. pub! [19:20] jak: Getting the same thing running as root [19:24] tmpvar: sechrist, something like sys.puts(ex.stack)) [19:24] tmpvar: s/))/) [19:27] jak: tmpvar, can you expand on that (passing a user and group)? [19:29] JimBastard_ has joined the channel [19:29] JimBastard_: if i add "*js-fu.js" to my .gitignore file, will that ignore all files that end in "js-fu.js" ? [19:30] markwubben has joined the channel [19:35] jak: JimBastard_: yes [19:35] JimBastard_: thanks [19:35] JimBastard_: mscdex [19:35] JimBastard_: javascript-fu! [19:36] markwubben has joined the channel [19:39] jbrantly has joined the channel [19:42] JimBastard_: yo who the fuck maintains the brew repo for node [19:43] JimBastard_: im putting you on notice [19:43] JimBastard_: :p [19:43] JimBastard_: people always complain to me that the homebrew node package doesnt work or something [19:47] kkaefer has joined the channel [19:47] kkaefer: anyone familiar with haml.js? [19:47] kkaefer: I'm wondering what's wrong with this code: http://pastie.textmate.org/private/tbpkonrsc0gfq2kjavrfg [19:48] kkaefer: I'm getting "Unexpected token else" [19:49] JimBastard_: no idea kkaefer [19:49] kkaefer: doesn't happen if I leave out the "else" [19:49] kkaefer: hmm, weird [19:49] robrighter has joined the channel [19:50] jspiros has joined the channel [19:53] sechrist_ has joined the channel [19:57] JimBastard_: sup bradleymeck [19:57] jbrantly has joined the channel [19:57] bradleymeck: mmmm? nm, sick so just watching netflix [19:57] JimBastard_: ahahaha instant queue has the WORST movies EVER [19:57] JimBastard_: we watch it nonstop here on xbox and bigscreen [19:58] JimBastard_: pushed an update to JSONloops [19:58] JimBastard_: http://github.com/marak/JSONloops [19:58] JimBastard_: its a bit sorted out now, making it more a lib [19:58] JimBastard_: instead of just a proof of concept [19:58] JimBastard_: still trying to get that low latency play(mySound); going though [19:58] JimBastard_: :-( [20:04] femtooo has joined the channel [20:06] Aria has joined the channel [20:06] bmizerany has joined the channel [20:08] deanlandolt_home has joined the channel [20:10] bradleymeck: libao isnt hitting it? [20:17] JimBastard: http://www.nihilogic.dk/labs/jsascii/ [20:17] JimBastard: i dunno bradleymeck i have no grasp on making a c add on [20:17] JimBastard: it would take me months [20:18] JimBastard: and i kinda know cpp lol [20:25] markwubben_ has joined the channel [20:29] ncb000gt has joined the channel [20:35] mikeal has joined the channel [20:36] dabreaka has joined the channel [20:39] statim has left the channel [20:44] hellp has joined the channel [20:57] mikeal has joined the channel [21:03] bpot has joined the channel [21:10] jbrantly has joined the channel [21:12] joshbuddy has joined the channel [21:12] joshbuddy has joined the channel [21:14] skampler: if(cookies[request.headers.cookie] ..) [21:14] skampler: that was pretty easy :) [21:15] JimBastard_: nom nom nom [21:24] Validatorian has joined the channel [21:28] markwubben has joined the channel [21:36] rnewson has joined the channel [21:46] namelessjon: bradleymeck: Just wanted to thank you once again for your help yesterday. I now have a working implementation. :) [21:49] tmpvar: namelessjon, what are you working on? [21:50] namelessjon: tmpvar: Reimplementing the OpenRPG server in node.js. Mostly to figure out how to write servers in node. [21:51] tmpvar: ah, fun :) [21:51] JimBastard_: sup tmpvar [21:51] tmpvar: yo [21:51] JimBastard_: good morning [21:51] tmpvar: ive been lurking ;) [21:51] JimBastard_: ive been working [21:51] JimBastard_: maushu has been jerking [21:52] sechrist has joined the channel [21:53] maushu: wAT. [21:53] tmpvar: man, I'm really close to having something that I've been brain-cracking over for a while now [21:54] sechrist_ has joined the channel [21:54] namelessjon: tmpvar: Aside from all the xml, yeah, it has been interesting. [21:55] JimBastard_: sup maushu [21:56] bmizerany has joined the channel [21:56] maushu: jerking [21:56] JimBastard_: classy [22:03] steadicat has joined the channel [22:04] fizx has joined the channel [22:05] chrischris has joined the channel [22:07] bradleymeck: whats the idea your working on tmpvar [22:13] brianmario has joined the channel [22:24] stagas has joined the channel [22:24] kpx has joined the channel [22:27] bradleymeck has joined the channel [22:28] Tim_Smart has joined the channel [22:30] kpx: Hi I was here yesterday and asked about socketIO... I am unable to make the chat example at http://github.com/LearnBoost/Socket.IO-node/blob/master/test/chat.html I am running chrome on Ubuntu [22:30] kpx: There are no error in the JS debugger [22:40] JimBastard_: nice [22:40] JimBastard_: just deployed a nice site to nodejitsu [22:40] JimBastard_: a new one* [22:40] JimBastard_: should generate some traffic [22:40] JimBastard_: best domain name evar [22:41] jakehow has joined the channel [22:42] isaacs has joined the channel [22:47] ewdafa has joined the channel [22:54] aiskander has joined the channel [23:00] fizx has joined the channel [23:05] aho has joined the channel [23:09] ncb000gt: JimBastard_: I like that all it outputs is Marak. [23:09] ncb000gt: :) [23:10] JimBastard_: fuuuuuu [23:10] JimBastard_: what did you find ncb000gt [23:10] JimBastard_: i had to do something bad with a subdomain temporarily [23:11] ncb000gt: o.0 [23:11] ncb000gt: I found awesomeness [23:11] ncb000gt: and i'm not leaving! [23:11] JimBastard_: its not ready yet [23:11] ncb000gt: haha [23:11] ncb000gt: ok [23:11] JimBastard_: i still need more time [23:11] JimBastard_: one sec ill show you something [23:12] JimBastard_: http://i.imgur.com/hioYI.png [23:12] ncb000gt: hah, nice! [23:13] saikat has joined the channel [23:13] JimBastard_: okay resized http://i.imgur.com/CDKZc.png [23:13] JimBastard_: adding to readme [23:15] JimBastard_: i had to do some unholy things to get this to work non-insanely [23:15] JimBastard_: the codebase is still pretty fucked [23:15] JimBastard_: but i reduced the fuxorzedness by at least 3 or 4 factors [23:15] JimBastard_: -800 lines at last count [23:16] JimBastard_: it works off http://en.wikipedia.org/wiki/FIGlet fonts [23:16] JimBastard_: if anyone knows where to get a database of those let me know [23:16] JimBastard_: i have 311 atm [23:16] JimBastard_: would love more [23:17] jah_ has joined the channel [23:18] kriskowal has joined the channel [23:18] kersny has joined the channel [23:20] JimBastard_: kriskowal: do you know about http://en.wikipedia.org/wiki/FIGlet ? [23:24] kriskowal: JimBastard_, no hadn't seen it. neat. [23:24] JimBastard_: ive got the JS parser for FLF working in node and browser [23:24] JimBastard_: im close to releasing [23:24] JimBastard_: http://i.imgur.com/CDKZc.png [23:24] JimBastard_: just looking for more fonts [23:27] JimBastard_: lol [23:27] JimBastard_: dont troll ##linux [23:27] JimBastard_: not advised [23:34] fizx has joined the channel [23:42] tmpvar: ".break Sometimes you get stuck in a place you can't get out... This will get you out." -- hahah, really? [23:44] JimBastard_: tmpvar: this might help actually http://gist.github.com/443256 [23:44] JimBastard_: javascript has GOTO now! huzaah! [23:45] JimBastard_: just dont blog about it whatever you do [23:45] JimBastard_: dont let people find out [23:46] Tim_Smart: goto.. oh dear haha [23:46] JimBastard_: im tempted to join #javascript and troll with that [23:46] Tim_Smart: I updated * "node-parallel":http://github.com/Tim-Smart/node-parallel -- Create tasks in node.js that run in parallel, or sequences that run tasks one after another. [23:46] Tim_Smart: oops copy paste fail [23:47] JimBastard_: ACTION says this isnt twatter [23:47] tmpvar: twatter? [23:47] tmpvar: man, im exhausted [23:48] isaacs_ has joined the channel [23:49] JimBastard_: yo tmpvar join #javascript [23:49] JimBastard_: im all prepped up [23:49] tmpvar: nah, im trying to get vmwgfx working with egl [23:49] coderjones89: http://pastebin.com/40Gx4SbT [23:49] coderjones89: come on [23:49] coderjones89: okay well im doin git [23:49] coderjones89: brb [23:50] jstewart1 has joined the channel [23:53] coderjones89: I'm trying to get JavaScript to work for this project to parse this XML but I don't really think that the JavaScript language is makes any sense. The GOTO implementation in JavaScript is really weird. http://pastebin.com/40Gx4SbT [23:55] aho: just "continue" is enough... you don't need the label there [23:55] aho: first time i've seen continue with a label :> [23:55] aho: continue itself is sorta rare [23:56] coderjones89: AHAHAH [23:56] coderjones89: noo aho [23:57] aho: (break with a label isn't *that* uncommon though) [23:58] JimBastard_: AHAHAH [23:58] JimBastard_: pwnt #javascript [23:58] JimBastard_: ahahah [23:59] saikat has joined the channel [23:59] aho: ?:># [23:59] JimBastard_: i just trolled them really ahrd with that [23:59] JimBastard_: they got upset [23:59] JimBastard_: i kept asking why i couldnt continue to the PARSE_XML label [23:59] aho: heh