[00:00] AAA_awright: Aikar: ftw [00:01] AAA_awright: Well minus lyrics, I don't mind vocals but only simple stuff [00:01] AAA_awright: >:( [00:02] tpryme has joined the channel [00:02] eml-mobile has joined the channel [00:02] itissid: Lol no offence to aikar but i remembered http://xkcd.com/411/ [00:03] Aikar: yes techno is very much like that, but trance != techno ;) [00:03] Aikar: well not all of it [00:03] itissid: Hmm [00:03] Aikar: like the current song playong on VTrance? yeah [00:04] Aikar: but alot of my favorites are not like that [00:05] Aikar: i really prefer vocals, stuff like AVB In And Out of Love with Sharon Adel(sp?), ATC All Around the World, Andain - Beautiful Things [00:05] AAA_awright: Polar opposites. Techno sucks. Don't ever compare it to trance. [00:06] AAA_awright: Additional overgeneric statement. [00:06] Aikar: but AVB and Tiestos trance songs are so damn good you can deal w/o vocals on the non vocal ones ;) [00:06] Aikar: i hate i keep missing Tiesto when hes in the states :( [00:07] Aikar: he wont be back again for well over a year ; ; [00:08] langworthy has joined the channel [00:08] JimBastard: okay, wtf [00:08] JimBastard: twitter, wtf [00:09] losing has joined the channel [00:09] JimBastard: some spammer twitter network is promoting nodejitsu, wtf [00:09] JimBastard: ?!?!?! [00:09] JimBastard: http://twitter.com/#search?q=nodejitsu [00:09] JimBastard: i dont understand this [00:09] pdelgallego has joined the channel [00:10] Anti-X has joined the channel [00:10] lstrojny_ has joined the channel [00:11] ashleyde1 has joined the channel [00:12] cardona507 has joined the channel [00:12] lmorchard has joined the channel [00:13] jesusabdullah has joined the channel [00:13] jarfhy has joined the channel [00:17] prettyrobots has joined the channel [00:19] twoism has joined the channel [00:23] romanb has joined the channel [00:23] unomi has joined the channel [00:28] kawaz_work has joined the channel [00:28] rwaldron_ has joined the channel [00:28] mikew3c has joined the channel [00:30] eml-mobile has joined the channel [00:30] MattDiPasquale has joined the channel [00:30] dgathright has joined the channel [00:33] dguttman has joined the channel [00:36] ossareh has joined the channel [00:41] InsDel has joined the channel [00:41] davidc_ has joined the channel [00:41] jchris1 has joined the channel [00:43] eml-mobile has left the channel [00:43] jacobolus has joined the channel [00:45] mattly has joined the channel [00:47] jherdman has joined the channel [00:48] softdrink has joined the channel [00:51] jashkenas has joined the channel [00:56] abiraja has joined the channel [00:58] hornairs has joined the channel [00:59] bradleymeck1 has joined the channel [01:04] jakehow has joined the channel [01:04] derferman has joined the channel [01:05] prettyrobots has joined the channel [01:06] Booths has joined the channel [01:06] hoffa_ has joined the channel [01:07] unomi has joined the channel [01:08] googol has joined the channel [01:12] tekky has joined the channel [01:12] zhesto has joined the channel [01:13] webr3: https://github.com/webr3/xhr - new XMLHttpRequest lib for node if anybody needs one [01:17] cjmFloating has joined the channel [01:18] softdrink has joined the channel [01:21] mikeal has joined the channel [01:25] mbrochh has joined the channel [01:25] mbrochh has joined the channel [01:27] spetrea_ has joined the channel [01:28] matthewfl has joined the channel [01:33] deepthawtz has joined the channel [01:34] mikew3c_ has joined the channel [01:35] Ond has joined the channel [01:37] Yuffster has joined the channel [01:38] isaacs: npm v0.2.10!!! [01:38] isaacs: published finally!! [01:38] bradleymeck1: oh great googly moogly~ [01:41] rbranson: that thang is juicy [01:48] dguttman has joined the channel [01:48] jed___ has joined the channel [01:49] googol has joined the channel [01:49] joshskidmore has joined the channel [01:50] kenbolton has joined the channel [01:51] isaacs: rbranson: what's juicy? [01:54] jakehow has joined the channel [01:55] zomgbie has joined the channel [02:00] Akufen has joined the channel [02:00] Akufen has joined the channel [02:01] kenbolton has joined the channel [02:06] nooder has joined the channel [02:06] EyePulp has joined the channel [02:07] airhorns has joined the channel [02:13] saikat has joined the channel [02:18] Fenda has joined the channel [02:19] mattly has joined the channel [02:19] Fenda: morning. i'm trying to force flashsocket transport for io:socket, but my browser is still reverting to websocket. var io = io.listen(server, {transports: ['flashsocket']}); [02:22] softdrink has joined the channel [02:23] brianmario has joined the channel [02:23] MattDiPasquale has joined the channel [02:27] softdrink has joined the channel [02:31] maushu: Hmm, better to use non-REST json so that I can use websockets later for my webservice. [02:32] agnat_ has joined the channel [02:34] aconbere has joined the channel [02:34] JimBastard has joined the channel [02:35] JimBastard: lol, i found out the worst thing about node.js, my internet stalker [02:35] JimBastard: http://www.reddit.com/r/programming/comments/e9s19/the_worst_thing_about_nodejs_douchebaggery/ [02:36] joshskidmore has joined the channel [02:36] derferman has joined the channel [02:38] themiddleman has joined the channel [02:42] prettyrobots has joined the channel [02:57] nbqx has joined the channel [03:00] bartt has joined the channel [03:05] Athox has joined the channel [03:09] MikhX has joined the channel [03:11] isaacs has joined the channel [03:12] Arro has joined the channel [03:12] Arro: can anyone recommend a node.js testing framework? [03:13] Arro has left the channel [03:14] Arro has joined the channel [03:20] saikat has joined the channel [03:20] AAA_awright: Vows [03:21] guybrush: isaacs: didn't know that npm takes care of sha hashes now, nice - also didn't know that `npm version` talks to git [03:21] romanb has joined the channel [03:21] guybrush: sweet [03:22] mikew3c_ has joined the channel [03:23] guybrush: currently I am deploying nearly everything with git (and lots of submodules), I think about deploying with npm with node_modules [03:24] langworthy has joined the channel [03:27] yumike has joined the channel [03:32] wattz: evening [03:35] Ond: That's a guarantee. [03:36] elijah-mbp has joined the channel [03:37] paulwe has joined the channel [03:39] kenbolton has joined the channel [03:41] logger__ has joined the channel [03:42] mbrochh has joined the channel [03:43] logger__: Just saw this on Reddit. Kind of damning stuff [03:43] logger__: http://www.reddit.com/r/programming/comments/ebge2/code_thief_at_large_marak_squires_jimbastard/ [03:45] paulwe has joined the channel [03:47] gf3 has joined the channel [03:51] cheney has joined the channel [03:52] AAA_awright: Short of running off with the only CD containing it I don't think you can steal code (lol) [03:54] mw has joined the channel [03:54] dgathright has joined the channel [04:01] dgathright has joined the channel [04:01] noahcampbell has joined the channel [04:02] jchris1 has joined the channel [04:03] rcy has joined the channel [04:04] mattly has joined the channel [04:05] mikeal has joined the channel [04:07] wasabist has joined the channel [04:09] micheil_mbp has joined the channel [04:10] cjmFloating has joined the channel [04:11] evlapix has joined the channel [04:12] muk_mb: any of you worked with conditional GET? Connect seems to support it, but I'm not sure how to make use of it [04:12] isaacs: guybrush: those are *very* new features [04:12] evlapix: All of a sudden I start Socket.IO, and it goes crazy with Initializing "xhr-polling" messages. Without my client connecting! [04:13] wattz: interesting, Node basically handles the require method in pure js (close to it) [04:13] mikeal: i don't know of a commonjs implementation that isn't in pure js outside of the file reader code [04:14] wattz: yeah [04:14] wattz: well none listed [04:14] wattz: sometimes for fun, i enjoy reading code :P [04:15] masahiroh has joined the channel [04:15] evlapix: So, if i change the port number it doesn't wig out about xhr. [04:15] wattz: also wrapping with a function closure [04:15] evlapix: Maybe there's a roque client hitting 8080. [04:15] wattz: evlapix: are you on linux/mac/unix? [04:16] evlapix: wattz: OS X. [04:16] wattz: evlapix: ps aux, i bet your process never closed completely, or was completely closed down when you tried again [04:18] wattz: that was an awesome sentence [04:19] evlapix: wattz: Strange.. you must be right. There's no node processes running. When I revert back to 8080, all quiet. [04:19] wattz: yeah, i ran into that a bit [04:19] evlapix: wattz: I know I'm not crazy though.. I restarted that damn process a dozen times. [04:19] wattz: yeah [04:19] wattz: i did the same [04:20] evlapix: Well, knowing you're sane is comfort enough. Thanks. [04:20] wattz: haha [04:20] wattz: np [04:21] yumike has joined the channel [04:22] evlapix: wattz: I jumped the gun. It's my client. [04:22] wattz: ahh [04:22] mikeal: don't jump guns, you'll get shot! [04:24] evlapix: Restarting Chromium. I refuse to accept that I did anything to instigate this.. [04:24] trevoro has joined the channel [04:26] prettyrobots has joined the channel [04:26] softdrink has joined the channel [04:27] micheil: tim_smart: you about? [04:30] dguttman has joined the channel [04:31] prettyrobots has joined the channel [04:31] Aikar: rauchg_: you here? [04:32] rauchg_: Aikar: [04:32] isaacs: wattz, mikeal: well, it's only "pure js" if you ignore the custom compile method [04:32] Aikar: how come you need a client to do a broadcast to all connections in socket.io, the listener doesnt have one from what im reading on the docS? [04:32] isaacs: which could be simulated with eval, but not well [04:32] mikeal: forgot about that [04:33] Aikar: nvm i see it now [04:33] Aikar: i saw it say something bout a session id [04:33] Aikar: sorry for confusion [04:34] twoism has joined the channel [04:35] Aikar: rauchg_: well another question, is session ID's generated on time or anything in a way that running multiple socket.io servers for their not to be a conflict on session id on different processes? [04:36] rauchg_: Aikar: [04:36] rauchg_: that's changing soon [04:36] rauchg_: real soon [04:36] Aikar: the session id generation? [04:37] Aikar: cause im forking my http/websocket servers over multi process (and in future multi server) with the clients IP dictating which server to connect to, was just wondering if 2 diff users could end up with same session id [04:38] AcidicChip has joined the channel [04:43] meck has joined the channel [04:43] Aria has joined the channel [04:46] danielrmz has joined the channel [04:46] danielrmz has joined the channel [04:47] evlapix: Okay, I'm not sure what's going on here. I start Node with Socket.IO (everything except what's needed to run S.IO). I navigate to my client where everything else is commented out (minus S.IO sfuff). Immediately afterwards a stream of [Initializing client with transport "xhr-polling"] messages come flying in like they're on a while() loop. What the hell could this be? [04:47] ctp has joined the channel [04:47] evlapix: I'm using the Socket.IO cdn, stable. Should I have a reason to doubt that? [04:48] ethzer0 has joined the channel [04:50] ethzer0: Crypto question. [04:50] ethzer0: console.log(crypto.createHash('md5').update("test").digest('hex')); [04:50] ethzer0: why doesn't ^^^ produce the same output as `openssl md5 'test'` [04:51] ossareh has joined the channel [04:51] Aikar: > require('crypto').createHash('md5').update("test").digest('hex') [04:51] Aikar: '098f6bcd4621d373cade4e832627b4f6' [04:51] Aikar: php > echo md5('test'); [04:51] Aikar: 098f6bcd4621d373cade4e832627b4f6 [04:51] meck: echo -n test | openssl md5 [04:52] Aikar: looks like something is wrong with your openssl call i guess [04:52] meck: i'm guessing a newline? [04:52] meck: although your line doesn't work for me at all [04:52] meck: test: No such file or directory [04:52] ethzer0: thats what I was thinking, but it doesn't seem to be the case. [04:53] Aria: I get the same answer with openssl [04:53] ethzer0: ahhh nm [04:53] ethzer0: you are correct. [04:53] meck: do you have a file called test? [04:53] ethzer0: issue was I wasn't echo'ing with -n [04:53] ethzer0: no [04:53] Aikar: looks like open ssl expects a file not a string [04:53] Aria: Aha. Newline. [04:54] AcidicChip: How would I go about interacting with mySQL? [04:54] ethzer0: yep. *sigh* [04:54] meck: :) [04:54] ethzer0: thx :) [04:54] Aria: AcidicChip: There's several libraries that speak the protocol. [04:54] Aikar: AcidicChip: node api docs -> recommended modules, mysql is linked [04:54] meck: np [04:54] AcidicChip: thanks [04:56] davidthings has joined the channel [04:56] AcidicChip: found it, thanks again [04:58] dgathright has joined the channel [04:58] Aikar: so monday i had chinese.... my fortune cookie said "Take on a big project and doors will open for you".... Really creepy considering I just took on a big project in Node im hoping will be big and make me rich lol... [05:00] unomi: Those doors could be to the mental asylum, mind you. [05:00] evanmeagher has joined the channel [05:01] Aikar: :/ [05:01] AcidicChip: If I'm using cloud9, the mysql goes in the server/ext, right? (newbie alert) [05:02] ethzer0: A hilarious art project would be a JIT fortune cookie machine that based your fortune on what you ate. [05:02] ethzer0: "You really shouldn't have eaten the ribs" [05:03] Aria: ++ [05:03] zentoooo has joined the channel [05:03] Aria: Now I want to do that. [05:03] Aria: Especially since fortune cookies harden ~instantly, they're perfect for the job. [05:03] Aria: Soft while hot, and hard when cool. [05:04] kenbolton has joined the channel [05:05] davidthings has joined the channel [05:05] saikat has joined the channel [05:06] evlapix: Hey guys, heads up! The Socket.IO CDN is wonky right now. [05:06] wilmoore has joined the channel [05:07] evlapix: I couldn't connect to it. It also was spinning my client out of control with xhr-polling. [05:07] guybrush: anyone can tell me why it says undefined_method? when calling db.find()? https://gist.github.com/713794 [05:07] guybrush: db.clear() the same [05:07] saikat_ has joined the channel [05:07] jchris1 has joined the channel [05:15] paulwe has joined the channel [05:17] mikeal has joined the channel [05:17] davidthings has joined the channel [05:19] yozlet has joined the channel [05:19] richcollins has joined the channel [05:20] richcollins: htmlparser doesn't seem to work for RSS, are there any other recommended options? [05:20] guybrush: sax-js [05:20] guybrush: https://github.com/isaacs/sax-js [05:21] richcollins: guybrush: thx [05:22] guybrush: there is also https://github.com/maqr/node-xml2js which is built upon sax-js [05:22] AcidicChip: I setup https://github.com/felixge/node-mysql in the cloud9/server/ext/ dir, and restarted cloud9ide, and it doesn't seem to like that, keeps erroring. Am I supposed to put it in a different location? [05:27] jamescarr has joined the channel [05:27] jamescarr: woot [05:27] hornairs has joined the channel [05:29] jimt_ has joined the channel [05:30] dohtem has joined the channel [05:30] dohtem has joined the channel [05:30] richcollins: guybrush: Have you worked with sax? I'm wondering if its possible that an error will prevent the end event [05:31] guybrush: richcollins: yes i am currently trying to implement stuff with sax-js, but i dont quite get your question [05:33] mikew3c_ has joined the channel [05:36] dgathright has joined the channel [05:42] ceej has joined the channel [05:42] mbrochh has joined the channel [05:45] mikeal has joined the channel [05:46] richcollins: guybrush: There is an end event. I was going to use this event to determine when the parser was complete [05:46] cjmFloating has joined the channel [05:47] richcollins: It occurred to me that an error might prevent the end event from being sent [05:47] richcollins: in which case I'd need to determine when the parse is complete [05:48] jamescarr has joined the channel [05:49] tim_smart: micheil: Hey [05:49] richcollins: ah "resume - To gracefully handle errors, assign a listener to the error event. Then, when the error is taken care of, you can call resume to continue parsing. Otherwise, the parser will not continue while in an error state." [05:50] Aikar: ouch, SAP ordered to pay Oracle 1.3bil in damages. [05:50] Aikar: http://arstechnica.com/tech-policy/news/2010/11/jury-gives-oracle-13-billion-in-copyright-damages-from-sap.ars [05:51] unomi has joined the channel [05:56] Ond: Old. [05:56] Ond: Shouldn't they separate the one & three at least with an underscore? [05:57] Ond: The URL is misleading. [05:58] stalled has joined the channel [05:58] davidascher has joined the channel [05:59] luke`_ has joined the channel [06:00] aconbere has joined the channel [06:03] JimBastard has joined the channel [06:03] JimBastard: ahaha, the internet hate machine is in full effect today [06:04] Aikar: ? [06:04] Aikar: what is the /b/retheren up to now [06:06] jamescarr has joined the channel [06:06] micheil: tim_smart: see the pm. [06:07] mscdex: T-Co: pushed a bunch more changes if you're interested. [06:07] T-Co: mscdex, Thanks, will take a look [06:10] jamescarr has joined the channel [06:12] sprout1 has joined the channel [06:13] richcollins: I can't get htmlparser or sax to parse feedburner feeds :-/ [06:13] Athox: isaacs inspired me to shut down my linkedin profile [06:13] Anti-X: facebook next? [06:15] sprout has joined the channel [06:17] mscdex: Anti-X: why is that? [06:18] Anti-X: http://blog.izs.me/post/1667723013/linkedin [06:18] Aria: ++ [06:18] guybrush: haha [06:18] guybrush: i like isaacs blog ^^ [06:19] Aria: Only decent people I ever connected to on linkedin are my old boss and coworkers, who I'm on Facebook and Twitter and email and phone-calling basis with anyway. [06:19] guybrush: never used linkedin at all, never even came to my mind [06:21] Anti-X: i signed up like two months ago, and half the people i'd like to connect with aren't on there, only useless people (in a job sense) [06:21] guybrush: mhm, well i heard that it was actually usefull for some guys [06:22] guybrush: but, i dont like it [06:23] Aria: Oh, yeah. I know niches where people make winning contacts. [06:23] Aria: But not many. [06:23] Anti-X: i signed up mostly because i thought i could drag a few recommendations out of some people, but then i though.. why the hell bother... recommendation schmecommendation... as isaacs says, if they wanna hire me, they'll look at my work (admittedly quite scattered and unknown), not how many friends i have [06:24] evanmeagher: github is a vastly better resource for hiring than linkedin ever will be [06:24] Anti-X: and i don't have a lot of friends either.. by choice i think. i like spending a lot of time alone.. sort of like a mad scientist.. not letting ignorant stupid people influence my work you know [06:25] Anti-X: and any mad scientist will do a better job at most anything than anyone already in that job [06:25] shirro has joined the channel [06:25] shirro has joined the channel [06:25] Anti-X: maybe not at once [06:25] Anti-X: but eventually [06:25] Anti-X: lumberjack? mad scientist will come up with something [06:26] evanmeagher: build lumberjack robots [06:26] Anti-X: checkout girl/boy? mad scientist will come up with something [06:26] Anti-X: oh, news reader? mad scientist doesn't care about news. [06:27] Anti-X: he'll make it automatic [06:27] Anti-X: make that windows voice reader thingy read google news [06:33] richcollins has joined the channel [06:34] peutetre has joined the channel [06:34] sprout1 has joined the channel [06:35] alcuadrado has joined the channel [06:37] [[zz]] has joined the channel [06:37] matjas has joined the channel [06:38] Anti-X: i'm appalled that vapor.js isn't on npm [06:38] Anti-X: how can such a critical framework be overlooked [06:38] Aria: There's still a one-liner to install it. [06:38] Anti-X: touch vapor.js? [06:39] evanmeagher: Anti-X: you can still add it as a dep with `npm bundle` [06:39] evanmeagher: otherwise ping fuchs to add it [06:42] eml-mobile has joined the channel [06:44] itissid has joined the channel [06:45] itissid: tim_smart: Are you Tim Casswell aka creationix? [06:45] itissid: Caswell* [06:45] muk_mb: how do I properly send back a 304 response in express? [06:46] micheil: itissid: tim caswell is creationix [06:46] tim_smart: itissid: Nope. I'm Tim-Smart on github. [06:46] cjmFloating has joined the channel [06:47] itissid: Yeah [06:47] yumike has joined the channel [06:47] itissid: well god knows what identity one has here.. So just asking [06:47] micheil: and tim caswell isn't about at the moment because it's something like 11pm in SF [06:47] itissid: Hmm [06:48] micheil: would be my guess. [06:48] unomi has joined the channel [06:48] fangel has joined the channel [06:48] itissid: Well knit village this place is... every one knows every one i guess.. [06:48] micheil: itissid: yeah, the various core contributors do tend to know each other pretty well [06:49] itissid: Actualy wanted to ask him a question about his blog http://howtonode.org/prototypical-inheritance [06:49] itissid: Any one can answer ths one [06:50] omni5cience has joined the channel [06:50] itissid: he says in teh section Prototypal OOP that I don't like the new keyword, it overloads the meaning of functions and is dangerous. If we were to say frank = Person("Frank"), then this inside the function would now be the global this object, not the new instance! [06:51] evanmeagher: muk_mb: does `res.redirect(foo, 304)` not have the desired effect? [06:51] itissid: I was just working on my browser and I am not able to instantiate frank = Person("Frank") that way for the code listed there.. [06:52] itissid: frank is just blank in the debugger... I have always typically used new but was just brushing up on my JS skills... [06:52] muk_mb: evanmeagher: you don't wanna redirect on a conditional GET do you? [06:52] Anti-X: blank in the debugger [06:52] Anti-X: i wanna use that in a totally different context [06:52] micheil: itissid: `new` is how you do OOP in JS [06:53] itissid: yeah [06:53] meck: it doesn't actually create anything because nothing is returned... i assume this is an issue with his example [06:53] meck: a better example would be if in the constructor portion he used this [06:53] Anti-X: "i tried to understand what he meant by that completely nonsensical statement, but he was utterly blank in the debugger" [06:53] itissid: Yeah [06:53] micheil: itissid: OOP is kinda odd, and changes depending on who you ask [06:53] meck: all methods are called on an object, and without specifying one they are attached to the global object [06:53] evanmeagher: muk_mb: I see why you're asking, though. I'm not sure how you'd go about sending just a 304 header. [06:54] meck: so Person() is the same as window.Person() [06:54] meck: and any time you attach a method to an object, this inside the method points to the object it was called on [06:55] tim_smart: function Person () { if (!this instanceof Person) return new Person(); } [06:55] itissid: Hmm [06:56] evanmeagher: JS has function-based lexical scoping, so it's worth pointing out that `this` would point to the enclosing _function_, not necessarily block [06:57] meck: it's actually the object that the method was attached to when it was called that "this" points to, rather than the function [06:57] itissid: evanmeagher: so thats why creationix explains the prototype.. [06:58] itissid: to give this the right context [06:58] muk_mb: evanmeagher: oh ok, you just do "res.send(304)" [06:58] muk_mb: works perfectly [06:58] abiraja has joined the channel [06:59] evanmeagher: meck: objects ~ functions, so we're both right, sort of [06:59] evanmeagher: muk_mb: ah, good to know. thanks. [06:59] muk_mb: np [06:59] Anti-X: evanmeagher, "var obj = { label: function() { this.something" <- this refers to that 'hash' object when calling obj.label().. not a function in sight [06:59] MattDiPasquale has joined the channel [07:00] amerine has joined the channel [07:00] Anti-X: and functions are objects [07:00] Anti-X: you should know that [07:00] Anti-X: :P [07:00] amerine has joined the channel [07:01] meck: itissid: the example works for me in chrome and node [07:02] evanmeagher: Anti-X: strange. I feel lied to by crockford. [07:02] evanmeagher: Anti-X: I thought this was redefined every time you dropped into a new function scope [07:02] itissid: meck: I was just not understanding that statement correctly [07:03] itissid: Now i do [07:03] Anti-X: new scope, yes [07:03] meck: aaah, ok cool [07:03] Anti-X: not necessarily function scope [07:03] meck: yep, scoping is definitely at the function level, but "this" is a different story [07:03] itissid: if he had used this in some way in the constructor it would have been more direct, but there is only so much one can do in a blog post.. [07:03] Anti-X: but also, in events, 'this' usually refers to either the global scope, or the event object.. can't remember which [07:03] Anti-X: which is totally out of context [07:03] ysynopsis has joined the channel [07:04] Anti-X: native js events, that is [07:04] meck: it's usually the object throwing the event [07:04] evanmeagher: interesting [07:04] Anti-X: meck, not really [07:04] evanmeagher: Anti-X: thanks for the enlightenment. I should read up on this a bit more, i guess :P [07:05] Anti-X: that's only if you make events yourself and do it bad [07:05] meck: because the callback is called like: node.cb = yourcallback; node.cb() [07:05] tim_smart: this is usually the global object for DOM events [07:05] Anti-X: meck, no.. that's bad... you should do node.cb.call(null) [07:05] Anti-X: for global scope [07:06] tim_smart: Or is the DOM element? Can't remember - haven't done browser stuff for a while. [07:06] Anti-X: having 'this' reference the object that throws the event is extremely misleading [07:06] ewdafa has joined the channel [07:06] Anti-X: because if anything, it should reference the object in which the event was set up [07:06] tim_smart: 'this' is subject to how the function is called. [07:07] nsolsen has joined the channel [07:07] tim_smart: Not how you declare the function. [07:07] itissid: tim_smart: Right [07:07] unomi has joined the channel [07:07] Anti-X: that's also the way to see it [07:07] evanmeagher: http://howtonode.org/what-is-this [07:08] Anti-X: i'm talking more generally how you should make 'this' behave when other code supplies it to you [07:08] Anti-X: you shouldn't make it reference your internal object when calling a callback [07:09] itissid: Anti-X: YOu are talking about the point where we do liek a self=this before the callback is passed to a function? [07:09] meck: i was talking specifically about dom events... how it SHOULD be done is a different story :P [07:09] itissid: and make it self every where in the closure? [07:10] googol has joined the channel [07:10] daglees has joined the channel [07:10] daglees has joined the channel [07:11] Anti-X: meck, DOM events do it how it should be done [07:11] Anti-X: they make this global [07:11] Anti-X: but some custom event implementations don't [07:12] Anti-X: they simply ignore the issue and just call callback() [07:12] Anti-X: which makes everything weird if you don't use self [07:13] meck: yeah i haven't found any reference to back my claim up honestly... I am probably just used to libraries setting the this reference [07:13] Anti-X: it might still behave as if it was global (since none of your this.attributes are available), but if you're using some that happen to be used also in that scope, then what... [07:14] itissid: Anti-X: Thats like hitting a Axe with your foot [07:14] Anti-X: it has happened [07:14] Anti-X: imagine there being an axe where the table leg is [07:14] Anti-X: you'd have 6 toes [07:15] itissid: :P [07:15] itissid: yeah [07:15] meck: ok well i just went and made an example [07:15] meck: document.getElementById("test").onclick = function() { [07:15] meck: alert(this); [07:15] meck: } [07:15] meck: [object HTMLDivElement] [07:16] meck: so yeah, this gets set to the dom object that threw the event [07:16] Anti-X: yeah because onclick is part of the div element [07:16] jbergstroem: so, lets say i have some hardware i want to add to the buildbot for node.js. who do i talk to? [07:16] Anti-X: but do addEventHandler [07:16] Anti-X: or whatever it is [07:16] itissid: Meck: Yeah i remember that is what jQuery also does extensively.... [07:16] Anti-X: (which is the right way) [07:16] Anti-X: addEventListener maybe [07:17] itissid: As in inside the function handler this is alwasy the dom element.. [07:17] derren13 has joined the channel [07:18] Anti-X: document.getElementById("test").addEventListener('click', function(){alert(this)}) [07:18] Max_Might has joined the channel [07:20] Anti-X: in your instance, the event just fires any onclick property of that particular element [07:20] Anti-X: instead of firing a given closure [07:21] itissid: Thanks this was all very useful [07:21] meck: in chrome, that gives me [object HTMLDivElement] [07:21] meck: firefox nothing fires... still poking at that [07:22] itissid: I have been using new, this and self idea so extensively that i have forgotten all the innards... [07:22] Anti-X: odd [07:23] itissid: Always use new to instantiate , this refer to the object and self for all callbacks/closures... Thats all i needed for a very long time now.. [07:23] itissid: Oh Sometimes call and apply.. [07:23] Anti-X: maybe it's the third parameter to addeventlistener that fucks it up, meck? [07:24] Anti-X: which is supposed to be false [07:24] meck: huh... strange, that fixed it... i figured that was just a bubble true/false [07:24] Anti-X: apparently only IE ever did the 'true' way [07:24] Anti-X: i think [07:24] meck: so yeah, with that... [object HTMLDivElement] [07:25] Anti-X: it was just a few weeks ago that i did something like this and 'this' never pointed to the object [07:25] Anti-X: i deleted the source and rewrote it, so i can't remember what i did exactly [07:26] Anti-X: i used blur and focus though [07:26] Anti-X: that i remember [07:27] meck: here is a page that talks about it actually http://odetocode.com/blogs/scott/archive/2006/12/25/javascript-targets-and-the-this-reference.aspx [07:28] meck: bed time, g'night all! [07:31] sriley has joined the channel [07:32] luke` has joined the channel [07:34] mikeal has joined the channel [07:34] SamuraiJack has joined the channel [07:38] isaacs has joined the channel [07:48] SamuraiJack has joined the channel [07:53] tanepiper: http://www.erbix.com/ looks interesting [07:54] aubergine has joined the channel [07:56] isaacs: micheil: not likely to add user namespaces to npm any time soon [07:57] isaacs: i think shoving things into a single namespace makes people think a bit more about what they decide to publish [08:09] tanepiper: isaacs: always making people have to think :D [08:09] isaacs: hah [08:09] tanepiper: today, i need to think about deployment [08:09] isaacs: yikes [08:09] isaacs: what about it? [08:09] Anti-X: forcing people to think.. how dare you [08:10] tanepiper: well i have an app that has a few dependencies (so npm install), and couchdb stuff (setup db, install designs, put in some initial objects) [08:10] tanepiper: then install upstart script [08:11] isaacs: i see [08:11] AAA_awright: What about URIs? [08:11] tanepiper: i'd love to have a one line command that does it all from my machine to the remote machine using git [08:12] tanepiper: AAA_awright: that too, but i'll do that manually today - i need to do a demo for tomorrow, and we have an investor meet in the next couple of weeks [08:12] AAA_awright: tanepiper: Write a bash script? [08:12] tanepiper: yea [08:12] hellp has joined the channel [08:12] tanepiper: if i do that i can probably have it install nodejs on the machine as well [08:14] tanepiper: although i've taken snapshots of a pre-install of couchdb on one machine and nodejs on the other [08:14] muk_mb: whooo, I wrote in conditional GET support for feed-list requests on my project. [08:14] muk_mb: I'm so cool! [08:16] derferman has joined the channel [08:18] mikedeboer has joined the channel [08:19] Druid_ has joined the channel [08:19] ivanfi has joined the channel [08:20] jchris1 has joined the channel [08:22] [AD]Turbo has joined the channel [08:23] dguttman has joined the channel [08:23] Anti-X: i'm so lucky.. i've been the 1 millionth visitor to at least 4 websites in the past two days! [08:24] Anti-X: what are the odds [08:24] delapouite has joined the channel [08:25] tanepiper: that's amazing, lucky you [08:25] theiviaxx has joined the channel [08:26] theiviaxx: noob question > trying to install node on cygwin. It can't import tool "msvc" when running ./configure [08:26] theiviaxx: what am i missing here? [08:27] Anti-X: did you install cygwin with python, or did you have python already? [08:27] nsolsen has joined the channel [08:27] Anti-X: you need to remove python and install it with cygwin probably [08:28] Anti-X: it doesn't work with the windows python [08:28] theiviaxx: yeah, using the windows one [08:28] theiviaxx: ok, i'll give it a go [08:28] adambeynon has joined the channel [08:28] Kai` has joined the channel [08:29] Anti-X: i did that, i think i got that same error. it looks familiar, but this is almost half a year ago [08:30] theiviaxx: can i just install py without messing with the windows stuff? [08:30] Anti-X: no you need to uninstall the windows python [08:30] Anti-X: not sure why [08:30] jakob has joined the channel [08:30] Anti-X: i think the installer sets some env vars maybe [08:31] Anti-X: remember that you need to use the cygwin setup program, don't install the linux version through cygwin [08:31] Anti-X: that probably won't work at all [08:32] Anti-X: you can uninstall the cygwin python and reinstall the windows one after the configure [08:32] Anti-X: it's only needed for that [08:33] Anti-X: PS: as far as i know [08:35] derren13 has joined the channel [08:38] Anti-X: either way, once you get settled in cygwin, you'll never use cmd again [08:38] Anti-X: except for very windows specific things [08:38] romanb has joined the channel [08:38] Anti-X: so might as well just use cygwin python [08:44] SvenDowideit_ has joined the channel [08:45] theiviaxx: ok cool, thakns guys [08:45] Anti-X: did it work? [08:45] mbrochh has joined the channel [08:50] isaacs: w00t. `nave use stable` [08:51] bartt has joined the channel [08:51] nsolsen has joined the channel [08:52] brianmario has joined the channel [08:53] ph^ has joined the channel [08:54] dguttman has joined the channel [08:55] micheil: isaacs: I'm thinking more about sharing forks of projects and stuff [08:55] isaacs: yeah. but you can just name them differently [08:56] isaacs: if you want to have a different fork of something just for YOUR package, then bundle it [08:56] micheil: isaacs: also. http://twitter.com/miksago/status/7701786144022528 [08:56] micheil: word. [08:56] brianmario has joined the channel [08:56] tanepiper: isaacs: i like that idea of the private, ensures no accidental publishing of commercial code, and makes npm a deployment system too [08:56] micheil: isaacs: also, npm version increase? [08:57] isaacs: tanepiper: kewl [08:57] tanepiper: is joynet open sourcing any of it's stuff? [08:57] micheil: tanepiper: iirc, the whole thing was opensource [08:57] isaacs: tanepiper: well, there's node.js, and dtrace, etc. [08:57] micheil: but not up-to-date [08:57] isaacs: tanepiper: also, i mean, you get onto the box, you can poke around [08:57] micheil: https://github.com/joyent/smart-platform [08:58] isaacs: micheil: yeah, that's the old style [08:58] micheil: yeah [08:58] isaacs: micheil: we haven't published the no.de sourcecode [08:58] micheil: I don't expect you to. [08:58] isaacs: but you could get it if you know where to look [08:58] micheil: it's kinda easy code [08:58] isaacs: oh, i dunno. we might [08:58] micheil: ACTION has already looked. [08:58] isaacs: but we're still figuring this stuff out, kinda. [08:58] isaacs: everyone is [08:58] isaacs: it's a new way to do things [08:58] micheil: isaacs: I'm writing one for the company project I'm working on [08:59] mraleph has joined the channel [09:05] ntelford has joined the channel [09:06] Fenda_ has joined the channel [09:06] skohorn has joined the channel [09:07] herbySk has joined the channel [09:14] luke` has joined the channel [09:17] sriley has joined the channel [09:17] tisba has joined the channel [09:19] markwubben has joined the channel [09:21] Fullmoon has joined the channel [09:21] herbySk has joined the channel [09:22] Fullmoon: Anyone things that is valid to return a HTTP response before the request was fully received (of course, without Connection: close) [09:22] Fullmoon: *thinks [09:22] themiddleman has joined the channel [09:22] sixtus42 has joined the channel [09:24] ooooPssss has joined the channel [09:25] Fullmoon: 2616 doesn’t fully define this scenario [09:25] evanmeagher has joined the channel [09:25] skohorn has joined the channel [09:26] danslo has joined the channel [09:27] mikeal has joined the channel [09:27] romanb has joined the channel [09:28] erlnoob has joined the channel [09:28] erlnoob: boomerangs, boomerangs everywhere! [09:29] evanmeagher: mikeal: your drink creation sounds divine [09:29] pdelgallego has joined the channel [09:32] mikeal has joined the channel [09:33] virtuo_ has joined the channel [09:35] markwubben has joined the channel [09:35] Anti-X has joined the channel [09:36] xla has joined the channel [09:37] mbrochh has joined the channel [09:37] zomgbie has joined the channel [09:38] stonebranch has joined the channel [09:38] stagas: I'm bored [09:39] tanepiper: well! get working on something cool [09:40] stagas: any suggestions? :) [09:41] tanepiper: Get an aurdinio board, hook it to a coffee machine then add to npm a command npm make coffee :D [09:41] stagas: that would be -1 reason to get up from chair [09:41] TomY has joined the channel [09:41] stagas: :P [09:44] Anti-X: why don't you make an intarweb palm reading script [09:44] saschagehlich has joined the channel [09:44] tsing has joined the channel [09:44] Anti-X: you could hook so many tweens [09:45] mali has joined the channel [09:51] margle has joined the channel [09:51] stagas: http://www.palmday.com/read-my-palm.php [09:51] stagas: :P [09:52] mraleph has joined the channel [09:53] Spion__ has joined the channel [09:53] paulwe has joined the channel [09:54] teemow has joined the channel [09:56] stagas: my success age is 33 [09:56] stagas: they need money for the rest [09:56] stagas: :P [09:58] caolanm has joined the channel [09:58] sfoster has joined the channel [09:59] isaacs has joined the channel [09:59] skohorn has joined the channel [09:59] slaskis has joined the channel [10:01] tanepiper: 34 for me [10:01] nooder: 33 [10:01] tanepiper: of course it's all bollocks [10:01] stagas: I learned I had a destiny line that not everyone has :P [10:03] aubergine has joined the channel [10:03] lmorchard has joined the channel [10:05] Anti-X: congrats [10:05] Anti-X: you could convince others of the same [10:05] stagas: yea I'm priviledged :P [10:05] Anti-X: that's not what i said [10:05] Anti-X: :p [10:07] herbySk has joined the channel [10:07] xla has joined the channel [10:08] erlnoob_ has joined the channel [10:13] flashingpumpkin has joined the channel [10:15] caolanm: I made a thing: http://caolan.github.com/ghstats/#caolan [10:16] caolanm: was just messing around with githubs jsonp api last night [10:17] sfoster: sweet [10:18] maushu has joined the channel [10:18] caolanm: it doesn't handle missing usernames very well because the github jsonp api is a bit broken and responds with a 404 [10:19] sfoster: 404 sounds like the right response to me for a bad username? [10:20] caolanm: sfoster: but jsonp can only handle 200 responses [10:20] caolanm: status must be in the response message [10:20] sfoster: ah, thats a good point :) [10:20] caolanm: otherwise the script won't load and you'll have no idea what happened [10:20] caolanm: ;) [10:21] saschagehlich has joined the channel [10:25] jimt has joined the channel [10:27] evanmeagher: isaacs: i added tab completion for subcommands of `npm config`: https://github.com/evnm/npm/commit/acbd1e2af67d7604d123 [10:27] evanmeagher: wondering if it's an acceptable approach [10:27] javruben has joined the channel [10:27] [AD]Turbo: is there a way to use the same .js file (in my case this script defines a list of constants) from nodejs (using require keyword) and from my client (here is easy, simply