[00:00] quackslike: What should i be using instead of: http.createClient these days? [00:02] subbyyy has joined the channel [00:03] copongcopong has joined the channel [00:03] lyte_ has joined the channel [00:03] CiRlE has joined the channel [00:03] quackslike: oh [00:03] quackslike: i see [00:05] joshfinnie has joined the channel [00:07] jmar777 has joined the channel [00:08] killfill has joined the channel [00:09] Carter_ has joined the channel [00:10] bartt has joined the channel [00:10] mansoor has joined the channel [00:12] shanebo has joined the channel [00:13] bEEEeeviz has joined the channel [00:14] joshkehn has joined the channel [00:14] joshkehn has left the channel [00:15] satyr has joined the channel [00:16] thepumpkin has joined the channel [00:17] gtramontina has joined the channel [00:18] seebees has joined the channel [00:18] Skaag has joined the channel [00:21] powdahound has joined the channel [00:21] killfill has joined the channel [00:22] dilvie has joined the channel [00:22] codygray has joined the channel [00:22] lorfds: i am having some memory issues with zombie.js [00:22] lorfds: i am running it in a loop [00:25] thepatr1ck has joined the channel [00:26] hunterloftis_ has joined the channel [00:27] stagas has joined the channel [00:27] frabcus has joined the channel [00:28] hostsamurai has joined the channel [00:28] jsurfer has joined the channel [00:29] broofa has joined the channel [00:29] replore has joined the channel [00:29] replore_ has joined the channel [00:30] johnnywengluu: lorfds: dont you have to test using normal browsers too even if tests are passing with zoombie? [00:30] josh9: mmalecki: can u give me a usecase for dnode? [00:30] lorfds: im using it for scraping [00:30] devaholic: josh9: connect ALL OF THE DEVICES [00:30] lorfds: i dont care about automated testing [00:33] jhurliman has joined the channel [00:33] skm has joined the channel [00:33] josh9: devaholic: what do u mean by devices? [00:33] PPaul: substack [00:34] SubStack: beep boop [00:34] PPaul: SubStack, i did it with my own walker (based on clojure walk) https://github.com/boxxxie/jsWalk/blob/master/walk_test.js [00:34] PPaul: the last test is what i was trying to do [00:34] PPaul: with composing transformations and merging [00:34] PPaul: :D [00:34] devaholic: josh9: https://github.com/tblobaum/nodeQuery [00:36] micheil has joined the channel [00:36] tjholowaychuk: http://www.youtube.com/watch?feature=player_embedded&v=q8Z3NEVIwYg [00:37] josh9: devaholic: thanks. looking into it [00:39] stantona has joined the channel [00:39] Hamms has joined the channel [00:40] jackhq has joined the channel [00:41] MatthewS has joined the channel [00:42] iBooyaa has joined the channel [00:44] catshirt has joined the channel [00:44] jtsnow has joined the channel [00:46] marcello3d has joined the channel [00:46] diogogmt has joined the channel [00:47] copongcopong1 has joined the channel [00:48] ilya_d_ has joined the channel [00:49] bEEEeviz has joined the channel [00:49] marcello3d has joined the channel [00:51] dgathright has joined the channel [00:51] amigojapan has joined the channel [00:53] tiagobutzke has joined the channel [00:55] stantona has joined the channel [00:55] shiawuen has joined the channel [00:56] JumpMast3r has joined the channel [00:56] ag4ve has joined the channel [00:56] lyte has joined the channel [00:59] kurtzhong has joined the channel [01:03] CIA-109: node: 03Ryan Dahl 07v0.6 * r7547c7d 10/ src/node.cc : [01:03] CIA-109: node: Deshadow, denamespace variables in node.cc [01:03] CIA-109: node: Prep for isolates. - http://git.io/gqpAfA [01:05] CIA-109: node: 03Ryan Dahl 07master * rebe0fb6 10/ (41 files in 6 dirs): Merge remote branch 'origin/v0.6' (+5 more commits...) - http://git.io/-T09wA [01:06] Sami_ZzZ has joined the channel [01:09] BillyBreen has joined the channel [01:09] JasonSmith: isaacs: YT? Did you roll your own logging for NPM? I am soliciting advice from people about things they like/dislike about logging frameworks. [01:10] pkrumins: I just deployed major upgrade to Browserling! [01:10] JasonSmith: The idea is to create the perfect logging framework for CouchDB from the perspective of (1) developers, (2) administrators, and (3) app developers [01:10] pkrumins: We now have Chrome 1-15 + canary, Firefox 3-8 + nightly, Opera 10-11 + next, Safari 4, Safari 5! [01:10] pkrumins: Try out the new browserling at www.browserling.com! [01:11] pkrumins: Super excited here! [01:11] ramitos has left the channel [01:11] Emmanuel` has joined the channel [01:12] ammurorei has joined the channel [01:12] r04r has joined the channel [01:13] ReadmeEXX has joined the channel [01:13] paulwe has joined the channel [01:16] Juan77 has joined the channel [01:17] strmpnk has joined the channel [01:18] catshirt has joined the channel [01:18] tonymilne: pkrumins would be funny if you implemented queue chat functionality, so i can chat to others while i wait. :) [01:18] pkrumins: hehehe [01:18] pkrumins: SubStack: ^^^ [01:19] satyr has joined the channel [01:19] joshkehn has joined the channel [01:19] joshkehn has left the channel [01:19] briancray has joined the channel [01:20] heavysixer has joined the channel [01:21] maxogden: SubStack: wanna code on the internet somewhere [01:22] shanebo has joined the channel [01:23] k1ttty has joined the channel [01:23] ReadmeEXX has left the channel [01:24] SubStack: maxogden: I'm at day of the dead cafe [01:24] SubStack: on grand avenue [01:24] lyte has joined the channel [01:24] lyte has joined the channel [01:24] maxogden: SubStack: sweet how long will you be there? NODE.jS MEETUP TIME [01:24] SubStack: a while! [01:24] SubStack: just got here [01:25] SubStack: and there's a documentary about ireland playing [01:25] maxogden: sicky sicky gnar gnar [01:25] maxogden: oh cool i just watched a documentary about irish cults yesterday [01:25] CarterL has joined the channel [01:26] benvie: I hate all you people who live there [01:26] halfhalo: ACTION lived there for a while. it was cold. [01:26] maxogden: oakland is nice [01:26] benvie: cold compared to what [01:26] benvie: san diego [01:26] halfhalo: socal [01:27] SubStack: it's a bit cold today [01:27] benvie: yeah....sure is =/ [01:27] benvie: was actually like 65 here today in sunny...north carolina [01:27] halfhalo: anything under like 75 is cold here. [01:28] benvie: oh boy the .xxx tld finally arrived [01:28] Brandon has joined the channel [01:28] Brandon_R: hello [01:29] maxogden: http://gaynode.org/ [01:29] enmand has joined the channel [01:29] Brandon_R: yeah right like programmers look like the people in that pic [01:29] Brandon_R: even if they are gay [01:30] kazupon has joined the channel [01:32] brandon_r: w00t [01:32] brandon_r: i have a great domain idea [01:32] brandon_r: and it's unregistered [01:32] tonymilne: what is it? [01:32] tonymilne: (i'll race ya!) [01:32] benvie: node.xxx is taken, not nodeporn =/ that's some sexy javascript [01:33] brandon_r: promise you won't register it? [01:33] brandon_r: and it's .com lol [01:33] zkirill has joined the channel [01:33] halfhalo: this will end badly. [01:33] tonymilne: all 700+ of us, will not register it ;) [01:33] benvie: hahah wow gaynode.org is awesome [01:34] brandon_r: are you a member of gaynode? [01:34] brandon_r: i think ryan is a christian [01:34] benvie: I'm not but that site is awesome anyway [01:34] igl: lol [01:34] brandon_r: woah [01:34] brandon_r: wikipedia got a pretty wpokesperson [01:34] benvie: I love the logo as I do happen to be a particular fan of rainbows though [01:34] brandon_r: s* [01:36] brandon_r: Want a Linux Job? Learn Java or Android [01:36] brandon_r: people are really starting to piss me off with the hate linux crap [01:36] brandon_r: http://www.pcworld.com/businesscenter/article/245572/want_a_linux_job_learn_java_or_android.html#tk.nl_dnx_h_crawl [01:36] qmx: wtf [01:36] benvie: that sounds not right [01:36] enmand_ has joined the channel [01:36] jldbasa has joined the channel [01:37] abraxas has joined the channel [01:37] brandon_r: well the android programming language looks alot like java [01:38] metanat has joined the channel [01:38] brandon_r: so it might not be all wrong [01:38] lightcap has joined the channel [01:38] skm has joined the channel [01:38] benvie: oh not that part is right [01:39] enmand__ has joined the channel [01:40] benvie: it is java basically but that's not what I would be doing if I for some reason desired a "linux job" whatever that phrase means [01:40] caolanm has joined the channel [01:41] r1ngzer0 has joined the channel [01:41] genexp has joined the channel [01:41] bnoordhuis: benvie: *GNU*/linux job [01:42] bnoordhuis: stallman lets it pass just this once [01:42] benvie: haha [01:42] benvie: I imagine a sweaty stallman swooping out of the sky every time someone dares makes that mistake [01:43] AvianFlu: benvie, s/swooping/pooping/ [01:43] benvie: both [01:43] benvie: at the same time [01:44] benvie: I was about to say "now we need someone talking about getting a node job" but then I realized that's a thing and it's on the node site already [01:44] benvie: herp derp [01:48] brandon_r: hi [01:48] brandon_r: do u know erlang? [01:48] thepatr1ck: I know I have a job working with node.js [01:48] benvie: yeah [01:48] benvie: as do most of the people in here I would suppose [01:48] brandon_r: anyone? [01:49] _unary has joined the channel [01:50] tomlion has joined the channel [01:50] saikat_ has joined the channel [01:50] thepatr1ck has joined the channel [01:51] Aria has joined the channel [01:51] ironlad99 has joined the channel [01:52] ironlad99 has left the channel [01:52] willwhite has joined the channel [01:53] dilvie: brandon_r: No, but I hear it's nice. [01:53] dilvie: ); [01:53] wojohowitz has joined the channel [01:53] brandon_r: it is [01:54] brandon_r: i was just checking [01:54] dilvie: does it have list comprehensions? [01:54] dilvie: I totally want those. [01:54] brandon_r: yep [01:54] dilvie: yeah, that's cool. [01:54] brandon_r: i like how erlang is mathematical [01:54] TN has joined the channel [01:54] brandon_r: i like mathematics [01:56] galaxywatcher has joined the channel [01:57] yuwang has joined the channel [01:58] shanebo has joined the channel [02:04] k1ttty has joined the channel [02:07] ryanfitz has joined the channel [02:08] Carter_ has joined the channel [02:08] devongovett has joined the channel [02:08] rchavik has joined the channel [02:10] colinclark has joined the channel [02:10] zkirill has left the channel [02:11] icewhite has joined the channel [02:12] kurtzhong has joined the channel [02:13] criswell has joined the channel [02:13] rchavik has joined the channel [02:13] rchavik has joined the channel [02:14] dthompso99 has joined the channel [02:15] ChaoWang has joined the channel [02:18] genexp has joined the channel [02:18] darkenco has joined the channel [02:19] fatjonny has joined the channel [02:19] jaequery has joined the channel [02:19] kickingvegas has left the channel [02:20] boehm has joined the channel [02:22] dwhittle has joined the channel [02:23] cjoudrey has joined the channel [02:24] JakeyChan has joined the channel [02:26] a_suenami has joined the channel [02:27] mcluskydodallas has joined the channel [02:29] cjm has joined the channel [02:32] marcostoledo has joined the channel [02:35] JakeyChan has joined the channel [02:37] jeromegn has joined the channel [02:37] hartley231 has joined the channel [02:39] josephg has joined the channel [02:39] josephg: so apparently object literals are 3x slower in V8 than constructors [02:40] josephg: ACTION wishes he knew that months ago [02:42] chapel: josephg: got a jsperf or something? [02:42] josephg: sure do [02:42] josephg: http://jsperf.com/constructor-vs-literal/2 [02:43] Me1000 has joined the channel [02:43] jacobolus has joined the channel [02:43] josephg: & putting the function in the object literal each time is _super_ slow. [02:44] jrogers has joined the channel [02:44] josephg: I asked some chrome guys about it: https://plus.google.com/116904230181415286707/posts/Cb5GvmarVz7 [02:44] josephg: scroll down to Vyacheslav's comment [02:45] joshfinnie has joined the channel [02:46] jacobolus has joined the channel [02:47] boltR has joined the channel [02:49] nicholasf: hi, what's the best way to ensure I send back the resp *after* I've finished looping through the members of 'palette_items'? https://gist.github.com/1440949 [02:50] harthur has joined the channel [02:50] josephg: nicholasf: for a start, you don't need the parenthases around the app.get function cll [02:50] josephg: call [02:50] josephg: - or around client.smembers() [02:50] nicholasf: josephg: sure, I understand that [02:51] nicholasf: but it helps me read the code [02:51] jacobolu_ has joined the channel [02:51] josephg: really? ok. [02:51] nerdy_ has joined the channel [02:51] nicholasf: but yeh, the resp.send items is obviously occuring before items is populated [02:51] jacobrask has joined the channel [02:51] josephg: yeah [02:52] nicholasf: just trying to work out what to do there [02:52] josephg: I'm sure there are some async libraries which make that kind of stuff easier… but I just use a little helper method [02:52] josephg: ACTION finds it [02:52] nicholasf: thanks [02:52] rudolfrck has joined the channel [02:53] nicholasf: like I need to find the fast way to do this (as I'm building a prototype) then I need to work out the best way to do it [02:53] jeromegn has joined the channel [02:53] josephg: This is what I do: [02:53] josephg: https://github.com/josephg/ShareJS/blob/master/test/helpers/misc.coffee#L39-47 [02:54] nicholasf: ACTION looks [02:54] josephg: so in your case, you'd say doneOne = expectCalls r.length, -> resp.send items [02:54] nicholasf: ok fair enough [02:54] mekwall has joined the channel [02:54] josephg: then each time you get an item, call doneOne() [02:54] nicholasf: Im looking into learning how to use tame.js [02:55] nicholasf: I think that might be less work [02:55] copongcopong1 has joined the channel [02:56] tonymilne: check out step too, i've got pretty good mileage from it! [02:56] nicholasf: tonymilne: ok [02:56] r04r has joined the channel [02:57] nicholasf: ah, tame.js is not friendly to coffeescript [02:57] nicholasf: byebye tame [02:57] nicholasf: ACTION checks out step [02:57] torm3nt has joined the channel [02:58] josephg: there's a few others as well… but I can't remember what they're all called [03:00] Breadcrumb has joined the channel [03:01] r04r has joined the channel [03:02] fzzzy has joined the channel [03:02] kriszyp3 has joined the channel [03:02] gregmoreno has joined the channel [03:03] gavin_huang has joined the channel [03:03] tonymilne: nicholasf This is a kinda bastardised version: http://hastebin.com/MTcqP2rfNC.js [03:03] tonymilne: (i friggin hate coffeescript) [03:03] nicholasf: ACTION looks [03:03] tonymilne: using step's group code, for a dynamic number of callbacks [03:04] nicholasf: ACTION nods [03:04] tonymilne: so, step bundles up your responses from callbacks [03:04] tonymilne: and passes them to the next function in line. [03:04] nicholasf: I think I underestimated how much work practice it would take to switch into node.js' mode of thinking about code [03:04] nicholasf: ACTION nods [03:04] nicholasf: yes, that's well put [03:05] josephg: thats quite clean [03:05] tonymilne: similarly, if you use this.parallel() it will preserve the order of the calls [03:05] tonymilne: so you can say foo(this.parrallel()); and bar(this.parallel()); and the next function gets (err, fooResult, barResult) [03:05] marcello3d has joined the channel [03:05] nicholasf: ok [03:05] tonymilne: regardless of the order that they actually completed. [03:06] tonymilne: anyways, have a play with step, it's simple and effective. [03:06] r04r has joined the channel [03:06] r04r has joined the channel [03:06] nicholasf: tonymilne: yes, I'm doing that now [03:07] nicholasf: thanks for the help tonymilne and josephg [03:07] josephg: np :) [03:10] romanb has joined the channel [03:11] r04r has joined the channel [03:12] langworthy has joined the channel [03:13] ryanfitz has joined the channel [03:15] MatthewS has joined the channel [03:15] willwhite has joined the channel [03:16] r04r has joined the channel [03:16] cjm has joined the channel [03:17] truedat101 has joined the channel [03:18] mike5w3c has joined the channel [03:20] kevinohara80 has joined the channel [03:20] kevinohara80 has left the channel [03:20] r04r has joined the channel [03:22] k1ttty has joined the channel [03:23] ramitos has joined the channel [03:25] r04r has joined the channel [03:27] tomlion has joined the channel [03:29] r04r has joined the channel [03:30] fzzzy has joined the channel [03:32] josephg: meanwhile, the fastest way to find the minimum of two numbers is different on each browser [03:32] josephg: http://jsperf.com/math-vs-greater-than/7 [03:32] jgornick has joined the channel [03:32] josephg: on chrome you want to write your own function to do it. On firefox you want to call math.min and in safari you want to use the ternery operator [03:32] josephg: shits fucked up. [03:34] wedtm has joined the channel [03:34] wedtm: I have a noob question regarding callbacks. [03:34] wedtm: I want to stop the app after it's done processing. [03:34] r04r has joined the channel [03:34] r04r has joined the channel [03:34] wedtm: But it does it instantly. [03:34] marcello3d: josephg: own function and ternary are identical for me on chrome [03:34] jimt has joined the channel [03:34] wedtm: I assume I have to use a callback. [03:34] jacobolus has joined the channel [03:35] wedtm: I'm issuing a find command to a mongodb collection, and when it's done, I'd like the app to quit. [03:35] wedtm: http://pastie.org/2978566 [03:36] josephg: marcello3d: yeah, me too actually - though using the ternery operator is nearly 3 times slower on firefox than a function with a ternery operator [03:36] marcello3d: josephg: I wouldn't optimize for it though. maybe submit bug reports to the browsers [03:36] marcello3d: Math.min supports more than 2 numbers [03:36] marcello3d: .. Math.min(4,3,2,1) [03:37] catb0t: 1 [03:37] marcello3d: so it's not a 100% fair comparison [03:38] josephg: marcello3d: yep. This is v8's math.min; http://code.google.com/p/v8/source/browse/trunk/src/math.js#140 [03:38] marcello3d: crazy [03:38] josephg: yeah... [03:39] marcello3d: go ecma [03:39] r04r has joined the channel [03:39] r04r has joined the channel [03:39] josephg: I wonder what those %_Arguments(i) things are and stuff [03:39] pcaulagi has joined the channel [03:39] josephg: I wonder if they work in normal JS [03:39] marcello3d: I doubt it [03:39] marcello3d: looks like a macro [03:40] josephg: yeah… it doesn't work in nodejs. [03:40] corpix has joined the channel [03:41] Aria: Ah, the natives . [03:41] josephg: but yeah; as firefox clearly shows, its possible to optimise the crap out of math.min calls. I'm sure v8 will get to it eventually [03:41] Aria: You can enable them with a commandline flag, but they're just to bootstrap V8. [03:42] marcello3d: I wonder if they're just optimizing the 2-arg case [03:42] tommyvyo has joined the channel [03:42] rwaldron has joined the channel [03:43] josephg: marcello3d: good question. I wouldn't be surprised - the multiple argument case is cute, but I don't think I've ever used it. [03:44] r04r has joined the channel [03:44] r04r has joined the channel [03:44] marcello3d: I've used it with map [03:44] marcello3d: no, I mean apply [03:44] marcello3d: only in functional situations [03:44] josephg: yep. [03:45] jzacsh has joined the channel [03:45] jzacsh has joined the channel [03:45] josephg: .apply() is pretty slow - just calling min/max pairwise might be faster. [03:46] josephg: not that it matters in 99% of code.. [03:46] josephg: ACTION is translating a physics engine from C to JS [03:46] marcello3d: ah :) [03:46] marcello3d: which one? [03:46] josephg: chipmunk [03:47] josephg: there's a javascript version of box2d kicking around, but its really ugly code [03:47] marcello3d: is it better than box2d? [03:47] josephg: better and worse... [03:47] josephg: there's some complicated comparisons floating around online [03:48] josephg: box2d does collisions properly (so objects can't teleport through each other if they're travelling really fast) [03:48] josephg: but to make that work, joints are much more complicated. Chipmunk supports way more joints, and is slightly faster [03:48] r04r has joined the channel [03:49] marcello3d: ah [03:49] josephg: box2d also requires that your units are approximately metres (and hence your objects are mostly between 0.1 - 10 units) [03:49] josephg: I have no idea why... [03:49] marcello3d: not physics but saw this today, pretty neat: http://evanw.github.com/csg.js/ [03:50] josephg: oh yeah, I saw that [03:50] marcello3d: the source is pretty clean looking, too [03:50] josephg: oh, cool. [03:51] josephg: Its nuts looking at the triangles once they've been merged / split [03:51] marcello3d: only 600 lines and that includes all the primitive generation [03:51] marcello3d: yea [03:51] devongovett has joined the channel [03:51] josephg: wow - thats tiny. Chipmunk has a data structure thats 800 lines of C. [03:52] marcello3d: I wonder if those are the optimal tessellations or just a greedy algorithm [03:52] marcello3d: I feel like some of the shapes could be made more simply [03:53] amigojapan has joined the channel [03:53] r04r has joined the channel [03:54] marcello3d: ok definitely not optimal if you look at the first a.subtract example [03:54] josephg: yeah I was gonna say. [03:54] dr0id has joined the channel [03:54] marcello3d: although [03:54] josephg: but it might not be a big problem... [03:54] josephg: and the complicated a.intersect(b).subract(…) down below doesn't look so bad [03:54] marcello3d: maybe they just wanted all the vertices to line up [03:55] marcello3d: it looks a little awkward on the red parts [03:55] josephg: yeah [03:55] marcello3d: but if you remove the wireframes you wouldn't know [03:55] josephg: yep. it'd just be a few more polygons than you really need [03:56] marcello3d: I wonder if it can deal with textures...that'd be an interesting next step [03:56] josephg: you could write a simplification pass if it became a problem.. [03:56] josephg: yeah I dunno. Probably not [03:56] marcello3d: that might cause trouble if there's enough precision loss on those tiny triangles [03:57] josephg: yep. I think triangle removal usually involves a human [03:57] josephg: I'm not sure how you'd texture it... [03:58] marcello3d: well assuming the original polygons are UV mapped already [03:58] josephg: unless you had a way to texture the primitives, then the texture mapping stays on the combined shapes [03:58] josephg: yeah. [03:58] marcello3d: you'd just interpolate the UV points when you break it up [03:58] r04r has joined the channel [03:58] r04r has joined the channel [03:58] josephg: yeah, that would be ok. [03:59] josephg: if you subtracted an object from another object, I think you'd end up painting some of the faces of the original shape with the subtracted shape [03:59] marcello3d: true [04:00] marcello3d: but there's no other choice [04:00] josephg: yeah [04:01] asoltys has joined the channel [04:01] enos_feedler has joined the channel [04:02] ard1000d has joined the channel [04:02] _unary has joined the channel [04:03] r04r has joined the channel [04:03] r04r has joined the channel [04:03] jskulski has joined the channel [04:04] corpix has joined the channel [04:04] tomlion has joined the channel [04:04] brianloveswords has joined the channel [04:07] r04r has joined the channel [04:08] otakutomo has joined the channel [04:09] coderarity has joined the channel [04:11] lightcap has joined the channel [04:11] Gekz_ has joined the channel [04:11] Gekz_ has joined the channel [04:12] r04r has joined the channel [04:13] dilvie has joined the channel [04:15] devmenow has joined the channel [04:16] marcello3d: anyone here played with node+spdy [04:17] r04r has joined the channel [04:17] r04r has joined the channel [04:18] RichardBronosky has joined the channel [04:18] broofa has joined the channel [04:20] boltR has joined the channel [04:22] r04r has joined the channel [04:22] r04r has joined the channel [04:23] cipher__ has joined the channel [04:24] jrogers has joined the channel [04:24] devmenow has left the channel [04:24] cipher__: is there a way to capture user input as it is being typed? (realtime chat sort of thing?) [04:24] kazupon has joined the channel [04:25] WarheadsSE: "as it is being typed".. trap the change event on the text field. [04:25] cipher__: thanks. [04:27] r04r has joined the channel [04:27] r04r has joined the channel [04:30] cipher__: WarheadsSE: Would you by chance have any good pages for me to read? (I am pretty new, I understand the basic principles and the net 'library' well enoughl) [04:30] TheFuzzball has joined the channel [04:30] cipher__: if that's of any consequence [04:30] marcello3d: cipher__: it's really a client-side javascript problem [04:30] WarheadsSE: off the top of my head, at this time of night, in my off-hand language.. no [04:30] cipher__: ha okay :p [04:30] marcello3d: cipher__: you'd capture events on the client, then send it to your server with something like socket.io [04:31] cipher__: oh okay [04:31] cipher__: so myabe google socket.io events? [04:31] cipher__: maybe8 [04:31] dilvie has joined the channel [04:31] cipher__: * [04:31] marcello3d: google javascript dom events [04:31] marcello3d: mdc is a good resource [04:32] cipher__: okay, thanks marcello [04:32] marcello3d: (though it's less newbie focused) [04:32] r04r has joined the channel [04:33] WarheadsSE: wasnt there another one mentioned earlier today? [04:33] WarheadsSE: doc.io ? [04:33] WarheadsSE: noe, not that one [04:34] RobWC has joined the channel [04:36] WarheadsSE: dammit, out of my scroll buffer. [04:36] marcello3d: now.js? [04:37] r04r has joined the channel [04:37] ryan_stevens has joined the channel [04:39] JakeyChan has joined the channel [04:40] JakeyChan has joined the channel [04:41] dgathright has joined the channel [04:43] jtsnow has joined the channel [04:44] devongovett has joined the channel [04:45] RobWC has joined the channel [04:47] dgathright has joined the channel [04:48] lightcap has joined the channel [04:48] joshkehn has joined the channel [04:48] joshkehn has left the channel [04:49] paulwe has joined the channel [04:51] ryan_stevens has joined the channel [04:51] EyePulp has joined the channel [04:52] mike5w3c has joined the channel [04:54] jstash has joined the channel [04:54] anoop has joined the channel [04:59] lorfds has joined the channel [04:59] pizthewiz has joined the channel [04:59] baudehlo has joined the channel [04:59] lorfds: can someone help me with a scraper I wrote in node and zombie.js [04:59] lorfds: im trying to figure out if im leaking memory somewher [05:00] lorfds: im a newb...so could use a more seasoned eye to look at my code [05:00] lorfds: i can only scrape about 200 urls before i get a crash because node is out of memory [05:00] brokenjames has joined the channel [05:00] EyePulp: what do you do with them after scraping? [05:01] zeade has joined the channel [05:02] lorfds: eyepulp...sent you a link to the code [05:02] EyePulp: just post here. [05:02] lorfds: i cant pm it to you? [05:02] lorfds: ill send it to anyone who wants to take a look [05:03] lorfds: but id prefer not to put it in public channel [05:03] joshfinnie has joined the channel [05:03] caffine has joined the channel [05:03] fbartho has joined the channel [05:04] TheFuzzball has joined the channel [05:07] jxson has joined the channel [05:07] lorfds: can anybody else take a look at my code for memory leaks? [05:07] lorfds: im having out of memory issues with my code [05:10] pixel13 has joined the channel [05:10] pixel13 has left the channel [05:11] cipher__: WarheadsSE: If i created a nodejs server running on raw tcp, can socketio still work with it? it seems like the client side socket is just timing out. [05:12] nicholasf: hi - I'm hitting my learning curve with node.js callbacks pretty fast. [05:12] cipher__: connect: 127.0.0.1 deleting client: 2 [05:12] cipher__: over and over :( [05:12] nicholasf: Have been stuck trying to work out how to return a response *after* a loop has completed [05:12] nicholasf: https://gist.github.com/1441551 [05:12] nicholasf: would appreciate some advice [05:13] cipher__: nick, I take it you don't know the socket.io library? [05:13] nicholasf: cipher__: Ive heard of it, and I want to look into it [05:13] nicholasf: Ive assumed its for streaming information back for realtime apps [05:14] N0va` has joined the channel [05:15] dwhittle has joined the channel [05:15] codygray has joined the channel [05:17] CarterL has joined the channel [05:17] lorfds: ok screw it...can anyone help me with this code? [05:17] lorfds: http://pastebin.com/w1w9NP4i [05:17] lorfds: im having memory problems [05:17] cipher__: Can socket.io work with raw tcp? Because I have a node tcp server that I was planning on using. At the moment it is just timing out and reconnecting. Here's the error: [22:16:08.290] GET http://localhost:7777/socket.io/xhr-multipart/ [undefined 0ms] [05:17] lorfds: i need someone better at node than myself to tell me if there are any leaks, etc [05:18] cipher__: lorfds: how do you understand that regex? [05:18] beseku has joined the channel [05:18] lorfds: how do I understand it? [05:18] cipher__: If a regex expression is more than an inch long on 9px font, it's too long for me to follow :p [05:19] lorfds: its just a regex for parsing a url into various buckets.....its irrelevant in the scheme of the code [05:19] lorfds: i dont expect you to go through that...its canned code...assume it works [05:20] jsurfer has joined the channel [05:22] bingomanatee has joined the channel [05:22] bingomanatee: Hello - anyone here use node unit alot? [05:22] bingomanatee: ? [05:23] AvianFlu has joined the channel [05:24] satyr has joined the channel [05:24] dwhittle has joined the channel [05:25] clu3 has joined the channel [05:26] RobWC has left the channel [05:27] cipher__: adding to my previous question above, how can i just get it to connect and wait? here's a screenshot: http://i40.tinypic.com/14y3imf.jpg [05:29] samyak__ has joined the channel [05:29] fairwinds has joined the channel [05:29] broofa has joined the channel [05:30] fairwinds has joined the channel [05:31] truedat101 has joined the channel [05:32] StanlySoManly has joined the channel [05:33] mike5w3c_ has joined the channel [05:33] satyr has joined the channel [05:37] k1ttty has joined the channel [05:38] tommyvyo has joined the channel [05:43] jimt has joined the channel [05:44] confoocious has joined the channel [05:44] racar has joined the channel [05:45] svnlto_ has joined the channel [05:47] kazupon has joined the channel [05:47] rwaldron has joined the channel [05:48] SamuraiJack has joined the channel [05:49] koo1 has joined the channel [05:49] codygray has joined the channel [05:49] shanebo has joined the channel [05:51] rwaldron has joined the channel [05:53] stantona has joined the channel [05:54] samyak__ has joined the channel [05:55] felixge has joined the channel [05:57] lyte_ has joined the channel [06:00] smgt has joined the channel [06:03] dshaw_ has joined the channel [06:05] satyr has joined the channel [06:06] lorfds has joined the channel [06:06] Margle has joined the channel [06:08] samyak__ has joined the channel [06:08] lorfds: can someone help me debug memory problems in my app [06:09] marting has joined the channel [06:10] grom has joined the channel [06:12] secoif has joined the channel [06:13] secoif has joined the channel [06:13] meso_ has joined the channel [06:15] ryan_stevens has joined the channel [06:15] grom: Server: http://pastebin.com/1wnSd6U7 Client: http://pastebin.com/P7QdpazY [06:15] grom: any ideas why its not working? :( [06:16] meso has joined the channel [06:16] jacobolus has joined the channel [06:20] markma has joined the channel [06:20] tuhoojabotti: What's the difference between a Buffer and a SlowBuffer? :D [06:21] markma: When I install node.js in CentOS5.4 ,It said `make install` is not implemented yet. Bug bnoordhuis about it in #node.js [06:21] makeInstallBot: markma: `make install` is not supported on current node.js `master` due to build system refactor. Please use latest stable tag (v0.6.x). [06:21] ryan[WIN] has joined the channel [06:21] k1ttty has joined the channel [06:22] tuhoojabotti: Also, how do I check for a SlowBuffer+ :D [06:22] tuhoojabotti: instanceof Buffer returns false [06:22] tuhoojabotti: hmm [06:25] tuhoojabotti: ryah: How do I check for a SlowBuffer, now that I have these? [06:26] tuhoojabotti: because instanceof SlowBuffer is undefined [06:26] nadirvardar has joined the channel [06:28] tuhoojabotti: the dgram api returns a SlowBuffer :( [06:28] grom: nvm.. was including the socket.io.js wrong on client side [06:29] tuhoojabotti: I guess I have to wrap the SlowBuffer with a new Buffer [06:31] HT has joined the channel [06:32] Draco_ has joined the channel [06:36] tshpaper has joined the channel [06:37] Draco_ has joined the channel [06:40] braoru has joined the channel [06:40] jjd has joined the channel [06:40] felixge has joined the channel [06:40] felixge has joined the channel [06:41] replore has joined the channel [06:41] amigojapan has joined the channel [06:41] replore_ has joined the channel [06:43] skunkape has joined the channel [06:43] StanlySoManly has joined the channel [06:44] StanlySoManly1 has joined the channel [06:44] NetRoY has joined the channel [06:45] garrensmith: anyone needing help using Couchdb LazyBoy http://www.garrensmith.com/LazyBoy/ I've started a channel #lazyboy for questions [06:46] felixge has joined the channel [06:47] jjido has joined the channel [06:49] mike5w3c has joined the channel [06:51] tih-ra_ has joined the channel [06:52] ppcano has joined the channel [06:52] langworthy has joined the channel [06:54] samyak__ has joined the channel [06:54] petrjanda has joined the channel [06:55] crescendo has joined the channel [06:56] bitwise_ has joined the channel [06:56] confoocious has joined the channel [06:58] fangel has joined the channel [06:59] baudehlo1 has joined the channel [06:59] felixge has joined the channel [06:59] felixge has joined the channel [07:01] fangel has joined the channel [07:03] meso has joined the channel [07:04] simenbrekken has joined the channel [07:06] mdz has joined the channel [07:06] mdz: where do I find a map() function in the node API? (i.e. apply a function to the elements of an array and return an array of the results) [07:07] _zork_ has joined the channel [07:07] tonymilne: mdz it doesn't exist natively in node afaik [07:08] mdz: tonymilne, hmm, curious. thanks [07:08] _zork_: Hello [07:09] skylamer` has joined the channel [07:09] tonymilne: mdz scratch that! [07:09] tonymilne: it does exist! [07:09] k1ttty_ has joined the channel [07:09] tonymilne: mdz call it from an array as you would expect. [07:10] mdz: ah, [].map. OK [07:10] _zork_: I have a question about socket.ondata callback - is it safe to use buffer data outside offset and end arguments ? [07:10] mdz: I'm pretty new to javascript [07:10] mdz: thanks tonymilne [07:10] tonymilne: mdz node repl FTW. [07:10] tonymilne: (as in type node from terminal and test out commands in there) [07:11] maletor has joined the channel [07:14] ammurorei has joined the channel [07:15] jjido has joined the channel [07:16] isaacs has joined the channel [07:16] tih-ra has joined the channel [07:16] dwhittle has joined the channel [07:17] tih-ra_ has joined the channel [07:18] wbednarski has joined the channel [07:20] JumpMast3r has joined the channel [07:21] jetienne has joined the channel [07:21] abraxas has joined the channel [07:23] otakutomo has joined the channel [07:26] _zork_ has joined the channel [07:29] thalll has joined the channel [07:31] chia has joined the channel [07:32] frabcus has joined the channel [07:34] chia_ has joined the channel [07:35] amigojapan_ has joined the channel [07:35] raphdg has joined the channel [07:36] tih-ra has joined the channel [07:36] isaacs has joined the channel [07:36] mike5w3c has joined the channel [07:36] tuhoojabotti: Hey [07:37] smathy has joined the channel [07:39] p1d has joined the channel [07:44] tih-ra_ has joined the channel [07:46] subbyyy has joined the channel [07:48] brianloveswords has joined the channel [07:50] groom has joined the channel [07:50] ph^ has joined the channel [07:51] simenbrekken has joined the channel [07:51] Morkel has joined the channel [07:54] Neil has joined the channel [07:55] rendar has joined the channel [07:56] k1ttty has joined the channel [07:56] martin_sunset has joined the channel [07:58] mdz_ has joined the channel [07:59] tih-ra has joined the channel [08:00] mendel_ has joined the channel [08:02] emattias has joined the channel [08:03] boltR has joined the channel [08:03] `3rdEden has joined the channel [08:03] lyte has joined the channel [08:04] nRike has joined the channel [08:04] nRike: hello guys [08:04] tuhoojabotti: Hey! [08:05] chia_ has joined the channel [08:05] nRike: any hint about "warn - error raised: Error: listen EACCES" using Socket.io & Node.js ? [08:05] tuhoojabotti: Perhaps on #socket.io or something like that [08:05] tih-ra_ has joined the channel [08:06] nRike: great, thank you tuhoo [08:06] tuhoojabotti: :D [08:07] hipsters_ has joined the channel [08:07] zomg: nRike: might be that you're trying a lowport without root [08:07] jetienne: nRike: you bind a post < 1024 ? [08:07] jetienne: as zomg suggested too [08:07] jetienne: post=port [08:07] tuhoojabotti: :) [08:08] alFReD-NSH has joined the channel [08:08] nRike: zomg: hmm, going to try with sudo :) [08:08] tuhoojabotti: Or change the port? [08:09] nRike: jetienne: thank you, going to try right now :) [08:09] tuhoojabotti: sudo is not the best solution :D [08:09] fangel has joined the channel [08:10] pibi has joined the channel [08:11] tih-ra has joined the channel [08:12] Margle has joined the channel [08:12] nRike: ok, solved in this line: app.listen(80); ... changed port to 7070 and worked :) [08:12] felixge has joined the channel [08:12] felixge has joined the channel [08:12] nRike: thank you guys! [08:13] jaequery has joined the channel [08:14] tuhoojabotti: port 1337 ftw [08:14] Jay has joined the channel [08:15] petrjanda has joined the channel [08:15] loob2 has joined the channel [08:16] nRike: leet! [08:17] joshfinnie has joined the channel [08:17] tuhoojabotti: I use that all the time [08:17] tuhoojabotti: expect my server only allows 30-40k :( [08:17] tuhoojabotti: so I need to use 31337 [08:17] vvo has joined the channel [08:19] romanb has joined the channel [08:20] pibi has left the channel [08:20] illumina has joined the channel [08:21] koo3 has joined the channel [08:22] djcoin has joined the channel [08:22] kuebk has joined the channel [08:23] kuebk has left the channel [08:24] NeCkEr has joined the channel [08:24] sindresorhus has joined the channel [08:25] arcanis has joined the channel [08:25] ilya_d has joined the channel [08:26] ramitos has joined the channel [08:27] mange has joined the channel [08:27] svnlto has joined the channel [08:28] tomlion has joined the channel [08:29] towski has joined the channel [08:33] ablomen has joined the channel [08:35] gut4 has joined the channel [08:37] [AD]Turbo has joined the channel [08:37] [AD]Turbo: hi there [08:38] lwille has joined the channel [08:38] ablomen has joined the channel [08:40] BruNeX has joined the channel [08:41] mraleph has joined the channel [08:41] lyte_ has joined the channel [08:42] Druid_ has joined the channel [08:44] AD7six has joined the channel [08:45] Cromulent has joined the channel [08:46] josephg has joined the channel [08:46] spasquali has joined the channel [08:47] icewhite has joined the channel [08:48] ryan_stevens has joined the channel [08:49] brainproxy: anyone had an exerpience where setTimeout called with 0 as the ms value will leak memory, but when used with other values like 20, will not leak? [08:52] bosphorus has joined the channel [08:54] whitman has joined the channel [08:55] mpavel has joined the channel [08:56] abraxas has joined the channel [08:58] ryan_stevens has joined the channel [08:58] nephics has joined the channel [08:59] baudehlo has joined the channel [08:59] mpavel has left the channel [08:59] herbySk has joined the channel [09:00] uchuff has joined the channel [09:00] beevits has joined the channel [09:01] bergie has joined the channel [09:01] salva has joined the channel [09:01] thalll has joined the channel [09:01] ccare has joined the channel [09:02] hipsters_ has joined the channel [09:02] svenlito has joined the channel [09:02] daGrevis has joined the channel [09:02] mike5w3c has joined the channel [09:03] robhawkes has joined the channel [09:04] towski has joined the channel [09:04] AAA_awright has joined the channel [09:07] MCHammer has joined the channel [09:11] tekky has joined the channel [09:12] cognominal has joined the channel [09:13] shiawuen_ has joined the channel [09:13] samyak__ has joined the channel [09:14] johnnywengluu has joined the channel [09:15] satyr has joined the channel [09:15] Morkel_ has joined the channel [09:15] CIA-109: node: 03Ryan Dahl 07master * re0a207c 10/ (6 files in 2 dirs): [09:15] CIA-109: node: Begin moving static vars into struct for isolates. [09:15] CIA-109: node: Only node.cc, stream_wrap.cc, and tcp_wrap.cc have been done. The rest still [09:15] CIA-109: node: need work. - http://git.io/j4Em5g [09:16] shiawuen has joined the channel [09:17] skunkape has joined the channel [09:18] dexter_e has joined the channel [09:18] maletor has joined the channel [09:19] jldbasa has joined the channel [09:19] idefine has joined the channel [09:19] jetienne has joined the channel [09:20] aslant has joined the channel [09:21] zemanel has joined the channel [09:23] epa_ has joined the channel [09:23] booyaa: brainproxy: for my own learning purposes what are you using to detect the memory leak? v8 profiler? [09:25] Nuck: Of the three programmers in my startup, NOBODY is willing to write a unit test [09:25] Nuck: Not one [09:25] Nuck: We have yet to even set up a tests/ directory [09:25] nils_r has joined the channel [09:26] MrBenn has joined the channel [09:27] blup has joined the channel [09:27] konobi: Nuck: so you're saying nothing works? [09:27] konobi: =0) [09:27] Nuck: Nah, it all works, we just test the old fashioned way, by hand! [09:27] ^^_: Good luck Nuck [09:28] Nuck: haha [09:28] Nuck: I know we need to write them [09:28] konobi: Nuck: so you're testing all the failure scenarios too? [09:28] Nuck: But nobody wants to [09:28] Nuck: konobi: Nope, but I don't think Unit Tests do that either [09:28] konobi: sure they do [09:28] Nuck: I test it without Redis all the time [09:28] Nuck: I call it me being an idiot and forgetting to start the server [09:29] konobi: that's a system test... a unit test is testing code in isolation (ie: as a unit) [09:30] Nuck: Oh, I test all my code unitarily before it becomes part of my codebase [09:30] jetienne_ has joined the channel [09:30] konobi: i should try and dig up my QA/Testing for developers slides up at some point [09:30] fff has joined the channel [09:30] Nuck: konobi: SlideShare that shit? [09:30] fff: hello [09:30] Nuck: I suck at tests [09:30] Nuck: I really do [09:30] Nuck: I can't harness Mongo easily [09:30] konobi: yeah, it'll have to wait until i get back to canada [09:31] Nuck: I'll probably end up just using a test DB on mongo [09:32] booyaa: Nuck: you guys prolly don't do agile or ci/cd either? [09:32] fff has left the channel [09:32] Nuck: No CI/CD, and no "agile" persay, just us coding [09:32] ^^_: Nuck, you should check out some of the handy TDD/BDD frameworks for Node. [09:32] ^^_: It's a healthy habit [09:32] Nuck: ^^_: Did. Vows is a devDependency for me :P [09:32] mike5w3c has joined the channel [09:33] ^^_: Cool [09:33] Nuck: I manage my tasks with PivotalTracker, but that's about as close as I get to a rigid system [09:33] Nuck: I had a test/ directory at one point in history... It was just entirely empty so I removed it after a while. [09:33] fangel has joined the channel [09:34] Nuck: I think I wrote 3 lines of code towards a test harness for my Mongo backend, then I never saved it, so it just sat in Sublime Text for a month or two, by which point I'd switched to Mongoose and it was obsolete [09:34] dannyamey has joined the channel [09:36] josh-k has joined the channel [09:37] Emmanuel` has joined the channel [09:37] jomoho has joined the channel [09:38] samyak__ has joined the channel [09:38] lzskiss has joined the channel [09:38] lzskiss: yo [09:38] mc_greeny has joined the channel [09:39] TheJH_phone has joined the channel [09:41] tanepiper: Yo Mr White, what up? [09:42] brainproxy: booyaa: no, I just happened to notice that a test I was running was leaking about 700 MB of memory [09:42] brainproxy: :p [09:43] brainproxy: so I started trying to figure out the culprit, and it seems to be setTimeout when the ms value is 0 [09:43] booyaa: brainproxy: got some code i can give it a go too, is it okay if i get back to later on though [09:43] Nuck: brainproxy: Rut Roh that's common practice o_O [09:44] brainproxy: Nuck: what is? [09:44] Nuck: brainproxy: setTimeout with 0ms [09:44] Nuck: IT's used like process.onNextTick IIRC [09:44] Nuck: or whatever that's called [09:44] brainproxy: yes, that's correct [09:45] TomY has joined the channel [09:45] brainproxy: anyway, am going to try to come up w/ a little script to #1 make sure I'm not confusing the matter, #2 make an easily reproducible issue I can file on github [09:45] daveluke has joined the channel [09:46] daveluke: hi, anyone use webbynode? [09:46] Nuck: haha just fouund the source of this issue :D [09:46] Nuck: ACTION goes to find the cause of this bug in Knox and fix it and pull [09:47] ilya_d has joined the channel [09:47] TomY has joined the channel [09:48] dexter_e has joined the channel [09:48] daveluke: also if i have an error in my server js how can i tell? [09:48] ank_ has joined the channel [09:49] jbpros has joined the channel [09:52] prssn has joined the channel [09:54] adambeynon has joined the channel [09:55] adambeynon has joined the channel [09:56] sfoster has joined the channel [09:56] nicholasf has joined the channel [09:59] jimmysparkle has joined the channel [09:59] baudehlo1 has joined the channel [10:00] koo1 has joined the channel [10:01] polymar has joined the channel [10:01] towski has joined the channel [10:02] saikat has joined the channel [10:03] cognominal_ has joined the channel [10:05] mraleph has joined the channel [10:05] satyr has joined the channel [10:07] joshgillies has joined the channel [10:08] bradleyg has joined the channel [10:10] aliem has joined the channel [10:15] jimt has joined the channel [10:15] jetienne_ has joined the channel [10:17] fly-away has joined the channel [10:18] alFReD-NSH has left the channel [10:19] mike5w3c has joined the channel [10:20] confoocious has joined the channel [10:20] jldbasa has joined the channel [10:20] samyak__ has joined the channel [10:21] Emmanuel` has joined the channel [10:25] meso has joined the channel [10:25] MUILTRFN has joined the channel [10:27] Diaoer has joined the channel [10:29] Diaoer has joined the channel [10:29] cognominal_ has joined the channel [10:29] socketio\test\26 has joined the channel [10:30] cjroebuck has joined the channel [10:31] ChiefWuki has joined the channel [10:32] lauxley has left the channel [10:33] Diaoer has joined the channel [10:33] ppcano has joined the channel [10:34] ppcano has joined the channel [10:34] AD7six has joined the channel [10:36] markwubben has joined the channel [10:36] ppcano has joined the channel [10:37] ppcano has joined the channel [10:38] adrianF has joined the channel [10:42] socketio\test\69 has joined the channel [10:42] gripir has joined the channel [10:44] Nuck: Is it sad that my git commit messages were complete and utter shit until I knew I had another developer reading them? [10:44] kerang has joined the channel [10:44] pgte has joined the channel [10:45] zomg: Nuck: if your code was also complete and utter shit, it was probably fine ;) [10:45] Nuck: zomg: My code has been getting better, but it wasn't total shit before... Just semi-shit [10:45] Nuck: Also, is that topic from Rihanna? [10:45] Nuck: o_O [10:45] Nuck: Because that's what Google's telling me [10:46] akihito_s has joined the channel [10:46] Nuck: ryanna? [10:46] kerang: does node.js keep some sort of cache for dns resolving? i'm getting ETIMEOUT error when trying to connect to a host that can't be resolved, but after the prob is fixed on the machine, node took a while to recover from it [10:47] vguerra has joined the channel [10:48] kerang: i can reproduce this consistently.. but can't find out if there's any setting on node that explain this behavior [10:51] zorzar: hey, is this still the right channel to ask npm questions? [10:52] meso has joined the channel [10:52] ccapndave has joined the channel [10:53] monokrome has joined the channel [10:54] cosmincx has joined the channel [10:55] bradleyg has joined the channel [10:57] skm has joined the channel [10:57] benvie: why is Node's Buffer object so much better than ArrayBuffer and friends [10:57] benvie: or put another way, why is ArrayBuffer and DataView so terrible [10:58] ppcano has joined the channel [10:59] benvie: Buffer is like ArrayBuffer, DataView, and Blob all in one thing [11:00] fermion has joined the channel [11:04] samyak__ has joined the channel [11:06] copongcopong has joined the channel [11:07] ppcano has joined the channel [11:11] trodrigues has joined the channel [11:11] ppcano has joined the channel [11:12] emattias has joined the channel [11:12] cnu has joined the channel [11:12] _unary has joined the channel [11:14] blup has joined the channel [11:14] svnlto has joined the channel [11:15] ppcano has joined the channel [11:16] stagas has joined the channel [11:19] satyr has joined the channel [11:21] Margle has joined the channel [11:24] Nuck: benvie: I think it's because Node is superior to everything. [11:26] stagas has joined the channel [11:28] uptownben has joined the channel [11:28] uptownben: Hey all. [11:29] serrrgi has joined the channel [11:30] ppcano has joined the channel [11:30] shiawuen has joined the channel [11:31] uptownben: I have an array of messages some read, some unread, is there a way I could get the counts of each type that doesn't cause node performance issues? Is just a "for in" good enough? [11:32] ppcano has joined the channel [11:33] zomg: uptownben: how big is the array? [11:33] uptownben: could be a few hundred [11:34] zomg: Few hundred will not cause perf issues no matter how you loop it =) [11:34] benvie: I think it would be sadder if you were composing amazing commit messages with the expectation they wouldn't be read [11:34] benvie: because that's just dumb [11:34] zomg: heh [11:34] zomg: I compose good commit messages [11:34] zomg: even in my own projects [11:34] zomg: mostly because I might read them myself :P [11:34] benvie: I do too and it's sad like I said [11:35] thalll has joined the channel [11:35] zomg: It's only sad if you plan on never having to look at them, which seems unlikely =) [11:35] a_meteorite: I have a philosophy of "commit and forget" [11:35] a_meteorite: helps keep my sanity [11:36] booyaa: i've decided to make all my github commits rhyme [11:36] booyaa: or at very least haiku [11:37] dmportella has joined the channel [11:37] dmportella: anyone know how to get rid of the compilation error OPENSSL_ia32_cpuid link problem. [11:38] dmportella: trying to get node compiled on debian with all dependencies intalled [11:38] dmportella: but keep getting the problem [11:38] dmportella: even with libcurl4-openssl-dev installed [11:38] dmportella: anyone? [11:39] NARKOZ has joined the channel [11:39] NARKOZ has left the channel [11:40] dmportella has joined the channel [11:41] dmportella: anyone [11:41] dmportella: had the some problem? [11:41] ppcano has joined the channel [11:41] igl1 has joined the channel [11:41] ppcano has joined the channel [11:41] ppcano has joined the channel [11:42] ppcano has joined the channel [11:42] ppcano has joined the channel [11:43] uptownben: So if I am just iterating over a array of potentially hundreds (at most a few thousand) items, is it OK to use blocking code? ([].forEach ?) [11:43] Swizec has joined the channel [11:43] JakeyChan has joined the channel [11:44] ppcano has joined the channel [11:44] thalll has joined the channel [11:44] booyaa: ah uptownben seen something you might like [11:44] booyaa: one sec, the short answer is no [11:44] booyaa: but let me find the video explaining why [11:45] thalll has joined the channel [11:45] koo3 has joined the channel [11:45] mange has joined the channel [11:45] booyaa: watch this about flow control: http://vimeo.com/32851269 [11:45] booyaa: sliders are here, but they might not make sense with the narrative: http://dl.dropbox.com/u/221414/talks/NodeFlowControl.pdf [11:46] booyaa: sorry no tl;dr [11:46] d0k has joined the channel [11:46] ppcano has joined the channel [11:47] uptownben: cool, thanks! watching [11:49] michaelhartau has joined the channel [11:50] gde33 has joined the channel [11:55] boehm has joined the channel [11:55] ChiefWuki has joined the channel [11:56] satyr has joined the channel [11:57] ehedenst has joined the channel [11:58] Edy has joined the channel [11:59] D3f0 has joined the channel [11:59] robi42 has joined the channel [12:01] level09 has joined the channel [12:09] flamboz has joined the channel [12:09] iRoj has joined the channel [12:13] daveluke has joined the channel [12:13] fmeyer has joined the channel [12:14] braoru has joined the channel [12:15] confoocious has joined the channel [12:16] gtramontina has joined the channel [12:17] socketio\test\77 has joined the channel [12:17] adrianF has joined the channel [12:17] samyak__ has joined the channel [12:18] skylamer` has joined the channel [12:18] meso_ has joined the channel [12:20] kazupon has joined the channel [12:22] mendel_ has joined the channel [12:22] smgt has joined the channel [12:22] k1ttty has joined the channel [12:22] Shrink has joined the channel [12:27] sdolard has joined the channel [12:27] ChiefWuki has joined the channel [12:28] sdolard: Hi [12:28] sdolard: I'm looking for a way to read gzip file and put data in a Buffer [12:29] sdolard: what is data format from a gunzip stream? [12:29] skylamer` has joined the channel [12:31] scott_gonzalez has joined the channel [12:32] Juan77 has joined the channel [12:33] chot has joined the channel [12:34] vkareh has joined the channel [12:36] aliem_ has joined the channel [12:36] ph^ has joined the channel [12:37] joshfinnie has joined the channel [12:38] shiva_ has joined the channel [12:39] romanb has joined the channel [12:44] tdegrunt has joined the channel [12:46] dubenstein has joined the channel [12:46] rurufufuss has joined the channel [12:48] xy has joined the channel [12:48] fairwinds has joined the channel [12:50] lluft has joined the channel [12:58] daveluke: hi [12:58] ppcano has joined the channel [12:59] tiagobutzke has joined the channel [12:59] ppcano has joined the channel [12:59] baudehlo has joined the channel [13:00] hellp has joined the channel [13:02] skm has joined the channel [13:02] burningdog has joined the channel [13:03] SoulRaven has joined the channel [13:03] ppcano has joined the channel [13:06] denysonique_ has joined the channel [13:06] denysonique_ has left the channel [13:06] AAA_awright_ has joined the channel [13:06] denysonique_ has joined the channel [13:06] denysonique_ has left the channel [13:07] ppcano has joined the channel [13:07] denysonique_ has joined the channel [13:07] denysonique_: Hi [13:07] denysonique_: Is there any favoured by node.js users front-end framework for doing AJAX with node, express etc? [13:09] ilya_d has joined the channel [13:10] willwhite has joined the channel [13:11] Mezriss: jQuery is really nice. I don't think that there are and node.js-specific front-end frameworks for ajax(or that there is a need for them) [13:13] benlyn has joined the channel [13:13] denysonique_: well, jQuery is the standard [13:13] ovaillancourt has joined the channel [13:13] denysonique_: but I am thinking about things such as backbone.js etc [13:13] bergie has joined the channel [13:13] denysonique_: but you are right, there is no great need for such thing [13:14] hipsters_: jquery isn't a framework, but it'll do for any dom-manipulation/ajax you need [13:14] topaxi: the jquery ajax api sucks big time :P [13:14] mike5w3c has joined the channel [13:14] hipsters_: agrree [13:14] hipsters_: *agreed topaxi [13:14] topaxi: i really like tjs superagent, if you need a lot of ajax give it a try :) [13:15] burningdog has left the channel [13:16] jmar777 has joined the channel [13:17] N0va` has joined the channel [13:18] ljl_ has joined the channel [13:18] ljl_ has left the channel [13:18] ljl_ has joined the channel [13:18] denysonique_: so, do many of you Coffee your scripts? ;) [13:19] mmalecki: I like my JS like I like my tea [13:19] mmalecki: (with no coffee_ [13:19] Mezriss: i love my curly brackets [13:22] denysonique_: if you are coming from Python and Ruby/RoR then CoffeeScript seems something very natural [13:22] __doc__ has joined the channel [13:22] medice: i tend to like curly brackets but coffee is pretty neat [13:22] denysonique_: sometimes I choose not to use it thought, sometimes I miss the brackets [13:22] denysonique_: but, sometimes it is a pain when you don't have interpolation at hand [13:22] denysonique_: etc [13:23] sdolard: coffeescript == bandwagon effect ;) [13:23] bnoordhuis has joined the channel [13:23] xy has joined the channel [13:24] brianseeders has joined the channel [13:27] subbyyy has joined the channel [13:27] einaros has joined the channel [13:28] jtrudeau has joined the channel [13:29] josh-k has joined the channel [13:29] zemm has joined the channel [13:30] smgt has joined the channel [13:30] hackband has joined the channel [13:31] Wizek has joined the channel [13:31] Treffynnon has joined the channel [13:32] lmorchard has joined the channel [13:33] dfg_ has joined the channel [13:34] dfg_: sadhus 就是的红色的 [13:35] enmand has joined the channel [13:36] denysonique_: btw, any nice GUI binding for Node? [13:36] Blorb has joined the channel [13:36] EyePulp has joined the channel [13:36] denysonique_: I wish there were Qt bindings for Node [13:37] josephg: sdolard: disagree re: coffeescript [13:37] CIA-109: node: 03Ben Noordhuis 07v0.6 * reef5d32 10/ wscript : build: check for libkvm and libexecinfo on all the BSDs - http://git.io/hkyhCg [13:37] josephg: I like not walking over a landfield of potential syntactic mistakes when I write code (semicolons, ==, etc) [13:38] nbaldwin has joined the channel [13:38] denysonique_: josephg: well, I don't even write ';' when coding in JS [13:38] denysonique_: as JS is lambda oriented the magic coffee arrow '->' quite useful [13:38] josephg: denysonique_: really? Surely there are times that a ';' changes the semantics..? [13:38] denysonique_: is quite useful* [13:39] denysonique_: maybe only for, then [13:39] josephg: ACTION shrugs [13:39] denysonique_: with underscore I think you can do even Array.each etc [13:39] denysonique_: I do that with jQuery and Coffee [13:39] josephg: you don't really need to in coffeescript [13:39] josephg: - you can just f(x) for x in myarray [13:39] denysonique_: in Coffee there is a new for x in [13:40] denysonique_: but I miss sometimes just .each [13:40] josephg: you can always use _ in coffeescript if you want it [13:41] josephg: & v8 (and hence, nodejs) has Array.prototype.each as part of the standard library [13:41] mehtryx has joined the channel [13:41] josephg: myarray.each (x) -> f(x) [13:41] mehtryx has left the channel [13:41] Lingerance: with underscore I think you can do even Array.each etc <-- [1,2,3].forEach(function(value, key) {...}) [13:41] sir_tyrion has joined the channel [13:42] sir_tyrion: What is the proper way to chain 'data' events in http.requests, so that the data is stored in one object? [13:42] Lingerance: - you can just f(x) for x in myarray <-- breaks when people extend Array.prototype [13:42] josephg: Lingerance: no it doesn't. [13:42] jjd has joined the channel [13:42] sir_tyrion: right now my data is broken up every 1000 or so characters [13:42] josephg: f(x) for x of myobject <-- that breaks when people extend Object.prototype [13:42] sir_tyrion: *'data' chunk [13:42] josephg: but you should probably be writing f(x) for own x of myobject [13:42] enmand has joined the channel [13:43] bosphorus has joined the channel [13:43] denysonique_: 'for foo in bar' is not the same in Coffee as in JS [13:43] josephg: sir_tyrion: I usually do something like: var data = []; on('data', function(msg) { data.push(msg); }); on('end', function() { process(data.join('');)}); [13:44] denysonique_: http://jashkenas.github.com/coffee-script/#loops [13:44] Lingerance: > Array.prototype.x = function() {}; for (var x in [1,2]) { console.log(x) } [13:44] Lingerance: 0 [13:44] Lingerance: 1 [13:44] Lingerance: x [13:44] Lingerance: josephg: ^ [13:44] denysonique_: Lingerance: ↑ [13:45] socketio\test\56 has joined the channel [13:45] josephg: $ coffee -be 'Array.prototype.x = -> [13:45] josephg: console.log(x) for x in [1,2,3]' [13:45] josephg: 1 [13:45] josephg: 2 [13:45] josephg: 3 [13:45] Margle has joined the channel [13:46] denysonique_: ;) [13:47] josephg: $ coffee -bpe 'f(x) for x in [1,2]' [13:47] josephg: ^-- that compiles to a normal for loop [13:47] josephg: $ coffee -bpe 'f(x) for x in [1,2]' | uglifyjsvar x,_i,_len,_ref;_ref=[1,2];for(_i=0,_len=_ref.length;_i<_len;_i++)x=_ref[_i],f(x) [13:48] josephg: (sorry about the formatting - I'm not going to paste the whole thing normally.) [13:48] shoobat has joined the channel [13:48] skylamer` has joined the channel [13:50] groom has joined the channel [13:50] catshirt has joined the channel [13:51] denysonique_: josephg: btw, what do you do with Node.js? [13:51] josephg: http://sharejs.org/ [13:52] ryanfitz has joined the channel [13:54] josephg: Lingerance: Also, you should never use for-in loops on arrays in normal javascript anyway. They're way slower than normal for loops because they have to scan the whole prototype chain. Check jsperf if you don't believe me. [13:55] josephg: - just like I learned yesterday that object literals in v8 are 3x slower than objects created using simple constructor functions. (wtf) [13:55] ilya_d_ has joined the channel [13:56] Lingerance: josephg: I don't, I know ExtJS (which I'm portingjosephg: I don't, I know ExtJS (which I'm porting) extends Array.prototype, and node-native-mongo uses for (x in arr) way too often. [13:56] Lingerance: That got mangled. [13:57] jimt_ has joined the channel [13:57] josephg: I can read it [13:57] davidsklar has joined the channel [13:57] josephg: but also, gross if things are using for(x in arr) [13:57] kriszyp3 has joined the channel [13:57] josephg: What does ExtJs put in Array.prototype? [13:58] lazyshot has joined the channel [13:59] madhums has joined the channel [13:59] denysonique_: josephg: share.js is nice! [13:59] denysonique_: I am wondering where I could use that [13:59] denysonique_: (; [13:59] josephg: thanks :) [13:59] josephg: heh [14:00] Lingerance: Some helper functions, they stopped doing that in ExtJS 4 though. [14:00] AaronMT has joined the channel [14:01] noderjs has joined the channel [14:01] rpitrepitrema has joined the channel [14:02] josephg: cool, though I still find ext pretty gross [14:02] Lingerance: Yeah, it's by no means lean. [14:03] josephg: and { I { heard } you Like: putting{} extra { braces() } everywhere} [14:03] Lingerance: Found what they add: .indexOf() (if it doesn't eixsts) and .remove() [14:03] Lingerance: I don't [14:03] josephg: the ext guys seem to [14:03] josephg: at least in the ext-y code I've written [14:03] Lingerance: I also don't see that in the ExtJS code either [14:04] franky_ has joined the channel [14:04] josephg: eh, maybe it was just my code base [14:04] josephg: mmm - having indexOf() is kinda nice [14:04] josephg: ACTION shrugs [14:05] shiawuen has joined the channel [14:06] tomlion_ has joined the channel [14:06] k1ttty has joined the channel [14:08] blaka has joined the channel [14:08] jtsnow has joined the channel [14:08] ikbear has joined the channel [14:08] blaka: good evening people are there admins on? [14:09] ikbear has left the channel [14:09] skm has joined the channel [14:09] Poetro has joined the channel [14:09] Poetro has joined the channel [14:09] luxigo has joined the channel [14:09] Fabryz: heya, where's the usual gist with the 30 seconds install? [14:10] shanebo has joined the channel [14:10] booyaa: Fabryz: for node? [14:10] Fabryz: yes [14:11] booyaa: https://gist.github.com/910602/6c1f061d80cd4d508fa1ef3cbe682cb0b0283a69 [14:11] Fabryz: booyaa thx [14:11] nicholasf has joined the channel [14:11] herbySk has joined the channel [14:14] jbpros has joined the channel [14:15] benlyn has joined the channel [14:15] willwhite has joined the channel [14:16] lyte has joined the channel [14:16] lyte has joined the channel [14:16] CIA-109: node: 03koichik 07master * rf8c335d 10/ (5 files in 3 dirs): [14:16] CIA-109: node: tls: enable rejectUnauthorized option to client [14:16] CIA-109: node: Fiexes #2247. - http://git.io/gsEBFw [14:17] kazupon has joined the channel [14:20] tomlion has joined the channel [14:20] hunterloftis has joined the channel [14:21] nils_r has joined the channel [14:22] natehunzaker has joined the channel [14:23] jetienne_ has joined the channel [14:23] natehunzaker has left the channel [14:24] natehunzaker has joined the channel [14:24] vvo has joined the channel [14:25] thepatr1ck has joined the channel [14:25] joestein has joined the channel [14:26] Marlemann has joined the channel [14:26] broofa has joined the channel [14:26] mdel has joined the channel [14:27] ashwinp has joined the channel [14:27] malkomalko has joined the channel [14:27] Wizek has joined the channel [14:28] Venom_X has joined the channel [14:29] broofa has joined the channel [14:29] tomlion_ has joined the channel [14:30] daveluke has joined the channel [14:31] Marlemann: Hey guys [14:31] jstash has joined the channel [14:31] tuhoojabotti: Hola [14:31] ashwinp: Hello [14:31] klsh has joined the channel [14:32] lduros has joined the channel [14:32] genexp has joined the channel [14:32] gut4 has joined the channel [14:32] ashwinp has left the channel [14:32] madhums has joined the channel [14:34] Marlemann: Yeah, you're arent't inactive =) [14:34] enmand_ has joined the channel [14:37] enmand__ has joined the channel [14:37] Vennril has joined the channel [14:37] benvie: hah [14:38] benvie: way more than 10% [14:38] benvie: so much async you can fly a plane to yesterday from the Buffer you make tomorrow [14:39] Aikar: lol [14:39] benvie: or so much async that you can time travel [14:39] Aikar: ,_, been a hectic past 2 weeks [14:40] Aikar: been trying to keep up over email digest, but anything major to be known from past 2 weeks? [14:40] benvie: 0.6.6 has v8 3.7.12 [14:40] benvie: which is kind of a big deal for some things [14:41] Aikar: what does that introduce? [14:41] tuhoojabotti: Link to changelog pl0x [14:41] tuhoojabotti: :D [14:41] benvie: the 3.7 branch introduced a completely new garbage collector and a ton of changes behind the scenes related to that [14:41] tuhoojabotti: Ah that! [14:41] tuhoojabotti: Cool. [14:42] benvie: from the JS end the biggest changes are related to the harmony stuff which you can access with the --harmony flag [14:42] Aikar: hmm wasnt v.6 on 3.6 v8, we did a jump on the stable branch? [14:42] benvie: that adds the following global objects: Proxy, WeakMap, Map, and Set [14:42] benvie: well they had already upgraded and then reverted during 0.5 [14:42] benvie: just due to the performance not being there yet [14:42] Aikar: meh i consider those features unusable (but desired) until they are default on [14:42] benvie: but it's fine now and there's no big issue otherwise [14:43] benvie: the GC thing should be impactful [14:43] benvie: for performance [14:43] tuhoojabotti: I want it to Chrome [14:43] tuhoojabotti: for my webgl game :D [14:43] Aikar: so does it require code updates or just a note performance will improve? [14:43] benvie: no code updates [14:43] ashwinp has joined the channel [14:44] benvie: they wouldn't have, as you mentioned, on the stable branch [14:44] Aikar: ah k, i havent updated my systems to .6 yet anyways (had family emergency and been out of work for 2 weeks...) but i was gonna be shocked if such a change was made on stable [14:44] criswell has joined the channel [14:45] benvie: oh no. And like I said it was going to be in originally but V8 had some issues at the time [14:45] benvie: like 0.5.10 uses a new V8 than anything up until 0.6.6 [14:45] joshfinnie has joined the channel [14:45] Aikar: actually now i remember, i believe my app works just fine on .6 [14:45] Aikar: i think i ran it accidently in dev under .6 and it still worked [14:45] benvie: nothing big in the last two weeks if you weren't relying on that stuff =D [14:46] Aikar: though ill wait until next week to do solid testing before pushing to prod [14:46] benvie: it's a big deal if you've needed it [14:46] Aikar: im still on .4 in prod [14:47] benvie: the harmony stuff is important for implementing certain things that are otherwise impossible [14:47] Aikar: thankfully this project at work isnt really hindered by the other teams/prod engineers since it was designed to be a non critical system, so i got pretty much full control on it :P [14:47] Aikar: yeah id love to have proxies [14:47] Aikar: but i dont consider them useful until its default on [14:47] Aikar: cause then you cant use it in modules or youll have cases of people running it w/o --harmony [14:47] benvie: I take that tact in browsers obviously but less so in Node [14:47] benvie: since you can basically force it [14:48] Aikar: how? [14:48] benvie: by launching a child process using the flag and then switching out basically [14:48] benvie: if you're launching the module through npm [14:48] Aikar: yes but as a module you provide to others to use, force reloading their process isnt safe [14:48] benvie: npm will respect the flags set at the top of the file using hashbang like #! /usr/bin/node --harmony [14:49] Aikar: say your module foo uses harmony, user does npm install foo, then user does require('foo') [14:49] Aikar: they dont neccessarily know they need --harmony [14:49] benvie: yeah you're right [14:49] benvie: well what i do [14:49] ashwinp has left the channel [14:50] benvie: I check for the presence of Proxy and WeakMap in the index file and throw an error so there's no possible way that anything gets done with the module without it [14:50] benvie: maybe they do it once and get the error [14:50] ashwinp has joined the channel [14:50] Aikar: that is possible yeah, but really not desirable, id rather just wait until its default on and not change a users expected use of node [14:50] benvie: but I specifically state "do exactly this" and it's not a huge change to so do it [14:50] benvie: yeah I mostly agree [14:51] benvie: if you don't need it for what you're doing, like if it's a convenience. And it mostly is since it tackles problems in a different way than people are even used to so far [14:52] benvie: then do it the way that doesn't throw a wrench in it [14:52] KishCom has joined the channel [14:52] benvie: the thing I keep seeing though is [14:52] benvie: even to this day, with modules like "now" [14:53] criswell has joined the channel [14:53] benvie: people using require('node-proxy') and not understanding what the actually means [14:53] benvie: which is a way less desirable result than just throwing an error and telling people to run with the flag [14:54] louissmit has joined the channel [14:54] joestein has joined the channel [14:54] Aikar: node-proxy uses --harmony now? [14:55] benvie: nono it *doesn't* [14:55] benvie: which is the problem [14:55] benvie: it's third party shimmed in functionality that poorly simulates stuff that exists directly in v8 core [14:55] benvie: something that has a huge impact on performance [14:55] Aikar: yeah i know, i even wrote a baseline imp before too, but then found that module [14:56] Aikar: but i gave up on using it because function proxies have a typeof of object instead of function [14:56] Aikar: so 'instanceof' throws an error [14:56] benvie: people don't a.) realize it's implemented in v8 core with a flag or b.) don't realize they're even using a module that does this [14:56] benvie: yeah in the real thing [14:56] benvie: typeof Proxy.createFunction(stuff) === 'function' [14:57] benvie: and instanceof [14:57] Aikar: i have this https://github.com/aikar/autoloader [14:57] benvie: er wait [14:57] benvie: lemme check [14:57] Aikar: i first implemeneted with node-proxy to not need to do file system scanning on load [14:57] Aikar: but i gave up that idea, just made it scan entire dir on startup and cache it all [14:58] benvie: vast, huge improvements were made to the harmony features in the 3.7 branch [14:58] eschnou has joined the channel [14:58] Aikar: which i guess is partially better in some ways [14:58] Marlemann: Don't want to bother you.. but Node.js is really great & simple... I like the http supp. but i think there shout also be a implementation for HTCPCP =) [14:58] Aikar: what is that Marlemann ? [14:59] Aikar: never heard of it [14:59] tomlion has joined the channel [14:59] Marlemann: i will tell you but.. it isnt a joke [14:59] josephg: HDCP? [14:59] Aikar: Marlemann: http is also a special case, node likes to extremely slim, just http is something ry felt was best to 'do it once and do it right' [15:00] baudehlo1 has joined the channel [15:00] thomblake has joined the channel [15:00] Marlemann: "Hyper Text Coffee Pot Control Protocol" - Would be a great exercise for me to make a plugin that can speak HTCPCP [15:00] Aikar: lol [15:00] Aikar: thats doable [15:01] Marlemann: Thats for controlling coffee machines, but no joke, dont want to mess you around, i really want a plugin for that.. .. [15:01] benvie: this is some useful stuff I implemented (needs updating though) for using proxies https://github.com/Benvie/meta-objects/tree/master/lib [15:01] ashwinp has joined the channel [15:01] benvie: and I've implemented a few features for dom.js to run in node, which relies entirely on Proxies to create an IDL compliant host for the DOM in javascript [15:01] Marlemann: at the start it was a RFC Joke but there are really coffee machines that are supporting this protocol... [15:02] josephg: SubStack could probably bang out a HTCPCP implementation in about 5 minutes... [15:02] eldar has joined the channel [15:02] josephg: he might already have one [15:02] lmorchard has joined the channel [15:02] criswell has joined the channel [15:02] rwaldron has joined the channel [15:02] Marlemann: Aikar ? [15:02] jscheel has joined the channel [15:02] jscheel has joined the channel [15:03] Aikar: Marlemann: you can do that as a node module sure, just it wouldnt ever be included into node core lol [15:03] Aikar: Marlemann: make a package.json with a name in it, then npm publish when done [15:04] Marlemann: okey i think nobody needs that in the node core .. [15:04] Marlemann: okey thanks i will try to do that [15:04] Marlemann: Thank you guys =) [15:04] thomblake has left the channel [15:05] devaholic: Aikar: lazy loading? kind of neat.. i just put this out yesterday https://github.com/tblobaum/node-directory [15:05] Ownatik has joined the channel [15:05] bradleyg has joined the channel [15:05] Druid_ has joined the channel [15:06] [AD]Turbo has joined the channel [15:06] devaholic: require('directory')([dirname,] function (module, filenameWithoutExtension) { //... }) [15:07] Ownatik: Hey, I have made modification to a npm package which the package maintainer do not want to add support for. I'd like to keep in sync with his package without always merging his updates. Is it possible to make another package with acts like an extension to his package and adds the could of lines I need to add my functionality? [15:07] shanebo has joined the channel [15:07] Aikar: devaholic: its meant to simplify large "applications" where you will start to have a large codebase, so if you need say 15 diff things in 1 file, itll smart load them for you on demand. so you can build common code libraries for your applications and use as a submodule/external etc and load as needed [15:07] daveluke: hey what should i look into for using a mysql db via node.js [15:08] Aikar: for small things and one offs, yeah it wont be that useful [15:08] Wizek has joined the channel [15:08] josephg: Ownatik: sure :D module.exports = eval(require('fs').readFileSync(require.resolve('othermodule')) + 'function() {….}') [15:08] Aikar: ewww [15:08] Aikar: i see eval [15:08] devaholic: Aikar: i hear that. not sure of the best implementation as of yet. node-directory requires subdirs and i use it with index.js files to get rid of a lot of require statements that are repetitive [15:09] devaholic: well it calls require on every path in the same directory except it's own [15:10] Aikar: yeah autoloader doesnt do that [15:10] devaholic: i use it to load up a huge library of plugins and schemas [15:10] tih-ra has joined the channel [15:10] Aikar: it sets up getters so that when a variable is attempted to be used, it then requires the file [15:10] EuroNerd has joined the channel [15:10] Aikar: so you could call autoloader then never do anything and nothing will be required [15:10] plutoniix has joined the channel [15:10] Shrink has joined the channel [15:10] devaholic: https://github.com/flatiron/utile/blob/master/lib/index.js#L248 [15:11] JasonJS has joined the channel [15:11] Aikar: so if you have Foo/Bar.js, itll create a getter for Foo. Once you access Foo.Bar, the getter for Foo triggers, initializes Foo, then adds a getter for Bar onto Foo, then that getter is fired, loads Bar.js, and returns the contents of Bar.js [15:11] lazyshot has joined the channel [15:12] stantona has joined the channel [15:12] emattias_ has joined the channel [15:12] joshkehn has joined the channel [15:12] joshkehn has left the channel [15:12] Aikar: example: https://github.com/aikar/nope/blob/master/examples/example.js [15:12] Industrial: I wanted autoloading when I started out with node but now I prefer the verbosity of local requires [15:13] thepatr1ck has joined the channel [15:14] devaholic: Its potentially useful for libraries within large apps [15:14] joaquin_win_ has joined the channel [15:14] criswell has joined the channel [15:14] Aikar: verbosity is nice, but when your developing large scale applications when you have ALOT of code, it can get to be a hassle. and if you name your vars smart like MyApp.Foo.Bar.Baz and your aware of how your app works, you know everything on the MyApp var is in lib/MyApp/ so its then lib/MyApp/Foo/Bar.js and you know EXACTLY where the code is for that object [15:14] devaholic: its not a replacement for requiring your files [15:14] ryanfitz has joined the channel [15:14] pickels_ has joined the channel [15:14] luxigo: any gui project beside node-gui from zcbenz and brainfucker ?.. [15:15] Lingerance: Ownatik: Yes: require('module').yourThing = ... [15:15] akihito_s has joined the channel [15:15] luxigo: ie: package compatible with latest nodejs [15:15] patate has joined the channel [15:16] boltR has joined the channel [15:17] Aikar: youll never get away from using require (nor should you try), but when you have your own code (ie not npm modules) related to your app, having a little assistance to reduce replicating require statements in 40 files is def a major helper [15:18] devaholic: yes. that. [15:18] Aikar: and thats why i created autoloader [15:18] dnjaramba has joined the channel [15:19] loob2 has joined the channel [15:20] pkrumins: Just published a new article in "node.js modules you should know about" article series! [15:20] pkrumins: This time it's the node-hashish: http://www.catonmat.net/blog/nodejs-modules-hashish/ [15:21] neurodrone_ has joined the channel [15:22] ramitos has joined the channel [15:23] franky_: <3 [15:23] SoulRaven has joined the channel [15:24] SoulRaven has joined the channel [15:24] daveluke: noob question: how do i send a response just to a specific client? [15:25] JumpMast3r has joined the channel [15:25] Aikar: you need a reference to their socket [15:26] daveluke: is that one of the objects passed into the request event? [15:26] daveluke: nope, that be the response [15:26] daveluke: :( [15:26] Aikar: a plain http request? [15:26] Aikar: or sockets? [15:26] daveluke: http.. that was gonna be my next question.. do i need something other than http [15:27] strmpnk has joined the channel [15:27] satyr has joined the channel [15:28] strmpnk has joined the channel [15:28] Nuck: `3rdEden: I just had a thought. It's now known that GoogleBot does run some JS, so I wonder if it'll handle Observer. If so, it'd be interesting to see what events it fires in probing a page. [15:30] fatjonny has joined the channel [15:31] codygray has joined the channel [15:32] shanebo has joined the channel [15:34] Xano has joined the channel [15:34] akihito_s has joined the channel [15:35] MatthewS has joined the channel [15:36] heavysixer has joined the channel [15:37] kostajh has joined the channel [15:38] JKarsrud: where does the .msi put the files on windows? [15:38] willwhite has joined the channel [15:38] JKarsrud: so that I can use node from the command lone? [15:38] JKarsrud: line* [15:39] Mezriss: it adds node to PATH variable (or something like that) [15:40] Mezriss: so you can just use "node" [15:40] bnoordhuis: JKarsrud: wat Mezriss said, the files themselves get installed in C:\Program Files\nodejs iirc [15:40] daveluke: how do i add a listener to an event for the http object? [15:40] JKarsrud: hmm, doesn't seem to be working here [15:40] daveluke: i thought it'd just be foo.on('connection', function() {} ) [15:41] JKarsrud: it installed fine, and I see them in the path, but still doesn't work [15:41] muloka has joined the channel [15:41] JKarsrud: maybe I need to restart? that'd be typical windows :P [15:41] Me1000 has joined the channel [15:41] JKarsrud: no wait, there we go [15:41] JKarsrud: weird [15:41] JKarsrud: wth [15:42] Mezriss: and I just wanted to propose the usual "format & reinstall" routine [15:44] Edy has joined the channel [15:44] lmorchard has joined the channel [15:44] ceej has joined the channel [15:45] Wizek has joined the channel [15:47] adrianF has joined the channel [15:47] ljackson has joined the channel [15:47] pixel13 has joined the channel [15:47] pixel13 has left the channel [15:48] kevwil has joined the channel [15:48] dilvie has joined the channel [15:48] meandi has joined the channel [15:48] kevwil_ has joined the channel [15:49] truedat101 has joined the channel [15:50] Raynos: SilkJS : http://www.sencha.com/forum/showthread.php?160128-Announcing-SilkJS claims to have a HTTP server that's a couple times faster then node [15:50] Raynos: People might be interested into seeing why and seeing if we can make any optimisations for node. [15:50] TheJH has joined the channel [15:54] jbrokc has joined the channel [15:54] baudehlo: Yet Another "Node is slow on one CPU" comparison. [15:55] broofa has joined the channel [15:55] bnoordhuis: Raynos: not to disparage that guy's fine effort but his http parser is rudimentary at best [15:55] PPaul has joined the channel [15:55] Esteb has joined the channel [15:56] jbpros has joined the channel [15:56] bnoordhuis: it's not difficult to be faster if you only implement a subset of http/1.1 [15:56] jtsnow has joined the channel [15:57] baudehlo: and use all the CPUs [15:58] socketio\test\64 has joined the channel [15:58] devongovett has joined the channel [15:58] baudehlo: and use Node 0.4.8 [16:00] JKarsrud: is node-waf not part of nodejs on windows? [16:01] bnoordhuis: JKarsrud: no, native add-on support on windows is WIP [16:01] JKarsrud: hmm, ok [16:01] JKarsrud: that's a problem, then [16:01] TheJH: JKarsrud, what native stuff do you need? [16:02] JKarsrud: I'm trying to install the glob package, and that fails to install [16:02] kishoreyekkanti has joined the channel [16:02] JKarsrud: I suspect it's because node-waf is missing, as the build scripts call node-waf [16:03] jbpros has joined the channel [16:04] gsmcwhirter has joined the channel [16:04] JKarsrud: maybe I'm actually missing something required for node to be able to run something? [16:04] JKarsrud: lol, that was an awesome sentence! [16:05] [AD]Turbo has joined the channel [16:06] redir has joined the channel [16:07] TheJH: JKarsrud, what do you want it for? [16:08] WarheadsSE: ACTION laughs at SilkJS [16:09] JKarsrud: TheJH; busterjs, a unit testing framework has a dependency to glob2.1.0, and glob fails to install from npm [16:09] Wizek has joined the channel [16:10] JKarsrud: I suppose it's this Makefile's fault; https://github.com/isaacs/node-glob/blob/master/Makefile [16:10] JKarsrud: if node-waf isn't supported, it should fail hard, amirite? [16:10] TheJH: JKarsrud, node-glob needs a binding, you'd have to completely rewrite it to work without [16:10] TheJH: JKarsrud, and native stuff doesn't work on win [16:10] tih-ra_ has joined the channel [16:10] JKarsrud: no, exactly, that was my original question :) [16:11] mehtryx1 has joined the channel [16:11] TheJH: JKarsrud, but I doubt that the test framework doesn't need it, I'll have a look... [16:12] storrgie has joined the channel [16:12] mehtryx1 has left the channel [16:13] JKarsrud: I could just clone the framework and put node-glob in there myself, but that's not as nice, imo [16:13] JKarsrud: TheJH: they are looking at glob alternatives that use node's fs instead tho, so when that's done enough it should be ok [16:13] TheJH: JKarsrud, won't work [16:14] TheJH: JKarsrud, copying in the files won't work [16:14] aelien27 has joined the channel [16:14] pandeiro has joined the channel [16:15] JKarsrud: aight [16:15] Wizek has joined the channel [16:16] enmand has joined the channel [16:16] JKarsrud: TheJH: it's not really a big problem atm, it was just a test. I'm on unix 95% of the time, so it was mostly a test [16:16] hbi has joined the channel [16:16] JKarsrud: it just means that we can't use buster on our CI-server just yet :) [16:18] stagas has joined the channel [16:18] jsurfer has joined the channel [16:20] storrgie has joined the channel [16:20] jaequery has joined the channel [16:20] tjholowaychuk has joined the channel [16:21] brianc has joined the channel [16:21] tiagobutzke has joined the channel [16:21] sh1mmer has joined the channel [16:23] avalanche123 has joined the channel [16:24] NetRoY has joined the channel [16:25] jbrokc has joined the channel [16:25] criswell has joined the channel [16:25] broofa has joined the channel [16:26] enmand has joined the channel [16:28] AndreasMadsen has joined the channel [16:28] tazrover has joined the channel [16:29] MatthewS has joined the channel [16:30] ryan_stevens has joined the channel [16:30] blup has joined the channel [16:31] SSgtSpoon|work has joined the channel [16:31] fangel has joined the channel [16:31] truedat101 has joined the channel [16:31] tomlion_ has joined the channel [16:31] CarterL has joined the channel [16:33] gtramontina has joined the channel [16:33] fangel has joined the channel [16:36] kenperkins has joined the channel [16:38] maletor has joined the channel [16:38] enmand has joined the channel [16:40] colinclark has joined the channel [16:41] vguerra has joined the channel [16:42] isaacs has joined the channel [16:42] jskulski has joined the channel [16:42] mynyml has joined the channel [16:42] kazupon has joined the channel [16:43] ryanfitz has joined the channel [16:44] dexter_e has joined the channel [16:44] Gonzih has joined the channel [16:45] caolanm has joined the channel [16:45] Xano has joined the channel [16:45] gut4 has joined the channel [16:45] sdwrage has joined the channel [16:46] bartt has joined the channel [16:46] jesster7 has joined the channel [16:46] colinclark has joined the channel [16:48] scott_gonzalez: hey isaacs, any chance you'd be interested in having a quick chat about package management for the new (in progress) jQuery plugins site? [16:49] truedat101 has joined the channel [16:51] frabcus has joined the channel [16:51] jtgiri_ has joined the channel [16:53] powdahound has joined the channel [16:54] Dreamer3 has joined the channel [16:54] jbrokc_ has joined the channel [16:54] jj0hns0n has joined the channel [16:54] trco has joined the channel [16:55] dgathright has joined the channel [16:57] apejens has joined the channel [16:57] mandric has joined the channel [16:57] baudehlo1 has joined the channel [16:58] pizthewiz has joined the channel [16:59] lzskiss has joined the channel [17:00] GrizzLyCRO has joined the channel [17:03] jerrysv has joined the channel [17:04] mendel__ has joined the channel [17:04] brianc: "quick chat" about package management is like "a quick 14 hour plane flight to Mumbai" [17:04] martin_sunset has joined the channel [17:04] mdz has left the channel [17:04] brianc: :) [17:05] langworthy has joined the channel [17:06] scott_gonzalez: heh [17:06] mange has joined the channel [17:07] Mezriss: but new jQuery plugin site might be worth it [17:07] daveluke has joined the channel [17:08] catshirt has joined the channel [17:09] chrislorenz has joined the channel [17:11] jakubracek has joined the channel [17:11] mange has joined the channel [17:12] jakubracek: Hello, please can I use require like this ? http://hastebin.com/NLUi7soV0o.sm because I am getting "Cannot find module './models'" Thank you ! :) [17:12] BillyBreen has joined the channel [17:13] Poetro_ has joined the channel [17:13] Poetro_ has joined the channel [17:13] govorunov has joined the channel [17:13] brianc: jakubracek: you can use that, but it will be looking for models in cwd which might not be what you think it is. Try doing this: require(__dirname + '/models') [17:14] brianc: jakubracek: also it will be looking for index.js in your /models folder. if that file is missing it wont work [17:14] jakubracek: brianc: Oh thank you :) [17:14] gde33 has joined the channel [17:14] brianc: jakubracek: you're welcome. have fun node-ing. :) [17:15] Destos has joined the channel [17:16] jbrokc has joined the channel [17:16] lazyshot has joined the channel [17:17] stelleg has joined the channel [17:18] jakubracek: brianc: Again thanks :) btw How router works ? Because here is only: routes = require("./router") and in router folder is index.coffee with export.index and I can make new file called something.coffee with exports.something and node will see it, or no ? [17:18] pickels_ has joined the channel [17:19] cedeon has joined the channel [17:19] Leemp has joined the channel [17:19] mpavel1 has joined the channel [17:19] noob13 has left the channel [17:19] mpavel1 has left the channel [17:19] saikat has joined the channel [17:20] dilvie has joined the channel [17:20] EhevuTov has joined the channel [17:22] cedeon: hi all, anyone in here running node/v8 on arm? #cantgetittowork [17:22] isaacs: scott_gonzalez: sure, i have to run for a few minutes. can you ping me in an hour or two? [17:22] fzzzy has joined the channel [17:22] criswell has joined the channel [17:23] perezd has joined the channel [17:23] Peter____ has joined the channel [17:23] scott_gonzalez: isaacs: sure [17:24] tkaemming has joined the channel [17:24] socketio\test\03 has joined the channel [17:26] Robi_ has left the channel [17:26] broofa has joined the channel [17:26] TheJH: cedeon, it's installed on my android [17:26] TheJH: cedeon, I used a whole fedora chroot and just built node inside it :D [17:27] ank has joined the channel [17:27] jesster7 has left the channel [17:28] gr-eg has joined the channel [17:28] cedeon: TheJH: did you cross compile from x86/64 because it seems thats most of my compile problem.. seems google have been doing that and forgot about the native host/target arm peops [17:28] broofa_ has joined the channel [17:28] perezd_ has joined the channel [17:28] MatthewS has joined the channel [17:28] criswell has joined the channel [17:28] TheJH: cedeon, no, cross-compile is kinda problematic, I think [17:28] perezd_ has joined the channel [17:28] TheJH: cedeon, I downloaded the tarball and ran the build stuff on the phone [17:29] lightcap has joined the channel [17:29] toopay has joined the channel [17:29] stonebranch has joined the channel [17:29] r1ngzer0 has joined the channel [17:31] cedeon: TheJH: i'll have to try that. im using gentoo atm [17:31] cedeon: TheJH: i finally got it to compile but everytime i run a .js with node i get 'illegal instruction' [17:32] cedeon: no sorry, illegal access [17:32] cedeon: i think its a v8 issue [17:34] mendel_ has joined the channel [17:34] mange has joined the channel [17:35] mange has joined the channel [17:35] tdegrunt has joined the channel [17:35] cedeon: anyone here know what the util.js is used for in node? mine crashes at line 512 im curious as to whats going on there [17:36] TheJH: cedeon, it contains some javascript helper functions other parts of node core need [17:36] _dc has joined the channel [17:36] cedeon: TheJH: thx [17:37] fra000 has joined the channel [17:39] JumpMast3r has joined the channel [17:41] joshfinnie has joined the channel [17:43] seebees has left the channel [17:44] mehtryx has joined the channel [17:44] dshaw_ has joined the channel [17:44] jxson has joined the channel [17:44] truedat101 has joined the channel [17:45] ryan_stevens has joined the channel [17:45] StanlySoManly has joined the channel [17:46] _dc has joined the channel [17:46] svnlto has joined the channel [17:46] stonebra_ has joined the channel [17:46] springmeyer has joined the channel [17:47] josh-k has joined the channel [17:47] kesun421 has joined the channel [17:48] imarcusthis has joined the channel [17:49] pita has joined the channel [17:49] pita: Is it possible to drive node into a state where it does no file IO at all? So that all callbacks of file operations never get called? I think we're watching this here [17:51] kishoreyekkanti has joined the channel [17:53] mikekelly has joined the channel [17:53] autarch has joined the channel [17:53] rauchg has joined the channel [17:53] mikekelly: am I right in thinking that Connect middleware can't modify the resposne ? [17:53] autarch: is there a sane way to get useful information about the call stack that doesn't involve parsing an exception? [17:53] autarch: huge bonus points if this works both in node and browsers [17:54] TheJH: autarch, "arguments.callee.caller" [17:54] TheJH: autarch, note that this doesn't work with recursion [17:54] autarch: which returns a function object - how do I get that function's name? [17:55] TheJH: autarch, ".name" [17:55] autarch: yeah, that's empty for some reason [17:55] mikekelly: creationix: is that right? I can't modify the response from Connect middleware without monkey patching ? [17:55] TheJH: autarch, that means it's either an anonymous function or you're using IE [17:55] autarch: hmm, I'm using node in this case [17:56] sir_tyrion: What is the best way to return a variable at the end of a readable stream? `x = str.on('data', function(msg){return msg;});? [17:56] TheJH: autarch, you can still inspect its source with .toString() [17:56] autarch: TheJH: yeah, that much I know [17:56] autarch: so this is a function that belongs to an object - foo.prototype.funcName = function () { ... } [17:56] autarch: what I'm looking for is "funcName" [17:57] zomg: sir_tyrion: it doesn't quite work like that. What you're assigning to x is what str.on() is returning, which is not what the callback returns [17:57] baudehlo: autarch: do you get the function name in new Error().stack? [17:57] sir_tyrion: I am making requests that return a JSON formatted string, but I am having problems assigning the output to a variable [17:57] jbpros has joined the channel [17:57] OneOfOne has joined the channel [17:57] OneOfOne has joined the channel [17:57] autarch: baudehlo: yep [17:57] sir_tyrion: so I am nesting requests as a workaround but i don't want to do that [17:58] baudehlo: you can get bits out of the Error stack with some fudgehackery, but it's v8 specific. [17:58] autarch: baudehlo: yeah, that's probably not the best approach for what I'm doing [17:58] autarch: I think I'll just parse the stack trace for now [17:59] autarch: sigh ... sometimes javascript is just such an anemic language [17:59] baudehlo: yep [17:59] bosphorus has joined the channel [17:59] baudehlo: are you the DateTime autarch? [17:59] autarch: yes [17:59] baudehlo: ACTION waves [17:59] autarch: I'm totally spoiled by Perl - my $caller = caller() [17:59] baudehlo: ACTION is msergeant [17:59] TheJH: autarch, substack built something that just puts wrappers around all operations to build a cross-engine cool stack trace, but I'm not sure whether it's open source [17:59] pita: http://groups.google.com/group/nodejs/browse_thread/thread/7e7b95a7556be437 [18:00] autarch: baudehlo: hi, long time no talk [18:00] baudehlo: indeed. [18:00] autarch: I'm working on a port of Moose to JS (yes, I know one already exists) [18:00] TheJH: pita, did you try reading files in a fixed interval? [18:00] gut4 has joined the channel [18:00] Carter_ has joined the channel [18:01] autarch: I'm trying to implement my own dispatching to superclass methods, but it's really freaking hard without being able to introspect the caller [18:01] pita: TheJH: no, why? [18:01] jakehow has joined the channel [18:01] pita: it was a http server that logged [18:01] baudehlo: autarch: also bear in mind inspecting the stack is really slow in JS. [18:01] autarch: yeah [18:01] TheJH: pita, well, I'd try making sure that the problem really is the fs stuff [18:01] pita: http requests that didn't need to read a file still worked [18:01] fmeyer_ has joined the channel [18:01] pita: its not reproducable [18:01] baudehlo: I could only get 100k inspections per second out of it. [18:01] reid has joined the channel [18:01] autarch: that's ok, ultimately this will just generate code (like Moose's make_immutable) [18:01] towski has joined the channel [18:02] baudehlo: and that was with a minimal Error.prepareStackTrace() [18:02] pita: TheJH: its not reproducable, it happend two times in production [18:02] baudehlo: if you do anything complex it drops to 30k/sec [18:02] frabcus has joined the channel [18:02] ryanfitz has joined the channel [18:02] baudehlo: but fair enough, if it's just for static code generation [18:02] TheJH: pita, mmhm... what node version? [18:03] autarch: baudehlo: well, for the first pass it'll actually run at runtime, but that's the proof of concept version [18:03] pita: TheJH: 0.4.12 [18:03] wilmoore has joined the channel [18:03] autarch: once the meta model actually works 100% it's really really easy to write something to generate optimized code [18:03] baudehlo: autarch: did you want to see my code for examining the stack via Error.prepareStackTrace? [18:03] autarch: baudehlo: there's this thing - https://github.com/eriwen/javascript-stacktrace [18:03] TheJH: pita, why not 0.6.x? also, next time, attach a debugger to it and find out what really is the problem. [18:04] autarch: baudehlo: but I wouldn't mind seeing yours too [18:04] TheJH: pita, you can open the debugging port with some special kill signal [18:04] pita: TheJH: really, which one? [18:05] jbrokc_ has joined the channel [18:05] EuroNerd_ has joined the channel [18:06] TheJH: pita, "The V8 debugger can be enabled and accessed either by starting Node with the --debug command-line flag or by signaling an existing Node process with SIGUSR1." http://nodejs.org/docs/v0.6.5/api/all.html [18:06] baudehlo: autarch: https://gist.github.com/1443871 - it's pretty specific to the stacks in Haraka logging, but it'll give you some code to play with. [18:06] towski has joined the channel [18:07] baudehlo: any chance you'll be porting DateTime? [18:08] autarch: baudehlo: haha [18:08] hydrozen has joined the channel [18:08] autarch: I'm not sure if I'm that much of a masochist [18:08] baudehlo: heh. [18:08] autarch: porting Moose is actually a lot easier, I think [18:09] autarch: especially for code I want to work in browser - I'm mostly using node just cause it's way easier to run tests that way [18:09] baudehlo: fair enough. [18:09] baudehlo: you should switch to node for server side work. [18:09] autarch: the more I use JS the more I realize that language is not even close to done [18:10] autarch: like this conversation we just had about stack traces - this seems like language design 101 stuff [18:10] autarch: dynamic languages should allow you to inspect the running interpreter [18:10] baudehlo: the implementations do... mostly. It's the cross-browser aspect that always bites you. [18:11] autarch: right [18:11] baudehlo: honestly I'm just doing it for the performance. [18:11] `3rdEden has joined the channel [18:11] baudehlo: it's ridiculous how much faster it is. [18:11] mehtryx has left the channel [18:12] autarch: my primary interest is in moving more of the UI to the client side and having the server side just be a REST app [18:12] autarch: for that sort of server stuff Perl works really well [18:12] igl1: 2 week error prone design, hold back by error prone implementations, which creators sit in the standard wanting to "change nothing because it somewhat works" [18:12] hipsters_ has joined the channel [18:12] konobi: autarch: howdy dave [18:12] autarch: hi [18:13] crescendo has joined the channel [18:13] seebees has joined the channel [18:13] mmalecki: isaacs: you around? [18:14] mikeal has joined the channel [18:14] mikeal: SubStack: did you write a tool for rolling deployments from git pushes or was that all in my head? [18:14] mjr_ has joined the channel [18:14] Juan77 has joined the channel [18:14] badams has joined the channel [18:15] blup has joined the channel [18:15] shoebat has left the channel [18:16] badams has left the channel [18:17] langworthy has joined the channel [18:17] TooTallNate has joined the channel [18:17] nadirvardar has joined the channel [18:19] kesun421 has left the channel [18:20] devaholic: mikeal: wasnt it even feature subset deployments based on branches or something? [18:20] mikeal: i think so [18:20] devaholic: ++ for anyone that does that [18:20] purr: Let it be known that devaholic loves for anyone that does that. [18:20] mehtryx1 has joined the channel [18:20] mikeal: it might have all been in my head tho [18:21] franciscallo has joined the channel [18:21] fmeyer has joined the channel [18:22] p1d has joined the channel [18:23] ryanfitz has joined the channel [18:23] jocafa has joined the channel [18:23] BruNeX has left the channel [18:23] BruNeX has joined the channel [18:24] yenz: mikeal: maybe Pushover? [18:24] pita: TheJH: thats very helpful, thx [18:24] yenz: https://github.com/substack/pushover [18:25] mikeal: yes [18:25] mikeal: that's it [18:25] trotter has joined the channel [18:26] devaholic: 0.0 [18:26] patcito has joined the channel [18:27] jbpros has joined the channel [18:27] halfhalo: shiny [18:29] ryanfitz has joined the channel [18:30] dharmesh has joined the channel [18:30] mundanity has joined the channel [18:30] nbaldwin has joined the channel [18:31] fbartho has joined the channel [18:32] dgathright has joined the channel [18:33] Tprice has joined the channel [18:33] Tprice: does anyone know how to use forever on windows with 0.6.2? [18:34] qbit_: http://www.openbsd.org/cgi-bin/cvsweb/ports/www/node/ <--- wew 0.6.3 is now available in openbsd [18:34] mmalecki: Tprice: it doesn't work on 0.6.2 yet [18:34] qbit_: and i submitted a patch for 0.6.5 [18:34] mmalecki: and second thing, it doesn't work on Windows XD [18:34] truedat101 has joined the channel [18:34] mmalecki: qbit_: link? [18:35] qbit_: mmalecki: to 0.6.5? [18:35] Tprice: does anyone know of a module that does app keepalive on windows? [18:35] mmalecki: qbit_: wait, forever patch or openbsd patch? [18:35] petrjanda has joined the channel [18:35] mmalecki: Tprice: I think it might start working after this rewrite [18:36] qbit_: mmalecki: openbsd patch for making node.js 0.6.3 available on openbsd [18:36] mmalecki: Tprice: estimate 4 days or so [18:36] mmalecki: qbit_: ah, ok [18:36] qbit_: :P [18:36] swaj: Tprice: If you want something to marshall your node process inside a windows service, I recommend NSSM http://nssm.cc/ [18:36] pgte has joined the channel [18:36] swaj: Tprice: it'll keep your node process alive, in the background, as a normal windows service [18:37] kishoreyekkanti has joined the channel [18:38] Tprice: swaj: no kinda looking for something like forever (writen in js) [18:38] Tprice: dont want to keep restarting the app [18:38] Tprice: would use forever under linux but trying windows [18:38] langworthy_ has joined the channel [18:38] swaj: Tprice: it'll sit in the foreground, though. You can't background a node process unless you wrap it in a windows service. [18:39] swaj: Tprice: even with forever, you'd have to run it inside something like NSSM to get it to background and restart when the server reboots. [18:39] nils_r has joined the channel [18:39] mmalecki: lol, windows really can't daemonize processes? [18:39] simenbrekken has joined the channel [18:40] swaj: as windows services, yes [18:40] Tprice: just looking for dev evn [18:40] Tprice: in the end the app would run under linux [18:40] mmalecki: and in a sane (unix-ey)? [18:40] simenbrekken has joined the channel [18:40] swaj: neither can unix, you have to background a node process with nohup or fork it. Same thing happens in windows. [18:40] satyr has joined the channel [18:40] mmalecki: Tprice: best to develop in the same env you'll deploy to [18:41] Tprice: yeah just thinking i can write a script to watch a dir and refork when something changes [18:42] Tprice: mmalecki: if it runs on both is that not better? [18:42] Tprice: lol [18:42] mmalecki: Tprice: yeah, of course that's better. [18:42] Edy: hint: nodemon [18:42] daveluke: cross domain communication.. how does you do it? [18:42] mmalecki: but on windows you won't be able to use some linux-specific things and vice versa [18:43] autarch has left the channel [18:43] swaj: so yeah, on windows, there's no way that I know of to fork a process into the background. You have to use a windows service. [18:43] Tprice: nodemon thanks!! [18:44] churp has joined the channel [18:44] Edy: :) [18:44] jerrysv has joined the channel [18:44] boltR has joined the channel [18:44] rburhum has joined the channel [18:45] xer0x has joined the channel [18:46] sir_tyrion: what is ntest, i can't find it in the api doc [18:46] lightcap has joined the channel [18:47] dubenstein has joined the channel [18:49] eventric has joined the channel [18:50] kishoreyekkanti has left the channel [18:50] scott_gonzalez: isaacs: back yet? [18:50] Raynos: SubStack: http://browserify.nodejitsu.com/ 404 :( [18:50] ryanfitz has joined the channel [18:50] isaacs: scott_gonzalez: not quite :) [18:50] mmalecki: Raynos: it's not his [18:50] Raynos: Oh [18:51] isaacs: got a call at 11:15, then heading into the office. maybe after lunch? [18:51] Raynos: Is it nodejitsus ? [18:51] mmalecki: Raynos: it's jesusabdullah's [18:51] mmalecki: i'll look it up [18:51] isaacs: i thought jesusabdullah was nodejitsu's ;) [18:51] mmalecki: lol [18:52] scott_gonzalez: isaacs: sure, what time is after lunch for you? 12:30? 1:00? [18:52] isaacs: we need one of those xkcd internet-map things showing the various areas of node-land [18:52] chilts: morning all [18:53] isaacs: stackvm robot factories, the nodejitsu highlands. [18:53] mmalecki: Raynos: seems inactive. I'll follow up with jesusabdullah. [18:53] bergie has joined the channel [18:53] Raynos: mmalecki: thans [18:53] isaacs: the ivory towers of futures and promises [18:53] TheJH: isaacs, and a little sandbox for nowjs and cradle :P [18:53] tjholowaychuk has joined the channel [18:53] mmalecki: isaacs: I JUST DID! [18:54] isaacs: scott_gonzalez: 1 would be good, sure [18:54] isaacs: scott_gonzalez: sorry [18:54] TheJH: mmalecki, huh? [18:54] mraleph has joined the channel [18:54] mmalecki: TheJH: followed up with him. pinged him, actually [18:54] echobucket has joined the channel [18:54] mmalecki: well, actually, tried initiating a tcp connection with him [18:54] scott_gonzalez: isaacs: ok, does skype work? [18:54] TheJH: mmalecki, ah, thought you were talking about node maps :D [18:54] isaacs: scott_gonzalez: sure [18:54] mmalecki: lol [18:55] mmalecki: isaacs: btw, merge my fstream pr, would you? [18:55] isaacs: scott_gonzalez: or if you just have questions i might be able to just answer them in a logged format (im, irc, etc.) [18:55] isaacs: mmalecki: will do [18:55] isaacs: brb [18:55] mmalecki: it's breaking npm installation of nssocket somehow [18:55] mmalecki: isaacs: thank you :) [18:56] scott_gonzalez: it's more a discussion of what problems we're going to run into by trying to simplify the process for users and how to deal with them [18:56] jsurfer has joined the channel [18:56] scott_gonzalez: we want to make it as easy as providing a GitHub URL [18:56] scott_gonzalez: and we'll do all the work from there [18:57] eignerchris has joined the channel [18:57] scott_gonzalez: we know there are issues to deal with and have some plans, but would be great to have some feedback from someone who has actually dealt with these problems [18:57] AndreasMadsen has joined the channel [18:57] issackelly_ has joined the channel [18:58] baudehlo1 has joined the channel [18:58] mmalecki: Raynos: actually, I will just start his app [18:58] Raynos: o/ [18:58] mmalecki: apps shouldn't go down, never [18:58] doki_pen: is anyone connecting to cassandra with node? If so, what works? [18:59] doki_pen: I see cassandra-client, can anyone vouch? [19:00] mmalecki: wut. [19:00] mmalecki: Raynos: ok, having some problems, I'll wait for him [19:00] svenlito has joined the channel [19:01] EhevuTov: doki_pen, I see at least two npm packages for cassandra. cassandra and cassandra-client [19:01] mmalecki: Raynos: wait, it's booting up now. [19:01] mmalecki: Raynos: ok, should be up [19:02] Carter_ has joined the channel [19:02] doki_pen: EhevuTov: yeah, me too [19:02] jscheel has joined the channel [19:02] jscheel has joined the channel [19:04] dexter_e has joined the channel [19:04] EhevuTov: doki_pen, if you're using MacOS like me, I can do a "brew install cassandara" and a "npm -g install cassandra" and that should work for me [19:04] koo3 has joined the channel [19:04] EhevuTov: doki_pen, s/cassandara/cassandra [19:04] eddyb: quick question: [19:04] zeade has joined the channel [19:05] doki_pen: EhevuTov: yeah, I can install it no problem, I was just wondering if anyone has used it and what they thought about it [19:05] tmpvar has joined the channel [19:05] doki_pen: before I build something with it [19:05] EhevuTov: doki_pen, I would say it works just fine. You could probably copy and paste some code and get it to work in about 10min or so to see [19:05] eddyb: is there an easy way to tunnel X11 display/control to/from the browser with a node.js server? [19:05] eddyb: something simple [19:06] eddyb: I know there's a x11 lib in node.js [19:06] strmpnk has joined the channel [19:07] malkomalko has joined the channel [19:07] polyrhythmic has joined the channel [19:07] nbaldwin has joined the channel [19:10] futini has joined the channel [19:10] adrianF has joined the channel [19:10] EhevuTov: I'm pretty excited about npm packaged with the windows node msi. I could do npm -g install on some modules and it felt good [19:11] mmalecki: well, I'm happy that windows folks finally got something that just works (tm) [19:11] jskulski has joined the channel [19:11] EhevuTov: I think it was the nudge I needed to switch from another high-level language as my primary [19:12] EhevuTov: mmalecki, I was trying to use the older, unsupported method using git bash and it just wasn't working for me [19:13] Wizek has joined the channel [19:13] stagas has joined the channel [19:13] WarheadsSE: EhevuTov, which language to switch from? [19:13] EhevuTov: PERL [19:13] rbuck has joined the channel [19:13] WarheadsSE: for what task? [19:14] EhevuTov: most tasks, really. I'll prob just use Perl for some quick parsing [19:14] WarheadsSE: I'd say that there are plenty of tasks better suited to perl than NodeJS [19:14] konobi: activestate perl pro devkit is pretty nice [19:15] WarheadsSE: ACTION hasnt used the pro devkit since 2008 [19:15] WarheadsSE: maybe.. [19:15] EhevuTov: I use Strawberry when I work with Windows [19:15] WarheadsSE: ding [19:15] WarheadsSE: Strawberry ftw [19:15] EhevuTov: the only major thing that I like about Perl still, is the DBI and DBIx stuff [19:15] NetRoY has joined the channel [19:16] WarheadsSE: I do a ton in that, persnally so I'm sorta stuck with that. [19:16] confoocious has joined the channel [19:16] WarheadsSE: tool/task really [19:16] eresair has joined the channel [19:16] EhevuTov: WarheadsSE, yeah I really like DBIC [19:16] _dc has joined the channel [19:16] WarheadsSE: :) DBIC is nice.. [19:16] konobi: moose++ [19:16] v8bot_: konobi has given a beer to moose. moose now has 1 beers. [19:17] anucekay has joined the channel [19:18] WarheadsSE: hmm, I should really swap out the cramped hash junk I used for hashish [19:18] WarheadsSE: EhevuTov, how long with perl, If i may [19:18] konobi: 14 years for me [19:18] EhevuTov: ah and hashes WarheadsSE. I don't have experience with hashes in Node yet. I've been on and off with Perl since 1999 [19:19] WarheadsSE: either ever done any XS? [19:20] konobi: yup [19:20] EhevuTov: actually, I started to do some perfect hashing work with XS, but my manager had me switch projects, so no, not really [19:20] anucekay: trying to compile node-v0.6.5 on ubuntu [19:20] anucekay: and running into compilation issues with node_zlib.cc [19:20] langworthy_ has joined the channel [19:20] dubenstein has joined the channel [19:20] WarheadsSE: I've done small amounts in XS.. always interesting [19:20] langworthy_ has joined the channel [19:21] anucekay: ../src/node_zlib.cc:28:18: error: zlib.h: No such file or directory ../src/node_zlib.cc:293: error: 'z_stream' does not name a type ../src/node_zlib.cc: In destructor 'node::ZCtx::~ZCtx()': ../src/node_zlib.cc:71: error: 'strm_' was not declared in this scope [19:21] EhevuTov: does Node do hashing well? [19:21] anucekay: any pointers? [19:21] EhevuTov: I'm still not familiar with Javascript enough in general, I gues [19:21] WarheadsSE: people often degrade perl, but really it depends on the coder [19:21] WarheadsSE: http://www.catonmat.net/blog/nodejs-modules-hashish/ [19:21] WarheadsSE: anucekay, did you git pull ? [19:21] EhevuTov: lol cool WarheadsSE [19:22] anucekay: no, i did a curl from nodejs.org [19:22] dark_element has joined the channel [19:22] WarheadsSE: hmm [19:22] anucekay: and picked the node-v0.6.5.tar.gz [19:22] konobi: install the zlib dev libraries [19:22] konobi: um... dev package even [19:22] EhevuTov: yeah, you just don't have zlib headers installed? [19:23] WarheadsSE: should end up being `sudo apt-get zlib-dev` or soemthing [19:23] WarheadsSE: ACTION doesnt use ubuntu [19:23] jeremyID3 has joined the channel [19:23] gtramontina has joined the channel [19:24] Brendan_ has joined the channel [19:24] WarheadsSE: EhevuTov, I've never actually used hashish yet, just saw that pop up on twitter. [19:24] anucekay: is there a binary distribution that i can just pick [19:24] CiRlE has joined the channel [19:24] lightcap has joined the channel [19:24] Guest15136: Anyone have time to answer a quick question about subqueries in node-redis? [19:24] codygray has joined the channel [19:25] WarheadsSE: anucekay, I'd check with apt [19:25] Guest15136: I'm having trouble getting callbacks to fire at the right time [19:25] WarheadsSE: konobi, I've only been using perl since ~ 02 I think [19:26] zmbmartin has joined the channel [19:27] Guest15136: or any recommendations on where I can read up on event-driven code. I suspect I'm not grasping how to properly structure the gets [19:27] gtramontina has joined the channel [19:27] zmbmartin: Anyone aware of a good realtime project management/collaboration tool? [19:29] EhevuTov: zmbmartin, something like http://trello.com ? [19:29] hackband has joined the channel [19:30] zmbmartin: EhevuTov: Cool thanks I will check it out. [19:31] anildigital has joined the channel [19:31] EhevuTov: zmbmartin, I don't think it has gantt charts or the like, but it's nice for index carding and collaboration with multiple people [19:31] mikeal has joined the channel [19:32] bitwise_ has joined the channel [19:32] mjr_: Guest15136: best to just ask and see what happens. [19:33] MatthewS has joined the channel [19:35] WarheadsSE: bah.. I'll never find interesting projects (paid) out here on the east coast. [19:35] qbert has joined the channel [19:35] qbert: !seen [19:36] EhevuTov: WarheadsSE, I've read a few articles about how node is relatively big in the NYC area. Is that not quite true? [19:36] braoru has joined the channel [19:36] mmalecki: qbert: ircretary: seen qbert [19:36] mmalecki: ircretary: seen qbert [19:36] ircretary: mmalecki: I'm not sure what to do with that command. Ask for help in PM. [19:36] WarheadsSE: EhevuTov, I'm in the Phila metro, and not looking to relocate (engaged) [19:36] mmalecki: ircretary: when qbert [19:36] ircretary: mmalecki: qbert was last seen at 2011-12-07T19:35:53.321Z, in #Node.js saying !seen [19:37] mmalecki: qbert: ^ [19:38] qbert: ircetary: seen marcello3d [19:38] qbert: ircretary: seen marcello3d [19:38] ircretary: qbert: I'm not sure what to do with that command. Ask for help in PM. [19:38] qbert: im an idiot [19:38] qbert: ircretary: when marcello3d [19:38] ircretary: qbert: marcello3d was last seen at 2011-12-07T04:42:38.098Z, quit: Remote host closed the connection #Node.js [19:39] EhevuTov: WarheadsSE, yeah, I'm noticing a lot of the nice jobs want you to relocate. I'm in the Chicago area and Node is still in the infancy stages around here it seems. A lot of the bigger company meetups talk about and play with Node, but I don't know how many companies around here have adopted it yet [19:39] Deegie has joined the channel [19:40] ramitos has joined the channel [19:40] eb4890 has joined the channel [19:40] WarheadsSE: adpoted isnt the trick really [19:40] WarheadsSE: it's getting them to use it [19:41] EhevuTov: that's what I mean [19:41] EhevuTov: For instance, Groupon hosts our Node.js here near downtown, but I'm not sure how much they use Node [19:42] koo1 has joined the channel [19:42] qbert: anyone that uses the native mongodb driver, do you know what happens when another server is elected primary, does it automatically reconnect to the new primary or stay connected to the now secondary ? [19:43] scoates has joined the channel [19:44] eli_ has joined the channel [19:45] davidsklar1 has joined the channel [19:46] mjr_: Even in the Bay Area, node is still such a new technology that it's not been widely accepted. [19:46] Morkel has joined the channel [19:46] mjr_: But that said, I hear there are plenty of jobs doing node in the SF area. [19:47] insin has joined the channel [19:47] jbrokc has joined the channel [19:47] mjr_: I think Rackspace has node jobs outside of SF as well. [19:47] mehtryx has joined the channel [19:47] whitman has joined the channel [19:47] eli_: Hi [19:47] EhevuTov: mjr_, ah that's interesting feedback. Yeah, Node is already growing so fast, it will really dominate once it gains parity in maturity with some languages [19:48] eli_: I work on window xp, I try to install Node.js [19:48] mjr_: Yeah, but it's just so new. Give it a bit of time. [19:48] mjr_: Or start your own company, be the CTO, and use node! [19:48] mjr_: Problem solved. [19:48] rachet: Or, just start building in node. [19:48] rachet: just do it. [19:48] eli_: I have homework to do 1 [19:48] EhevuTov: for instance, does PHP have an event based I/O? I definitely see PHP getting knocked down once the node ORM modules mature [19:48] ryanfitz has joined the channel [19:48] tkaemming has joined the channel [19:49] EhevuTov: rachet, mjr_ yeah, I'm coding in node at work right now (in a MS shop) [19:49] rachet: EhevuTov: php won't be knocked down anytime soon. While you could say node and php compete - they are for different tasks [19:50] EhevuTov: rachet, yeah, not soon, but eventually. I don't see managers wanting to hire PHP and Javscript coders. they'll want to just hire one language I'd say [19:50] hipsters_ has joined the channel [19:50] errordeveloper: hm .. [19:50] jimmysparkle has joined the channel [19:50] errordeveloper: I what to have a WebSocket client in node - what can use ? [19:50] level09 has joined the channel [19:51] lxsameer has joined the channel [19:51] EhevuTov: errordeveloper, I use socket.io with good experience so far [19:51] jesster7 has joined the channel [19:51] jesster7 has left the channel [19:51] recycle has joined the channel [19:51] `3rdEden: errordeveloper: if you want to connect from node.js to a websocket server, use ws. npm install ws [19:52] eli_: How I can install Node.js on windows xp , or on Linux ? I read the page on https://github.com/joyent/node/wiki/Installation. It do not work ! [19:52] EhevuTov: eli_, there's a windows MSI that you can install. You can download it from the nodejs website [19:52] pita: http://groups.google.com/group/nodejs/browse_thread/thread/7e7b95a7556be437 [19:52] errordeveloper: majek: can use SockJS as client in Node? [19:53] saikat has joined the channel [19:53] errordeveloper: i.e. SockJS server + client both in Node ... [19:53] errordeveloper: ? [19:53] izepstan has joined the channel [19:53] TheJH: eli_, I tried to make cookies, and the result is in some way weird, can anyone tell me what I did wrong? :/ [19:53] eli_: Thank You Very Much ! I will try. [19:54] mcluskydodallas has joined the channel [19:54] errordeveloper: 3rdEden: I'll try that :)) [19:54] dubenstein has joined the channel [19:54] dwhittle has joined the channel [19:54] mange has joined the channel [19:54] jbrokc_ has joined the channel [19:55] `3rdEden: errordeveloper: http://einaros.github.com/ws/ some docs and test suite reports [19:56] triptec has joined the channel [19:57] triptec: is there any nice web sockets chat example anywhere? [19:57] triptec: and is websockets-server the lib to use or is there something better? [19:57] donald_cook has joined the channel [19:58] baudehlo has joined the channel [20:00] fly-away has joined the channel [20:00] EhevuTov: triptec, what are you trying to do? I use socket.io to do simple real-time server to client messaging [20:00] xer0x: triptec I like socket.io [20:02] triptec: ok, well spotify has this new app stuff that supports ws so I was thinking on making a simple message system so fiends within a group could pause the spottily client the plays music [20:02] triptec: like on my job when the phone rings it's a hassle to get up to the comp connected to the soundsystem [20:02] EhevuTov: ah, you want an explicit WS mod then [20:02] smathy has joined the channel [20:03] jocafa has joined the channel [20:03] triptec: of node or what? [20:03] tih-ra has joined the channel [20:04] joshfinnie has joined the channel [20:05] strmpnk has joined the channel [20:05] EhevuTov: triptec, `3rdEden mentioned http://einaros.github.com/ws/ that you should look into if you just need a WS client. It looks nice. [20:06] strmpnk has joined the channel [20:06] triptec: thanks [20:07] gregmoreno has joined the channel [20:08] triptec: oh, well I think the client stuff will be simple compared to server [20:08] triptec: like broadcasting to the right clients seems to be a bit hard [20:08] EhevuTov: triptec, yes, but if you ever need to write a server and client, I'd recommend you use socket.io [20:09] `3rdEden: https://github.com/learnboost/websocket.io [20:09] `3rdEden: if you only need the websocket part of socket.io ;o [20:09] WarheadsSE: I'm not worried about using node, it's jsut lanugage number.. . .. damn [20:09] WarheadsSE: sorry, lost remote, power outage at work. [20:09] EhevuTov: triptec, that's the nice thing about Node is that it keeps track of your connections using the OS event lib [20:10] crodas has joined the channel [20:10] skm has joined the channel [20:10] triptec: EhevuTov: yeah, and now I can broadcast to all clients but how do I only broadcast to a group of them? but I think this might be the lib I'm using that's to simple [20:11] lorfds has joined the channel [20:11] EhevuTov: triptec, it sounds like you want a pub/sub type system [20:12] eddyb: triptec: I think you can group clients in socket.io [20:12] jldbasa has joined the channel [20:12] eddyb: anyway, you can always have a map of arrays for that purpose [20:13] triptec: ok, seems it's time for me to check it out [20:13] triptec: ' [20:13] `3rdEden: eddyb triptec yes you can have users join `rooms` and emit / send to that room [20:14] triptec: ok, with socket.io or are we talking websockets-server? [20:14] isaacs has joined the channel [20:14] `3rdEden: socket.io ;p [20:14] WarheadsSE: konobi, EhevuTov that comment was meant for you two [20:14] lorfds has joined the channel [20:14] base698 has joined the channel [20:14] EhevuTov: ah, I guess I didn't understand :-/ [20:14] lorfds: http://pastebin.com/G19akqkz [20:15] lorfds: im using this module [20:15] lorfds: https://github.com/coopernurse/node-pool [20:15] lorfds: when i release an object from the pool, i get that error [20:15] codygray has joined the channel [20:16] koo0 has joined the channel [20:17] harthur has joined the channel [20:17] EhevuTov: WarheadsSE, welcome back [20:18] mehtryx has left the channel [20:19] raja_ has joined the channel [20:20] maushu has joined the channel [20:21] langworthy_ has joined the channel [20:21] WarheadsSE: ty [20:22] magnetik has joined the channel [20:25] adrianF: hello, what is the best way to make objects (like a couchDB connection) available at multiple points (logger, buisness logic) in my app? [20:25] adrianF: putting all my "global" stuff in a commons object and use it due require, or use them directly due require, or make them global (global.couch = ....), or export them in my main app.js and require app.js in my modules (require(app.js).couch..), or pass the object as a attribute? [20:26] tiagobutzke has joined the channel [20:26] mansoor has joined the channel [20:26] konobi: WarheadsSE: eh? [20:26] lazyshot has joined the channel [20:27] fra000 has joined the channel [20:27] WarheadsSE: "I'm not worried about using node, it's jsut lanugage number.. . .. damn" [20:28] stagas has joined the channel [20:28] Circlefusion has joined the channel [20:28] RORgasm has joined the channel [20:30] shripadk has joined the channel [20:30] EhevuTov: WarheadsSE, I don't understand [20:30] konobi: makes little sense really =0) [20:30] konobi: =0P [20:34] mikeal has joined the channel [20:37] monokrome has joined the channel [20:37] WarheadsSE: it was in reference to the jobs with Node [20:37] jesster7 has joined the channel [20:38] jesster7 has left the channel [20:38] localhost has joined the channel [20:40] sh1mmer: WarheadsSE: you mean that fact it isn't 1.0 yet? [20:41] koo1 has joined the channel [20:42] jj0hns0n has joined the channel [20:45] grampajoe has joined the channel [20:46] briancray has joined the channel [20:47] WarheadsSE: no, just making reference to knowing how to code in too damn many languages [20:47] context: adrianf: honestly id make a common for logging, and just pass a log() method everywhere. all your modules don't need to care what is doing the logging, be it a filem couch, syslog [20:48] stagas has joined the channel [20:48] shripadk: if you are utterly jobless join this and help me test: http://fastspring.mooo.com:9994/ [preferably from browsers other than chrome/ff] :) [20:48] kickingvegas has joined the channel [20:49] adrianF: yes, thats what i actually do with my logger, require it anywhere and use the log() function [20:49] zanefactory has joined the channel [20:49] frabcus has joined the channel [20:49] Margle has joined the channel [20:50] TheJH: shripadk, do you know browserling? [20:51] errordeveloper: right! [20:51] errordeveloper: really !! [20:51] shripadk: TheJH: yes i do.. and also saucelabs.. however browserling keeps telling me that the "Connection dropped explicably" and saucelabs takes forever to finish launching the browser :( bad day i guess [20:52] joshkehn has joined the channel [20:52] joshkehn: What do you use for performance monitoring node.js? [20:52] errordeveloper: is there no way of not failing on `JSON.parse()` giving `SyntaxError: Unexpected token ...` ??? [20:52] joshkehn: errordeveloper: try { JSON.parse(); } catch() ? [20:52] errordeveloper: ok ... [20:52] joshkehn: Or you mean continue parsing? [20:53] errordeveloper: let's see may be try-catch will do! [20:53] tilgovi has joined the channel [20:54] joshkehn: I'm looking for something similar to NewRelic but capable of monitoring a node application. [20:56] salva has joined the channel [20:58] ceej has joined the channel [20:58] baudehlo1 has joined the channel [20:58] mange has joined the channel [20:58] kerang has joined the channel [20:58] uchuff has joined the channel [20:59] hellp has joined the channel [21:00] shripadk has joined the channel [21:02] Dreamer3 has joined the channel [21:03] joshkehn: Someone has to have something for that. [21:03] thinkjson has joined the channel [21:03] joshkehn: I'd hate to roll my own and then find out about something. [21:05] thinkjson: Does anyone have a recommendation for a place to find Node.js contractors in addition to the Node.js job board? [21:05] mc_greeny has joined the channel [21:08] kerang: isaacs: sorry to ping you directly, i read your conclusion on https://github.com/isaacs/npm/issues/1404 and wonder whether node already uses getaddrinfo or not yet ? [21:08] supah-n00b has joined the channel [21:09] supah-n00b: hello ... i have an error handlng question related to express and jqtpl if anyone is available [21:09] mmalecki: thinkjson: your 'pull requests' tab :D [21:10] eignerchris has joined the channel [21:10] stantona has joined the channel [21:10] _dc has joined the channel [21:11] supah-n00b: if I pass a call back to my render function .... how to the get render to send to client since my callback over rides default? [21:11] towski has joined the channel [21:16] supah-n00b: bueller? [21:16] koo1 has joined the channel [21:18] robbiet480 has joined the channel [21:18] ryah: sorry but the topic is for my favorite song lyrics [21:19] supah-n00b has left the channel [21:19] robbiet480 has left the channel [21:19] __t has joined the channel [21:20] mmalecki: lol [21:20] mmalecki: ryah: link? [21:21] mmalecki: ryah: oh, ok. it's Rihanna's. [21:21] EhevuTov: which song? [21:21] ryah: http://www.youtube.com/watch?v=tg00YEETFzg [21:22] joshkehn: Seriously? [21:22] dubenstein has joined the channel [21:22] ryah: shocked at my good taste? :) [21:22] ryah: i know - i am too [21:22] joshkehn: You could put it that way. [21:22] shripadk: :P [21:22] mmalecki: ryah: the weeknd feels better :) [21:23] esmevane has joined the channel [21:23] joshkehn: ACTION going to buy that song [21:23] ryah: you should watch the rihanna video - it's amazingly awesome [21:24] joshkehn: Watching that now. [21:24] joshkehn: While I have you replying to me [21:24] joshkehn: Any recommendations for monitoring performance of a node application? [21:24] mmalecki: ryah: agreed, video is awesome, even though I don't really like that kind of music [21:25] ryah: joshkehn: cloud analytics [21:26] tonymilne has joined the channel [21:26] k1ttty has joined the channel [21:26] ryah: http://www.joyent.com/products/smartdatacenter/cloud-analytics/ [21:26] joshkehn: That only works on joyent systems, right? [21:27] devaholic: why no screenshot [21:27] donald_cook has joined the channel [21:27] SixDev has joined the channel [21:27] kerang: ryah: i'm getting an ETIMEOUT error cannot contact dns server... when the problem with dns server is fixed (i.e. can nslookup etc), should node be able to contact dns server right away? or will it keep some sort of a cache for a period of time? [21:29] thinkjson: mmalecki: the problem is that most open source contributers *aren't* looking for work [21:29] uncrtnmind has joined the channel [21:29] SixDev: I am migrating to 0.6 and am using something like fs.createReadStream('pathtofile',{ "encoding":"binary" }).pipe(res); and getting corrupted images. Ideas? [21:29] ryah: kerang: the system keeps a cache [21:29] ryah: kerang: glibc [21:29] Danielpk has joined the channel [21:30] joshkehn has joined the channel [21:30] Epeli has joined the channel [21:31] stantona has joined the channel [21:31] blup has joined the channel [21:32] CIA-109: node: 03Ryan Dahl 07master * r06d86eb 10/ (src/node_http_parser.cc src/node_vars.h): Move node_http_parser.cc global vars into node_vars.h - http://git.io/NqOZwQ [21:32] kerang: ryah: thanks, i'll dig around on it.... btw, nothing wrong with your taste of music, but this could be better http://www.youtube.com/watch?v=7xfb5vYxYk4 [21:32] pita has joined the channel [21:33] grekko has joined the channel [21:33] jvolkman has joined the channel [21:33] tjholowaychuk has joined the channel [21:34] koo1 has joined the channel [21:34] SixDev: Hope someone can help. I am getting corrupted binaries piping from a createReadStream (binary encoding) generated stream to response. Any ideas? [21:34] jarek has joined the channel [21:35] TheJH: SixDev, "binary encoding" is your problem [21:35] TheJH: SixDev, specify no encoding, that'll give you buffers [21:35] SixDev: TheJH: Ah.. no encoding. [21:35] TheJH: SixDev, binary encoding is deprecated and old [21:35] SixDev: thanks! [21:35] Me1000 has joined the channel [21:39] xer0x has joined the channel [21:39] thinkjson has left the channel [21:39] stonebranch has joined the channel [21:39] tomyan has joined the channel [21:39] tazrover has joined the channel [21:40] ekryski has joined the channel [21:40] sir_tyrion: what is ntest? [21:41] mcluskydodallas has joined the channel [21:42] Deegie has joined the channel [21:46] EhevuTov: sir_tyrion, never heard of it [21:46] brianc1 has joined the channel [21:47] daveluke has joined the channel [21:47] franciscallo has joined the channel [21:48] jesster7 has joined the channel [21:51] jesster7 has left the channel [21:52] ovaillancourt has joined the channel [21:53] michaelhartau has joined the channel [21:53] joshkehn has left the channel [21:54] towski has joined the channel [21:55] tkaemming has joined the channel [21:55] MatthewS has left the channel [21:55] petrjanda has joined the channel [21:55] xavier_d has joined the channel [21:56] magnetik_ has joined the channel [21:58] Frippe has joined the channel [21:58] xavier_d: Hi. I'm looking for a simple cache for an http client (eg instead of hitting the server everytime). if possible, super easy to install with request. [21:59] baudehlo has joined the channel [21:59] xavier_d: Not looking from something clever, just "if the request has been done already in the last xx hours, use the cached version" [22:01] kerang: ryah: i checked proc/PID/fd and found a UDP there that's pointing to the DNS server, but it stays there forever, hence the next time node tries to contact dns it keeps getting ETIMEOUT [22:01] xer0x has joined the channel [22:01] skm has joined the channel [22:01] WarheadsSE: xavier_d, well.. thats pretty much what a cache is. [22:02] WarheadsSE: if it hasnt expried according to the headers on the original response, don't re-request. [22:02] tomlion has joined the channel [22:03] xavier_d: I meant not dealing with 304 or the expiry date on the header, something dumb. [22:03] kerang: ryah: assuming that the fd is owned by a node process, do you have any idea on what could possibly cause a UDP to not clear itself right after? [22:04] ramitos has joined the channel [22:04] xavier_d: Mostly for tests, I'm parsing a page, and having to wait on the server every time is killing me ;) [22:05] torm3nt has joined the channel [22:05] augustl: sounds like automated testing + fixtures is a good alternative [22:07] WarheadsSE: xavier_d, point @ a local cached copy then. [22:07] WarheadsSE: or point via a caching proxy. [22:07] joshgillies has joined the channel [22:08] cedeon has joined the channel [22:09] xavier_d: WarheadsSE: caching proxy sounds an easy way (and hopefully don't have to change anything in the code), good suggestion [22:09] strmpnk has joined the channel [22:09] josh-k has joined the channel [22:10] xavier_d: But there isn't an out of the box console companion that does something like that? [22:10] dmsuperman has joined the channel [22:10] WarheadsSE: idk, check google :p [22:11] ph^ has joined the channel [22:11] WarheadsSE: maybe https://www.varnish-cache.org/ [22:11] Sami_ZzZ has joined the channel [22:11] WarheadsSE: might be overkill [22:12] dmsuperman: How can I make this: ['a', 'b', {c: 5}, 5].forEach(function(elem){ if(elem == 5) elem = 'test'; }); return this: ['a', 'b', {c: 5}, 'test'] [22:12] dmsuperman: In a way that elem references the element of the array such that I can overwrite it? [22:12] dilvie: flatiron vs express: let the flame war begin. [22:12] dilvie: Which would you use, and why? [22:12] jerrysv: dilvie: bricks [22:12] jerrysv: dilvie: http://bricksjs.com/documentation.html [22:13] dilvie: jerrysv: No nominating your own project. =P [22:13] dilvie: =) [22:13] jerrysv: dilvie: why not? [22:14] dmsuperman: A fair point ^ [22:14] dilvie: jerrysv: you're biased. =) [22:14] dmsuperman: You're biased too dilvie [22:14] dmsuperman: what's your point [22:14] jerrysv: of course i'm biased, definitely not going to hide that :) [22:14] dmsuperman: :P [22:14] jerrysv: ask me about date libraries some time [22:14] dilvie: Of course you're gonna think you're bringin' the hotness. It works the way you think a framework should work. =) [22:14] dmsuperman: dilvie: And you asked for exactly that [22:14] dmsuperman: Personal opinions on frameworks [22:15] dmsuperman: Based on personal preferences [22:15] EhevuTov: jerrysv, what is better about bricks than express? [22:15] dilvie: I asked for personal opinions about two specific frameworks. [22:15] tjholowaychuk: if you can't select libs on you're own you're in trouble haha [22:15] dmsuperman: dilvie: Which itself was already biased [22:15] xavier_d: WarheadsSE: I was more tempted by nginx. The question was a proxy module in node.js (didn't find one) [22:15] dmsuperman: So clearly you aren't concerned with bias [22:15] dilvie: fair point. [22:15] WarheadsSE: nginx should be easy as well [22:15] WarheadsSE: well documented too [22:15] jerrysv: EhevuTov: different. but the real differences are that bricks uses an apache hook model routing engine, and has pretty decent events [22:15] dilvie: But I still trust a third party nomination more than the author's nomination. [22:15] dilvie: =) [22:16] dilvie: creator bias is the blindest kind. [22:16] dmsuperman: Anyway anybody know how to reference the original list element using forEach? [22:16] dmsuperman: I nominate bricksjs [22:16] dilvie: w00t [22:16] dilvie: that's better. [22:16] dmsuperman: (I've never used it) [22:16] EhevuTov: it's about to get real up in this piece [22:16] dilvie: ok. express vs bricks vs flatiron. [22:17] dmsuperman: dilvie: what about connect! [22:17] jerrysv: dilvie: i still like bricks, but mostly for the reasons that i stated to EhevuTov [22:17] jerrysv: dmsuperman: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/forEach [22:17] dilvie: dmsuperman: grrr. [22:17] tjholowaychuk: dilvie why dont you just take a day and evaluate them for your needs? [22:17] jerrysv: dilvie: i think you opened yourself up to this one :) [22:17] dmsuperman: jerrysv: Ah it passes the original array as well, I thought the hidden arguments stopped at index :) [22:17] dmsuperman: thanks [22:17] sputnikus has joined the channel [22:18] dmsuperman: tjholowaychuk: has the most correct answer here [22:18] jerrysv: dmsuperman: np [22:18] dilvie: lol [22:18] dmsuperman: Nobody can tell you what will work for you better than yourself [22:18] alvaro_o has joined the channel [22:18] jerrysv: dilvie: vim vs textmate, which is the best editor? (true story, had a buzzed argument with my SO about this very topic) [22:19] dilvie: jerrysv: SublimeText! [22:19] dilvie: but vim wins for being pre-installed everywhere I care about. ;) [22:19] AvianFlu: vim++ [22:19] v8bot_: AvianFlu has given a beer to vim. vim now has 2 beers. [22:19] dmsuperman: vim++ [22:19] v8bot_: vim is getting too many beers. Don't let vim get drunk! [22:19] dmsuperman: vim++ [22:19] v8bot_: vim is getting too many beers. Don't let vim get drunk! [22:19] dmsuperman: D: [22:19] TooTallNate: vim++ [22:19] v8bot_: vim is getting too many beers. Don't let vim get drunk! [22:20] dmsuperman: Error, does not parse: too many beers [22:20] mw1260 has joined the channel [22:21] gnb has joined the channel [22:21] kerang: i'm seeing ETIMEOUT error (cannot contact DNS server) when node tries to make a connection, and i found a udp socket pointing to the dns server, the weird thing is that the socket stays there forever causing the following connections to get ETIMEOUT.. my understanding is that UDP socket obviously shouldn't live that long (20 hours plus so far).. any idea on what could possibly cause this? [22:22] harthur has joined the channel [22:22] lightcap has joined the channel [22:23] CIA-109: node: 03Ben Noordhuis 07v0.6 * r22c2c34 10/ src/fs_event_wrap.cc : [22:23] CIA-109: node: fs: fix fs.watch() segmentation fault [22:23] CIA-109: node: The binding layer failed to initialize the event string if both UV_RENAME and [22:23] CIA-109: node: UV_CHANGE were set. [22:23] CIA-109: node: Fixes #2287. - http://git.io/OjIeMQ [22:23] dmsuperman has left the channel [22:24] eb4890 has joined the channel [22:24] gtramontina has joined the channel [22:24] overthemike has joined the channel [22:24] overthemike has left the channel [22:25] Leemp has joined the channel [22:25] zomg: Right, the more my app grows the more CPU node is hogging.. nearly 100% now, but only spiking [22:25] zomg: Meh. I wonder what's up with it, it's not like it's doing some extremely heavy lifting or anything [22:25] criswell has joined the channel [22:26] jmar777 has joined the channel [22:27] EhevuTov: zomg, what is your code doing? are you using cluster? [22:27] zomg: Nah [22:27] zomg: I suspect the culprit is node-binary [22:27] zomg: It's listening to a few servers which push events using a binary protocol [22:27] tmpvar has joined the channel [22:28] zomg: I'm somewhat worried about it if it indeed turns out to be node-binary, because I'm awful with any sort of binary stuff [22:28] zomg: :P [22:28] EhevuTov: zomg, node use to not be the best at binary manipulation. I don't know if that's changed recently [22:28] zomg: Yeah [22:28] enmand has joined the channel [22:28] tiagobutzke has joined the channel [22:28] zomg: Would probably make sense to write a C parser for the protocol and hook it to node [22:28] zomg: too bad my C is also very very rusty [22:28] zomg: Well, I'll have to see if I can profile it to find out what's taking so long [22:29] EhevuTov: yeah, I'd love to know. I do byte manipulation, but in C/C++ and thinking of doing some prototyping in node with my project [22:30] EhevuTov: zomg, I'm particularly working with byte array manipulation. Serialized data across the network.. [22:31] dotnetprodev has joined the channel [22:31] trco has joined the channel [22:31] dotnetprodev: how do I implement cross-domain socket.io? i can't connect to a remote node.js server from my localhost for testing. I will also have a phonegap client that will connect via socket.io later on. [22:31] bnoordhuis: EhevuTov: look at the Buffer.read*() and Buffer.write*() functions [22:31] mehtryx has joined the channel [22:32] trco: I am attempting to use Jasmine to test a node app. So far I like it but I am having a hard time wrapping my head around spies. Anyone have any thoughts on where I might be going wrong? http://pastebin.com/nQvyQhqn [22:32] mehtryx has left the channel [22:33] zomg: bnoordhuis: interesting, buffers now have those readInt32 etc. methods? Was that a recent addition? [22:33] pixel13 has joined the channel [22:33] pixel13 has left the channel [22:33] zomg: I used node-binary mainly because I had no damn clue how to work the buffers to make sense of the binary mess [22:33] WarheadsSE: EhevuTov, If you need example, I did a good chunk of that in my implementation of GNTP [22:33] bnoordhuis: zomg: recent-ish, they landed somewhere in 0.5.x [22:33] zomg: I see, I must've been reading the older 0.4.x docs when I was writing my app [22:34] WarheadsSE: zomg, bnoordhuis I'm quite happy to have the native hex functions myself [22:34] zomg: Binary makes my head hurt [22:34] zomg: =) [22:35] zomg: I aced the binary math course in school but it still makes my head hurt... [22:35] zomg: :D [22:35] zomg: It was pretty basic stuff anyway [22:35] EhevuTov: bnoordhuis, thanks, I'll check that out [22:35] EhevuTov: WarheadsSE, do you have github to your code? [22:36] bnoordhuis: zomg: you know there are only 10 kinds of people, right? people who understand binary and people who don't [22:36] zomg: Yes =) [22:36] WarheadsSE: indeed. [22:36] zomg: That's basic enough for even me to understand it ;) [22:36] dotnetprodev: here is my code: https://gist.github.com/64fe851be36df4367652 [22:36] WarheadsSE: EhevuTov, https://github.com/WarheadsSE/node-gntp [22:36] EhevuTov: thanks [22:36] dotnetprodev: works fine when the the client and server on the same domain and port [22:37] zomg: Well, thankfully I abstracted my code enough that it should not be hard to rip out the protocol parser and replace it if it comes to that [22:37] zomg: But first I think I'll just have to profile it to find out. [22:37] dotnetprodev: i get 500 internal server error when i connect from a seperate domain [22:37] WarheadsSE: Look for the Crypto class at the bottom of GNTP.js [22:38] Sorella has joined the channel [22:38] shanebo has joined the channel [22:40] gtramontina has joined the channel [22:41] springmeyer has joined the channel [22:41] mAritz has joined the channel [22:41] Leemp: Just looking for some direction. I would like to run a webserver, that is able to load up another webserver (node.js) and route all IO from client to the subprocess. Is this something commonly done? If so, what keywords would i look for, for searching/etc. [22:42] mAritz: yuchi here? :) [22:43] WarheadsSE: EhevuTov, PM with any questions, I'll like go past scroll by the time I get home [22:44] WarheadsSE: Leemp, like, a reverse proxy? [22:44] EhevuTov: WarheadsSE, cool beans. I have to work on some SNMP stuff at the moment, but I'll eventually get to it [22:44] insin has joined the channel [22:45] Leemp: WarheadsSE: Well for example, the main process might be running on port 80, and the subprocess might *also* want port 80. This way you can route port 80 data, through your port 80 server, into your port 5000 server [22:45] Leemp: (If i'm doing something "the hard way", please tell me lol) [22:46] GoldFire33 has joined the channel [22:46] lmorchard has joined the channel [22:46] AaronMT has joined the channel [22:46] strmpnk has joined the channel [22:47] Leemp: I'm just trying to avoid connecting to ip:80 and ip:5000. It would be nicer to connect to ip:80/someapp [22:47] brainproxy: is there a binary heap implementation in javascript that is generally considered to be the fastest? [22:47] yuchi has joined the channel [22:47] bnoordhuis: brainproxy: what do you need it for? [22:47] brainproxy: bnoordhuis: I've got a binary heap that's a core part of the scheduler inside my prog [22:48] tazrover has joined the channel [22:48] strmpnk_ has joined the channel [22:48] brainproxy: just wanted to try swapping it out for something that might be faster [22:48] iBooyaa has joined the channel [22:49] _unary has joined the channel [22:49] strmpnk_ has joined the channel [22:49] GoldFire33: I've got a JS file (client-side) that I need to dynamically load some data in before it is loaded into the browser. I'm using Express, but I'm not sure the best way to do this (the file isn't using a template engine). [22:49] bnoordhuis: brainproxy: what kind of values do you need to store? [22:50] bnoordhuis: brainproxy: if they're primitives, like bytes or ints, you could store them in a buffer or Int32Array [22:50] brainproxy: bnoordhuis: I need to hashes that look like { thing: ..., rank: # } [22:50] bnoordhuis: oh, that's not going to fly then [22:50] brainproxy: I need to *store... [22:50] brainproxy: this is the implementation I'm using [22:50] brainproxy: https://github.com/autotelicum/Smooth-CoffeeScript/blob/master/src/A2-BinaryHeap.coffee [22:50] airandfingers has joined the channel [22:50] mandric has joined the channel [22:50] airandfingers: hello! [22:51] brainproxy: it does okay, and is easily pluggable with another implementation [22:51] iBooyaa: brainproxy: you written that test code for setTimeout mem leak? ;) [22:51] brainproxy: iBooyaa: oh, I thought I could slink away on that one :p [22:51] brainproxy: actually, it turns out to be some sort of issue with closures around settimeout [22:51] airandfingers: anyone have any recommendations for hosting services for node.js apps? so far I've looked at NodeSocket (private beta), Nodejitsu (private beta), and Engine Yard [22:52] iBooyaa: hahaha nice try ;) heh no biggie was just happy to test [22:52] brainproxy: iBooyaa: still not obvious why it causes such a horrible leak [22:52] iBooyaa: airandfingers: cloude node and cloud9 for testing [22:52] brainproxy: but by using underscore's implementation of _.defer and _.delay, rather than the ones I roles using coffeescript splats [22:52] brainproxy: the leak goes away [22:52] iBooyaa: cloud9 is only for the duration of the code running [22:53] iBooyaa: go with nodejitsu they're the best I've seen [22:53] mcluskydodallas has joined the channel [22:53] GoldFire33: I guess my question is, can I pass some vars to a static JS file with express like you can when rendering a view? [22:53] iBooyaa: you could also true heroku [22:53] airandfingers: i've signed up for invites to both NodeSocket and Nodejitsu but no word yet [22:53] aesptux has joined the channel [22:54] tjholowaychuk: GoldFire33 nope [22:54] tjholowaychuk: statics are static [22:54] iBooyaa: airandfingers: you been on #nodejitsu ? they're online ATM [22:54] airandfingers: thanks for the nodecloud reference, this helps [22:54] airandfingers: ah cool, i'll head over there [22:54] airandfingers: thanks [22:55] iBooyaa: right my work is done here [22:55] iBooyaa: airandfingers: np brosef [22:55] GoldFire33: Is there another way to do what I'm trying that doesn't require AJAX calls from within the JS file? That just adds unnecessary overhead. [22:55] paulwe has joined the channel [22:55] Mcilvena has joined the channel [22:56] GoldFire33: The js file basically creates a widget on a page and shows some data, but I'm trying to have the initial data loaded with the widget. [22:56] heavysixer has joined the channel [22:56] r1ngzer0 has joined the channel [22:56] GoldFire33: I feel like I'm overcomplicating this [22:58] stantona has joined the channel [22:58] baudehlo1 has joined the channel [22:59] nils_r has joined the channel [22:59] gr-eg has joined the channel [23:01] Leemp has joined the channel [23:01] Juan77 has joined the channel [23:01] colinclark_ has joined the channel [23:02] qbert_ has joined the channel [23:02] EyePulp: I'm not sure how the topic ended up where it's at, but I'm kinda diggin' it. [23:02] nphase has joined the channel [23:02] nphase has joined the channel [23:04] colinclark__ has joined the channel [23:04] mcluskyd_ has joined the channel [23:08] xeodox has joined the channel [23:09] maxogden: well it started when hip hop videos about node startups started appearing on youtube [23:10] base698: GoldFire33: you can bootstrap the data with a server side template [23:11] frabcus has joined the channel [23:12] EyePulp has joined the channel [23:14] stantona has joined the channel [23:14] reid_ has joined the channel [23:14] reid_ has joined the channel [23:14] GoldFire33: base698: server side template? is this something different than jade, etc? [23:14] mrtazz has left the channel [23:14] base698: no just like that [23:15] caolanm has joined the channel [23:15] omni5cience has joined the channel [23:16] GoldFire33: unless I'm mistaken though, you can't use jade to render a js file can you? [23:16] blup has joined the channel [23:17] base698: use something other than jade [23:17] base698: like eco [23:17] base698: [23:17] tjholowaychuk: GoldFire33 you can do that easily [23:17] tjholowaychuk: with jade.. [23:17] base698: I figured [23:18] tjholowaychuk: if you're using express there's also express-expose which makes this nicer than json.stringify hacks [23:18] tjholowaychuk: script [23:18] tjholowaychuk: var myData = !{JSON.stringify(obj)} [23:18] airandfingers: how does NodeSocket or Nodejitsu contrast with Node SmartMachines on Joyent? [23:18] tjholowaychuk: if you want the hacky way [23:18] briancray has joined the channel [23:18] pita has left the channel [23:19] base698: That's pretty cool [23:19] zeade has joined the channel [23:20] GoldFire33: thanks! [23:21] strmpnk has joined the channel [23:25] brianseeders has joined the channel [23:26] WarheadsSE: Leemp, look up reverse proxy, seriously. [23:26] champion has joined the channel [23:27] springmeyer has joined the channel [23:28] saikat has joined the channel [23:32] shedinja has joined the channel [23:33] springmeyer_ has joined the channel [23:34] jerrysv: anyone have any thoughts on silkjs? [23:35] ^robertj: speaking of reverse proxying can somone help me test caskeytranscription-com-4201.scryer.caskeytranscription.com/test.html real quick? i need someone to connect and create a throw away account [23:36] satyr has joined the channel [23:36] strmpnk has joined the channel [23:37] strmpnk has joined the channel [23:37] jd has joined the channel [23:37] xer0x: jerrysv, been wondering the same thing [23:38] mcluskydodallas has joined the channel [23:39] hipsters_ has joined the channel [23:39] shedinja: jerrysv: i wonder if it's http and file io is async [23:40] jerrysv: shedinja: dunno, the http server example comes as part of the package. i'm about an hour or two away from being able to justify the time to download it [23:41] kiilo__ has joined the channel [23:41] Guest88241 has left the channel [23:42] Me1000 has joined the channel [23:43] WarheadsSE: jerrysv, shedinja silkjs = I slapped Ext JS onto a bare V8 vm, and made it prefork an limited set of HTTP 1.1 [23:43] WarheadsSE: just use cluster, and compare. [23:43] jbpros has joined the channel [23:44] ccapndave has joined the channel [23:44] WarheadsSE: plus, it locks you into it's template system, etc etc. [23:45] JmZ: say i call some function/method which you pass a callback to which is executed once whatever the function does has finished [23:45] JmZ: whats the best way to give the callback a variable the function has in it's scope [23:46] CIA-109: node: 03Ryan Dahl 07master * re53e9c7 10/ (4 files): move global vars for node_file.cc, node_zlib.cc, and node_crypto.cc - http://git.io/7ylcHA [23:46] WarheadsSE: anonymous callback or named function? [23:47] JmZ: anonymous [23:47] dilvie: named function expression [23:47] tiagobutzke_ has joined the channel [23:47] JmZ: dilvie, can you give an example? [23:47] WarheadsSE: JmZ, declare, and don't declare on top of the name [23:48] jbpros has joined the channel [23:49] fairwinds has joined the channel [23:50] dilvie: JmZ: var foo = function foo(function bar () { [23:50] dilvie: console.log('Named function expressions are legit!'); [23:50] dilvie: }); [23:50] JmZ: ah i didn't mean an example of a named function [23:50] chrisdickinson has joined the channel [23:50] JmZ: i meant one of giving the callback a variable [23:51] tomlion has joined the channel [23:51] dilvie: just pass the var into the callback when your higher order function calls the callback [23:51] dilvie: you dig? [23:51] WarheadsSE: { var a=1; var sock = new socket(); sock.on('data',function (data) { a++; })} [23:51] finsken has joined the channel [23:52] __directory has joined the channel [23:52] slpsys has joined the channel [23:52] klsh has left the channel [23:52] JmZ: WarheadsSE: yeah but what if the same callback is used for multiple calls [23:52] cryptix has joined the channel [23:52] WarheadsSE: what about it? [23:52] JmZ: what you said wouldn't work [23:52] JmZ: nevermind, i'll figure it out [23:53] WarheadsSE: ... ? socket is just blarg [23:53] WarheadsSE: I cant remember the exact call. [23:53] JmZ: yeah i know [23:53] JmZ: i didn't mean that [23:53] luxigo has joined the channel [23:53] JmZ: i can't be bothered explaining, it's late, sorry [23:53] JmZ: but it wouldn't work for what i was trying to explain [23:54] WarheadsSE: ok, you just asked for a passing of the scope.. [23:54] JmZ: sharing a variable between two, eh, just look at this: [23:54] thepatr1ck: JmZ: what about something like: function callbackMaker(context) { return function(data) { console.log(data, context); } }; something.on('data', callbackMaker(some context)); ? [23:55] WarheadsSE: ow, that's hard to read [23:56] JmZ: http://pastebin.com/4bFwbiA7 [23:56] JmZ: here you go [23:56] jldbasa has joined the channel [23:56] satyr has joined the channel [23:57] dilvie: JmZ: I guess I wasted my time with this... [23:57] dilvie: http://jsfiddle.net/dilvie/qq58K/ [23:57] JmZ: the one i wrote pretty much explains the problem [23:59] WarheadsSE: ah.. [23:59] thepatr1ck: there's probably a better way, but this should work: http://pastebin.com/AYeALY54 [23:59] dilvie: JmZ: pass i into the function? [23:59] JmZ: how? you're not calling the function...