[00:00] aaronblohowiak: sweet [00:00] Chani: ACTION blinks [00:01] Chani: hmm. only one thread? that might not be so good for my assignment... [00:02] SubStack: aaronblohowiak: http://71.198.76.38:8080/testling # preview [00:03] shiawuen has joined the channel [00:03] flippyhead has joined the channel [00:03] aaronblohowiak: SubStack: nice!! [00:03] SubStack: here's what tests look like: https://github.com/substack/testling/blob/master/test/a.js https://github.com/substack/testling/blob/master/test/b.js [00:04] SubStack: they run in your browser [00:04] Chani: my assignment has to have "concurrency" [00:04] tmpvar: JoseCabo, what happens when you run test/sanity.js? [00:04] JoseCabo: where do you what i paste it? [00:04] aaronblohowiak: SubStack: noice [00:04] SubStack: Chani: concurrency is not the same as multithread [00:05] JoseCabo: tmm1, where do you want i paste it? [00:05] JoseCabo: tmpvar, where do you want i paste it? [00:05] JoseCabo: (fuck xD) [00:05] Chani: SubStack: yes... but I'm not sure what exactly is going on inside fs when I get io callbacks... [00:05] SubStack: Chani: also node has lots of threads behind the scenes [00:05] rchavik has joined the channel [00:05] rchavik has joined the channel [00:05] Chani: SubStack: oh, okies [00:06] Chani: I'm hping that node will pass whatever tests the TA runs to verify concurrency... [00:06] level09: SubStack: what in the world is that ? [00:06] SubStack: level09: in-browser test suite [00:07] level09: looks cool although I dont get it :D [00:07] SubStack: and it will have buttons for running your tests in different browsers using browserling [00:07] Chani: hmmm, testling isn't loading for me [00:07] SubStack: level09: unit tests in your browser [00:07] level09: aha [00:07] SubStack: Chani: it's super slow is all :p [00:07] Chani: ok :) [00:07] SubStack: since the browserify bundle isn't minified and I'm on crappy cheap comcast [00:07] level09: what are the percentages on the right ? [00:08] SubStack: percent complete of the tests [00:09] bakert: does anyone know how to include a jade template inside a jade template (a "partial")? [00:11] sgupta has joined the channel [00:12] Chani: man, I hate programming drunk... I keep losing track of what I was doing [00:14] mt3ck_: stop drinking chianti chani [00:14] xerox: give it to me [00:16] sub_pop has joined the channel [00:16] davidbanham has joined the channel [00:17] tmpvar: JoseCabo, http://gist.github.com [00:18] JoseCabo: tmpvar, i used this now, sorry: http://pastebin.com/MJ0acQnn [00:18] JoseCabo: for next time i know where :) [00:18] sub_pop has joined the channel [00:18] aperiodic has joined the channel [00:18] SubStack: bakert: yes and it's horrible [00:18] tmpvar: JoseCabo, ok.. so it works for the most part. I'm seeing undefineds as well.. but it doesn't use a ton of memory [00:19] bakert: SubStack: horrible as in jade's support is bad or horrible as in doing something else makes more sense? [00:19] brownies has joined the channel [00:19] SubStack: actually partials are built into express not jade [00:19] SubStack: I think that is the horrible part [00:19] bakert: yeah, i found the express partials [00:19] JoseCabo: tmpvar, examples doesn't use a ton of memory neither hehe [00:19] bakert: but that's not where i want to tell the program to use a parital :) [00:19] tmpvar: JoseCabo, can you try changing setInterval to setTimeout in lesson3.js ? [00:19] tmpvar: JoseCabo, so it works now? [00:19] JoseCabo: Yes, i can, wait a moment. [00:20] paul_k has joined the channel [00:20] bakert: i am trying !=partial which google says might work and might not [00:20] bakert: i shall find out ... [00:20] JoseCabo: tmpvar, the actual examples are with setTimeout function... [00:20] KingJamool has joined the channel [00:21] JoseCabo: anyway with setTimeout or setInterval doesn't works [00:21] tmpvar: JoseCabo, what do you mean "doesnt work" ? [00:21] JoseCabo: $ node example/nehe/lesson3.js [00:21] JoseCabo: Violaci�n de segmento [00:21] JoseCabo: this i mena [00:21] JoseCabo: segment fault* [00:21] JoseCabo: after execute the "second function". [00:22] tmpvar: odd [00:22] JoseCabo: hehe [00:22] tmpvar: you have the latest mesa-gl1-dev package installed? [00:22] JoseCabo: the default packages in my distro [00:22] tmpvar: ok, how about video drivers? [00:23] JoseCabo: defualt nvidia drivers with compiz activated [00:23] JoseCabo: mesa-gl1-dev package isn't in my repos, the name is correctly? [00:23] tmpvar: hrm [00:23] tmpvar: JoseCabo, probably not ;X [00:24] JoseCabo: libgl1-mesa-glx is what i have [00:25] neoesque has joined the channel [00:26] rfay has joined the channel [00:28] Mrfloyd has joined the channel [00:28] bakert: !=partial does work, for anyone who was interested (jade) [00:29] igl1 has joined the channel [00:29] bakert: is there anyway to avoid having to restart express/node in order to see changes? [00:29] bakert: (in app.js and/or views) [00:29] boogyman has joined the channel [00:31] blueadept: you have to restart [00:31] blueadept: but use nodemon [00:31] blueadept: it does it for you [00:31] bakert: i'll check it out. thanks [00:33] DTrejo has joined the channel [00:34] bakert: ahh, now that is better. thanks blueadept! [00:34] blueadept: np [00:34] Bradleymeck has joined the channel [00:36] sechrist has joined the channel [00:40] JoseCabo: tmpvar, any suggestion? :( [00:41] _beau|busy: anyone here familiar with redis.io pub/sub? [00:41] maqr has joined the channel [00:41] maqr has joined the channel [00:41] davidcoallier has joined the channel [00:42] aaronblohowiak: _beau|busy: yes [00:43] _beau: ive seen a few places now use a redis client for both pub and sub [00:43] _beau: as in 2 seperate redis clients assigned to each var/object [00:43] edude03 has joined the channel [00:43] _beau: is there a reason to use more than one redis client vs. just 1 to rule them all? [00:44] Bradleymeck has joined the channel [00:44] _beau: kinda seemed like a waste, just for variable name simplification, but i thought there might be something else i was missing [00:45] _beau: for example: https://gist.github.com/935463 [00:45] _beau: 1 for storage, 1 for publish, 1 for subscribing [00:45] _beau: i dont see the benefits [00:47] devrim has joined the channel [00:47] jzacsh has joined the channel [00:47] jzacsh has joined the channel [00:48] spcshpopr8r has joined the channel [00:48] _beau: any thoughts? [00:49] aaronblohowiak: _beau: well youd have to handle more in your application [00:49] brettgoulder has joined the channel [00:49] aaronblohowiak: remembering which redis response goes with which request [00:49] _beau: hmm [00:50] aaronblohowiak: _beau: also, clients that are subscribed to events cant do anything else =) [00:50] _beau: ah, theres a good use case [00:50] _beau: i'm only using it for pub/sub [00:50] aaronblohowiak: _beau: (except subscribe to more) [00:50] _beau: not storage [00:50] aaronblohowiak: you'd still need 2 [00:50] aaronblohowiak: one for pub one for sub [00:50] _beau: i've always just used 1 [00:51] kruckenb has joined the channel [00:51] aaronblohowiak: _beau: well your redis client library may automatically create another connection [00:51] aaronblohowiak: http://redis.io/commands/subscribe [00:52] _beau: im familiar with the methods [00:52] _beau: just never saw 2 clients used [00:52] _beau: what you said makes good sense [00:52] jzacsh has joined the channel [00:52] jzacsh has joined the channel [00:52] _beau: i like it :) [00:53] _beau: using mongodb for persistance, going to use redis for pub/sub so i can start using Cluster [00:53] ezl- has joined the channel [00:53] _beau: sadly it was in-thread memory [00:54] _beau: dont tell anyone :D [00:54] Marak has joined the channel [00:54] Marak: who wants to try a demo?!?!?! "npm install hook.io-helloworld -g" "npm install hook.io-logger -g" fire up as many as you want... [00:54] _beau: also: whats with this http://tinyclouds.org:8000/chat.html [00:55] _beau: Marak: cant atm :( [00:55] Marak: its amaaaazing [00:55] _beau: though i love using your libs [00:55] _beau: and btw: thanks for the nodjitsu invite [00:55] Marak: _beau: this is the best one i've ever done, by leaps and bounds [00:55] Marak: would not be possible without like 5 other developers [00:55] _beau: :D [00:55] Marak: dnode, forever eventemitter2 [00:55] Marak: socket.io [00:55] Marak: all of these [00:55] _beau: my favorites [00:56] _beau: :D [00:56] _beau: i just dont know if i have a ready use-case for it yet [00:56] _beau: im still most interested in the JSONloops [00:56] aaronblohowiak: Marak: how are you fanning out socket.io ? [00:56] Marak: aaronblohowiak: i have to release https://github.com/marak/hook.io-webserver [00:57] Marak: then you require Hook.js file on browser [00:57] Marak: and its the same command [00:57] Marak: so linking up multiple socket.io servers is trivial [00:57] Marak: bitches [00:57] Marak: :- [00:57] Marak: :-) [00:57] Marak: linking up multiple anythings is easy [00:57] Marak: this shit is the new rails [00:57] Marak: bet on it [00:57] Marak: :-D [00:57] _beau: lol [00:57] JoseCabo: tmpvar, i have more odd news xD. I tested with "my server" PC. it have and ATI... and a +- nice version, clean version?, of Ubuntu. it have an ATI... it works! With free and privative drivers :S But, why in my computer not? why in my bf two computers it doesn't work?? :( [00:58] Marak: its the iopocalypse [00:58] Marak: you are witnessing it happen! [00:58] aaronblohowiak: Marak: i dont understand.. socket.io uses in-memory storage to keep track of which client is subscribed to which channel and the outbound messages for clients [00:58] DTrejo: new kind of ios device Marak ? [00:58] xerox: hahaha [00:58] Marak: aaronblohowiak: why not rebroadcast the messages somewhere else? [00:58] Marak: aaronblohowiak: then bounce them back [00:59] Marak: hook.io doesnt rebroadcast duplicate messages [00:59] Marak: id setup server hook.io-webservers and have them all report to a master server [00:59] Marak: that master server would be super beefy [00:59] Marak: and handle message channel diffs [01:00] Marak: boom [01:00] Marak: setup *several [01:00] Marak: sorry [01:00] sudhirjonathan has joined the channel [01:00] _beau: does this replace the use of any other current libs out there? [01:02] Marak: _beau: its meant to wrap 80% of current node libs in hooks [01:02] Marak: independent ones [01:02] Marak: anything that does i/o [01:03] Marak: i gotta go take a break, gonna go do a docs run after that [01:03] Marak: havent eatten all day [01:03] Marak: oops [01:03] aaronblohowiak: Marak: the problem is that socket.io keeps state between requests. [01:03] aaronblohowiak: whoops indeed! [01:03] DTrejo: Marak: YOUR FOOD IS YOUR BRAIN [01:04] _beau: lol [01:04] Marak: aaronblohowiak: hook.io will be able to scale and cluster socket.io 100%, its not a priority for me right now, at all [01:04] Marak: aaronblohowiak: it will get done though, bet on it [01:04] _beau: im about to implement Cluster [01:04] aaronblohowiak: okay [01:04] Marak: ill bet you 100 bitcoins! :-D [01:04] aaronblohowiak: no, thank you. [01:04] _beau: is this to be used with or instead of cluster [01:04] abraxas has joined the channel [01:04] Marak: _beau: you could use it with if you wanted to [01:05] Marak: _beau: you can wrap any server with hook.io if you want to broadcast events to the hook.io cloud [01:05] _beau: recommended? [01:05] _beau: hmmmm [01:05] Marak: just user cluster [01:05] Marak: dont user my unreleased shit [01:05] Marak: seriously [01:05] Marak: okay food [01:08] febits has joined the channel [01:11] _jgr has joined the channel [01:13] Chani: hmm. I need to test whether some files on disk are the same; is there an easy way to run diff from node or should I just wrap the test in a bash script? [01:15] k1ttty has joined the channel [01:15] Viriix has joined the channel [01:16] k1ttty_ has joined the channel [01:18] jacter has joined the channel [01:22] jmoyers: Chani you can spawn x child processes [01:23] tim_smart has joined the channel [01:25] niftylettuce has joined the channel [01:25] dgathright has joined the channel [01:26] hebz0rl has joined the channel [01:28] tmpvar: JoseCabo, I'm running ubuntu 10.10 with proprietary drivers nvidia drivers (really recent) (geforce X495) -- wish I could dupe it. Looks like its time for you to fork and get to the bottom of it with gdb! Patches welcome :) [01:29] JoseCabo: tmpvar, hehe, yes :) [01:29] JoseCabo: Can you explain me howto debug a c++ extension for node? xD [01:29] tmpvar: you are still segfaulting, right? [01:30] JoseCabo: what? [01:30] kruckenb has joined the channel [01:30] tmpvar: segmentation fault [01:31] JoseCabo: yes, i have it in this computer [01:31] kruckenb has joined the channel [01:31] JoseCabo: you said me that i should do debuging (gdb?). I don't know the way with an extension [01:31] tmpvar: ok, so run a: gdb --args node example3.js [01:32] tmpvar: when it promps you, type: run [01:32] tmpvar: when it explodes, type: where [01:32] tmpvar: and gist that [01:32] JoseCabo: oh, great [01:32] tmpvar: sorry, thats lesson3.js [01:33] dyer has joined the channel [01:33] dyer has joined the channel [01:34] JoseCabo: https://gist.github.com/1022201 tmpvar [01:34] JoseCabo: i have a memory dir or sometihng [01:34] JoseCabo: but i don't have idea what it means :S [01:34] colinclark has joined the channel [01:37] CarterA has joined the channel [01:38] jzacsh: hey, i'm having trouble getting partials to render *with* their parents. basicallyi'm getting the output of the partial, but i'm not getting the output of the parent template. code is here: parent: http://dpaste.de/UHYR/raw/ ; partial: http://dpaste.de/u7Dr/raw/ [01:38] jzacsh: i'm using express.js and jade. [01:38] CarterA has left the channel [01:39] jzacsh: if anyone has a suggestion (posted to expressjs' mailing list), that'd be awesome :) [01:39] CodyGray has joined the channel [01:39] CodyGray has left the channel [01:39] JoseCabo: tmpvar, maybe because isn't compiled with debugg option? [01:39] tmpvar: JoseCabo, yeah [01:40] tmpvar: you'll also want to run `gdb --args node_g lesson3.js` next time [01:40] JoseCabo: tmpvar, is -g in cpp, right? where can i put this option? [01:40] tmpvar: ./configure --debug [01:41] JoseCabo: node-ogl dones't have configure file [01:42] tmpvar: good point, i was thinking you recompile node with that flag [01:42] tmpvar: not sure if that helps though [01:43] JoseCabo: i can do this if you want xD, i can recompile node hehe [01:43] gsmcwhirter: anyone know anything about couchtato? i'm wondering about the order of iteration (each task on a document and then more on, or first task on all docs, then second task) [01:43] tmpvar: JoseCabo, yeah.. im not sure [01:46] JoshC1 has joined the channel [01:47] jjjdd has joined the channel [01:47] Marak has joined the channel [01:47] JoseCabo: tmpvar, it is recompiled with --debug now i am compiling node-ogl extension and... run it wieh gdb [01:48] jjjdd: Dilema concerning node installation on ubuntu: to use sudo or not? [01:48] jjjdd: it seems that NPM is best used with sudo, but sudoing on NPM install when nodejs was installed without sudo causes issues [01:49] Chani: damn. my little tcp server was working fine with plain text, but throws a fit on binary data... [01:49] strmpnk_ has left the channel [01:49] jameshome has left the channel [01:49] jjjdd: this is a problem when trying to use packages such as forever [01:49] jjjdd: any ideas ? [01:50] JoseCabo: tmpvar, now i have result! xD [01:50] Chani: I got rid of a stray setEncoding, but now... well, the data coming in has length 120, when I append it to the buffer then the buffer's length is only 93, and the packet itself says the length ought to be 94 [01:50] Chani: ACTION isn't sure *what* is going on [01:50] Chani: probably something to do with strings.. [01:50] Chani: += may be bad for binary data. but... where the crap did 120 come from? [01:51] Chani: damn. afk. [01:52] yukihr has joined the channel [01:53] yukihr has left the channel [01:53] ParadoxQuine has joined the channel [01:53] JoseCabo: tmpvar, https://gist.github.com/1022220 gist of the where output in gdb for lesson3.js [01:53] JoseCabo: seems to be the problem in "call" method in node :S [01:53] JoseCabo: or v8, wtf... [01:54] JoseCabo: I need go to sleep, thanks for all help xD Tomorrow more :) Good night tmpvar !! [01:55] aredridel has joined the channel [01:55] Aria has joined the channel [01:56] boehm has joined the channel [02:01] KingJamool has joined the channel [02:01] nannto has joined the channel [02:02] dshaw_ has joined the channel [02:03] stepheneb has joined the channel [02:06] pifantastic has joined the channel [02:07] mtsmith has joined the channel [02:08] mykul has joined the channel [02:10] romanb has joined the channel [02:13] mtsmith has left the channel [02:17] dgathright has joined the channel [02:17] johnnywengluu: are node.js conference videos up yet? [02:20] ditesh|cassini has joined the channel [02:22] DTrejo has joined the channel [02:22] dnuke has joined the channel [02:24] quackquack: What testing frameworks for server-side testing are their for node? [02:25] Aria_: rather a bunch. vows, expresso, nodeunit [02:26] aredridel: What are you testing? [02:26] sub_pop has joined the channel [02:26] quackquack: controllers, using expressjs [02:26] Aria_: Just unit tests? [02:26] Aria_: Ah, you probably want expresso, that's my guess. [02:26] quackquack: well, what frameworks would I want to use for each [02:27] Aria_: Though I use vows lately. But I'm not using express. [02:27] quackquack: whats the best for testing views/javascript (coming from using selenium in rails) [02:27] mscdex: johnnywengluu: i think they're still working on it [02:28] quackquack: client javascript, that is [02:28] SubStack: quackquack: in a few weeks, testling [02:28] tbranyen: quackquack: there are a few [02:28] SubStack: not ready just yet though [02:28] Aria: Amusingly relevant: [02:28] Aria: [20:28:20] kohai: @mblarsen: My code-stack for the next #nodejs: express, mongoose, jade (+markdown), stylus and jasmine for testing. Show me yours! [02:29] quackquack: meh, i tried jasmine before, didnt like it [02:29] konobi: zombie? [02:30] KingJamool has joined the channel [02:30] quackquack: i couldnt get that to run, but i tried it when it was released, not since [02:31] quackquack: phantomjs looks interesting [02:31] sechrist has joined the channel [02:31] srid has joined the channel [02:34] edude03 has joined the channel [02:41] matwill has joined the channel [02:43] tim_smart: I use microtest for testing [02:50] levi501d has joined the channel [02:54] DTrejo has joined the channel [02:54] doki_pen has joined the channel [02:55] niftylettuce has joined the channel [02:55] bakert has joined the channel [02:56] davidbanham has joined the channel [02:58] AvianFlu has joined the channel [02:59] niftylettuce has joined the channel [03:00] raidfive has joined the channel [03:00] kriszyp has joined the channel [03:01] mcluskydodallas has joined the channel [03:01] eyesUnclouded has joined the channel [03:05] cognominal_ has joined the channel [03:07] yokoe has joined the channel [03:07] hermanjunge has joined the channel [03:08] hermanjunge: hi [03:08] hermanjunge: who's using connect-redis? [03:08] Marak: hey hermanjunge , hook.io demos working [03:08] hermanjunge: great! [03:08] Marak: npm install hook.io-helloworld -g [03:08] Marak: npm install hook.io-logger -g [03:08] hermanjunge: yesterday have some problems trying to setting the scout up [03:08] Marak: then spin up many of thems [03:08] Marak: hermanjunge: completely new now [03:08] Marak: hermanjunge: old demos gone for time being [03:09] hermanjunge: excellent [03:09] Marak: spin up multiple hookio-helloworld after you install [03:09] stephanepayrard_ has joined the channel [03:09] hermanjunge: gonna try to run some tests [03:09] Marak: then start up hookio-logger [03:09] Marak: please do [03:09] hermanjunge: then, I want to help you writing the document [03:09] Marak: awesome [03:09] hermanjunge: I see some very useful implementation on top of a hook.io layers [03:10] Marak: hermanjunge: i see all i/o being done through it [03:10] hermanjunge: have you read about Enterprise Bus Servers? [03:10] hij1nx has joined the channel [03:10] Marak: hermanjunge: its the www.iopocalypse.com [03:11] focusaurus has joined the channel [03:11] hermanjunge: These are frameworks (usually written in Java) that are able to connect legacy apps, ftp servers, ERP, XMl Web Services, you name it [03:12] Marak: hermanjunge: exactly that, hook.io is for all io on all devices [03:12] hermanjunge: if it is possible to release a string framework in nodejs able to connect anything to anything by just edithing a couple of text scripts... [03:12] Marak: and even in-process too ( later on ) [03:12] hermanjunge: .. it is the future man, the future [03:12] Marak: hermanjunge: yep, this is it [03:12] hermanjunge: :D [03:13] hermanjunge: iopocalypse! [03:14] hermanjunge: Marak: Have you sleep anything? [03:14] Emmanuel__ has joined the channel [03:14] hermanjunge: sorry, * sleep some [03:14] Marak: hermanjunge: yes i take 20 hour sleep yesterday starting yesterday afternoon [03:14] Marak: so much better now [03:14] hermanjunge: that's better [03:15] Marak: zzzzzz [03:15] Marak: :-D [03:15] stagas has joined the channel [03:15] Marak: up for i dont know how many days [03:15] Marak: brb [03:15] hermanjunge: I've woke up at 1700 :D [03:15] hermanjunge: what time is it in bay area? [03:18] Marak: 8:19pm [03:19] hermanjunge: It is 2319 here. I'm fixing a problem with connect-redis: It is storing the sessions on DB 0, and it is configured on db 1... [03:20] hermanjunge: I was looking for TJ [03:20] hermanjunge: (That's what I love of nodejs community, you can contact the authors, is not like PHP or something) [03:21] sourcode has joined the channel [03:23] tyler-iphone has joined the channel [03:23] Marak: hermanjunge: you try hook.io-helloworld install? [03:23] hermanjunge: not yet [03:23] Marak: let me know [03:23] hermanjunge: ok [03:24] mykul has joined the channel [03:25] hermanjunge: $ sudo npm install hook.io-helloworld -g .... is taking loooooooong time [03:26] hermanjunge: there! [03:26] joshthecoder has joined the channel [03:27] Marak: hermanjunge: its built on shoulder of giants lol [03:27] Marak: now just spin up multiple hookio-helloworld [03:27] Marak: they will all talk to each other [03:27] Marak: then you can startup, hookio-logger and it will start logging [03:27] Marak: you can even startup the logger first, and it will act as server [03:28] Marak: most hooks can act as both server and client seamlessly [03:28] Marak: i might allow the ability to restrict that though, it can get a little minding for certain hooks [03:29] hermanjunge: I got three helloworld's greeting each other [03:30] hermanjunge: have you thought on an enqueuer yet? [03:30] hermanjunge: example, some hook is sending you files [03:30] hermanjunge: that's the next step [03:31] hermanjunge: the other is a property on every hook: a hook could be a "receiving hook", a "sending hook" or a "sending-receiving" hook [03:32] dwasp has joined the channel [03:34] dwasp: is there any specific middleware I need to .use in expressjs to have request.params be populated? it seems to always be an empty array when I do console.log [03:34] tc444: can i get a quick tally of what YOU PEOPLE develop your node apps vs. what you deploy it on? [03:34] hermanjunge: ... going to eat something, see you later Marak [03:35] davidbanham has joined the channel [03:36] gtramont1na has joined the channel [03:38] Marak: tc444: whats the question? [03:38] Marak: dwasp: the bodyDecoder? i dont use that lib [03:38] Marak: it has that though [03:38] Marak: maybe its built in now, ask tj [03:38] Marak: or read the docs [03:38] dwasp: Marak: didn't see anything specific in the docs, seems like it [03:39] dwasp: 's built in for GETs, but I have app.use(express.bodyParser()) and have tried a post as well [03:40] dwasp: I must be doing something dumb, because it's a simple use case [03:40] Marak: dwasp: i think you should read the docs again, express can totally do that [03:40] dwasp: is there something besides http://expressjs.com/guide.html ? [03:41] dwasp: Marak: nevermind, thanks. I need to use req.param('param_name') instead of req.params.param_name [03:42] tc444: Marak: i'm interested in what OS node developers are developing on vs. what they deploy it on. [03:42] dwasp: which I was confused about, apparently req.params only contains the route params [03:42] Marak: tc444: we develop on mac os machines and ubuntu machines [03:42] Marak: tc444: deploy to ubuntu [03:42] Marak: tc444: www.nodejitsu.com [03:42] Marak: mac os development is pretty nice for node [03:43] jmoyers has joined the channel [03:43] dwasp: Marak: it would sweet if you nodejitsu kept up on the invites ;0 [03:46] Marak: dwasp: we got a pretty nice sized beta group going...we just need better infrastructure for support and more support people to expand [03:46] Marak: dwasp: its REALLY important to me that we don't leave a negative experience with anyone, so we need to reach a certain level of quality before i can spam accounts out [03:47] Marak: and part of that quality is having the ability to quickly jump into an app and help debug in real-time [03:47] Marak: :-) [03:47] skm has joined the channel [03:48] tc444: that is reasonable [03:49] Marak: i dont think node.js is going anywhere, except up [03:49] tc444: for sure [03:49] Marak: tc444: also, check this out [03:49] tc444: im working on porting a wholesale management system to node [03:49] Marak: tc444: our node.js application server is open-source, so if you want to start hosting on your own hardware or locally you can, https://github.com/nodejitsu/haibu [03:50] tc444: once i do there will be at least 100 more production sites using node [03:50] Marak: tc444: we run 1000s of those haibu servers on our cloud [03:50] Marak: tc444: yeah check out haibu [03:50] tc444: already checking it out ;x [03:51] Marak: so if nodejitsu isnt doing a good enough job, you can use that to host on your own hardware [03:51] Marak: we accept pull requests ;-) [03:53] Bradleymeck_ has joined the channel [03:58] maqr has joined the channel [03:59] dwasp: Marak: understandable, I'd just pay for the service, that's all - I'm not a sysadmin nor do I want to be ;) [04:00] jamescarr: hmmm [04:00] jamescarr: Marak, btw. you use Mongoose? [04:03] _jgr has joined the channel [04:03] cjm_ has joined the channel [04:04] Marak: jamescarr: i dont use mongodb really [04:04] dshaw_ has joined the channel [04:04] Marak: jamescarr: couch, inmemory, filesystem, all fun [04:05] Marak: we use redis at nodejitsu for load balancer lookups i think [04:05] Marak: or something like that [04:05] qhead: Does anybody have url to that table where you can see time it takes to access various resources like CPU, network, RAM, etc. [04:05] qhead: I just can't seem to find it anywhere :/ [04:05] matwill has joined the channel [04:09] RORgasm has joined the channel [04:10] jamescarr: Marak, yeah, playing with mongodb this project and trying mongoose out [04:10] jamescarr: so far so good, but cant figure out something as simple as getting a sorted result back [04:11] tc444: if anyone is interested in JS templating i just published this: https://github.com/tcrowe/template.js [04:14] tc444: crockford would slap me for using new Function but i can take it [04:14] Gather has joined the channel [04:15] Gather: hmm any ideas why I get SyntaxError: Unexpected token ; [04:15] Gather: when attempting to just write the same program as on the webpage? [04:16] tc444: i'll check [04:16] Gather: Presumably theres some configuration problem on my machine [04:16] Gather: i guess the example on the webpage wouldnt be incorrect [04:16] Gather: (www.nodejs.org) [04:17] kruckenb has joined the channel [04:17] orospakr` has joined the channel [04:17] dgathright has joined the channel [04:17] tc444: pardon i thought you were saying something in reference to what i posted right before you joined [04:17] Gather: tc444: ah :) [04:18] tc444: Gather: did you just compile node? [04:18] Gather: this is quite strange... it works fine when i copy the code from the page but when i write it my self it crashes [04:18] Gather: tc444: nop i used the osx binary [04:19] brownies has joined the channel [04:19] boazsender has joined the channel [04:20] tc444: Gather: i just tried it, worked [04:20] pifantastic has joined the channel [04:21] tc444: it's basic [04:21] AvianFlu has joined the channel [04:21] Gather: yup [04:21] Gather: therefore it must be some configuration error on my computer i guess [04:21] stalled has joined the channel [04:22] tc444: compile it, it only takes about 2-3min [04:22] Gather: it was a terminal charset problem [04:22] Gather: switched to utf8 and it worked fine [04:22] tc444: excellent [04:23] tc444: what's the default charset? [04:23] Gather: iso-8859-1 for my part [04:23] Gather: could just be some little mishap in the { and ( aswell cos both scripts compile now [04:24] Gather: rewrote the one with 8859-1 before i tried with utf-8 [04:26] Gather: now lets get on to testing what node is good for :) [04:27] v0idless- has joined the channel [04:30] Gather: Really wish i had catched the nodejs talk at NDC last week [04:30] Aria: Oh, socket close timing, how I loathe thee. [04:32] meatmanek has joined the channel [04:33] mscdex: jeez, no calvin OR kohai [04:34] mscdex: what is this world coming to? [04:34] tbranyen: peace [04:34] kruckenb: /ignore -channels #node.js * JOINS PARTS QUITS NICKS [04:34] Marak: i can bring him in [04:35] cognominal_ has joined the channel [04:35] MooGoo: I think I was breaking my bot earlier [04:35] kohai has joined the channel [04:35] Marak: !insult mscdex [04:35] kohai: mscdex is a wombat-loving heifer-puncher! [04:35] MooGoo: hm [04:35] mscdex: i tried sending a tweet the other day on kohai and i was 404'ed [04:35] mscdex: er not 404 [04:35] mscdex: hah [04:35] mscdex: 403 [04:35] Marak: mscdex: hrmmm? [04:35] Calvin has joined the channel [04:35] MooGoo: yea [04:36] MooGoo: twitter very reliable [04:36] Marak: mscdex: i dont know wha tyou mean [04:36] mscdex: Marak: i wasn't whitelisted [04:36] mscdex: :S [04:36] MooGoo: your bot got banned? [04:36] mscdex: MooGoo: calvin is your bot? [04:36] MooGoo: maybe [04:36] mscdex: haha [04:36] Marak: !config get plugins:alias:whitelist [04:36] kohai: plugins:alias:whitelist is [AvianFlu, Marak, hij1nx, indexzero, DTrejo, tmpvar, ryah, dominictarr, samsonjs, ben_alman, chapel, jesusabdullah, goatslacker, indutny] [04:37] Marak: !config add plugins:alias:whitelist mscdex [04:37] kohai: mscdex was added to plugins:alias:whitelist. [04:37] Marak: !config save [04:37] kohai: Config saved. [04:37] Marak: there you go bro [04:37] mscdex: yay \o/ [04:37] mscdex: i can use twitter again! [04:37] MooGoo: there's this guy with an ircbot in another chan that has twitter functions and every time twitter lags (most of the time) his bot gets totally stalled up and cant do anything while waiting for twitter to respond [04:37] MooGoo: I told him he needs async [04:37] Gather: hmm is it possible to have a node program connect to irc? [04:37] MooGoo: he wont listen [04:37] mscdex: Gather: yes, of course [04:38] Gather: neat [04:38] mscdex: Gather: calvin and kohai are irc bots in node [04:38] AvianFlu: !insult Gather [04:38] kohai: Gather is a wombat-loving heifer-puncher! [04:38] Calvin: Gather refuses to read Dune, THE BASTARD. [04:38] Calvin: Gather those actions kohai [04:38] Calvin: MooGoo , the do rewrite most of the fundies your [04:38] MooGoo: man... [04:38] AvianFlu: jesus Calvin, triple response? [04:38] Calvin: response of the install [04:38] MooGoo: .insult AvianFlu [04:38] Calvin: AvianFlu_fat denies being fat [04:38] MooGoo: hm [04:38] MooGoo: dont abuse bots kids [04:38] mscdex: moogoo: there's a bug with calvin not truncating output ;) [04:38] Calvin: truncating there's [04:39] mscdex: MooGoo: for js eval [04:39] MooGoo: there's a bug where calvin is stupid [04:39] Calvin: there's no problem , I f you stupid [04:39] MooGoo: hm [04:39] mscdex: haha [04:39] MooGoo: yea [04:39] MooGoo: at least I removed setTimeout and setInterval [04:39] mscdex: calvin has an attitude problem [04:39] Calvin: attitude problem [04:40] mscdex: MooGoo: yeah but throw a loop that outputs to stdout indefinitely and it gets flooded off irc :) [04:41] MooGoo: the problem is the eval context is long running [04:41] mscdex: not sure how v8bot handles that [04:41] MooGoo: so I cant just wait for on('exit') [04:41] MooGoo: to privmsg the chan [04:41] mscdex: v8bot shows only the first few or so lines then says "(output truncated..)" [04:41] MooGoo: and my timings for flood throttling are too conservitive I think [04:42] Corren has joined the channel [04:45] CodyGray has joined the channel [04:45] CodyGray has left the channel [04:47] dgathright has joined the channel [04:51] znutar has joined the channel [04:52] philtor has joined the channel [04:52] dhasenan has joined the channel [04:54] jble has joined the channel [04:54] Viriix has joined the channel [04:57] kohai: @markbao: is it safe to say that all Node.js modules are async, unless if specified otherwise? [04:59] kohai: @michaelsbradley: @markbao are you referring to the node.js API or to javascript function calls in general running in a node.js script? [05:00] meso_ has joined the channel [05:05] Gather: ls [05:06] kohai: @RafaelCorrales: It feels weird that I just had to pay $45 for a #nodejs hoodie [05:07] Gather: anyone used the irc-js module? [05:08] Mrfloyd has joined the channel [05:10] sveimac_ has joined the channel [05:11] tc444: kohai: any node dew rags/headbands? [05:12] mscdex: Gather: i've used node-irc [05:12] idefine: when querying with mongoose, can you use namedscopes and cursor methods like limit, skip, sort together? [05:16] JakeyChan has joined the channel [05:17] dgathright has joined the channel [05:18] MooGoo: I just wrote my own irc functions [05:18] MooGoo: I have a habit of doing stuff like that [05:18] JakeyChan: How to get the params that pass to function ?? [05:18] MooGoo: arguments? [05:18] JakeyChan: mayby. [05:18] JakeyChan: I do not know how many arguments be passwd [05:18] MooGoo: arguments.length [05:19] JakeyChan: thanks [05:19] davidbanham has joined the channel [05:22] sivy has joined the channel [05:24] sreeix has joined the channel [05:26] AAA_awright has joined the channel [05:27] JakeyChan: which module can parse JSON? [05:28] dgathright has joined the channel [05:28] Aria: The builtin JSON [05:28] Aria: JSON.parse() [05:29] JakeyChan: thanks. [05:31] Marak: JakeyChan: you want to wrap that in try / catch too, it doesnt throw nice errors when bad parse [05:32] kohai: @ambiss: @bioliveira Você sabe alguma maneira de usar o NODE.JS sem rodar por cima da porta 80, pois trabalho com Apache! [05:32] morgabra has joined the channel [05:33] kohai: @twittlefish: w00t, wrote my first ever Node.js server! Good timing I guess - I gotta learn it properly within a week... [05:35] MooGoo: retarded functionality that [05:35] JakeyChan: Marak: thanks. [05:35] Marak: JakeyChan++ [05:35] v8bot: Marak has given a beer to JakeyChan. JakeyChan now has 1 beers. [05:36] JakeyChan: v8bot: hah. [05:36] v8bot: JakeyChan: Use v8: to evaluate code or "`v commands" for a list of v8bot commands. [05:36] kohai: @hermanjunge: @ambiss, @bioliveira: Using #nodejs through a proxy in Apache (port 80), http://j.mp/jEnsyN (link: http://hermanjunge.com/post/5111889893/coexistence-of-apache-and-node-js-in-server) [05:36] JakeyChan: v8bot: v8? what is v8 ? [05:36] v8bot: JakeyChan: Use v8: to evaluate code or "`v commands" for a list of v8bot commands. [05:37] JakeyChan: v8:console.log("Hi, girl"); [05:37] v8bot: JakeyChan: "Hi, girl" [05:37] JakeyChan: v8: console.log("Nice girl"); [05:37] v8bot: JakeyChan: "Nice girl" [05:37] JakeyChan: cool [05:38] JakeyChan: hi, I want to read file and the return the file content. I do not pass callback. Do you know how to ? [05:38] Chani: ACTION returns to her binary problem [05:39] Chani: oh, buffer is a string [05:39] simenbrekken has joined the channel [05:39] Chani: that can't be helping matters. [05:39] Chani: so... the data event for sockets.. that passes... [05:40] tuhoojabotti: tuhoojabotti-- [05:40] v8bot: tuhoojabotti: Don't cheat! You can't give a beer to yourself. [05:40] tuhoojabotti: :/ [05:40] Chani: ...Buffer or String. [05:40] tuhoojabotti: v commands [05:40] tuhoojabotti: v8: v commands [05:40] v8bot: tuhoojabotti: SyntaxError: Unexpected identifier [05:40] Chani: but what, pray tell, is Buffer? [05:40] tim_smart: JakeyChan: Y NO CALLBACK [05:41] tuhoojabotti: v8 commands [05:41] v8bot: tuhoojabotti: v8 is no longer supported (except in PM). Try v8: or v8> [05:41] tuhoojabotti: v8: commands [05:41] v8bot: tuhoojabotti: ReferenceError: commands is not defined [05:41] Chani: and where, if anywhere, is it documented? [05:41] tuhoojabotti: okay. [05:41] Chani: damn, I am failing at documenting the holes in documentation [05:42] Chani: ah, there's the docs [05:44] Chani: a buffer cannot be resized. goddamnit. what do I do if the message gets split over two events? [05:44] JakeyChan: because I am reading the configure and then do whole project with this configure . [05:44] JakeyChan: is there have good way to do that ?? [05:45] ditesh|cassini has joined the channel [05:46] JakeyChan: maybe the function should look like that : function loadConfig(config, next) {}// :D [05:47] madsleejensen has joined the channel [05:49] Chani: ACTION grumbles [05:50] Chani: if Buffer.length does not reflect the size of the contents, then what does? [05:50] Chani: I need to know how many bytes of the incoming data I actually ought to save [05:50] Chani: or else when the next chunk of data comes in and I somehow find a way to append it, I'll get garbage between the two chunks of data. [05:51] Aria: Track what you put into the buffer. [05:51] Chani: Aria: the buffer is incoming data from a socket. [05:51] Chani: I don't control what comes in [05:52] Chani: I need to reassemble it and parse it [05:52] Chani: buffer.length is 120, but I know that the data my test script sent was 94 bytes. [05:53] Chani: this seems like a pretty basic problem... [05:53] tim_smart: JakeyChan: var file_content = fs.readFileSync('filename', 'utf8') [05:54] tim_smart: Only do it on app/script initiation phase. [05:54] Chani: how the crap do I find out the real size of an incoming chunk of data? [05:55] tim_smart: Chani: Buffer.byteSize(string || buffer) [05:55] jakeg has joined the channel [05:55] Chani: tim_smart: oh, will that work on a buffer? [05:55] tim_smart: Ignore the buffer [05:55] Chani: the documentation said it was for strings [05:55] tim_smart: Buffer.isBuffer(data) ? buffer.length : Buffer.byteSize(data) [05:55] tim_smart: Chani: ^ [05:56] Chani: wha? [05:56] Chani: nonono, buffer.length is evil [05:56] Chani: it returns nonsense [05:56] tim_smart: data.length sorry [05:56] Chani: lenght is evil. [05:56] tim_smart: data.length returns the size of the buffer [05:56] tim_smart: in bytes [05:56] Chani: which is not the size of the contents [05:56] tim_smart: So you want character length? [05:57] Chani: I get 120, when I know my test client sent only 94 bytes [05:57] Chani: I want to know exactly how many bytes were actually read from the socket [05:57] Chani: not the size of the buffer node decided to allocate to hold those bytes [05:57] insin has joined the channel [05:58] ditesh has joined the channel [05:58] Chani: if the incoming data is plain text, I can convert to a string and it magically works... but with binary data it all falls down. :( [05:58] tim_smart: Chani: Node doesn't do any fancy termination characters or anything [05:58] tim_smart: So the buffer length should === sent length [05:59] michaelhartau has joined the channel [05:59] Chani: tim_smart: but it didn't. :( [05:59] tim_smart: Chani: Can you provide steps to reproduction? [05:59] tim_smart: Actually, I'll make some code [05:59] Chani: well, I can provide my codebase, but that would kinda suck for you [06:00] tim_smart: Ya, I'll make a quick script to test it out [06:00] Aria: Woot. Minor rev to node-smtp [06:00] Chani: I should test this with the client that intentionally chops up messages, actually. [06:00] kohai: @aredridel: Woot! I just made a minor revision to node-smtp. Yay polishing #nodejs projects! [06:01] Chani: if the message all comes in one blob hten I get the header and can extract the length from that; the problem is if I don't get the whole header in the first data event. [06:01] Chani: tim_smart: thanks [06:02] yozgrahame has joined the channel [06:02] michaelhartau has joined the channel [06:03] kohai: @drewlesueur: played with @mongodb over the weekend. Really like this node.js library for it: http://t.co/n58hyy5 (link: https://github.com/christkv/node-mongodb-native) [06:08] coderendezvous has joined the channel [06:10] robhawkes has joined the channel [06:12] tim_smart: Chani: Fine here https://gist.github.com/7366723810039aad00e1 [06:12] Chani: tim_smart: I tested some more, and it's behaving better with the client that sends plain text split up into lots of little packets... the buffer is always equal to the amount that's added to the string, at least [06:12] Chani: tim_smart: one dd thing I notice is that this other client is sending one more byte than its claimed message length. [06:12] Chani: so... maybe there's just garbage at hte end of the message sometimes, for some inexplicable reason [06:13] Chani: but having it at the end is tolerable; so long as it's not in the middle :) [06:13] Yoric has joined the channel [06:14] Chani: ACTION is going to assume that if the buffer does not include the full header, its length will be exactly the content length [06:15] tim_smart: Content length isn't reliable [06:18] langworthy has joined the channel [06:18] daglees has joined the channel [06:18] daglees has joined the channel [06:18] FireFly has joined the channel [06:18] sudhirjonathan has joined the channel [06:19] dwasp has joined the channel [06:19] FIQ|n900 has joined the channel [06:23] ph^ has joined the channel [06:24] Chani: aww crud, now I lose all the nice string things like indexOf... [06:25] rope has joined the channel [06:26] meso has joined the channel [06:26] herbySk has joined the channel [06:28] shiawuen has joined the channel [06:29] rope has joined the channel [06:32] kohai: @cirpo: Workday with @__ce! #nodejs #daje [06:34] sgimeno has joined the channel [06:35] AAA_awright has joined the channel [06:39] mscdex: .. console.log('Please don't flood me!') [06:39] Calvin: SyntaxError: Unexpected identifier [06:39] mscdex: .. console.log('Please don't flood me!'); [06:39] Calvin: SyntaxError: Unexpected identifier [06:39] mscdex: .. console [06:39] Calvin: { log: [Function] } [06:39] mscdex: whaa [06:40] mscdex: .. console.log("Please don't flood me!") [06:40] Calvin: 03"Please don't flood me!" [06:40] Calvin: 14undefined [06:40] mscdex: :S [06:40] thoolihan has joined the channel [06:40] mscdex: MooGoo: single quotes aren't escaped? [06:41] mscdex: i thought that was working the other day [06:41] mscdex: :o [06:42] guy has joined the channel [06:43] wilmoore has joined the channel [06:43] gkmngrgn has joined the channel [06:45] Chani: progress! :) my server can read/write binary data without exploding [06:45] mscdex: heh [06:45] Chani: now to find out what I did to mangle that data... [06:45] Chani: probably set ascii encoding on something still [06:48] Chani: ah. data.join; that *would* be a problem... [06:48] Chani: I wish there was an efficient, easy way to merge multiple buffers [06:49] context: chani: i think all data is binary [06:49] aperiodic has joined the channel [06:49] Chani: damn... I really *liked* that join function. [06:50] Chani: now... do I assemble it into one giant buffer... or do multiple writes... hmm... [06:51] emattias has joined the channel [06:53] jacobolus has joined the channel [06:55] saurabhverma has joined the channel [06:57] stonebranch has joined the channel [06:58] JakeyChan: ..console.log("Flood you!"); [06:58] JakeyChan: .. console.log("Flood you!"); [06:58] Calvin: 03'Flood you!' [06:58] Calvin: 14undefined [06:58] JakeyChan: cool :D [07:01] Marak: MooGoo: how make irc colors :-) [07:01] Marak: ARE YOU A WIZARD Calvin [07:01] Calvin: WIZARD Calvin [07:01] shiawuen_ has joined the channel [07:02] darshan-mobile has joined the channel [07:03] spaceinv1der: 13C11o08l12o08u11r04s12,, 00h04o09w 12d13o 08t00h04e12y 00w09o12r04k13? [07:03] boehm has joined the channel [07:03] stagas_ has joined the channel [07:04] shiawuen has joined the channel [07:05] kohai: @mranney: I'm excited that @trycatcher is joining Voxer to work with node.js and other fun stuff. [07:05] jakeg has joined the channel [07:05] kohai: @RaymondTayBL: node.js is a decent tool when learning javascript. i don't like to write html when i'm learning js. why should i? [07:05] johnnywengluu: v8: console.log(1) [07:05] v8bot: johnnywengluu: 1 [07:05] kohai: @morgancheng: .NET一直宣传的有朝一日能够跑得比native code还快的信念,我们都相信九年了也为看到,不过估计要现在Node.js上成为显示了。 #nodejs #dotnet [07:06] bosphorus has joined the channel [07:06] JakeyChan: kohai: You are Chinese guy ? [07:06] kohai: @indexzero: Disregard sleep, support open-source: http://bit.ly/kM4Uf1 #nodejs cc/ @nodejitsu (link: https://github.com/nodejitsu/node-http-proxy/issues/61#issuecomment-1357379) [07:06] kohai: @seetheprogress: @xAndy naja wie gesagt ist ja kein frontend nötig. Und pytgon wäre mal was neueres. Unde node.js hätte sicher auch was. [07:09] JakeyChan: kohai: [07:10] Lorentz has joined the channel [07:11] carpeliam has joined the channel [07:13] gkmngrgn has joined the channel [07:13] bergie has joined the channel [07:14] carpeliam: what do most people use for deployment? i've got some existing rails apps on my server, how typical is capistrano+upstart+apache+node used for node.js deployment? [07:15] meso_ has joined the channel [07:15] kohai: @Bluebie: Also pondering javascript version of legs targeting node.js and adobe air socket APIs. Maybe changing protocol to WebSockets be better tho? [07:16] steffkes has joined the channel [07:16] johnnywengluu: carpeliam: heroku? =) [07:16] burg has joined the channel [07:17] aliem has joined the channel [07:17] xsyn has joined the channel [07:18] Marak: carpeliam: we are working on https://github.com/nodejitsu/haibu for that, deploy via REST if you want [07:18] Marak: carpeliam: its still young though, not as refined as cap yet :-) [07:18] carpeliam: johnnywengluu: i've got my own private server :) [07:19] johnnywengluu: carpeliam: yeah but my style is I dont wanna care about setting up the servers myself...just push it up and its scalable [07:20] johnnywengluu: just like telephony .. use a service provider instead so I gan development speed for new features [07:21] johnnywengluu: the only "downside" i see is the pricing .. but my telephony and internet subscriptions cost also =) [07:21] Chani: yay! [07:21] kohai: @simonsegal: Wow the desktop is dead. 'Scribes' say I must move all effort quickly to javacript, html5 and node.js or I will be out of a job...gulp. #bah [07:22] Chani: I finally crushed every little asciification of my binary data :) [07:22] carpeliam: johnnywengluu that makes a lot of sense. maybe some day the convenience of heroku will be worth it, but for now, owning the deployment side of things is at the very least educational while also being cheaper [07:22] Chani: desktop, dead? pah [07:23] Chani: tell that to people using photoshop [07:23] johnnywengluu: carpeliam: is the site gaining a lot of users? [07:23] johnnywengluu: carpeliam: i have had my site on heroku for 1 year without costs [07:23] darshan-mobile: Lol people realized the desktop was old and the web was the next big thing more than a decade ago..... [07:24] johnnywengluu: sometimes its cheaper with heroku =) [07:24] johnnywengluu: also there is cloudfoundry, dotcloud etc . the prices will go down due to the competition [07:24] johnnywengluu: just like broadband! =) [07:24] carpeliam: Chani: i've seen websites that do photo filters, photoshop might be online before you know it ;) [07:25] Chani: carpeliam: I have trouble believing they'll do professional stuff, though [07:25] tahu has joined the channel [07:25] johnnywengluu: Chani: pixlr.com [07:25] nash__ has joined the channel [07:25] johnnywengluu: yeah maybe not image professionals .. but for web development pixlr.com is very enough [07:26] johnnywengluu: or sufficient [07:26] Chani: yeah [07:26] Chani: the desktop will always hang around [07:26] Chani: just like some people are still getting paid to write cobol.. lol [07:26] romanb has joined the channel [07:27] nash__: 2000 euro per day! [07:27] nash__: a friend of mine is paid to maintain a cobol app [07:27] Chani: wow. [07:27] Chani: I had heard it was a lot, but that.. that... wow [07:27] nash__: thinking about switching to cobol, too :D [07:27] Chani: indeed :) [07:27] Chani: where can I get one of those jobs? ;) [07:27] nash__: haha [07:27] nash__: its some really old app [07:28] nash__: but hes the only developer capable of keeping that thing alive [07:28] Chani: ohboy [07:28] Chani: one of those [07:28] nash__: maybe 30 or so [07:28] nash__: and hes not that old [07:28] Chani: I could easily learn cobol .. [07:28] johnnywengluu: google will kill the desktop [07:28] Chani: lol [07:29] nash__: … and hopefully cobol *g* [07:29] carpeliam: i wonder how much it'd cost for them to hire 2 developers at 1000 euro/day to upgrade the app to something modern [07:29] nash__: i guess they are too scared [07:29] euforic has joined the channel [07:29] nash__: to do anything about replacing that thing [07:29] Chani: yeah [07:29] Chani: it works, it works, don't touch it or it might explode! [07:30] ewdafa has joined the channel [07:30] johnnywengluu: would anyone here buy chromebook? [07:30] nash__: at least 350$? [07:31] nash__: seems quite expesive for a browser imho *g* [07:31] nash__: i just heard about the pricing of chromebooks [07:31] nash__: but I´d be interested to see it in action, I have to admit [07:31] johnnywengluu: yepp [07:31] carpeliam: Marak: haibu looks intriguing [07:31] johnnywengluu: i wont buy it but i would like to use it [07:31] andrenkov has joined the channel [07:32] simenbrekken has joined the channel [07:32] carpeliam: a few friends of mine got one for free [07:32] carpeliam: those bastards. [07:32] nash__: how so? [07:32] nash__: working at google? [07:32] jbpros has joined the channel [07:32] RC1140 has joined the channel [07:32] rworth has joined the channel [07:32] Marak: carpeliam: CLI coming soon i hope bradleymeck is on it [07:33] Chani: one thing I don't understand about that: wouldn't you need a client-side program to resize your photos before uploading htem to picasa or whatever? [07:33] mendel_ has joined the channel [07:33] Chani: (I had to spend a loong time training my mum to resize her photos so that she could upload them to facebook) [07:34] carpeliam: google was giving a few of them out a while back, you could take a survey, sign up and they might send you one in the mail. i took the survey, but they ask you "how will you use your chromebook?" and i'm pretty sure they only consider you if you'll use it as your primary machine [07:34] nash__: ah, ok [07:34] johnnywengluu: carpeliam: you didn't know how to lie? [07:34] nash__: would´ve taken one, too, but not as primary machine [07:35] carpeliam: johnnywengluu: next time, screw my conscience, i want a chromebook ;) hehe [07:35] nash__: to put it in google words: dont be evil :D [07:35] matjas has joined the channel [07:35] carpeliam: yeah, i don't think i could have lied, but it would have been nice [07:35] jacter has joined the channel [07:36] xsyn has joined the channel [07:36] johnnywengluu: carpeliam: download chrome browser for now =) [07:36] v0idless- has joined the channel [07:36] nash__: *ggg* [07:36] jacter1 has joined the channel [07:37] [AD]Turbo has joined the channel [07:37] johnnywengluu: im in a struggle here .. i like Apple's ease of use but I like google's web vision [07:37] [AD]Turbo: hi there [07:37] johnnywengluu: so i dont know who i will choose when i buy mobile phone and laptop [07:37] stonecobra has joined the channel [07:37] pen has joined the channel [07:38] andrenkov has joined the channel [07:39] jhurliman has joined the channel [07:39] nash__ has joined the channel [07:41] euforic has left the channel [07:43] joelr has joined the channel [07:43] kohai: @blueicesir: JSApp.US: quick way to try #nodejs and host web based node application http://t.co/Z7bcssa (link: http://jsapp.us/) [07:44] FIQ|n900 has joined the channel [07:44] joelr: good morning! is it possible to simulate thousands of http clients with nodejs? [07:44] Chani: hmm, that's a good question, I might like to know the answer [07:45] stonecobra: Anyone have any idea on "Symbol not found: _ev_rt_now" when running on OS X with latest and node-base64? It built and installed fine. https://gist.github.com/1022429 [07:45] Chani: joelr: I suppose there's always the brute force way - run thousands of node processes, each being one client ;) [07:45] fangel has joined the channel [07:45] joelr: Chani: i need to "control" the clients, though, so i would need to fork and use pipes somehow. i'm looking for an easier way. [07:46] uchuff has joined the channel [07:48] Chani: joelr: someone was talking about threads earlier, and the term "hook.io" came up, but I haven't googled it yet [07:48] tahu has joined the channel [07:48] joelr: Chani: thanks [07:49] ditesh|cassini has joined the channel [07:49] ditesh has joined the channel [07:49] pyrony has joined the channel [07:51] kohai: @killme2008: A geek with a hat » Comparing clojure and node.js for speed http://t.co/4ovfGhL via @Swizec (link: http://swizec.com/blog/comparing-clojure-and-node-js-for-speed/swizec/1593) [07:51] nash__: just wondering if anybody has done file uploading in node [07:51] Swizec: oh hey, a link to my blog, awesome :) [07:51] nash__: how did you validate the uploaded file? [07:52] jeremyselier has joined the channel [07:52] gozala has joined the channel [07:52] Swizec: nash_ uploading to a server, or receiving an upload? [07:52] adambeynon has joined the channel [07:53] nash__: uploading to the server [07:53] nash__: what i mean is [07:53] nash__: how did you check that the max file size e. g is not exceeded? [07:54] nash__: just at the end when the final chunk is received and it is written to disk? [07:54] kohai: @chrissie1: nice write up of node.js http://bit.ly/jrH3hT (link: http://www.nodebeginner.org/#head12) [07:54] Swizec: nash_ there isn't really any other way of doing it than that [07:55] CarterA has joined the channel [07:55] Swizec: nash_ or you could check the length every time you receive a chunk and close the connection when it gets too big [07:55] nash__: ah, thats a good idea, thanks [07:56] nash__: and how´d you go about the mimetype? [07:56] nash__: e. g. if i just wanted to allow jps to be uploaded? [07:56] adrianmg has joined the channel [07:56] nash__: uh, jpgs of course [07:57] saschagehlich has joined the channel [07:58] Swizec: nash_ isn't the mimetype part of most files' headers? [07:59] Swizec: as in, somewhere at the top of the file [07:59] Swizec: at least I know jpegs can be checked that way [08:02] davidcoallier has joined the channel [08:03] msucan has joined the channel [08:04] papandreou has joined the channel [08:04] nash__: you mean, as the upload proceeds i collect some uploaded chunks and then get the mimetype from them? [08:04] nash__: is there a module for node that helps with that? [08:05] nash__: oh wait [08:05] nash__: just found node-mime [08:06] nash__: that looks promising :D [08:06] Swizec: I did not know about that [08:06] Swizec: going to need it for a project of mine, thanks :) [08:09] papandreou: SubStack: Mr. Stack, are you there? [08:09] fly-away has joined the channel [08:09] SubStack: meowing [08:10] papandreou: SubStack: Sorry for missing out on our date last weekend. I saw that you released a new chainsaw in an attempt to address the problem we discussed, but it still doesn't work, seems like it still does a deep traversal of the stack. [08:11] SubStack: what [08:11] masylum has joined the channel [08:11] SubStack: oh right that bug [08:11] masylum: morning [08:11] Shinuza has joined the channel [08:12] papandreou: SubStack: Late at night, you were tired (just like you probably are now :) [08:12] SubStack: send a pull req? [08:12] xsyn has left the channel [08:12] sharkbone has joined the channel [08:13] papandreou: SubStack: Well, I don't really think I'm equipped to pull that off (haha), it'd require knowledge about chainsaw and traverse. [08:13] kohai: @krisnair: and the Node.js stuff is eating my head now. [08:13] SubStack: pfft [08:13] papandreou: papandreou: But I'm up for the challenge. I just have a feeling that it's something that'd be obvious to you. [08:13] SubStack: just dive in and throw some console.log()s around [08:14] papandreou: SubStack: Haha, ok, how log are you going to stick around? [08:14] papandreou: *long [08:14] joelr: Chani: use web worker https://github.com/pgriess/node-webworker [08:15] Pierrot has joined the channel [08:15] jetienne has joined the channel [08:15] slapthelownote has joined the channel [08:15] stonebranch has joined the channel [08:17] markwubben has joined the channel [08:19] andrenko_ has joined the channel [08:19] SubStack: papandreou: well if you send a pull req on github I can see that any time [08:20] papandreou: SubStack: Ah, that's how it works :) [08:20] jacter1 has joined the channel [08:21] kohai: @LessThanDot: New @LessThanDot: Trying out node.js http://bit.ly/mAhw4J (link: http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/trying-out-node-js) [08:22] NetRoY has joined the channel [08:23] RC1140 has joined the channel [08:25] lesce has joined the channel [08:25] sonnym has joined the channel [08:26] `3rdEden has joined the channel [08:27] Slashbunny has joined the channel [08:27] hojberg has joined the channel [08:28] indexzero has joined the channel [08:30] papandreou: SubStack: The problem seems to be that the context is always kept as item 0 in saw.handlers. If I monkey patch js-traverse to return if key ==== 'context' in line 256, it works (my test suite completes instead of hanging, then running out of memory). [08:31] ChrisPartridge has joined the channel [08:32] kohai: @DenisGobo: Reading: Trying out node.js by @chrissie1 http://t.co/Rc2P7kk (link: http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/trying-out-node-js) [08:34] d0k has joined the channel [08:36] Yoric has joined the channel [08:36] papandreou: SubStack: I'm thinking that either the solution could be to kick the context out of there, or to use another means to traverse saw.handlers in chainsaw.chain. Then again, I don't know if the latter solution would affect nested chains. [08:37] FIQ|n900 has joined the channel [08:38] adammw111 has joined the channel [08:38] guy has joined the channel [08:38] papandreou: yanking the chain in vain [08:39] adammw111: Hi. I was looking on the github wiki for instructions on cross-compiling node.. are there any because I couldn't find them? [08:40] pquerna: 66 pull requests. [08:41] pquerna: adammw111: ive seen a few mails about it on the nodejs list before, i'd start searching there [08:42] kohai: @chrissie1: That exports thing in node.js kind of bugs me. [08:43] adammw111: pquerna: k thx. [08:44] level09 has joined the channel [08:46] k1ttty has joined the channel [08:46] andrenko1 has joined the channel [08:47] davidcoallier has joined the channel [08:49] kohai: @DmitryBaranovsk: @RafaelCorrales @esacteksab I am not getting a cent for node.js shirts. Every cent goes to manufacturer. [08:49] jonaslund has joined the channel [08:49] kohai: @deremer: launched my first node.js app on Heroku...feeling sufficiently nerdy [08:50] altamic has joined the channel [08:51] mpoz2 has joined the channel [08:51] Bj_o_rn has joined the channel [08:51] viz has joined the channel [08:53] cjm has joined the channel [08:53] Skola has joined the channel [08:53] Bj_o_rn has left the channel [08:53] bzinger has joined the channel [08:53] Xano has joined the channel [08:54] bkozal has joined the channel [08:55] knuthy has joined the channel [08:57] Skola: I like making the most l33t caroussel in the world [08:58] Skola: only to realize that it's completely the wrong solution [08:59] lesce has joined the channel [09:00] justinTNT has joined the channel [09:01] justinTNT: evenin' [09:01] meso__ has joined the channel [09:02] markwubben has joined the channel [09:02] Skola: mornin' [09:04] gozala has joined the channel [09:04] level09: is it a bad idea creating a socket connection on all website pages [09:05] mendel_ has joined the channel [09:08] level09: seems like extra overhead on the server [09:09] Marak has joined the channel [09:10] mvta has joined the channel [09:11] kohai: @indexzero: So the cool kids like Procfiles eh? // node-procfile: A Procfile parser for node.js https://github.com/indexzero/node-procfile [09:14] SubStack: papandreou: you can inspect this.key in traverse too [09:14] SubStack: without hacking it [09:14] papandreou: SubStack: Oh, you're still there. I have solved the problem, pull req pending. [09:14] SubStack: hooray! [09:15] SubStack: > traverse({ a : 1, b : 2 }).map(function (x) { if (this.key === 'b') this.update(x * 100) }) [09:15] SubStack: { a: 1, b: 200 } [09:15] indexzero has joined the channel [09:15] SubStack: like that [09:16] jetienne: traverse ? where does he come from [09:16] papandreou: SubStack: Yeah, but you cannot prevent it from diving into the value. [09:17] SubStack: you can do either this.block() or this.update(value, true) [09:17] SubStack: oh so for this case this.block() would work [09:17] SubStack: that just landed a few days ago [09:19] SubStack: > traverse({ a : 1, b : [2,3,4], c : [5,6] }).reduce(function (acc,x) { if (this.isLeaf) acc.push(x); if (this.key === 'b') this.block(); return acc }, []) [09:19] SubStack: [ 1, 5, 6 ] [09:19] SubStack: like that [09:19] papandreou: SubStack: Ok, cool. My fix is simpler, though :) [09:19] SubStack: ah cool [09:20] sourcode has joined the channel [09:21] gridshore has joined the channel [09:22] gridshore: Hi, anybody has an example of generating a pdf and streaming the result to a browser using an express application? [09:22] Marak: gridshore: you could use my lame pdf.js [09:22] tomtomaso has joined the channel [09:22] Marak: gridshore: https://github.com/marak/pdf.js [09:22] gridshore: Cool, I'll have a look, thanks [09:23] Marak: but making pdf without canvas is torture [09:23] Marak: tj swears he's got something coming, i believe it [09:23] Marak: hopefully pdf.js lib goes away [09:23] gridshore: I am looking at wkhtmltopdf [09:23] Marak: thats ruby yeah? [09:24] gridshore: Hmm, not sure, I have the binarry locally, uses the webkit from safari [09:24] gridshore: Easy to use command line, now looking at a way to stream the result to a client [09:24] gridshore: Would prefer not to write the file on the server first [09:25] dipser has joined the channel [09:25] mscdex: pdf is a beast [09:25] gridshore: A I see what you are doing, I know that is not easy. Used to work with things like iText a lot [09:25] papandreou: SubStack: https://github.com/substack/node-seq/pull/15 [09:26] gridshore: Now I am trying to convert html to pdf [09:26] mscdex: pdf is about as ridiculous as binary msoffice formats [09:26] mscdex: :p [09:26] Marak: mscdex: what do you call a hook that can boh act as a client (input) and server (output) by default [09:26] ngs has joined the channel [09:26] Marak: like hook.io-helloworld [09:27] mscdex: no idea [09:27] Marak: dual-sided it is [09:27] stride: full duplex? :) [09:27] mscdex: yeah maybe something like that too [09:27] Marak: stride: it would be quad-duplex [09:28] Marak: stride: each channel is bi-directional [09:28] mscdex: :o [09:28] Marak: you guys know how ill hook.io is right [09:28] Marak: npm install hook.io-helloworld -g [09:28] Marak: npm install hook.io-logger -g [09:28] Marak: then start up: hookio-helloworld, hookio-logger [09:28] Marak: as many as you want [09:28] Marak: in whatever order you want [09:28] Marak: they know what to do [09:29] Marak: first hook will be server, all subsequent hooks will connect as clients [09:29] Marak: both helloworld and logger can act as server and client [09:29] Marak: wrap your mind around that and smoke it [09:30] stride: yah, I saw what you did there when you first talked about it here, looks nice [09:30] kohai: @abrdev: Node.js database drivers http://me.lt/7m7RD (link: http://nodejsdb.org/) [09:30] Marak: I've been to the 4th circle of dnode mirror hell, and I've come back with a treasure from the darkness. [09:31] klovadis has joined the channel [09:31] tomtomaso has joined the channel [09:33] swistak has joined the channel [09:36] NetRoY has joined the channel [09:37] pquerna: any noders thinking about ccc camp? [09:37] meso_ has joined the channel [09:38] kohai: @AutomatedTester: Finally groking Jade when using Node.js [09:40] SubStack: papandreou: merged [09:40] SubStack: seq@0.3.2 [09:40] kohai: @christopherdb: do #nodejs on heroku: http://devcenter.heroku.com/articles/node-js [09:40] Marak: pquerna: hrmm? [09:40] papandreou: SubStack: Thanks, then I can finally merge my seq-0.3.x too :) [09:41] CIA-92 has joined the channel [09:43] knuthy has joined the channel [09:44] zomgbie has joined the channel [09:45] pquerna: Marak: http://events.ccc.de/camp/2011/ [09:46] Marak: pquerna: prob not [09:46] digiwano has joined the channel [09:46] meso_ has joined the channel [09:47] pquerna: bummer [09:48] kohai: @DamonOehlman: Piping streams in node.js is pretty awesome #justsayin [09:48] benln has joined the channel [09:49] mscdex: Calvin: hook.io [09:49] Calvin: hookio [09:49] mscdex: ! [09:50] mscdex: Calvin: marak [09:50] Calvin: marak when you read write a model it does , you ing you [09:50] Marak: pquerna: do you have a few seconds? you should check out https://github.com/Marak/hook.io [09:51] Marak: pquerna: ive built something amazing here. bringing many ideas from erlang to node. with hook.io you can easily build custom i/o strategies for any type of i/o.... [09:51] Skola: Calvin's back, amazing [09:51] Calvin: Calvin's a schizo amazing [09:51] Skola: :D [09:52] pquerna: Marak: trying to fully understand, but looks interesting. [09:53] pquerna: ah, its using dnode underneath [09:53] CPartridge has joined the channel [09:53] Marak: pquerna: Imagine every point of i/o in your node app was on a separate process [09:53] sreeix has joined the channel [09:53] mscdex: calvin loves kohai [09:53] Calvin: loves kohai [09:53] mscdex: see [09:53] thalll has joined the channel [09:53] pquerna: yeah, its cool, we kinda do something like this in our twisted python code, but its all backed by queues/bindings in rabbitmq. [09:53] bx2 has joined the channel [09:54] pquerna: i think re-using the EventEmitter interface will basically conqueor the universe [09:54] Marak: pquerna: obviously not great for most applications if you go full retard like that, but you see the power? you can structure your i/o in a tree, so depending on how many levels down the tree you are, the less important that i/o is to your main business logic [09:54] Marak: pquerna: i can also take any piece of sync or async code, throw it on a new process with a callback [09:54] Marak: pquerna: so like memory leak in jsdom? no problem, use https://github.com/tmpvar/hook.io-jsdom [09:54] kohai: @edeleon: Express, pequeño framework para crear app con Node.js http://t.co/wxIWmYL (link: http://expressjs.com/index.html) [09:54] Marak: spawn jsdom on new process, send it some data, get some data back, kill it [09:55] Marak: We are calling it the www.iopocalypse.com [09:55] pquerna: right [09:55] Marak: :-) [09:55] pquerna: its all about LWPs and mesaage passing [09:55] pquerna: (woo) [09:55] Marak: LWPs? [09:55] pquerna: it is the rigt way to build things [09:55] pquerna: light wight prcesses [09:55] Marak: pquerna approves of hook.io? [09:55] pquerna: weight. [09:55] Marak: lol [09:56] Marak: we'll see where it goes, gonna rebuild kohai in it first [09:56] Marak: as the first "real" app i think [09:56] Marak: !insult kohai [09:56] Calvin: kohai doesn't have a love instructor [09:56] pquerna: i think the conceptual thing is spot on, that message passing architectures are the key to long term scalability and and currently node doesn't have a standard method of doing this. [09:56] pquerna: i think ryan also wants something 'like' this in the long run [09:56] pquerna: he has been... playing with some p2p ideas [09:57] Marak: pquerna: yeah, if you see my hook.io talk from jsconf 2010, you see im all about IPO [09:57] Marak: input, process, output [09:57] Marak: me and ryah see pretty eye to eye on this [09:57] Marak: ive been wanting to do this for years [09:57] pquerna: all about the IPO :) [09:57] Marak: super excited to be able to build on the shoulders of so many giants to do this with ~150 lines of code [09:57] philippkueng has joined the channel [09:58] Marak: ill assemble user land and wrap all modules in EE named channels, and make the API sane across 200 modules [09:58] Marak: you guys can rewrite the core [09:58] Marak: :-D [09:58] pquerna: biab, need to pass security [09:58] michaelhartau has joined the channel [09:58] pquerna: yes, the distributed nature of the core int he long run [09:58] pquerna: would eb tough [09:59] pquerna: but you could go pretty far on just using rabbitmq or redis [09:59] Marak: pquerna: i got a way better idea [09:59] Marak: pquerna: nconf on each hook [09:59] Marak: pquerna: distributed persistence [09:59] Marak: pquerna: no central data authority [09:59] Marak: :-D [09:59] pquerna: sounds too much like an erlang thing now :P [09:59] pquerna: the path to the dark side etc [09:59] Marak: i can add nconf with 3 lines to core [10:00] Marak: those 3 lines will take me a few days to figure out [10:00] Marak: ( dnode mirror hell ) [10:00] Marak: its a scary place [10:00] pquerna: http://www.flickr.com/photos/47822654@N07/5825918349/in/photostream/lightbox/ [10:00] Marak: i never use erlang once in my life either [10:00] Marak: dont really understand it lol [10:00] Marak: ACTION is stupid [10:01] blueadept has joined the channel [10:01] pquerna: also [10:01] pquerna: http://www.flickr.com/photos/47822654@N07/5825951247/in/photostream [10:01] digiwano has joined the channel [10:01] Marak: pquerna: GIRLS?!?!?1 [10:01] pquerna: when a german approaches you with a piston and a bottle of vodka [10:01] pquerna: run away [10:01] Marak: HOW DO YOU CODE THEM [10:02] pquerna: bring beer? [10:02] Marak: require('beer') [10:02] Marak: :-D [10:02] pquerna: heck, there are two in that picture [10:02] kbni: date functions [10:02] kbni: sigh [10:03] pquerna: anyways, bbiab, aiport security-- [10:03] Marak: yo baby, can i get a callback? i don't dig promises [10:03] Marak: pquerna: ttyl [10:03] MonsieurLu has joined the channel [10:03] k1ttty has joined the channel [10:04] kohai: @cnruby: Reading: "How to Install Node.js - How To Node - NodeJS"( http://twitthis.com/m5xgtg ) [10:04] meso_ has joined the channel [10:04] kohai: @cnruby: Reading: "Installing node.js on ubuntu 10.04"( http://twitthis.com/4ad62r ) [10:04] kohai: @cnruby: Reading: "Installing Node.Js On OS X 10.6 « DevPatch"( http://twitthis.com/b3fmcd ) [10:05] __doc__ has joined the channel [10:06] kbni: is there a reaonable date handling library for node that works on the client too? [10:06] andrewfff has joined the channel [10:06] kohai: @victorianoi: Vivimos en un mundo en el que puedes escribir un chat primitivo con Node.js en 10 líneas y necesitar 350 para el CSS y HTML de un menú [10:09] MonsieurLu has left the channel [10:16] kohai: @ycombinatornews: Getting started with Node.js on Heroku/Cedar http://bit.ly/ji2sNy (link: http://devcenter.heroku.com/articles/node-js) [10:17] ryanmcgrath has joined the channel [10:18] vdemedes has joined the channel [10:19] coreb has joined the channel [10:19] vdemedes: How to make HTTP client connection which supports Streaming APIs? [10:20] davro: Marak: Just been playing with hook.io and play sound is working with ubuntu, joke sounds "I am an enemy" "Shooting THE F$$K out of enemy, sir !" heh [10:20] kohai: @HNTweets: Getting started with Node.js on Heroku/Cedar: http://bit.ly/lVskZu Comments: http://bit.ly/k8XTVf (link: http://devcenter.heroku.com/articles/node-js) [10:20] Beldur has joined the channel [10:20] level09: Marak: how do I test your demos ? [10:20] Marak: davro: dude that code is like from last year [10:20] Marak: davro: check out the new readme, https://github.com/marak/hook.io [10:20] Marak: level09: https://github.com/marak/hook.io read docs, scroll down for demo [10:20] level09: aha thanks [10:21] Marak: davro: since that demo worked i have refactored core 2x [10:21] Marak: :-D [10:21] level09: Marak: how does hook.io compare to cluster ? [10:21] Marak: the api for v0.4.x should be stable now.... [10:21] Marak: level09: night and day [10:21] vdemedes: like Twitter's Streaming API [10:21] spurge has joined the channel [10:21] davve has joined the channel [10:22] vdemedes: does built-in HTTPClient can handle this? [10:22] Marak: level09: cluster is for scaling httpServers on a single machine across multiple processes on the same machine [10:22] level09: yeah [10:22] Marak: level09: hook.io is for creating a mesh / cloud of i/o hooks [10:22] Marak: level09: much different scopes [10:22] Marak: level09: hook.io "accidentally" solves many many problems [10:23] Marak: this is how good software design works, you do something stupid simple and it works for everything. its the www.iopocalypse.com [10:23] level09: what is specifically meant by io ? [10:23] Marak: level09: input and output [10:23] _jgr has joined the channel [10:23] Marak: level09: ask me from where? [10:23] Marak: level09: ANYWHERE [10:23] level09: hmm, yeah that's the actual question [10:23] level09: at first, I assumed it has to do with file io :D [10:24] Marak: level09: any i/o [10:24] Marak: anywhere [10:24] level09: but looking at the sub modules, I see a lot of nice stuff [10:24] hebz0rl has joined the channel [10:24] Marak: *built on the shoulder of 1000s of giants* [10:24] level09: who built it ? [10:24] rvanrooy has joined the channel [10:24] level09: seems like you have contributed the whole code :D [10:25] rvanrooy: Hi all. anyone know how to work node.io through a proxy? [10:27] topaxi has joined the channel [10:27] Marak: level09: i built the hook.io, but its only ~150 lines [10:28] Beldur: Can someone explain to me, why a simple Hello World http server in nodejs serves 7400 req/sec and the same server in googles GO only serves 1800 req/sec ? [10:28] Marak: level09: its a very clever wrapper around many many many projects [10:28] Marak: level09: mostly dnode [10:28] vdemedes: Beldur: Node.js is async? [10:28] level09: cool [10:28] level09: I am gonna dig into it [10:28] Marak: level09: please do, it needs a ton of help, huge huge project [10:28] level09: Marak: looking for a way to scrap pages, and watch them for changes .. I think hook jsdom can help [10:28] Marak: level09: many docs and hooks are needed [10:29] Marak: level09: watch for changes? [10:29] Marak: level09: you want to build hook.io-poller prob [10:29] level09: yes, like sync the scapped data [10:29] Marak: you prob want to build hook for polling static resource [10:29] level09: yeah , not sure yet, gonna do more research [10:29] Marak: then pipe that data onchange event to jsdom hook [10:29] Marak: or vice versa [10:29] Marak: lol [10:32] jomoho has joined the channel [10:33] davro: Marak: just noticed in hook.io ReadMe the Available Hooks Core hook.io-helloworld is linking to the hook.io-repl git source. [10:34] philhawksworth has joined the channel [10:34] philhawksworth has left the channel [10:34] Marak: davro: on it [10:35] adambeynon has joined the channel [10:35] Marak: davro: fixed, thanks [10:36] dyer has joined the channel [10:36] dyer has joined the channel [10:36] davve has joined the channel [10:40] burg: how do i clear hash buffer? ( require('crypto').createHash('any-hash-here') ) [10:41] kohai: @NodeJSAtSO: convert a base64 image string to a image file that can be server to browsers using node.js http://bit.ly/jaPicu (link: http://stackoverflow.com/questions/6329221/convert-a-base64-image-string-to-a-image-file-that-can-be-server-to-browsers-usin?utm_medium=twitter&utm_source=twitterfeed) [10:43] michaelhartau has joined the channel [10:45] sWORDs has joined the channel [10:45] sWORDs: I'm starting to switch to TLS (https), but how do I use compression with TLS? [10:46] madsleejensen has joined the channel [10:48] Swizec has joined the channel [10:48] viz: level09: did you get to figure out how to scale your project? [10:48] level09: :yes [10:48] level09: viz: I scaled the server :D [10:48] level09: now I can handle up to 15K concurrent connections [10:48] viz: level09: ah, easy way out :P [10:49] level09: running on EC2 large instance [10:49] level09: dual core [10:49] level09: 8GB ram [10:49] viz: i was interested in the node instances topic [10:49] viz: i thought you were going to take that route [10:49] level09: i'm waiting for the socekt.io version that will support mulitple node instances [10:50] level09: viz: it seems to work with cluster, and scales to some extent, but I think a lot of session Ids are lost [10:50] level09: which is less reliable [10:50] level09: now experimenting with hook.io :DD [10:50] viz: interesting [10:51] Marak: level09: hook.io will scale socket.io servers to infinity in memory [10:51] RC1140 has left the channel [10:51] Marak: level09: i can spec out the design to do it, i just have no use atm, so its not a priority [10:51] Marak: level09: it should be *very* easy [10:51] viz: and when socket-io supports it, how would you manage the multiple instances? not with cluster? [10:51] level09: Marak: I like your enthusiasm :D [10:51] Marak: level09: also, rauchg recommends using redis [10:52] level09: viz: i think it will be built in, waiting for them to do it first :) [10:53] jamescarr_ has joined the channel [10:53] viz: level09: do you have a link to the socket-io issue? [10:54] level09: issue ? or the website ? [10:54] level09: I have posted the issue on quora [10:54] viz: cant seem to find where they speak of support for multiple instances [10:54] level09: viz: one of the contributors told me [10:55] level09: he used to be here all the time [10:55] Marak: level09: it will be done through redis i bet [10:55] level09: :) [10:55] viz: oh ok [10:55] viz: ACTION is now looking into hook.js [10:55] viz: ACTION *hook.io [10:56] eb4890 has joined the channel [10:56] Marak: viz: hook.io is badass, best project ive ever done [10:56] Marak: i dont say that lightly [10:57] Marak: will only get better from here :-) [10:57] Marak: welcome to the www.iopocalypse.com [10:57] sWORDs has joined the channel [10:58] sWORDs: Sorry to ask my question again, but my PC decided to give a nice BSOD. How can I use compression with https? [10:58] tuhoojabotti: Marak: newbieunfriendly [10:59] Marak: tuhoojabotti: hrmm? [10:59] tuhoojabotti: It all looks nice and shiny, but I don't understand why I, the developer, need it. [10:59] tuhoojabotti: :D [10:59] Marak: tuhoojabotti: screencasts and more demos coming [10:59] Marak: tuhoojabotti: until then stand back in awe and try to keep up [10:59] Marak: sorry [11:00] tuhoojabotti: I can't, I'm at work [11:00] Marak: 10-4 [11:01] Marak: tuhoojabotti: you use this for any i/o you do with anything [11:01] kbni: hahaha [11:01] Marak: tuhoojabotti: like a third party webservice is a good idea [11:01] Marak: tuhoojabotti: since they are not to be trusted with your precious event loop [11:01] Marak: fuck those guys [11:01] viz: Marak: besides the memory management and spawning of processes, how does it differ from a typical socket.io approach? [11:01] tuhoojabotti: mm-m [11:01] Marak: how dare they put my perfect application into indeterminate states! [11:01] tuhoojabotti: I would like to have irc io :P [11:02] mscdex: SubStack: is stackvm abandoned? [11:02] tuhoojabotti: to spam my channel with node [11:02] Marak: viz: huh? its completely different and it works on socket.io and dnode [11:02] Marak: tuhoojabotti: kohai does that [11:02] Marak: kohai: hi [11:02] Marak: !insult tuhoojabotti [11:02] kohai: tuhoojabotti is a venomous lily-licker! [11:02] Calvin: tuhoojabotti liked the Ke$ha opening of The Simpsons [11:02] tuhoojabotti: :u [11:02] Marak: tuhoojabotti: he also spams twitter messages in here, and we can tweet back via !tweet command [11:03] Marak: tuhoojabotti: https://github.com/nodejitsu/kohai , i will make him first victim of hook.io refactor [11:03] tuhoojabotti: I want to io with my python irc-bot :P [11:03] Marak: !tweet @tuhoojabotti is probably not your twitter handle. [11:03] kohai: @NodeKohai: @tuhoojabotti is probably not your twitter handle. [11:03] SubStack: mscdex: stackvm the project yeah but it was just a prototype [11:03] SubStack: we took it and built browserling [11:03] Marak: tuhoojabotti: dnode supports python, so you can make hook.io python client to subscribe messages [11:03] tuhoojabotti: damn twitter spam [11:04] tuhoojabotti: now it's on my phone too [11:04] SubStack: Marak: python lib doesn't work yet [11:04] Marak: tuhoojabotti: thats hook.io for you [11:04] mscdex: SubStack: i'm looking to do something similar to browserling, except it's for a particular windows app. people can use it without having to install it locally [11:04] Marak: tuhoojabotti: welcome to the world of i/o [11:04] Marak: SubStack: weaksauce [11:05] tuhoojabotti: It's everywhere! :O [11:05] dyer has joined the channel [11:05] dyer has joined the channel [11:06] tuhoojabotti: actually, I didn't get it. [11:08] tuhoojabotti: took ages to update [11:08] tuhoojabotti: back to addign bike compatibility to products :/ [11:08] tuhoojabotti: the server takes like 10 seconds to respond :D [11:11] justinTNT: substack : whats the smartest way to delete a list of documents from mongoose? [11:11] Mrfloyd_ has joined the channel [11:12] kohai: @lynxluna: Welcoming #python and #nodejs codemonkey to @rezaprabowo religion: cycling [11:13] level09: Marak: so I installed hook.io , now running hookio-helloworld [11:13] level09: what am I supposed to see :D ? [11:14] tahu has joined the channel [11:14] Marak: level09: start up another one [11:14] Marak: level09: start up as many as you like [11:14] level09: ah [11:14] level09: okay [11:14] SubStack: justinTNT: I've never used mongoose [11:14] Marak: Spawn up as many as you want. The first one becomes an output ( server ), the rest will become inputs ( clients ). Each helloworld input will emit a hello on an interval. Now watch the i/o party! [11:14] Marak: RTFM [11:14] bnoordhuis has joined the channel [11:15] Marak: If you want to start logging all these messages simply install hookio-logger with: npm install hook.io-helloworld -g [11:15] Marak: Now run: hookio-logger You will now start logging all these messages. [11:15] Marak: ;-) [11:15] okuryu has joined the channel [11:15] kohai: @yoshiks: The sectet of node.js success: http://news.ycombinator.com/item?id=2633317 ... [11:16] xerox: what's a sectet [11:16] tuhoojabotti: tl;dr [11:17] Marak: !report yoshiks [11:18] kohai: I have reported yoshiks to the Twitter API as a spammer. [11:18] Marak: lolz [11:18] Marak: take that bad speller! [11:22] avalanche123 has joined the channel [11:23] sharkbone has joined the channel [11:24] sharkbone: Hi [11:24] sharkbone: i am back [11:25] tuhoojabotti: !report marak [11:25] tuhoojabotti: ":D" [11:25] sharkbone: i am have troubles once again [11:25] tiagoa has joined the channel [11:25] tuhoojabotti: drop the am from that [11:25] Marak: !config get plugins:alias:whitelist [11:25] kohai: plugins:alias:whitelist is [AvianFlu, Marak, hij1nx, indexzero, DTrejo, tmpvar, ryah, dominictarr, samsonjs, ben_alman, chapel, jesusabdullah, goatslacker, indutny, mscdex ] [11:25] Marak: tuhoojabotti: denied ^^ [11:25] tuhoojabotti: damn [11:27] viz: that would suck to get banned by your own robot.. [11:28] kohai: @singGuytoo: JavaScript spread to the edges and became permanent in the process - Node.js expert James Duncan on JavaScript's ris http://t.co/9Lljxr3 (link: http://radar.oreilly.com/2011/06/javascript-edges-permanent-james-duncan.html) [11:28] Marak: viz: i know where his process lives, i will get last laugh i am sure [11:28] Marak: level09: did your computer blow up yet? :-D [11:28] copongcopong has joined the channel [11:28] sharkbone: i have designed this server to broadcast in all clients when it has to and broadcast to specific clients when it has to i started working on client code to connect to it based on the arguments set in there but got a mixed up with when it has to client A is supposed to connect when message is meant for it or client B needs to connect based on that argument in this code http://codepad.org/mTN0aIpp [11:29] level09: not yet :D [11:29] Marak: sharkbone: just wondering, did you get code from ibm site? [11:29] sharkbone: @Marak not really [11:29] Marak: ohh wait, this is socket.io [11:29] sharkbone: why? [11:30] sharkbone: yeah [11:30] Vertice has joined the channel [11:30] Marak: why is the indentation messed up looking? [11:30] tuhoojabotti: oh nic [11:30] tuhoojabotti: nice [11:31] sharkbone: oh maybe i didnt paste it right [11:31] tuhoojabotti: the coffee milk here is best before 25. 5th [11:31] sharkbone: let me check [11:31] tuhoojabotti: Marak: I could always open twitter and report you manually! But I'm way too lazy to do taht. [11:31] tuhoojabotti: that* [11:32] Marak: !kick tuhoojabotti [11:32] kohai: kohai says GTFO! [11:32] Marak: ohh you lucky he doesnt have opers in here [11:32] Marak: ;-) [11:32] Marak: im gonna go boil me a snack [11:32] Marak: brb [11:32] fangel has joined the channel [11:32] mscdex: .. console.log("lol") [11:32] Calvin: 03'lol' [11:32] Calvin: 14undefined [11:32] tuhoojabotti: now now [11:33] tuhoojabotti: You started it all. :/ [11:33] hanzomon has joined the channel [11:33] tuhoojabotti: you knew what was coming when you linked that io thing here [11:38] robhawkes has joined the channel [11:41] eirikb has joined the channel [11:42] eirikb: Hello. Is there any good way to get proper errormessages in console when using dnode? If I call a function with callback from client and it fails somewhere on my client the line number in my console is always within dnode.js [11:42] jamey-uk has joined the channel [11:43] jamey-uk: Can anyone help me with this issue? https://github.com/nodejitsu/node-cloudfiles/issues/7#issuecomment-1358342 (I've asked in the #nodejitsu channel too but it's quiet in there until later.) [11:45] PhilK has joined the channel [11:45] justinTNT: substack : sorry I mis-remember you as goto for it ... [11:45] temp01 has joined the channel [11:45] justinTNT: anyone here got good mongoose? [11:46] kohai: @plastical: Next dev step at @plastical: The Node Beginner Book » A comprehensive Node.js tutorial http://j.mp/maRybd #dev #nodejs #web (link: http://www.nodebeginner.org/) [11:46] Marak: jamey-uk: what version of node, what version of npm, what happens when you run all tests [11:46] viz: justinTNT: fried or tartar? [11:46] NetRoY has joined the channel [11:48] justinTNT: straight. [11:48] |sWORDs| has joined the channel [11:48] kohai: @otaku_coder: @jamierumbelow @joelgascoigne If you want to test your JS, take a look at Jasmine http://vik.so/lzhi10 I'm using it for my #nodejs stuff (link: http://pivotal.github.com/jasmine/) [11:50] eirikb: I hope my callback-functions are not sent over the network when using dnode? [11:51] pietern has joined the channel [11:53] stepheneb has joined the channel [11:54] SubStack: that would be silly [11:55] eirikb: SubStack: I'm guessing nowjs does that to keep the shared scope in sync? I'm just guessing wildly because of my error messages [11:56] eirikb: (No I'm not using nowjs, but just comparing a slightly similar tech =) ) [11:57] Marak: eirikb: NowJS isnt written to my liking. [11:57] Marak: eirikb: They need to get with dnode [11:57] postwait has joined the channel [11:57] eirikb: Marak: It's still a cool concept I think... But nevertheless, do you know how I can get proper error messages? [11:58] eirikb: Maybe browserify might magically correct this, since dnode like to work with it. But I don't feel like using browserify [11:58] Marak: eirikb: its a stupid concept built poorly. if you want a shared namespace on an object you dont sacrifice durability for it. [11:59] Marak: eirikb: i have no idea wtf your problem could be, did you post code? [11:59] Marak: what error message? [11:59] Marak: where? what library? [11:59] Marak: ohh i see [11:59] eirikb: :) [11:59] Marak: eirikb: you could wrap in a try catch prob [12:00] eirikb: I thought that was exactly what dnode did, so I would wrap a warp to prevent dnode from wrapping it? [12:00] Marak: you should be able to catch the error [12:00] Marak: id have to see the whole code [12:00] eirikb: Let me try to create something for you to see [12:00] Marak: SubStack would know [12:04] eirikb: Marak: https://gist.github.com/1022669 [12:04] knuthy: Is there a way to ask the findit module not to recursively scan the directory? [12:05] sharkbone: @ Marak this is the question just as i asked on stack http://stackoverflow.com/posts/6330115/revisions [12:05] eirikb: Something like that. It would basically throw out this in browser console: "Uncaught ReferenceError: omg is not defined", which is all well, but not the line number: dnode.js:1505 [12:05] Marak: eirikb: wrap that fail() in a try catch ? [12:05] sharkbone: u have any pointers? [12:05] Marak: sharkbone: dude, fix your fucking identation [12:06] Marak: sharkbone: seriously [12:06] sharkbone: @ Marak hmm where am i getting it wrong? [12:07] febits has joined the channel [12:07] liar has joined the channel [12:07] Marak: sharkbone: here:http://i.imgur.com/GH9Iw.png [12:07] ditesh|cassini has joined the channel [12:07] ditesh has joined the channel [12:07] Marak: making someone read that is fucking torture [12:07] Marak: dont torture people who are trying to help you [12:08] sharkbone: lol [12:08] sharkbone: @ Marak [12:08] eirikb: Marak: Wouldn't the browser refer to the catch in that case? So then it would depend on how 'far out' I put my catch? [12:08] sharkbone: you are right [12:08] sharkbone: i take another look at it [12:09] Marak: eirikb: put try catch around fail() call [12:09] Marak: eirikb: what else you want to know? [12:09] eirikb: Marak: The exact line number where it fails [12:09] Marak: eirikb: did you put try catch around call? did it not return line number? [12:10] eirikb: If fail was a larger function, calling other functions, I would never know where in the stacktrace it failed [12:10] mendel_: not node related: which icon set (or website) do you guys use? (free/opensource) [12:10] eirikb: Marak: It returns the line number of my catch, not where it fails directly [12:10] Marak: eirikb: then create one method that intercepts all methods with try / catch [12:10] pkarl has joined the channel [12:10] Marak: eirikb: just keep going down the stack wrapping methods [12:10] Marak: you'll figure out what you did wrong [12:11] eirikb: That sounds quite horrible [12:11] Marak: well then do what i said first [12:11] Marak: eirikb: then create one method that intercepts all methods with try / catch [12:11] Marak: or write code that doesnt fail [12:11] Marak: thats a much better option [12:11] eirikb: Haha [12:11] eirikb: It's when developing I get errors, I think that is normal? :) [12:12] kriszyp has joined the channel [12:12] F1LT3R has joined the channel [12:14] sivy has joined the channel [12:14] Twelve-60` has joined the channel [12:14] kohai: @chrissie1: This is how I learn - node.js making it a bit more readable by @chrissie1 http://t.co/1HfgCXG (link: http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/node-js-making-it-a) [12:14] sharkbone: @Marak please is this better http://codepad.org/8Jpxdf0c [12:17] sreeix has joined the channel [12:19] sreeix: Any recommendations for writing coarse http level tests for nodejs? [12:19] CodyGray has joined the channel [12:19] CodyGray has left the channel [12:19] kohai: @NodeJSAtSO: how a client will connect to node.js server based on a specified type http://bit.ly/jtO6XL (link: http://stackoverflow.com/questions/6330115/how-a-client-will-connect-to-node-js-server-based-on-a-specified-type?utm_medium=twitter&utm_source=twitterfeed) [12:21] sharkbone: @kohai any recommendations for client code? [12:24] cognominal has joined the channel [12:24] |sWORDs|: How do I compress the https connection? I'm using connect with connect-gzip, but it only compresses the body [12:25] dyer has joined the channel [12:27] aliem has joined the channel [12:28] pkarl has joined the channel [12:29] eyesUnclouded has joined the channel [12:29] FireyFly|n900 has joined the channel [12:30] fumanchu182 has joined the channel [12:30] steyblind has joined the channel [12:30] coleGillespie has joined the channel [12:31] dsirijus has joined the channel [12:32] skm has joined the channel [12:33] eirikb has left the channel [12:34] kohai: @KushalP: @whatterz Yup, @codeigniter used to be the way I made most of my prototypes. Nowadays it's a mixture of Django and node.js [12:34] bosphorus_ has joined the channel [12:35] skm has joined the channel [12:35] sourcode has joined the channel [12:37] philippkueng has joined the channel [12:37] k1ttty has joined the channel [12:38] RC1140 has joined the channel [12:39] Arenstar has joined the channel [12:40] jeremyselier has joined the channel [12:41] LH_ has joined the channel [12:41] sharkbone: @marak you there? [12:41] bloodsucker has joined the channel [12:41] bloodsucker: bo [12:41] JoseCabo: hello to everybodyyyyyyyyy [12:42] jetienne: hi [12:42] kohai: @LessThanDot: New @LessThanDot: node.js making it a bit more readable http://bit.ly/mmakWb (link: http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/node-js-making-it-a) [12:42] tuhoojabotti: JoseCabo: Evening<3 [12:44] timmywil_ has joined the channel [12:45] brianseeders has joined the channel [12:45] bx2 has joined the channel [12:47] cjm has joined the channel [12:48] JoshC1 has joined the channel [12:50] philippkueng has joined the channel [12:54] u4ea has joined the channel [12:54] jakeg has joined the channel [12:54] Wizek has joined the channel [12:55] AaronMT has joined the channel [12:56] hij1nx has joined the channel [13:00] mihar has joined the channel [13:01] kohai: @steffentchr: @felixge Would you happen to have idea on how to best generate OAuth 1.0a multipart/form-data uploads from #nodejs? [13:02] postwait has joined the channel [13:05] philippkueng has joined the channel [13:05] Avakulpa has joined the channel [13:06] avalanche123 has joined the channel [13:07] hydra_ has joined the channel [13:07] chjj: http://groups.google.com/group/nodejs-dev/browse_thread/thread/0c9cf73981919e68/fc1fbc5f6cd05899#anchor_517d2208cdf28e58 - isaacs telling it like it is [13:09] mihar has joined the channel [13:10] davidbanham has joined the channel [13:10] catshirt has joined the channel [13:11] idefine has joined the channel [13:11] ianward has joined the channel [13:12] piscisaureus has joined the channel [13:12] davidbanham has joined the channel [13:13] jakeg has joined the channel [13:14] dyer has joined the channel [13:14] adelgado has joined the channel [13:14] dyer has joined the channel [13:14] wink_ has joined the channel [13:14] fommes has joined the channel [13:15] kohai: @NathashaParker: Calvin Spealman: Node.js Conference http://kiq.me/EUF (link: http://techblog.ironfroggy.com/2011/06/nodejs-conference.html) [13:15] Calvin: httptechblogironfroggycom201106nodejsconferencehtml NathashaParker [13:15] RC1140 has left the channel [13:15] jlecker has joined the channel [13:16] dyer has joined the channel [13:16] dyer has joined the channel [13:19] quackslike has joined the channel [13:20] dyer has joined the channel [13:20] dyer has joined the channel [13:21] finsken has joined the channel [13:22] charles has joined the channel [13:22] philippkueng has joined the channel [13:23] kohai: @amykate: @akamike node.js is totally on the list - I currently don't "get" it, but enough people rave about it that I want to look into it :) [13:23] xandrews has joined the channel [13:23] Yoric has joined the channel [13:24] devrim has joined the channel [13:24] christophsturm has joined the channel [13:24] deedubs has joined the channel [13:25] finsken: I want all callbacks in this callback soup named. And then I want to wait to send a serverResponse until a clientResponse has ended. And I don't want to mess around with global variables. http://pastebin.com/htLCqjMh how should i proceed? :) [13:25] berasa has joined the channel [13:26] berasa has left the channel [13:26] MrTopf has joined the channel [13:26] replore has joined the channel [13:27] finsken: Note: I did try to set the serverResponse to a global but got a "request hierarchy error"... [13:29] kohai: @rtweed: Pretty much finished my presentation on my Node.js emulation of #SimpleDB for tomorrow's meeting: http://t.co/h2GS2b9 #nodejs #gtm (link: http://www.meetup.com/londonajax/events/17622181/?a=ce1p_grp&rv=ce1p) [13:30] stepheneb has joined the channel [13:30] kohai: @jakeg82: Nodecamp looks like it was fun, wish I went http://t.co/1AOG5PG #nodecamp #nodejs (link: http://www.youtube.com/watch?v=oo4VySUF-g4) [13:30] jakeg: woah, what a bot! [13:31] beta_ has joined the channel [13:31] xastey has joined the channel [13:32] tuhoojabotti: evil bot [13:32] xastey: anyone use phpstorm/webstorm as their ide, would like to setup debugging [13:34] wlkh has joined the channel [13:35] nash has joined the channel [13:35] boazsender has joined the channel [13:36] edude03 has joined the channel [13:36] MattJ has joined the channel [13:37] lackac has joined the channel [13:37] philippkueng has joined the channel [13:37] lackac: good day, people [13:37] lackac: `3E|IDLE: ping [13:38] tiagoa has joined the channel [13:38] tuhoojabotti: evening [13:38] `3E|IDLE: pong ish lackac [13:38] kohai: @goodidea2002: Cheatsheet: 2011 06.08 ~ 06.13: Web New Tricks in XMLHttpRequest2 Building your first node.js app – Part 3:... http://bit.ly/mw9gy9 (link: http://weblogs.asp.net/yuanjian/archive/2011/06/13/cheatsheet-2011-06-08-06-13.aspx?utm_source=twitterfeed&utm_medium=twitter) [13:39] lackac: `3rdEden: quick question: in your node-memcached library is there a way to authenticate with memcached? [13:39] temp01 has joined the channel [13:39] kohai: @martinbean: @philsherry Can't say I'm too hot on node.js or underscore, and just starting with NoSQL really. [13:39] lackac: I don't see it in docs and in sourcecode either [13:40] Plouj has joined the channel [13:40] Plouj: hi [13:41] kriszyp has joined the channel [13:41] Plouj: hey guys, any idea why I'm getting this install error with nvm: http://pastebin.dev.oanda.com/668 ? [13:41] Plouj: doh, wrong ling [13:41] Plouj: linkg [13:41] Plouj: http://fpaste.org/ygKH/ [13:42] `3rdEden: lackac pfff [13:42] `3rdEden: lackac I don't have anything for that [13:42] lackac: `3rdEden: i see [13:42] davidbanham has joined the channel [13:42] lackac: strange thing: I don't see in the protocol specification either how to do it [13:43] `3rdEden: lackac the protocol doesn't support authentication [13:43] lackac: I'm evaluating Heroku and their memcached addon is authenticated [13:43] lackac: `3rdEden: hmm [13:43] `3rdEden: they are not using memcache [13:43] `3rdEden: they are probably using membase [13:43] lackac: membase is the provider, but it's memcached [13:43] lackac: maybe a fork or something [13:43] criswell has joined the channel [13:44] lackac: ok, I'll have to look into it then [13:44] lackac: `3rdEden: thanks for the quick reply [13:44] `3rdEden: lackac pure luck that I just got back :p [13:44] lackac: `3rdEden: would you be interested in a pull request if I add support? [13:44] davidwalsh has joined the channel [13:44] `3rdEden: lackac yes, [13:44] `3rdEden: i'm happy to pull in more membase support [13:45] kohai: @kadirpekel: slick hackio is slick. Check the initial implementation /cc @maraksquires #hookio #nodejs [13:45] guest42343 has joined the channel [13:45] `3rdEden: lackac but thats gonna be.. paintfull [13:46] kohai: @rtweed: Going to #awssummit London tomorrow and interested in Node.js? Why not go to this afterwards: http://t.co/h2GS2b9 #SimpleDB #nodejs (link: http://www.meetup.com/londonajax/events/17622181/?a=ce1p_grp&rv=ce1p) [13:46] `3rdEden: because membases uses SASL for auth [13:46] `3rdEden: and you need to support the binary protocol for that [13:46] lackac: `3rdEden: eh [13:46] sharkbone: @ 3rdEden i need some advise [13:47] baudehlo has joined the channel [13:47] guyguy has joined the channel [13:47] lackac: `3rdEden: if it's complicated we might switch to Redis instead... :) [13:47] quackquack has joined the channel [13:47] `3rdEden: lackac I know someguy created a binary parser [13:47] `3rdEden: so you can probably make the parse swapable [13:48] CrisO has joined the channel [13:48] remysharp has joined the channel [13:48] Bogh has joined the channel [13:48] `3rdEden: sharkbone uhm I'm going in a few minutes because i have to start cooking [13:48] `3rdEden: but I'm available tonight for a few more hours :p [13:48] sharkbone: what are you cooking :) [13:48] sharkbone: ? [13:48] `3rdEden: around 7/8 gtm [13:48] sharkbone: sure man [13:48] sharkbone: tonite then [13:49] `3rdEden: cooking mexican [13:49] sharkbone: aight [13:49] sharkbone: later man [13:49] sharkbone: enjoy [13:50] Skola: why's default indent 2 spaces in node? Callback Mountains? [13:50] saschagehlich: hey folks [13:50] saschagehlich: is there a way to link npm packages globally? [13:51] lackac: saschagehlich: npm link... [13:51] saschagehlich: npm link justlinks it locally [13:51] `3E|COOKING: npm install -g .? [13:51] lackac: saschagehlich: move into the directory with package.js and issue `npm link` there [13:51] saschagehlich: nice [13:51] mertimor has joined the channel [13:51] saschagehlich: `3E|COOKING: works [13:51] saschagehlich: thanks anyway lackae :) [13:52] matyr_ has joined the channel [13:52] coderendezvous has joined the channel [13:53] lackac: `3E|COOKING, saschagehlich: that installs it (i.e. copies it) `npm link` creates a symbolic link [13:53] xeffe has joined the channel [13:53] kohai: @_romac: @nddrylliog Best status code ever ! By the way, Node.js http.Server actually implements it \o/ — http://t.co/yRCx4Ex (link: https://github.com/joyent/node/blob/master/lib/http.js#L180) [13:53] arpegius has joined the channel [13:53] saschagehlich: lackac: oops you're right... npm link did it, i usually did npm link . [13:54] jslatts has joined the channel [13:54] philippkueng has joined the channel [13:56] jtsnow has joined the channel [13:57] saschagehlich has joined the channel [13:57] brolin has joined the channel [13:58] kohai: @zmoazeni: I just scheduled a Meetup for the June Northern Michigan Web and Mobile Group! This month: an intro to node.js http://meetu.ps/2146f (link: http://www.meetup.com/nmich-web-mobile/events/22003061/) [14:01] guest42343: what's the best way to update node.js? I have 0.4.9pre installed but it keeps reverting back to 0.4.3 when I restart the terminal [14:01] Lorentz has joined the channel [14:01] tuhoojabotti: sounds weird [14:02] Shinuza: guest42343: sounds like you have two version conflicting [14:02] mikegerwitz: guest42343: path issue. You likely have node installed in two location [14:02] mikegerwitz: s [14:02] Shinuza: `which node` [14:02] Shinuza: then phase out the 0.4.3 version [14:03] cbibler_ has joined the channel [14:03] Shinuza: check you PATH to be sure the version you want is run when invoking `node` [14:03] Shinuza: +r [14:04] guest42343: looks like 0.4.3 is in /opt/local/bin/node [14:04] guest42343: would the newer verson be elsewhere? [14:04] Shinuza: yes [14:04] kohai: @torehansharman: node.js is about as cool as JavaScript can get. [14:05] kohai: @jerng: Ah yes - this is why I wanted to stick a node.js server inside Chrome - BitCoin-style authentication would allow for consumer-driven CDNs. [14:05] Shinuza: you ran `which node` and it gave you /opt/local/bin/node? [14:05] guest42343: yea [14:05] sonnym1 has joined the channel [14:05] Shinuza: oh [14:05] guest42343: node -v is 0.4.3 when i run it right now [14:05] Shinuza: I guess you installed that using port [14:05] yhahn has joined the channel [14:05] guest42343: ahhhhh [14:05] guest42343: yes yes [14:05] guest42343: i remeber now [14:05] JJMalina has joined the channel [14:05] sub_pop has joined the channel [14:06] jonasen has joined the channel [14:08] bradleymeck has joined the channel [14:09] omni5cience has joined the channel [14:10] Destos has joined the channel [14:10] BillyBreen has joined the channel [14:11] Poetro has joined the channel [14:12] stonecobra: Anyone know why I would get: "Symbol not found: _ev_rt_now" when running with node-base64, but not when building it? Are there 2 different lib paths somehow? this all worked around 0.4.6, but not now on master. https://gist.github.com/1022429 [14:13] copongcopong has joined the channel [14:13] philippk_ has joined the channel [14:13] catshirt has joined the channel [14:13] thomblake has joined the channel [14:14] hdon_ has joined the channel [14:14] baoist has joined the channel [14:15] mbrevoort has joined the channel [14:16] pkarl has joined the channel [14:18] guest42343 has joined the channel [14:19] maushu has joined the channel [14:19] bradleymeck: stonecobra sounds like the shared lib isnt in the path at runtime for w/e reason [14:19] ceej has joined the channel [14:19] jtrudeau has joined the channel [14:20] CoverSli1e has joined the channel [14:20] bradleymeck: stonecobra can you do a node-waf build -v [14:21] stonecobra: bradleymeck, sure [14:21] devdazed has joined the channel [14:22] guest42343: thanks [14:22] Shinuza: welcom [14:22] Shinuza: e [14:22] guest42343: working now [14:22] c4milo has left the channel [14:23] guest42343: can anyone explain the main advantage of hook.io over a standard socket.io implementation? [14:23] kruckenb has joined the channel [14:23] jamesbroad has joined the channel [14:24] c4milo has joined the channel [14:25] Shinuza: guest42343: they are kinda different [14:25] Shinuza: hook.io as support for socket.io [14:25] joshthecoder has joined the channel [14:25] Shinuza: hook.io as a base on which you can plug different stream reader [14:26] Shinuza: I suggest you read the readme.md for further information [14:26] stonecobra: bradleymeck, output at the bottom of https://gist.github.com/1022429 [14:27] RORgasm has joined the channel [14:28] guest42343: so its trying to provide a standard abstractions on the i/o that can be implemented by different modules? [14:29] philippkueng has joined the channel [14:29] guest42343: yea i read through a bit, not sure i fully understand it [14:30] rauchg has joined the channel [14:30] kohai: @madair336: Proj4js on the server with Node.js http://comments.gmane.org/gmane.comp.lang.javascript.nodejs/24943 #osgeo #Proj4js #MetaCRS [14:31] trotter has joined the channel [14:31] pifantastic has joined the channel [14:31] dguttman has joined the channel [14:32] madsleejensen has joined the channel [14:32] ChrisPartridge has joined the channel [14:32] mkrecny has joined the channel [14:33] bradleymeck: stonecobra yea, idk, can you not use the built in base64 for some reason? [14:33] mkrecny: Best oAuth module? [14:34] softdrink has joined the channel [14:34] bradleymeck: https://github.com/ciaranj/node-oauth [14:34] bradleymeck: aka npm install oauth [14:35] stonecobra: bradleymeck: using someone else's oauth module still using serializer which is still using base64. Looking at that now [14:35] LowValueTarget has joined the channel [14:36] matyr_ has joined the channel [14:38] mkrecny: does that module cover implementing oauth as authentication for your own service - or just communicating w/ other oauth services? [14:39] chrischris has left the channel [14:39] kohai: @supudo: node.js + express + mongodb + jade ... how do you like them apples! [14:40] Skola: + stylus :[] [14:41] xerox: mkrecny: looks like it is the client side [14:41] xerox: exclusively [14:41] mkrecny: xerox: yeah seems that way - thanks [14:42] CoverSlide has joined the channel [14:43] Tidwell has joined the channel [14:45] swilson06 has joined the channel [14:46] stonecobra: I think I have node-serializer working with native base64 functionality, thanks for the tip bradleymeck++ [14:46] EyePulp has joined the channel [14:47] jscheel has joined the channel [14:49] FireFly|n900 has joined the channel [14:50] fumanchu182 has joined the channel [14:50] guy has joined the channel [14:51] namelessnotion has joined the channel [14:51] bradleymeck has left the channel [14:51] bakert has joined the channel [14:54] azend_ has joined the channel [14:55] Swimming_bird has joined the channel [14:56] psi0nik has joined the channel [14:57] bentruyman has joined the channel [14:57] vipaca has joined the channel [14:57] vipaca has joined the channel [14:58] flippyhead has joined the channel [15:00] psema4alt has joined the channel [15:00] voodootikigod has joined the channel [15:00] psema4alt: hi all. any jsdom users around? have a question about timeouts [15:01] dgathright has joined the channel [15:01] unomi: does the google group interface allow blacklisting words in emails for spam filtering? [15:01] unomi: ryah? [15:01] adammw111 has joined the channel [15:02] azeroth__ has joined the channel [15:02] Nican has joined the channel [15:02] kohai: @goldglovecb: I'm going to a Meetup with Node.JS User Group - Austin, TX http://meetu.ps/P92X (link: http://www.meetup.com/noders/events/17102719/) [15:04] adammw111: Hi, I'm having a weird problem trying to build the v8 part of node.js - scons keeps terminating because of errors (possibly something to do with doskey?) that I can't figure out. I asked on http://stackoverflow.com/questions/6331494 but was pointed towards IRC. [15:05] gazumps has joined the channel [15:05] kohai: @pagameba: very cool “@madair336: Proj4js on the server with Node.js http://t.co/dbGB47L #osgeo #Proj4js #MetaCRS” (link: http://comments.gmane.org/gmane.comp.lang.javascript.nodejs/24943) [15:07] rpj8 has joined the channel [15:08] kohai: @legomasternet: @benwmaddox @mgroves Whatever, MS is developing it's own Node.js platform for all the new server and desktop apps. Hopefully an IDE is soon. [15:09] softdrink has joined the channel [15:10] hybsch has joined the channel [15:10] swistak has joined the channel [15:11] jensn has joined the channel [15:11] rpj8: Express - I have a dynamic helper sending req.session as `session' to my .jade templates. I attempt to directly interpolate the session variable within the jade template by doing this with a socket.io connection: socket.send(#{session}). firebug complains saying 'missing ] after element list,' and also displaying this in source: `socket.send([object Object])'. I have tried surrounding the [object Object] in JSON.stringify and JSON.par [15:11] rpj8: #{session.username} or similar works just fine, btw [15:12] pixel13 has joined the channel [15:12] pixel13 has left the channel [15:13] radicality has joined the channel [15:15] radicality: hello. i'm cloning node from github onto my archlinux VPS, and i can't seem to get it to work. On my macbook it works very well. On arch, I get the following error during ./configure stage. [15:15] radicality: Traceback (most recent call last): [15:15] radicality: File "/home/rafal/lib_stuff/node/tools/waf-light", line 157, in [15:15] radicality: import Scripting [15:15] radicality: File "/home/rafal/lib_stuff/node/tools/wafadmin/Scripting.py", line 146 [15:15] radicality: except Utils.WafError, e: [15:15] radicality: ^ [15:15] radicality: SyntaxError: invalid syntax [15:15] radicality: anyone know what the cause ? any dependcies i'm missing ? [15:15] springmeyer has joined the channel [15:15] baudehlo: python version? [15:15] kohai: @benwmaddox: @legomasternet I wouldn't be surprised if they do node.js like stuff with IE on the desktop. Just not sure about good JS IDE [15:16] rpj8: radicality: not sure. I usually just install from the AUR [15:16] eldios has joined the channel [15:16] kohai: @dgmike: Blog rolling with mongoDB, express and Node.js - How To Node - NodeJS http://t.co/v9yL35d (link: http://howtonode.org/express-mongodb) [15:16] radicality: python 3.2 [15:17] baudehlo: macs have 2.6.1 [15:17] baudehlo: so it might just be a python 2 vs 3 thing [15:17] CoverSlide: radicality: alias python=python2 [15:17] radicality: ah, allright, i'll try python 2 [15:17] hij1nx has joined the channel [15:18] kohai: @masylum: express + mongolia + testosterone + funk + jade + stylus === Productivity #nodejs [15:19] CoverSlide: and then `unalias python` [15:19] Bradleymeck_ has joined the channel [15:20] kohai: @robbowley: hugely over-engineered my node.js app for filtering and displaying @mfeathers' commit logs but having lots of fun and learning lots #spa2011 [15:21] spurge has joined the channel [15:21] srid has joined the channel [15:22] softdrink1 has joined the channel [15:23] pkarl has joined the channel [15:23] colinclark has joined the channel [15:24] briznad has joined the channel [15:25] matyr__ has joined the channel [15:25] Poetro1 has joined the channel [15:25] bshumate has joined the channel [15:26] jamey-uk has left the channel [15:27] Bradleymeck__ has joined the channel [15:28] danielrmz has joined the channel [15:30] ditesh|cassini has joined the channel [15:31] strmpnk_ has joined the channel [15:32] tbranyen has joined the channel [15:32] ebryn has joined the channel [15:33] EvanCarroll: gah http.js is complex [15:33] xerox: want to modify it? [15:33] EvanCarroll: yes [15:34] tbranyen: EvanCarroll: http is complex :-/ [15:34] xerox: what does it not do :x [15:35] EvanCarroll: I want something like HTTP::Message to be an integral part of it, without inepting any of its lowlevelness [15:35] EvanCarroll: Header / Message objects that establish a decent API for other libraries to use. [15:35] EvanCarroll: including http-server functionality [15:35] philtor has joined the channel [15:35] tbranyen: EvanCarroll: probably be better off patching it instead of altering direct source [15:36] tbranyen: or is that what you're planning on doing? [15:36] EvanCarroll: planning on altering direct source, and replacing it all as httpx [15:36] tbranyen: ... that seems a like a bad idea [15:36] tbranyen: you're basically freezing yourself to that version [15:36] tbranyen: since every update will suck [15:37] jzacsh has joined the channel [15:37] jzacsh has joined the channel [15:37] mahna has joined the channel [15:37] EvanCarroll: I want to change the way everything works to use a formalized object into Headers/Requests/Responses/Messages [15:38] tbranyen: yeah? still seems like monkee patching is a better solution even if its slightly more work [15:38] tbranyen: i don't think anyone would condone editting direct source unless you're planning on merging it upstream [15:38] dshaw_ has joined the channel [15:38] Corren has joined the channel [15:38] EvanCarroll: which would be great [15:39] sivy has joined the channel [15:41] tmpvar has joined the channel [15:43] caolanm has joined the channel [15:43] derencius has joined the channel [15:43] bakert has joined the channel [15:44] CoverSlide: if your edits are useful and non-sucky [15:44] CoverSlide: EvanCarroll: write a module using only net [15:45] CrisO has joined the channel [15:45] EvanCarroll: I'm just trying to get my head around all that http.js does and how it does it first [15:45] flippyhead has joined the channel [15:45] kohai: @zengke: The webos since 2.0 has node.js builtin, fantastic! [15:45] MooGoo: hm [15:46] sreeix has joined the channel [15:47] jamescarr_ has joined the channel [15:48] Aco- has joined the channel [15:48] aheckmann has joined the channel [15:48] ngs has joined the channel [15:50] stride: EvanCarroll: huh? you want it to parse multipart entities as well? [15:52] houBin has joined the channel [15:52] lackac: I'm trying out the redis library, and I'm looking for a way to automatically close an idle connection to the server [15:52] lackac: actually, I've already found a way to do that using the 'idle [15:53] tjholowaychuk has joined the channel [15:53] lackac: 'idle' event [15:53] EvanCarroll: why not... what's the downside to detecting if you've got an event that demands the response be buffered and parse it? [15:53] Yuffster_work has joined the channel [15:53] lackac: but want I would like is to have the connection reopened in case a new command is issued [15:54] sandropadin has joined the channel [15:54] kohai: @qdotu: http://t.co/00x0cyh Node.js и эра JavaScript #habr *очнулся в середине ветки комментов* …да драные холивары (link: http://habrahabr.ru/blogs/nodejs/117887/) [15:54] tuhoojabotti: Wohoo, home at last! [15:54] jmazzi has joined the channel [15:55] Skola: where were you? [15:55] Skola: K-pop festival? [15:55] tuhoojabotti: Work [15:55] Skola: ah, :[ [15:55] tuhoojabotti: No k-pop festivals here :/ But I am going to see Pendulum soon! [15:55] Skola: sweet [15:55] tuhoojabotti: I'm all wet now [15:56] Skola: not sure how to parse that [15:56] tuhoojabotti: use http://www.nltk.org/ [15:56] Skola: ;p big fan of that package [15:57] tuhoojabotti: I haven't tried it [15:57] tuhoojabotti: But it was raining and I only have a skoped [15:57] tuhoojabotti: scooter that is [15:57] Skola: a skoped! [15:58] Skola: is that perkele-speech? [15:58] EvanCarroll: where is process.binding() documented? [15:58] stride: EvanCarroll: the downside for me is that I have no idea if I even want to parse & buffer that stuff before I even looked at the request / headers [15:59] EvanCarroll: stride: well than quite clearly you need to take a standardized header object, and attach an event to it's response object that triggers the body to be buffered and/or parsed [15:59] dguttman has joined the channel [15:59] broofa has joined the channel [16:00] Bradleymeck__: process.binding really isnt, its unstable internal api requires basically [16:00] stride: I need to add a request handler that gives me access to the header information and then trigger the body parsing if I want to, just like it's now [16:01] baoist has joined the channel [16:01] stride: don't really see the downside there, for core functionality [16:02] micheil has joined the channel [16:03] devrim has joined the channel [16:04] stepheneb has joined the channel [16:04] tuhoojabotti: Skola: No it's not, skootteri or skopa [16:04] Skola: ah alright [16:04] jakehow has joined the channel [16:05] finsken: I'd like to make two clientRequests to two different sites and let the callbacks handle the differences (in the parsing) is there any way I can send arguments with the .on method? [16:05] finsken: Or do I have to make separate callbacks for the two requests? [16:06] MrTopf has joined the channel [16:06] derencius has joined the channel [16:07] EvanCarroll: Bradleymeck__: is there a dev doc for the unstable undocumented stuff? [16:07] EvanCarroll: Bradleymeck__: like freelist/process.binding() etc [16:08] EvanCarroll: also out of curiosity why does node follow the rules against const, the Google style guide does for the purpose of IE6 integration? that would seem like a non-point for something that only has to be ECMA5 compliant [16:08] tswicegood has joined the channel [16:10] donaldpcook has joined the channel [16:10] guy has joined the channel [16:10] troessner has joined the channel [16:11] butu5 has joined the channel [16:12] niftylettuce has joined the channel [16:12] finsken: Here's some code to refer to for the above stated question... http://pastebin.com/im2rjf1p [16:12] chiyam has joined the channel [16:13] amerine has joined the channel [16:13] tmpvar has joined the channel [16:13] wadey has joined the channel [16:13] kohai: @NodeJSAtSO: Handling 10,000 concurrent requests at once with node.js http://bit.ly/l2ttbj (link: http://stackoverflow.com/questions/6332785/handling-10-000-concurrent-requests-at-once-with-node-js?utm_medium=twitter&utm_source=twitterfeed) [16:16] devrim has joined the channel [16:16] stonecobra has joined the channel [16:18] tyler-iphone has joined the channel [16:18] kohai: @butu5: Started watching http://t.co/p24ybM5 #mongodb planning to use with #nodejs but why I should not use #redis?? (link: http://www.youtube.com/watch?v=w5qr4sx5Vt0) [16:18] adambeynon has joined the channel [16:19] dshaw_ has joined the channel [16:19] jtsnow has joined the channel [16:20] amerine has joined the channel [16:20] broofa has joined the channel [16:20] burg has joined the channel [16:21] pyrony has joined the channel [16:21] erictj has joined the channel [16:21] nash__ has joined the channel [16:21] chrischris has joined the channel [16:22] uchuff has joined the channel [16:23] nsolsen has joined the channel [16:23] springmeyer has joined the channel [16:24] jerrysv has joined the channel [16:27] gkmngrgn has joined the channel [16:28] cognominal has joined the channel [16:28] donaldpcook has joined the channel [16:29] kohai: @chrissie1: this was a little harder than it should have been - node.js using mustache.js for temlplating by @chrissie1 http://t.co/ukfkbRC (link: http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/node-js-using-mustache-js) [16:29] Prism has joined the channel [16:31] eyesUnclouded has joined the channel [16:33] mfussy has joined the channel [16:34] bakert has joined the channel [16:37] mfussy has left the channel [16:39] mc_greeny has joined the channel [16:40] jgv_ has joined the channel [16:41] amerine has joined the channel [16:41] heavysixer has joined the channel [16:41] fermion has joined the channel [16:43] patrickarlt has joined the channel [16:44] xandrews has joined the channel [16:44] addisonj: hrm, anyone know what is up with the topic? [16:45] kohai: @viirya: Node.js based web framework looks interesting. Supports are well provided. [16:45] nathan has joined the channel [16:47] gozala has joined the channel [16:48] wootw00t has joined the channel [16:51] Corren has joined the channel [16:52] FireFly|n900 has joined the channel [16:53] samsonjs has joined the channel [16:53] kersny: addisonj: ryah was at Norwegian Developers Conference a few days ago and was doing a demo (http://twitter.com/#!/ryah) [16:53] Xano has joined the channel [16:53] swilson06: curious what is the best way to use mysql with node? i see db-mysql, mysql, and mysql-native....? [16:53] hanzomon has joined the channel [16:54] eb4890 has joined the channel [16:54] f^ has joined the channel [16:54] zmbmartin: so how does connect-form work? It is async? so does that mean that the page will redirect to where I specify while the upload is still happening in the background? [16:54] swilson06: db-mysql looks like the closest thing to an orm, and i don't know how mature mysql-native is... [16:55] kris_will has joined the channel [16:55] zmbmartin: when I upload the page redirects to where I ask but the image is not found until a refresh again. [16:55] freeformz_ has joined the channel [16:55] wootw00t has joined the channel [16:55] norviller has joined the channel [16:57] kohai: @voidfiles: Because the world needed another node.js test framework. http://sia.tw/kiol9V (link: https://github.com/Walfisch/bulletproof) [16:57] wootw00t has joined the channel [16:57] kersny: swilson06: https://github.com/felixge/node-mysql is used in production at http://transloadit.com/ [16:57] Swimming_bird has joined the channel [16:58] wootw00t has joined the channel [16:59] xandrews has joined the channel [17:00] swilson06: hummm, ok, so that's probably my best bet.... i'll probably look at transitioning to some more native nosql solution, but for not... [17:01] wootw00t has joined the channel [17:01] bnoordhuis has joined the channel [17:02] fakewaffle has joined the channel [17:02] wootw00t has joined the channel [17:03] kohai: @DenisGobo: Reading: node.js using mustache.js for templating by @chrissie1 http://t.co/JnKA56M (link: http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/node-js-using-mustache-js) [17:03] mbrevoort has joined the channel [17:03] rauchg: test [17:03] TooTallNate: hey rauchg [17:04] CoverSlide: test [17:05] ryanfitz has joined the channel [17:06] bitwise_ has joined the channel [17:06] catshirt has joined the channel [17:06] bitwise_: is there a defacto sample to follow when creating a module? [17:06] adambeynon has joined the channel [17:07] bnoordhuis: bitwise_: c++ or js module? [17:07] arpegius has joined the channel [17:07] bnoordhuis: bitwise_: btw, do you post at the q3w forums? [17:07] bitwise_: bnoordhuis: js [17:07] bitwise_: bnoordhuis: no, don't think i have there [17:08] Swizec has joined the channel [17:08] bnoordhuis: bitwise_: take a look at the files in node's lib/ directory [17:08] sirdancealot has joined the channel [17:08] joshontheweb has joined the channel [17:08] bnoordhuis: bitwise_: essentially you stuff the things you want to export into the exports object [17:08] bnoordhuis: bitwise_: example: exports.foo = function() { return 42; }; [17:09] Cleer has joined the channel [17:09] eb4890 has joined the channel [17:09] bitwise_: ok i will take a look. do the req, res objects factor in there? [17:09] bitwise_: in the object/function the module exports that is [17:09] CoverSlide: also, you can set module.exports to an object, then require() will return the object itself [17:10] bnoordhuis: bitwise_: no, if i understand what you mean - req and res are artifacts from the api exported by http.js [17:10] tbranyen: making exports an object imo was a bad idea [17:10] woot130798499552 has joined the channel [17:10] bnoordhuis: CoverSlide: i was going to add that :) [17:10] tbranyen: well introducing that variable i mean [17:10] tbranyen: module.exports should be how everything works imo [17:10] bitwise_: thats what im trying to do. i built a test around it and its says object is not a function at Object.CALL_NON_FUNCTION (native) [17:10] gzmask has joined the channel [17:10] kris_will: are there any quantified metrics or productivity studies out there around coffeescript? [17:10] tbranyen: tjholowaychuk: yo, any way to put sock files in a specific folder with cluster? [17:11] shafire has joined the channel [17:11] shafire: hi [17:11] tjholowaychuk: tbranyen there's the "socket path" option [17:11] harth has joined the channel [17:11] tbranyen: tjholowaychuk: cool thought there must be something [17:11] bnoordhuis: bitwise_: can you gist or pastie your code? [17:12] kohai: @LessThanDot: New @LessThanDot: node.js using mustache.js for templating http://bit.ly/mxF3db (link: http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/node-js-using-mustache-js) [17:12] woot130798508763 has joined the channel [17:12] hkjels_ has joined the channel [17:12] gzmask: hello folks, anyone knows why my file IO code in nodejs C binding crashes without a warning/error message? [17:12] rauchg: `3rdEden: woot [17:12] `3rdEden: woot? [17:12] bnoordhuis: gzmask: no, but gdb should [17:13] uchuff has joined the channel [17:13] tbranyen: gzmask: i'm trying to see your code, but my minds eye isn't working today :-/ [17:13] tbranyen: help a bad psychic out [17:14] gzmask: tbranyen: thanks, but how do I use gdb on nodejs c binding? I spereate the code from Nodejs and it works. i guess the problem is caused by libeio [17:14] `3rdEden: aww man, i already miss nodecamp ;9 [17:14] CoverSlide: they should rewrite libeio and call it libeieio [17:15] gsmcwhirter has joined the channel [17:15] tbranyen: haha [17:15] woot130798531391 has joined the channel [17:15] tbranyen: tjholowaychuk: not seeing it in the examples or anything set('socket_path', '../') ? [17:15] tbranyen: socketPath, socket path, socketpath, SOCKETPATH ? [17:15] bnoordhuis: gzmask: build node with `./configure --debug`, rebuild your module against it and run `node_g` [17:16] shajith_ has joined the channel [17:16] tjholowaychuk: tbranyen .set('socket path', path) [17:16] tbranyen: okay cool thx [17:16] tbranyen: thats too english for me [17:16] bnoordhuis: gzmask: maybe make that `CXXFLAGS="-g -O0" ./configure --debug` [17:16] dwasp has joined the channel [17:16] mauritslamers_ has joined the channel [17:17] mauritslamers_: question: I am starting a child process using spawn in a client request, but the process exits prematurely because the client disconnects... how to keep the process running? [17:18] simenbrekken has joined the channel [17:19] guybrush: mauritslamers_: that sounds weird [17:19] CoverSlide: mauritslamers_: process.spawn is asynchronous [17:20] CoverSlide: do you response.end() outside of the process callbacks? [17:20] mauritslamers_: CoverSlide: child_process.spawn too? [17:20] kohai: @_pablo: Apache/Perl vs. node.js http://lru.jp/xm35 (link: http://itc.conversationsnetwork.org/shows/detail4911.html) [17:20] CoverSlide: it's node. everything is asynchronous [17:20] mauritslamers_: CoverSlide: or is that the same? [17:20] CoverSlide: er yeah child_process i meant [17:20] niftylettuce: how do I do a stack trace back to the line in my browserify.js file, as it is a modules.export? [17:20] mauritslamers_: CoverSlide: I know :) but for some strange reason the process just cuts out [17:21] darshanshankar has joined the channel [17:21] herbySk has joined the channel [17:21] CoverSlide: mauritslamers_: paste it [17:22] mauritslamers_: CoverSlide: a bit difficult, because it is quite a large project, but I will past at least the spawning code [17:22] niftylettuce: e.g. my err is Unexpected string and here is the output of the err http://pastebin.com/54WSBpju [17:22] niftylettuce: SubStack: maybe you can assist ^ [17:22] bitwise_: bnoordhuis: how would i get the req object (req.query specifically) inside the module? [17:23] mauritslamers_: CoverSlide: https://gist.github.com/1023236 [17:23] bnoordhuis: bitwise_: your caller has to pass it to you [17:24] dingdong has joined the channel [17:24] bitwise_: ok so i think i need my test runner to handle that somehow [17:25] bitwise_: fake it somehow [17:25] CoverSlide: mauritslamers_: you're positive there's no response.end() anywhere after this gets called? [17:26] pkarl has joined the channel [17:26] Corren has joined the channel [17:27] stepheneb has joined the channel [17:27] kohai: @fkadev: Node.js aradığım server side programlama diliymiş, derinlerine biraz inince JavaScript'in büyülü dünyasına kapılıp gittim adeta. [17:27] tuhoojabotti: ok. [17:28] kohai: @fkadev: Ajax ve Reverse-Ajax çocuk oyuncağı gibi oluyor Socket.io + Node.js ile. Bir de Express.js MVC framework kullandıysan, yeme de yanında yat. [17:28] chiyam has joined the channel [17:28] tuhoojabotti: Interesting. [17:28] shafire has left the channel [17:28] dwasp has left the channel [17:29] quackquack: What are the options for testing views/client javascript with node? i used to use cucumber+capybara+selenium in rails [17:29] kohai: @InfoAthletes: (AUTO)TEST NODE.JS WITH JASMINE, COFFEESCRIPT AND WATCHR http://t.co/aiXZZH5 #nodejs #jasmine #autotest (link: http://phunkwork.com/31335093) [17:29] bitwise has joined the channel [17:30] kohai: @fkadev: Hatta muhteşem kombo şu şekilde: Node.js + Express.js + Socket.io + Backbone.js + MongoDB. Oy oy oy... :) [17:30] eguest309 has joined the channel [17:30] nowjs5 has joined the channel [17:30] johnflesch has joined the channel [17:31] guybrush: mauritslamers_: the child-proc just ends? [17:31] Yoric has joined the channel [17:31] guybrush: check stdout and stderr [17:32] dingdong: /msg nickserv register Sum11Thin ripley.jason@gmail.com [17:32] Skola: you're doing it wrong [17:32] cognominal_ has joined the channel [17:32] tuhoojabotti: :D [17:32] tuhoojabotti: quickly, test that passwd on his gmail! [17:33] Skola: I'm testing his bank acc [17:33] Skola: :[] [17:33] ryah: `3rdEden: nice to meet you this weekend :) [17:33] halfhalo: ACTION tests the nuke launching system [17:33] ryah: s/^/it was [17:33] rauchg: `3rdEden nice to meet you too [17:33] drudge: hey guys [17:34] eguest309: hello guys.wanted some help with a wrapper i was creating for a netClient [17:34] mahna: quackquack: See https://github.com/joyent/node/wiki/modules#testing . Coupla cucumber mentions there, and see zombie... [17:34] eguest309: http://pastebin.com/X9EWda2K [17:34] bloodsucker has joined the channel [17:35] eguest309: htis is the code .however when i create instances of the client,it doesnt seem to be able to be able to receive some events such as onconnect event,onmessage event etc.. but if i add it manually in the class file it works fine [17:36] sstreza has joined the channel [17:36] quackquack: mahna: thanks! [17:36] kohai: @EuropeVAN: Reminder: Me, Myself and I on Taking Baby Steps with Node.js on 14 June 2011 http://bit.ly/iO99p5 (link: http://europevan.blogspot.com/2011/05/me-myself-and-i-on-taking-baby-steps.html?utm_source=twitterfeed&utm_medium=twitter) [17:37] quackquack: so it Tobi the equivalent of capybara? simulated headless browser? [17:38] kohai: @pollenware: Now avail for #nodejs: moose v0.0.2 - an ORM w/migrations, associations, etc & comb v0.0.2 - a lightweight framework http://t.co/GY1KF8b (link: http://groups.google.com/group/nodejs/browse_thread/thread/d046e1762a11173f) [17:38] `3rdEden: ryah yeah it was cool meeting you as well, and the live c coding was pretty awesome [17:38] niftylettuce: weird [17:38] niftylettuce: it cached my JS for some reason [17:38] tbranyen: live c coding? lol thats bold [17:38] niftylettuce: I had to reboot even though it was watching changes -.- [17:39] Gregor has joined the channel [17:39] darshan-mobile has joined the channel [17:39] CoverSlide: doesn't zombie do the same thing? [17:39] pen has joined the channel [17:39] quackquack: CoverSlide: i think so [17:40] niftylettuce: Skola: didn't work? ^.^ [17:40] baudehlo has joined the channel [17:40] mundanity has joined the channel [17:40] rubydiamond has joined the channel [17:40] bnoordhuis: `3rdEden: you were at nodecamp? have we met? [17:41] mbrevoort has joined the channel [17:41] rubydiamond has joined the channel [17:41] `3rdEden: bnoordhuis: I did spot you, but we didn't chat. I was with the Hotels.nl crew and did a talk about Socket.IO [17:41] bnoordhuis: `3rdEden: the groningen guys? [17:42] `3rdEden: yup [17:42] rubydiamond has left the channel [17:42] bnoordhuis: you should've spoken up :) [17:42] raynos has joined the channel [17:42] bnoordhuis: i was going to say "i'd have bought you a beer" - but the beer was free [17:43] `3rdEden: ;D [17:43] raynos: Is anyone working on a multi-user whiteboard apart from mr doob? [17:44] `3rdEden: bnoordhuis yeah I really should have talked with you, but I missed allot people ;( [17:44] `3rdEden: bnoordhuis so it's a good excuse to do another nodecamp in the Netherlands next time [17:45] quackquack: is nodeconf video up yet? [17:45] malkomalko has joined the channel [17:45] bnoordhuis: `3rdEden: i'm in groningen every now and then, maybe we can grab a beer sometime [17:45] `3rdEden: bnoordhuis: yeah that would be cool [17:45] drudge: appsterdam! [17:45] `3rdEden: Just give me a ping when your visiting again, and we could meet up [17:45] bnoordhuis: `3rdEden: will do [17:46] raynos: I would actually go to a holland based nodecamp! sounds like fun [17:46] bentruyman has joined the channel [17:46] devrim has joined the channel [17:47] bnoordhuis: i'm all for a dutch nodecamp - but who's going to organize it? [17:47] mjr_ has joined the channel [17:48] mjr_ has joined the channel [17:48] thalll has joined the channel [17:48] jerrysv: drudge++ [17:48] v8bot: jerrysv has given a beer to drudge. drudge now has 1 beers. [17:48] jerrysv: appsterdam :) [17:48] kohai: @3rdEden: libuv is named libuv because it sounds cool ;D I lol'd at that part. But it does.. sound good :p #nodejs #nodeconf [17:48] tomtomaso has joined the channel [17:48] MooGoo: hamsterdam [17:49] `3rdEden: getting a venue is probably the hardest part bnoordhuis [17:49] drudge: jerrysv: what about sofa leaving, does that hurt appsterdam? :P [17:49] bnoordhuis: `3rdEden: yeah, amsterdam and utrecht (most likely suspects) are expensive [17:49] tomtomaso has joined the channel [17:49] bnoordhuis: `3rdEden: rotterdam otoh [17:51] `3rdEden: bnoordhuis: the best spots are always costy [17:52] langworthy has joined the channel [17:53] mbrevoort has joined the channel [17:53] jacobolus has joined the channel [17:53] vdemedes has joined the channel [17:54] springify has joined the channel [17:55] pifantastic_ has joined the channel [17:57] derencius has joined the channel [17:58] darshanshankar has joined the channel [17:58] btipling has joined the channel [17:58] Skola: speaking about Amsterdam, how hard is it to find a job as js/python/frontend/node.js dev/designer? [17:58] aperiodic has joined the channel [17:58] Skola: _there_ [17:59] kriskowal has joined the channel [18:00] CrisO has joined the channel [18:00] kohai: @DotNetEventsNL: Morgen: VAN: Me, Myself and I on Taking Baby Steps with Node.js http://bit.ly/gKh1M7 (link: http://www.dotnetevents.nl/) [18:00] taf2 has joined the channel [18:00] christopherdb has joined the channel [18:01] bitwise: im exporting a function called locate in my module but when i go to test i get "Object # has no method 'locate'" [18:02] eyesUnclouded has joined the channel [18:03] brettgoulder has joined the channel [18:03] jetienne has joined the channel [18:03] bitwise: basically the index.js for the module is just require ( './lib/mylib' ) and then in ./lib/mylib.js i have exports.locate = function () {} [18:03] jgv_ has joined the channel [18:04] bnoordhuis: bitwise: your index.js should probably do module.exports = require('./lib/mylib') [18:04] tbranyen: weird that some people get hang up problems [18:04] tbranyen: i've never seen that happen [18:05] dgathright has joined the channel [18:05] Skola: bnoordhuis, assuming you're Nederlands, do you know where I'd go looking for werk as dev? [18:05] bitwise: cool. that got past that error. thanks bnoordhuis .. now onto the next error [18:05] bnoordhuis: Skola: monsterboard.nl and similar sites? [18:06] cronopio has joined the channel [18:06] bnoordhuis: Skola: nationalevacaturebank.nl is okay too and not as annoying as monsterboard [18:06] Skola: alright [18:07] bnoordhuis: but they're dutch site, of course [18:07] Skola: yes but dat is prima :p [18:07] bnoordhuis: Skola: heh, good luck then [18:07] Skola: thx [18:07] bnoordhuis: Skola: where are you from? [18:08] Skola: NL, boerendorp ;[] [18:08] stride: ACTION finds dutch funny. could you guys make a dutch node.js podcast please? ;) [18:08] bnoordhuis: hah [18:09] bnoordhuis: Skola: i don't really have a network in 020 or else i'd refer you [18:09] bitwise: cool. that got past that error. thanks bnoordhuis .. now onto the next error [18:09] Skola: is cool, I bet I'll find work quickly [18:09] bitwise: woops [18:09] Skola: just need to weed out the PHP Monkey vacancies [18:10] bnoordhuis: Skola: if you know java or c#, you'll never be on the market long [18:10] bnoordhuis: python / node.js is somewhat of a niche [18:10] Skola: I know neither so yeah : D [18:10] Skola: I'm mainly a designer (starter though) [18:10] arpegius has joined the channel [18:11] saurabhverma has joined the channel [18:11] Skola: I know PHP HTML5/CSS3 Python js coffeescript (but who cares) and a good bit of Haskell [18:11] Skola: so I'll probably look for frontend [18:11] kohai: @alexjs: @stef Hell, I'm going to start some sort of egotistical fork of node.js just for that reason. ;) [18:12] uchuff has joined the channel [18:13] Corren has joined the channel [18:13] NetRoY has joined the channel [18:13] CarterA has joined the channel [18:14] patcito has joined the channel [18:14] CarterA has left the channel [18:14] bitwise: getting assert is not defined when i run expresso test.js [18:14] jbpros has joined the channel [18:15] CoverSlide: assert needs to be required [18:15] lluad has joined the channel [18:15] bitwise: awesome. worked [18:16] quackquack: tjholowaychuk: does Move.js support non-css3 compatible browsers? [18:17] tjholowaychuk: quackquack: nope [18:17] quackquack: hm, ill just stick to javascript animations :P. stupid browser support [18:18] kohai: @ReadSoon: Metamarkets Blog » Blog Archive » Node.js and the JavaScript Age http://bit.ly/lLH9P1 (link: http://metamarketsgroup.com/blog/node-js-and-the-javascript-age/) [18:18] darshan-mobile has joined the channel [18:18] pen has joined the channel [18:18] jakehow has joined the channel [18:19] isaacs has joined the channel [18:19] ircretary has joined the channel [18:20] raynos: quackquack: selectivr [18:20] zmbmartin has joined the channel [18:21] quackquack: raynos: what? [18:21] raynos: quackquack: http://selectivizr.com/ slap it on and IE magically supports CSS3 [18:22] quackquack: no way?! [18:22] tuhoojabotti: http://dev.tuhoojabotti.com/ random slogans/quotes added ;D [18:22] jetienne: i wasnt aware of move.js nice one [18:22] AvianFlu has joined the channel [18:23] quackquack: raynos: does it support firefox 3 also? [18:23] raynos: I would guess so. Sucks you have to support 3 :( [18:24] jetienne: raynos: you tried to get css animation with selectivizr ? [18:24] raynos: Nope. [18:24] euforic has joined the channel [18:24] quackquack: raynos: no good. "The emulation is not dynamic." so it wont work w/ move.js. i may use it anyways =D [18:24] softdrink: dangit. no :before or :after :( [18:25] newy_ has joined the channel [18:25] tjholowaychuk: quackquack i'm sure it wouldn't be all that hard to have a fallback for js [18:25] jetienne: quackquack: tjholowaychuk: i would be interested by such a shim too :) [18:26] quackquack: tjholowaychuk: no, i dont think it would be. i may write one... i really would like to have fancy stuff for users w/o a piece of trash browser [18:26] thurmda: exit [18:26] rpj8: ^ [18:27] tjholowaychuk: quackquack yea that's the thing i guess, is if you really want stuff like that for old shitty browsers [18:27] tjholowaychuk: if it's slow i'd rather not have it [18:27] replore has joined the channel [18:28] jetienne: last IE support css animation ? [18:28] quackquack: i think firefox 3/ie<9 is still to big a market share to ignore, unfortunately [18:28] tjholowaychuk: yeah but they dont need fancy animations [18:28] jetienne: how much is ff3 ? [18:28] tjholowaychuk: they can just suffer for using a shit browser [18:28] tjholowaychuk: :D [18:29] swilson06: not sure of the topicality here, but is client a built in js function? i keep seeing stuff like client.sessionID when dealing with socket.io and nothing ever declares client [18:29] CoverSlide: ff3 would update itself to ff4 wouldn't it? [18:30] softdrink: theres also: http://code.google.com/p/ie7-js/ [18:30] davidascher has joined the channel [18:31] tuhoojabotti: Skola: perkele-language: http://www.youtube.com/watch?v=lcb8uafr0cw ;D [18:31] jetienne: CoverSlide: yes [18:32] jetienne: CoverSlide: they will push even more for auto update now with their release every 2months or so [18:32] jetienne: ok css 3D time [18:32] raynos: quackquack: ff3 is nothing, 3.6 is a different matter [18:33] CoverSlide: the ff team should just jump their version number to 73 [18:33] raynos: Besides. [18:33] CoverSlide: and be like "take that chrome" [18:33] raynos: google is dropping 3.6 support next week [18:33] systemfault: raynos: Not really. [18:33] quackquack: CoverSlide: not on all platforms, it doesnt [18:33] systemfault: They're dropping 3.5 in august. [18:33] raynos: systemfault: I'm sure the press release said current and previous only [18:33] hellp has joined the channel [18:33] quackquack: raynos: thats the difference [18:34] quackquack: kudos to google for dropping support for old browsers [18:34] carpeliam has joined the channel [18:34] systemfault: raynos: I hope you're right :) [18:34] quackquack: raynos: *whats* the difference [18:34] raynos: ff5 is current ff4 is previous [18:34] kohai: @del_javascript: High Scalability - High Scalability - Is Node.js Becoming a Part of the Stack? SimpleGeo Says Yes. http://owl.li/1ddkdD (link: http://highscalability.com/blog/2011/2/22/is-nodejs-becoming-a-part-of-the-stack-simplegeo-says-yes.html) [18:34] softdrink: start putting banners at the tops of your pages in IE that says something like "Google doesn't even support this browser." [18:34] quackquack: lol [18:35] raynos: "new version updates and in turn ending support for the third-oldest version." I interpret that as current the top two are 4 and 3.6 so there dropping 3.5. When 5 comes out there dropping 3.6 too [18:35] Rodtusker has joined the channel [18:36] raynos: quackquack: The difference is that you tailor modern browsers and IE8 because thats where the trend are going and google are laying the trend down [18:36] tiagoa_ has joined the channel [18:36] raynos: now if your in the business or intranet sector you support whatever the companies use. For the public facing sector unless your a corporate massive support IE8 and modern browsers [18:37] tuhoojabotti: I support all the browsers that display my site correctly! [18:38] Murvin has joined the channel [18:38] Swimming_bird has joined the channel [18:39] Murvin: Hi .. need help on socket hang up problem here [18:39] jerrysv: tjhollowaychuk: is it possible to use connect without crypto compiled in? [18:39] c4milo: jerrysv: what's the problem with crypto? just curious [18:40] jerrysv: c4milo: centos 4 [18:40] craghack has joined the channel [18:40] c4milo: jerrysv: I see [18:40] CoverSlide: upgrade to scientific [18:40] CoverSlide: centos is dead [18:40] jerrysv: coverslide: it our ops group, and we're spread on legacy hardware with centos 4 everywhere [18:42] Murvin: anyone can help me on solving socket hang up problem? to be brief, I left my node server running without any activity during weekend, when I come back this morning, if I hit the server, I will get socket hang up error. [18:42] jerrysv: gah, i always screw that up, let's try again [18:42] Murvin: unless I restart the server. [18:42] bnoordhuis: jerrysv: known issue, i think - https://github.com/senchalabs/connect/issues/281 [18:42] jerrysv: tjholowaychuk: is it possible to use connect without crypto? [18:42] jerrysv: bnoordhuis: thanks [18:42] tjholowaychuk: jerrysv not really right now, i need to move the require('crypto') stuff into the middleware [18:42] tjholowaychuk: that actually use them [18:43] Murvin: details in https://github.com/joyent/node/issues/1176 [18:43] tjholowaychuk: or we add a pure-js fallback [18:43] tjholowaychuk: which i dont really want [18:43] brianseeders has joined the channel [18:43] eee_c has joined the channel [18:43] bnoordhuis: Murvin: your bug report should mention the os and version of node.js you're using [18:43] tbranyen: wow my crappy lua server doesn't work in incognito mode [18:43] tbranyen: thats odd [18:43] Murvin: ok. i will edit it. [18:43] Murvin: it is 0.4.8 ubuntu [18:44] charleyd has joined the channel [18:44] jerrysv: tj: thanks [18:44] adambeynon has joined the channel [18:45] kohai: @halfageekinfo: Real-Time Communications with Tropo and Node.js http://is.gd/F5PX0S #javascript (link: http://javascript.halfageek.info/2011/05/28/real-time-communications-with-tropo-and-node-js/) [18:45] creationix has left the channel [18:45] bnoordhuis: Murvin: try to be more specific: where did you get that version of node.js from, what version and arch of ubuntu, etc. [18:45] Murvin: 0.4.8 from node.js [18:46] bnoordhuis: Murvin: the output from `sysctl -A` and `cat /etc/issue` could help too [18:46] springif` has joined the channel [18:47] fostah has joined the channel [18:47] indexzero has joined the channel [18:48] devrim has joined the channel [18:49] Murvin_ has joined the channel [18:49] ben_alman: SubStack, you here? [18:49] Murvin_: which particular information from sysctl do I need to show? [18:49] zmbmartin: tjholowaychuk: so regarding my connect-form and restrictToSelf post on the mailing list. is mongoose async so that is why it is clashing with connect-form? [18:49] charleyd: hey - I'm trying to configure Eclipse as a dev environment for nodejs. Is there a doc on the details somewhere? [18:49] jmoyers has joined the channel [18:50] pigmej has joined the channel [18:50] Murvin_: charlyed: just create a JS project in Eclipse [18:50] charleyd: I got that far - I'd like to be able to hit "run" and see it work though [18:51] bnoordhuis: Murvin_: the network-related stuff [18:51] Murvin_: hm everything? [18:51] Murvin_: is there any sensitive network information I shouldn't show in the post? [18:52] bnoordhuis: better too much than too little information [18:52] Murvin_: whT? [18:52] Murvin_: I m still here... [18:52] bnoordhuis: Murvin_: the sysctl is all pretty benign [18:53] kohai: @deremer: @danshipper Thanks. More of an experiment than anything else. First thing I've made with Node.js + Heroku, so good to cut my teeth on those [18:53] Murvin_: bnoorduis: done. in my issues now. [18:54] Murvin_: I was struggling for the last 2 weeks on socket & concurrent (load testing) issue. [18:55] NetRoY has joined the channel [18:55] sharkbone has joined the channel [18:55] mscdex: calvin, how are things? [18:55] mscdex: Calvin! [18:56] mscdex: .. console.log("test") [18:56] Calvin: 03'test' [18:56] Calvin: 14undefined [18:56] bnoordhuis: Murvin_: have you been able to reproduce this with a pure-node (no seq, no connect/express) test case? [18:56] mscdex: hah. [18:56] tbranyen: woot another bot to ignore [18:56] Murvin_: so, in the beginning, when I load test, the http.request will throw socket hang up error few minutes after the load test is done. Then i solved it by having the request. abort() when timeout. But now, it seems to have another problem when leaving the program for long time. Not sure it is related or separated problem as the http.request [18:56] mscdex: Calvin: node.js rules! [18:56] mscdex: rut roe [18:56] th has joined the channel [18:57] blueadept: anyone know how you can fetch collection stats with mongoose? [18:58] Murvin_: Bnoordhuis: I can reproduce the problem in pure node for throwing socket hang up wihtout request.abort() under load testing. I can test the pure node.js for the new problem. but I will only get back to you after a day or few days. [18:58] eldar has joined the channel [18:58] eguest309 has left the channel [18:58] Murvin_: because that problem is about running a load testing, and then leave the server running for days without activity. so, i don't think I can get back to you on that today. [18:59] bnoordhuis: Murvin_: no problem, but a pure-node test would help [18:59] Murvin_: I'm just wondering.. if http.request and http.server use the same socket connection pool. [18:59] bnoordhuis: easier to reproduce, less stuff in the equation [19:00] kohai: @maraksquires: http://t.co/t8ByXvK is a distributed #nodejs EventEmitter that works cross process / cross machine / cross environment. (link: https://github.com/marak/hook.io) [19:00] charleyd: is there a flag for —debug which switches the port the debugger is listening on? [19:00] Murvin_: sure. i will run few servers at the same time. One is just a hellow world and leave it running for days. The other will send http.request. [19:02] kohai: @wbyoung: @cgiffard let me know if you get the node.js bindings worked out. It looks really cool! [19:02] bnoordhuis: charleyd: --debugger_port [19:03] charleyd: @bnoordhuis ty [19:03] bnoordhuis: Murvin_: cool - and be sure to post your test cases [19:04] kohai: @SimpleGeoAPI: Did you know we have a Node.js client? https://github.com/simplegeo/simplegeo Let us know if you want to play with it. [19:05] davida has joined the channel [19:05] kohai: @mohamed__abdo: CODE Magazine - Article: An Introduction to node.js - http://goo.gl/Osd7u (link: http://www.code-magazine.com/Article.aspx?quickid=1105081) [19:06] matyr has joined the channel [19:06] reid has joined the channel [19:06] er1c_ has joined the channel [19:07] raynos: Anyone knowable with SVG? [19:07] kohai: @kilianciuffolo: unbelievable! i'm in love with #nodejs + #objective-c [19:07] Bradleymeck__ has joined the channel [19:07] MooGoo: wow [19:08] MooGoo: that guys in love with this irc channel [19:08] tbranyen: ryah: or anyone else working on libuv will old ev methods be backwards compatible? [19:08] tbranyen: or is the switch going to break a shit load of 3rd party modules? [19:08] Bradleymeck has joined the channel [19:08] riven has joined the channel [19:09] tbranyen: in regards to: https://github.com/samshull/node-proxy/issues/6 [19:09] kohai: @ycombinatornews: Use Node.js as a full cloud environment development stack http://ibm.co/kXiyXS (link: https://www.ibm.com/developerworks/cloud/library/cl-nodejscloud/) [19:10] jerrysv: hoo boy. another ibm blog post about node [19:10] fermion has joined the channel [19:11] ben_alman: wow, all the node command line parsers fall flat [19:11] springif` has joined the channel [19:11] Cover|work: ben_alman: with what? [19:12] ben_alman: with working reliably [19:12] ben_alman: optimist is pretty good [19:12] jerrysv: was about to suggest optimist [19:12] tbranyen: jerrysv: link? [19:13] perezd has joined the channel [19:13] ben_alman: but it definitelty has issues, and outstanding issues, and i don't think i want to fork it [19:13] Cover|work: tbranyen: kohai message [19:13] jerrysv: https://github.com/substack/node-optimist [19:13] radicality has joined the channel [19:13] iammerrick has joined the channel [19:13] lackac has joined the channel [19:13] tbranyen: Cover|work: i ignore kohai i don't like added noise to an already noisey medium [19:13] jerrysv: ben_alman: what kind of issues? substack is around here somewhere [19:13] iammerrick: Hey guys, Is there a npm module that allows you to spawn a new node server making the current path the document root [19:13] tbranyen: jerrysv: i meant the ibm node article :-p [19:13] Cover|work: its an old article [19:13] tbranyen: ah okay [19:14] jerrysv: tbranyen: doh! ok [19:14] ben_alman: well, some of the actual issues in the github repo issues system, for starters [19:14] isaacs: iammerrick: like, to send a single file, a la that simple-www thingie in python? [19:14] jerrysv: tbranyen: sorry, i haven't gone to /ignore on kohai yet [19:14] ben_alman: i've been working around issues as they come up [19:14] kohai: @deremer: @danshipper Worth it though. I think it's the future. Apache is dead. Long-live Node.js [19:14] iammerrick: isaacs: cd ~/Sites/new-static-site-pure-html; nodeSpawn; now localhost:3000 is serving new-static-site-pure-html [19:14] edude03 has joined the channel [19:14] iammerrick: isaacs: I am not familiar with the simple-www [19:15] NetRoY has joined the channel [19:15] Cover|work: there is no document root in node.js [19:15] ben_alman: but one thing i want to be able to do that i can't seem to is to have boolean options that don't have defaults of false [19:15] ben_alman: like, a default of null [19:15] Cover|work: but simple enough to do with connect().static [19:16] Rodtusker has joined the channel [19:16] ben_alman: so you can know if someone explicitly overrode them, for example [19:16] Cover|work: fork optimist [19:16] Bradleymeck has joined the channel [19:17] ben_alman: then it won't be in npm, will it [19:17] Cover|work: pull request [19:17] ben_alman: sure, i get that [19:17] isaacs: ben_alman: nopt supports that. [19:17] gozala has joined the channel [19:17] ben_alman: but when i see a bunch of unclosed issues on a repo, i start to think "is it gonna happen?" [19:17] isaacs: ben_alman: npm has lots of boolean flags that default to false. (eg, --global) [19:17] ben_alman: hmmn [19:17] tyler-iphone has joined the channel [19:18] ben_alman: let me look @ nopt [19:18] raynos has left the channel [19:18] isaacs: ben_alman: have to write your own --help banner, though :) [19:18] ben_alman: i already did that [19:18] jscheel has joined the channel [19:18] ben_alman: :) [19:18] isaacs: kewl [19:18] Cover|work: or npm publish [19:19] Bradleymeck has joined the channel [19:19] iammerrick: isaacs: so its that a no? then for sure? [19:19] kriskowal has joined the channel [19:19] isaacs: iammerrick: not sure... if not, it wouldn't be terrifically hard to write. [19:19] kohai: @DShankar: @gtramontina we're talking about multi-user whiteboards built with #nodejs in the #nowjs irc channel. Def brought up #WriteBoard! Come chat! [19:19] ben_alman: isaacs, nopt looks awesome. gonna try it, thanks. [19:19] isaacs: iammerrick: you could use node-static or something, and just wrap it in a nice little server.js [19:19] isaacs: ben_alman: np [19:19] mikeal has joined the channel [19:19] kriskowal: isaacs, +1 on your approach to define(). [19:19] iammerrick: isaacs: Sweet thanks :) [19:20] isaacs: kriskowal: well, yeah, it's yours :) [19:20] jhurliman has joined the channel [19:20] isaacs: kriskowal: my implementation is actually just a +1 to your approach. [19:20] kriskowal: also, i didn't intend to imply that the module guarantees must be enforced [19:20] kriskowal: https://github.com/kriskowal/uncommonjs/commit/e241ca12ffd6b77039f8f8ea98c1f368387ce954 [19:20] jscheel: afternoon folks! Got a quick question about npm. I have forked a project, and want to include it in my project's package.json dependencies. Does my fork need to have a unique package.json, or should it have the same name, and then just point to the forked repo in my project package.json? [19:21] isaacs: kriskowal: yeah, that's why i wrote "or suggested" [19:21] kriskowal: ah [19:21] TheFuzzball has joined the channel [19:21] kriskowal: alright, same page. [19:21] isaacs: kriskowal: you definitely suggest that modules are less-good if they don't do that. [19:22] isaacs: kriskowal: i'm not prepared to say that :) [19:22] kriskowal: meh. similar page [19:22] isaacs: kriskowal: but yeah, i dig that added language there. [19:22] isaacs: kriskowal: if you want to run in not-node, and not-browserify, yeah, you probably need to be just a define() function and put your module guts in the cb [19:23] kohai: @samklr: Node.js From the Enterprise Java Perspective http://t.co/KP1HttK (link: http://blog.shinetech.com/?p=394) [19:23] kriskowal: i think it'll play out nicely. [19:23] isaacs: me too [19:23] isaacs: Hey, did anyone get my "test from isaacs" email to the nodejs list? [19:23] eldar has joined the channel [19:24] kriskowal: browser-side production tools can build the id/deps pretty easy if modules agree to use require with literals, and the browser-side client can do the same in dev so no build step necessary [19:26] rudolfrck: I've been working a bit on a event-handling system for sockets (wrapper around net.Server and net.Socket). If anyone has seen another project solving some of the same problems, or have any kind of feedback. Take a look here: https://github.com/rudolfrck/socket-events [19:26] dingdong: ls [19:26] kristian-l has joined the channel [19:27] kristian-l: Anyone with experience in the komainu module? [19:27] isaacs: jscheel: hey [19:27] jscheel: isaacs: hola [19:27] isaacs: jscheel: so, you have a few options: [19:27] Bradleymeck_ has joined the channel [19:27] isaacs: a) get the author to pull the change upstream [19:28] isaacs: b) bundle your version [19:28] isaacs: c) give it some different name. [19:28] isaacs: generally, a is a good choice, followed closely by "b" if "a" is too slow or impractical. "c" shoudl only be done if it's clear that you are going in different directions. [19:29] Bradleymeck_ has joined the channel [19:29] jscheel: isaacs: yeah, I think I will need to go with B [19:29] jscheel: isaacs: but I'm a little unclear on it [19:29] isaacs: jscheel: so, what you wanna do is get your version into your node_modules folder (somehow -- use npm link, install the folder/tarball, etc)_ [19:29] jbpros has joined the channel [19:29] Bradleymeck_ has joined the channel [19:30] isaacs: jscheel: then in your package.json, do this: { "dependencies": { "thing" : "version" }, "bundledDependencies" : ["thing"] } [19:30] kristian-l: what's the best way of implementing a form based authentication in node? Tried several modules but they all seem pretty crude [19:30] replore_ has joined the channel [19:30] isaacs: jscheel: then your bundled version will be included in your project when you publish [19:30] jscheel: isaacs: ahh, cool, lemme give it a whack. Thanks! [19:30] isaacs: jscheel: you can also do this: { "dependencies" : { "thing" : "http://github.com/jscheel/node-thing/tarball/tag" }} [19:31] jscheel: isaacs: ah, that's what I did [19:31] isaacs: jscheel: then when you do `npm install`, it'll pull from there [19:31] isaacs: yeah, that's pretty ok [19:31] jscheel: isaacs: but I wasn't sure what I should do with the package.json [19:31] isaacs: jscheel: i mean, instead of a version, you can put a url in there. [19:32] jscheel: isaacs: sorry, I mean the package.json of my forked module [19:32] isaacs: jscheel: oh, ok [19:32] davidascher has joined the channel [19:32] isaacs: jscheel: well, you don't really need to do anything, really [19:32] isaacs: maybe change the version [19:32] isaacs: i dunno [19:32] b_erb has joined the channel [19:32] jscheel: isaacs: should I add {private: true} [19:32] jscheel: oops [19:32] mauritslamers_: guybrush: sorry for the delayed answer, but I guess what happens in my case is that the request/response finish because of xhr polling [19:32] isaacs: jscheel: sure [19:33] Marak has joined the channel [19:33] jscheel: {"private": true} [19:33] jscheel: isaacs: cool, thanks [19:33] isaacs: jscheel: but you can't publish it anyway, since it's not yours :) [19:33] isaacs: jscheel: it won't let you :) [19:33] saurabhverma1 has joined the channel [19:33] jscheel: isaacs: ah, great [19:33] ben_alman: isaacs, fwiw nopt appears to do exactly what i need it to do [19:33] isaacs: ben_alman: great! [19:33] ben_alman: in much, much less extra code [19:34] jscheel: isaacs: I just didn't want to step on the other author's toes. I'd like to submit a pull request eventually, but I have to get this out for my project asap, so I couldn't wait :P [19:34] ben_alman: i already had my opts and whatnot in a separate object [19:34] jscheel: isaacs: thanks again! [19:34] isaacs: ben_alman: yeah, if you're not wanting it to generate a --help banner for you, nopt is really nice [19:34] b_erb has left the channel [19:34] isaacs: jscheel: np :) [19:34] isaacs: i'm more proud of nopt than npm, actually. [19:34] ben_alman: yeah i generate all the stuff for nopt and my help banner from one data object [19:34] xerox: isaacs! [19:34] isaacs: i wanna abstract out the config file stuff, too [19:34] ben_alman: so i can adapt it to whatever [19:34] isaacs: xerox! [19:35] xerox: don't you think it is a bit of a chore to have to copy and paste the git url from an npmjs.org description in another tab, edit out the git:// part and replace it with http://, and then delete the trailing .git [19:35] xerox: just to get to the site? [19:35] jhurliman: tjholowaychuk, (or anyone), anyone have an e-mail template (such as http://htmlemailboilerplate.com/ or https://github.com/mailchimp/Email-Blueprints) converted to jade markup? [19:35] xerox: couldn't it be automated for packages that do not specify an homepage? [19:35] xerox: : ) [19:35] tjholowaychuk: jhurliman hmm nope [19:35] tjholowaychuk: we use jade for some email stuff [19:35] jhurliman: k [19:35] tjholowaychuk: but [19:35] isaacs: xerox: npm help docs [19:36] tjholowaychuk: i dunno [19:36] isaacs: xerox: npm docs request [19:36] tjholowaychuk: haha [19:36] pifantastic has joined the channel [19:36] quackquack: What is the difference between module.exports and just plain exports [19:36] xerox: isaacs: I mean the npmjs site, not locally [19:36] isaacs: quackquack: sometimes you want to overwrite the whole object. [19:37] tilgovi has joined the channel [19:37] tilgovi has joined the channel [19:37] xerox: it interrupts the browsing [19:37] isaacs: xerox: oh. patches welcome :) [19:37] ben_alman: quackquack, use module.exports if you want to set exports wholesale [19:37] tbranyen: exports is so confusing to new people [19:37] ben_alman: exports.someprop = value; but module.exports = someobject; [19:37] quackquack: ah, and `exports` for just overriding a property [19:37] quackquack: ty! [19:37] xerox: isaacs: ah npmjs.org's source is available? [19:37] fangel has joined the channel [19:37] mauritslamers_: question: I have a child process that seems to end prematurely because the request ends (xhr polling)... How to keep the process running? [19:37] tbranyen: quackquack: exports = module.exports, but since js doesn't have pointers, if you change the exports value it won't change module.exports value [19:37] Cover|work: i got these vegetarians in the office [19:37] tbranyen: and vice versa [19:38] Cover|work: whenever they ask what im eating [19:38] quackquack: ty, tbranyen [19:38] Cover|work: i always list the animals that are in it [19:38] Cover|work: like "some pig, some cow, and a baby chicken" [19:38] tbranyen: baby chicken is the best [19:38] Bradleymeck_ has joined the channel [19:38] pkarl has joined the channel [19:39] context: mauritslamers_: if there is nothing in the event loop to be handled node exits [19:40] patcito has joined the channel [19:40] mauritslamers_: context: it is not that node exists... [19:40] context: what [19:40] mauritslamers_: node keeps running, it is a server application... [19:40] context: ok [19:40] mauritslamers_: but as a result of a request I spawn a child process [19:40] context: so whats your child process have to do with node [19:41] Cover|work: mauritslamers_: so does the xhr have a timeout? [19:41] mauritslamers_: Cover|work: yes [19:41] context: that sounds like a DOS just WAITING to happen. [19:41] mauritslamers_: context: I know... but it is protected by policies :) [19:41] sharkbone has joined the channel [19:41] mauritslamers_: context: and for internal use [19:42] Cover|work: if i worked there i would totally DOS it [19:42] context: still scary. [19:42] mauritslamers_: Cover|work: I have been thinking about postponing that polling timeout [19:43] mauritslamers_: Cover|work: even if you were one of the three people being able to use it? [19:43] context: why not run the child process once every 5-10 seconds and cache the results [19:43] mauritslamers_: context: because it is a RPC like service [19:43] context: id never tie process creation to requests. even interally [19:43] mauritslamers_: context: it is the creation of a PDF from a latex source [19:43] rabidewok has joined the channel [19:43] context: oh. [19:44] bahk has joined the channel [19:44] mauritslamers_: context: I don't know the exact cause for the problem, I just suspect it is tied to the request [19:44] mbrevoort has joined the channel [19:45] mauritslamers_: and I'd love to decouple it, but atm I have no clue how :) [19:45] stonebranch has joined the channel [19:46] kohai: @olaberg: För första gången på mycket länge känner jag stor glädje när jag programmerar. Node.js är lätt att bli kär i. [19:47] mauritslamers_: context: the code I run is this: https://gist.github.com/1023236 [19:48] KingJamool has joined the channel [19:49] a0n has joined the channel [19:49] a0n: YEAH! node.js [19:50] eee_c1 has joined the channel [19:50] tuhoojabotti: http://tuhoojabotti.com/r/prsc/ie_win.png (812x422) IE9<3 [19:50] tuhoojabotti: :P [19:50] kohai: @dkords: #Nodejs ++ SSJS meetup scheduled for July 19th in SF: http://bit.ly/llRQ8b Topic is Node.js Realtime Data VIS Hack Night sponsor: @loggly (link: http://www.meetup.com/Node-js-Serverside-Javascripters-Club-SF/events/21461441/) [19:51] kohai: @chrisjpowers: @_itsmatthew Still in Chicago, enjoying consulting at Obtiva, trying to do less Ruby and more JavaScript / Node.js [19:52] tyrrvk: question about installing node.js on a centos 5.5 box [19:52] Marak has joined the channel [19:52] tyrrvk: whats the best location to install to [19:52] tyrrvk: ? [19:52] tyrrvk: the docs say $HOME/usr/ [19:53] Cover|work: /usr/local/ ? [19:53] tyrrvk: that's what I was wondering [19:53] tyrrvk: cause if I am logged in as a regular user, and install to ~/$HOME/usr [19:53] tyrrvk: that'll make it tough for others to log in and run node.js [19:53] Cover|work: I'd say $HOME/node [19:54] tyrrvk: i mistyped - the docs say $HOME/local/node [19:54] tyrrvk: https://github.com/joyent/node/wiki/Installation [19:54] kohai: @happywebcoder: @javisantana y todo el mundo con node.js porque, para qué utilizar el mismo lenguaje que su app servidor? :P @albertoperdomo [19:54] kohai: @chrisjpowers: Curious if all my tweets about Node.js are getting posted in the Nodejitsu IRC room... let's find out. [19:54] tyrrvk: so - create a local "node" account then? [19:55] context: tyrrvk: if you arent using the package manager your distro comes with put it in /usr/local or even /opt [19:55] tyrrvk: ahh [19:55] Cover|work: $HOME is not a user name [19:55] tyrrvk: yes I know [19:55] Shinuza has joined the channel [19:55] matyr_ has joined the channel [19:56] tyrrvk: context - that's what I wanted confirmed...thanks [19:56] gtramont1na has joined the channel [19:57] kohai: @coverslide: @chrisjpowers: yes it appears so #nodejs [19:58] hassox has joined the channel [19:59] shafire has joined the channel [19:59] shafire: hi [19:59] quackquack: how do i update NPM? [19:59] isaacs: quackquack: curl http://npmjs.org/install.sh | sh [19:59] Cover|work: curl http://npmjs.org/install.sh | sh [19:59] shafire: are there any prostgre and couchdb librarys? [20:00] quackquack: ty [20:00] Cover|work: dammit [20:00] isaacs: quackquack: or, post-1.0.10, `npm update npm -g` [20:00] isaacs: (that was broken for a little while) [20:01] context: npm -g update [20:01] Mrfloyd has joined the channel [20:01] kohai: @happywebcoder: @javisantana me refiero a q me extraña que la gente no se plantee usar algo en python, ruby o lo que usen en el server side antes q node.js [20:03] raidfive has joined the channel [20:04] springmeyer has joined the channel [20:04] postwait has joined the channel [20:05] kohai: @antoniogarrote: @javisantana node.js -> poor man's Erlang y te lo digo yo que estoy rodeado de node fan boys [20:05] kohai: @NodeKohai: @chrisjpowers Look, we can tweet back, too! :) [20:08] saschagehlich has joined the channel [20:09] shafire: hi [20:09] shafire: are there also postgre and couchdb libs? [20:09] context: yes. [20:10] stagas_ has joined the channel [20:10] gzmask has joined the channel [20:10] xandrews has joined the channel [20:10] Cover|work: shafire: http://search.npmjs.org/ [20:10] shafire: Cover|work: thank you [20:11] gzmask: what is the proper way to do file IO in a C binding? Node doc says libev, so that means I can't just use libeio right? [20:12] hkjels_: It seems that almost all the documentation on https://github.com/learnboost/socket.io-node is incorrect [20:12] hkjels_: tricky to get a handle on it [20:12] Kingdutch has joined the channel [20:13] Swizec has joined the channel [20:14] viz has joined the channel [20:14] MrGoodbyte has joined the channel [20:16] trotter_ has joined the channel [20:18] riven has joined the channel [20:19] a0n has joined the channel [20:20] xandrews has joined the channel [20:21] bkozal has joined the channel [20:21] saschagehlich has joined the channel [20:21] mapleman has joined the channel [20:22] JoshC1 has joined the channel [20:22] bnoordhuis: gzmask: you can (and should) use libeio - for now anyway [20:22] hydra_ has joined the channel [20:22] SubStack: ben_alman: I don't close issues after I fix stuff. The people who opened them can do that. [20:23] ben_alman: do they? [20:23] Minos has joined the channel [20:23] SubStack: occasionally [20:23] ben_alman: heh [20:23] gzmask: bnoordhuis: so libev is irrelevant now? [20:23] ben_alman: you can close issues in commit messages [20:23] ben_alman: it's pretty sweet [20:23] ben_alman: they can always re-open [20:23] bnoordhuis: gzmask: no, libeio is built on top of libev [20:24] ben_alman: they usually aren't enough of a stakeholder to stay responsible for closing issues, at least in my experience [20:24] SubStack: don't care [20:24] vdemedes has left the channel [20:24] ben_alman: cool [20:24] kohai: @rorygibson: Just blogged about the Node.js talk at #thoughtworks Manchester mini-conference last week http://t.co/UhQ77JX #node (link: http://rorygibson.wordpress.com/2011/06/13/thoughtworks-meeting-in-manchester/) [20:24] gzmask: bnoordhuis: hmm... thanks [20:24] ben_alman: well, nopt did what i needed, so no biggie [20:24] SubStack: tests > issues [20:25] bnoordhuis: gzmask: let me know if you need some pointers [20:25] davidascher has joined the channel [20:26] gzmask: bnoordhuis: I do... I have file IO code in libeio and it crashes without warning: https://github.com/gzmask/nodejs_dlib_binding [20:26] bnoordhuis: gzmask: run it through gdb and `bt` when it crashes [20:27] DTrejo has joined the channel [20:27] riven has joined the channel [20:27] riven has joined the channel [20:27] gtramont1na has joined the channel [20:27] bentruyman has joined the channel [20:27] gzmask: bnoordhuis: is "node debug xxx.js" same as gdb? [20:28] yozgrahame has joined the channel [20:28] maqr has joined the channel [20:28] maqr has joined the channel [20:28] bnoordhuis: gzmask: no, try this: `gdb --args node xxx.js` [20:28] bnoordhuis: gzmask: then `r` for run and then `bt` after the crash [20:30] bnoordhuis: gzmask: and (preferably) replace node with node_g, the latter one has debug symbols compiled in [20:30] mcluskydodallas has joined the channel [20:30] isaacs: SubStack: i have a completely different approach. [20:30] gzmask: bnoordhuis: hmmm... it stops there again but not a crash. looks like a racing condition or it hangs [20:30] isaacs: SubStack: (re: issues and their closing) [20:30] SubStack: I should go through and clean them all out I guess [20:30] hij1nx has joined the channel [20:31] bnoordhuis: gzmask: 'there' is where? [20:31] isaacs: SubStack: for bug reports, i close the issue when i begin investigating it. the user who opened it can reply, and i'll get the email either way, but no need to clutter up the view. [20:31] isaacs: SubStack: for feature requests, i do "Close #1256 Do the bladeebloo whatsis" [20:31] gzmask: https://github.com/gzmask/nodejs_dlib_binding/blob/bayesian_binding/bayes_net.cpp Line 42 [20:31] isaacs: in the commit message. [20:32] gzmask: bnoordhuis: that function got called by libeio [20:33] bnoordhuis: gzmask: it hangs on the cout? that's unlikely [20:34] gzmask: bnoordhuis: I know, but it does. I comment out the code line by line and it hangs right there. almost feels like a unhandled overflow [20:35] gzmask: bnoordhuis: and I separate the code from nodejs/libeio and it works like a charm [20:35] bnoordhuis: gzmask: can i clone your repo as-is and run the test(s)? [20:36] coleGillespie: anyone know any good "object systems" for javascript? [20:36] coleGillespie: by that I mean... 3rd party libs that help you define classes/objects... and that help with serializing to/from json and sending to/from server... ideally with object code re-usable in nodejs on the server-side? [20:36] gzmask: bnoordhuis: go ahead. sh server_start.sh does everything [20:36] nibblebot has joined the channel [20:37] bnoordhuis: gzmask: this is bad: ../bayes_net.cpp:647: warning: address of local variable �aCString� returned [20:37] kohai: @Rocky1138: Build node.js apps in Netbeans: http://t.co/eQlAsUg (link: /) [20:38] tahu has joined the channel [20:38] sharkbird has joined the channel [20:38] gzmask: bnoordhuis: for security reasons? [20:38] kohai: @andrisreinman: Published #nodejs module to manage EPUB files (load chapters, images etc from EPUB e-books) http://t.co/XTUGWm0 (link: https://github.com/andris9/epub) [20:38] kohai: @amichaelwinter: What does Node.js mean to JEE developers? (http://t.co/Mao7EfX) #nodejs #jee (link: http://webcache.googleusercontent.com/search?q=cache:0xyMcR_ofM0J:blog.shinetech.com/%3Fp%3D394+Node.js+From+the+Enterprise+Java+Perspective+(&hl=en&strip=1) [20:38] xerox: whoa [20:38] xerox: andriserinman++ [20:38] v8bot: xerox has given a beer to andriserinman. andriserinman now has 1 beers. [20:39] bnoordhuis: gzmask: for correctness reasons - that char array is only valid inside bayesian_test() [20:39] CIA-92: node: 03Trevor Burnham 07v0.4 * rf468116 10/ doc/api/modules.markdown : Documenting `require.main`, fixing #997 - http://bit.ly/mQ5PcK [20:39] baoist has joined the channel [20:40] devinus has joined the channel [20:40] alessio_alex has joined the channel [20:40] alessio_alex: Hello [20:40] devinus: does anybody know if this is maintianed anywhere: http://code.google.com/p/crypto-js/ ? [20:40] gzmask: bnoordhuis: what's the proper way to return a string then? [20:40] alessio_alex: Should I keep the connection with the database alive all the time in my node web application? [20:40] sechrist has joined the channel [20:40] alessio_alex: Or should I connect, disconnect with each page visit? [20:41] tracker1 has joined the channel [20:41] Cover|work: devinus: its last change was only a month ago [20:41] bnoordhuis: gzmask: depends on your use case - either the caller should pass in a buffer or you return a heap-allocated buffer that the caller should free [20:41] Cover|work: how is that not "maintained" [20:42] gzmask: bnoordhuis: gotcha. [20:42] alessio_alex: guys? [20:42] sharkbone: node.js:134 [20:42] sharkbone: throw e; // process.nextTick error, or 'error' event on first tick [20:42] sharkbone: ^ [20:42] sharkbone: Error: Cannot find module 'socket.js' [20:42] sharkbone: at Function._resolveFilename (module.js:322:11) [20:42] sharkbone: at Function._load (module.js:267:25) [20:42] sharkbone: at require (module.js:351:19) [20:42] sharkbone: at Object. (/home/maintenance/Desktop/SocketReaderServer/socketReaderserver.js:4:7) [20:42] sharkbone: at Module._compile (module.js:407:26) [20:42] sharkbone: at Object..js (module.js:413:10) [20:42] sharkbone: at Module.load (module.js:339:31) [20:42] sharkbone: at Function._load (module.js:298:12) [20:42] sharkbone: at Array. (module.js:426:10) [20:42] Cover|work: ack! [20:42] sharkbone: at EventEmitter._tickCallback (node.js:126:26) [20:42] Cover|work: pastebin that shit [20:42] sharkbone: ok [20:42] guest42343 has joined the channel [20:42] sharkbone: sorry [20:43] alessio_alex: Should I keep the connection with the database alive all the time in my node web application or should I connect, disconnect with each page visit? [20:43] sharkbone: i was frustrated man [20:43] alessio_alex: What's the best way to handle this? [20:43] dall has joined the channel [20:43] dall: hello guys! how is it going ? [20:43] topaxi has joined the channel [20:43] Cover|work: mazel tov [20:44] bnoordhuis: alessio_alex: the problem with keep-alive connections is that you need to check them for staleness - reconnect-per-request is simpler but slower [20:44] dall: Guys, I had an insane "idea".... [20:44] alessio_alex: thank you bnoordhuis [20:44] bnoordhuis: alessio_alex: 'simpler but slower' - depends on the database. mysql's connect sequence is pretty fast, for instance [20:44] shafire: which webframework do you use? [20:45] dall: replace my apache+php and use nodejs [20:45] dall: crazy? [20:45] Vertice: then there's stuff like this - https://github.com/Kijewski/node-mysql-pool (which i have not used) [20:45] dall: (for small project)...i could write a simple framework [20:45] Cover|work: dall: not crazy at all [20:45] alessio_alex: I am building my own web framework on top of Express.js [20:45] chrischris has left the channel [20:45] alessio_alex: Just asking myself what's the best way to deal with this database stuff [20:45] Cover|work: in fact it would be faster, scale better, and you would be using a real language instead of embedded html crap [20:45] dall: good [20:46] riven has joined the channel [20:46] riven has joined the channel [20:46] kuya has joined the channel [20:46] sharkbone: http://codepad.org/ECGc1UKu [20:46] sharkbone: can anyone explain this? [20:46] __jgr has joined the channel [20:47] mertimor has joined the channel [20:47] sharkbone: pls [20:47] alessio_alex: dall by the way [20:47] alessio_alex: if you are making PHP apps in the future [20:47] alessio_alex: use Nginx as a server [20:47] alessio_alex: it's faster, async .. like Node.js [20:47] alessio_alex: scales better [20:47] alessio_alex: Apache is slower :) [20:48] Vertice: something like 75% of the cpu time in my previous php projects was just spent starting up [20:48] Vertice: including everything [20:48] iammerrick: alessio_alex: Do you have docs on that? [20:48] Vertice: etc. [20:48] Vertice: on every request [20:48] devdazed has joined the channel [20:48] iammerrick: alessio_alex: I believe you but am far more experienced with Apache, used Nginx for a single project using fastcgi but couldn't tell much of a difference in our profiling [20:49] alessio_alex: iammerrick I have seen some presentations about Node, Apache and Nginx [20:49] dall: alessio_alex, yes i wrote wrong.... at the moment i'm using nginx and php-fpm [20:49] alessio_alex: the benchmarks showed that Nginx performs better [20:49] hassox has joined the channel [20:49] iammerrick: php-fpm as well [20:49] alessio_alex: when building a small app, it doesn't matter that much tough [20:49] dall: nginx is better then apache [20:49] context: sharkbone: socket.io ? [20:50] sharkbone: yeah [20:50] context: "socket.io" != "socket.js" [20:50] bnoordhuis: dall: i've worked on both nginx and apache - you should back up that claim :) [20:50] indexzero has joined the channel [20:50] dall: yeah php-fpm is very good...something have problems but are not to bad [20:50] context: two characters there are way off. [20:50] hkjels_: req.route.path is defined when I run express-server on localhost, but not if I use dyndns. Any ideas why or how to fix this? [20:50] dall: bnoordhuis, ?? apache+cgi is better then nginx php-fpm? [20:50] kohai: @grava: Node.Js Using Mustache.Js For Templating http://zite.to/kqhUOV via @Ziteapp (link: http://blogs.lessthandot.com/index.php/WebDev/UIDevelopment/Javascript/node-js-using-mustache-js) [20:51] sharkbone: oh ok [20:51] sharkbone: @context two characters [20:51] sharkbone: ? [20:52] bnoordhuis: dall: 'better' covers a lot [20:52] mauritslamers_: context: Cover|work: I found that actually the process itself is running, but somehow stalled.... [20:52] dall: bnoordhuis, i've seen nginx is faster......and it has a very very small footprint [20:52] mauritslamers_: when I kill the process, the callbacks fire [20:52] tjholowaychuk: hkjels_ it was added in a pretty recent version [20:52] tjholowaychuk: maybe you didnt update [20:52] tjholowaychuk: or something [20:53] tjholowaychuk: check require('express').version [20:53] dall: use less memory and CPU then apache [20:53] hkjels_: 2.3.10 [20:54] bnoordhuis: dall: let me reply with a HN comment from a while back: http://news.ycombinator.com/item?id=2301424 [20:54] hkjels_: ohh, sorry [20:54] hkjels_: different versions [20:54] jetienne: tjholowaychuk: someone told me the dom is throwing an event at the end of css animation. in move.js you use a setTimeout timer, did you get any trouble with normal events ? [20:54] hkjels_: thank you tjholowaychuk [20:54] tbranyen: webkitTransitionEnd or something [20:55] mikeal has joined the channel [20:55] ben_alman: is there a tool for facilitating package.json creation? [20:55] tbranyen: vim [20:55] tjholowaychuk: jetienne hmm I wasn't aware of that event [20:55] tjholowaychuk: feel free to create an issue [20:55] mauritslamers_: Anyone knows perhaps why a process started with spawn from a http request seems to freeze/pause when the client disconnects? [20:55] ben_alman: tbranyen, d-bag [20:55] SubStack: ben_alman: npm init [20:55] sourcode has joined the channel [20:55] tbranyen: :3 [20:55] jetienne: tjholowaychuk: ok [20:55] voodootikigod: ben_alman: tbranyen meant to say emacs [20:55] ben_alman: lol [20:56] sharkbone: @context i did this io = require('./socket.io.js'); but still didnt work [20:56] donaldpcook has joined the channel [20:56] matyr has joined the channel [20:56] bnoordhuis: gzmask: Local::New(Null()) <- you don't need to wrap it in a new Value, Null() is a singleton [20:57] context: sharkbone: "socket.io" [20:57] context: stop adding .js to everything. [20:57] Ian_Corne: 4 io = require('socket.io'), [20:57] context: NO .js [20:57] Ian_Corne: beat me to it context [20:57] dall: bnoordhuis, read [20:58] context: 15:50 context| "socket.io" != "socket.js" [20:58] context: i didn't put a .js in there ;) [20:58] dall: i'm not saying that nginx is better then apache...but it has more modules, the configuration is easiers etc etc [20:58] kohai: @maraksquires: The open-source gangster advice animal - http://t.co/u1MC0Yu #nodejs @github #javascript #rubyonrails (link: http://imgur.com/a/ElWgw) [20:58] dall: i like nginx...it think it is highly configurable [20:58] dall: it's very simple. [20:59] gzmask: bnoordhuis: so I just make it argv[0] = Null(); ? [20:59] dall: btw depends on the project [20:59] context: dall: its ok you can say it. nginx IS better than apache :p [20:59] kohai: @mikekidder: @indutny - need 2 update your twitter profile URL if you're going to be a #nodejs #rockstar ;) [20:59] bnoordhuis: gzmask: correct, or Undefined() [20:59] dall: youtube uses lighttpd [20:59] bnoordhuis: dall: nginx is good for some things, apache for others [21:00] tbranyen: lighttpd blows [21:00] bnoordhuis: lighttpd however... [21:00] dall: sure [21:00] tbranyen: i'm using it on my server [21:00] AvianFlu has joined the channel [21:00] tbranyen: can't wait to switch over to nginx [21:00] dall: i use lighttpd.........never more!!! [21:00] dall: *used [21:00] tbranyen: nginx by far has the most minimalist configuration [21:01] dall: tbranyen, yes, i like it....very simple [21:01] context: i never had problems with lightty [21:01] adambeynon has joined the channel [21:02] postwait: they all work.. most people don't know how to run benchmarks... rarely is the webserver the issue. [21:02] systemfault: Question.. is the style guidelines on nodeguide.com the official [21:02] postwait: it's usually either the config -- or the code behind it (app) [21:02] dall: btw the next will be NODEEE :-p [21:02] tbranyen: context: i dunno i was setting up some passenger ruby bs for a friend and lighttpd was not my friend then [21:02] jetienne: tjholowaychuk: well i dont even succeed to catch this event once... so setTimeout seems good :) [21:02] tbranyen: postwait: well i'm sure if you know a webserver in and out you can make it performant [21:02] tjholowaychuk: jetienne weird! [21:02] tbranyen: but out of the box [21:03] postwait: tbranyen: most of them, yes [21:03] indexzero has joined the channel [21:03] tbranyen: rubyist can argue all day that you can write highly concurrent applications, but whats the overhead of writing something concurrent in ruby over node? i feel the same argument can be applied to web server performance [21:03] jetienne: tjholowaychuk: it may very well be me missing something [21:04] tbranyen: if i use apache out of the box its definitely going to be using more memory to handle hundreds of connections than nginx will [21:04] postwait: out of the box, almost all of them will die with < 100k concurrent HTTP sessions. [21:04] postwait: piddly. [21:04] samsonjs has joined the channel [21:04] postwait: tbranyen: a bit.. eventer MPM is pretty tight. [21:04] bitwise: is there a way to find out more about a native module? like fs [21:04] tbranyen: bitwise: read the source? [21:04] tbranyen: fs module is pretty easy to read [21:05] tbranyen: good information on buffers in there [21:06] CrisO has joined the channel [21:06] bitwise: ok and the easiest way to do that is just browsing /usr/local/lib/node? [21:07] CrisO has left the channel [21:07] Skola: Calvin Calvin [21:10] niklasfi has joined the channel [21:11] bnoordhuis: bitwise: clone the source from https://github.com/joyent/node [21:12] softdrink has joined the channel [21:12] Waha has joined the channel [21:12] bitwise: cool. thx bnoordhuis [21:12] mikey_p has left the channel [21:13] mikey_p has joined the channel [21:13] bitwise: is there a way to list out make targets? similar to ant - [21:13] bitwise: err, ant -p [21:13] coleGillespie: anyone seen this? http://substack.net/images/npmdep/npm-fdp.png [21:14] coleGillespie: it is a list of node module dependencies [21:14] coleGillespie: shown in a graphical way [21:14] coleGillespie: shows you who is relying on what [21:14] bnoordhuis: bitwise: `apt-get install bash-completion` :) [21:14] tbranyen: coleGillespie: wonder how long it took to generate that [21:15] coleGillespie: i dunno substack is a smart dude [21:15] coleGillespie: probably not to long [21:15] Marak_ has joined the channel [21:15] coleGillespie: he probably has some crazy script [21:15] Marak_: yo ryah http://imgur.com/a/ElWgw [21:15] dall: out of curiosity when nodejs was born? [21:15] tbranyen: coleGillespie: well intelligence doesn't make your system run faster [21:15] Marak_: the "open-source gangster" advice animal, http://imgur.com/a/ElWgw [21:16] tbranyen: joose is depended on way more than i thought damn [21:16] charleyd has joined the channel [21:16] coleGillespie: ya [21:16] rope has joined the channel [21:16] a0n has joined the channel [21:16] coleGillespie: pretty cool eh? [21:16] matyr_ has joined the channel [21:17] coleGillespie: not many alternatives to joose [21:17] kohai: @HNTweets: Node.js From the Enterprise Java Perspective: http://bit.ly/mmC7uQ Comments: http://bit.ly/my9j4e (link: http://blog.shinetech.com/?p=394) [21:17] rauchg_ has joined the channel [21:18] telemachus: dall: 2009 I think [21:18] coleGillespie: tbranyen: you work with rwaldron? [21:18] tbranyen: coleGillespie: i do [21:18] coleGillespie: #bocoup [21:18] jerrysv: too many pictures of marak! [21:18] coleGillespie: i met him through the popcorn.js project. cool dude. [21:18] dall: k [21:19] tbranyen: coleGillespie: yeah sits in front of me, recovering from txjs today tho [21:19] hassox has joined the channel [21:19] eldar has joined the channel [21:19] kohai: @wbyoung: @cgiffard I think a lot of people would find the node.js stuff really useful. Lots of people know JS better than AppleScript. :) [21:19] kohai: @obazoud: Creating a "service status dashboard" with #nodejs and #socketio [21:19] voodootikigod: haha sorry about that tbranyen [21:19] tbranyen: voodootikigod: :-p [21:20] tbranyen: so wish i went to that [21:20] coleGillespie: voodootikigod tbranyen i wish i could get a group like bocoup to pay for my jsConf trips [21:20] coleGillespie: lol [21:20] devrim has joined the channel [21:20] bitwise: how does one install waf? [21:20] tbranyen: ha, yeah conferences are expensive :-/ good incentive to get into a company that can compensate [21:21] voodootikigod: coleGillespie: start a company, make profit... fin! [21:21] postwait: tbranyen: not surge! [21:21] tbranyen: bitwise: easy_install wafadmin i think [21:21] postwait: http://omniti.com/surge/2011 [21:21] postwait: cheap... for us engineers. [21:21] dall: guys i have to go, see you soon, have a great day! bye [21:21] postwait: awesome line up... [21:22] postwait: Node.js talks by Bryan Cantrill et.al. ... and the hack day *might* be a Node.js hack day [21:22] bnoordhuis: bitwise: you don't have to, it's bundled with node [21:23] Determinist has joined the channel [21:23] tanepiper has joined the channel [21:24] bitwise: got it thx [21:24] hassox has joined the channel [21:25] bitwise: had to run ./tools/waf-light configure then make [21:26] kmiyashiro has joined the channel [21:27] kohai: @obazoud: "service status dashboard" is available @Nodester statusdashboard.nodester.com #nodejs #socketio #nodester [21:27] KingJamool has joined the channel [21:29] jscheel: indexzero: ping [21:29] baoist has joined the channel [21:29] freeformz has joined the channel [21:30] beta_ has joined the channel [21:30] _jgr has joined the channel [21:31] softdrink has joined the channel [21:33] eyesUnclouded has joined the channel [21:34] hkjels_: is there an editor that is good at handling large json files? [21:35] hkjels_: using emacs is quick, but options for reformatting is rather manual laybor [21:36] markwubben has joined the channel [21:36] radicality has joined the channel [21:38] kohai: @kyleashipley: Official Heroku tutorial for Node.js on the new Foreman/Procfile architecture: http://t.co/VQMxSWQ (link: http://devcenter.heroku.com/articles/node-js) [21:38] kohai: @instaright: nowjs for Node - Directly call remote functions in Javascri... http://bit.ly/isNX6A #javascript #nodejs #node.js (link: http://links.instaright.com/a947824b599193b3/?web=058421&dst=http://nowjs.com/) [21:39] gtramont1na has joined the channel [21:40] incon: video recorded of the sessions at nodecamp? [21:40] Determinist: can a socket.io client close a connection? no docs on this one [21:41] Determinist: server side client, that is... the connection object you get from the on('connection') handler [21:42] sharkbone: ok [21:43] kohai: @chrisjpowers: Wait, Heroku's Cedar stack with Node.js doesn't support the WebSocket protocol yet? Anxiously awaiting an invite from @nodejitsu! [21:44] mcluskydodallas has joined the channel [21:44] bbguitar has joined the channel [21:44] kohai: @martinhaynes: building another virtual linux box for another idea and to play with #NodeJS and other tech [21:45] kohai: @obazoud: Mise en production du "service status dashboard": git push nodester master bref 2s max!! #nodester #nodejs [21:45] Fodi69 has joined the channel [21:46] bbguitar has joined the channel [21:47] Fodi69: hi, i can't get working the socket.io emit() functionality, I can use it perfectly with messages and send, but not with emits, has anyone had this issue before? [21:47] coyo has joined the channel [21:48] bbguitar has left the channel [21:48] hij1nx has joined the channel [21:49] Calvin has joined the channel [21:52] bergie has joined the channel [21:52] X-Scale has joined the channel [21:53] stepheneb has joined the channel [21:53] kohai: @shuckle: Picked up a Node.js ebook from that O'Really special offer. Should really write reviews of some of the books I've read of late. [21:56] coyo has joined the channel [21:57] kohai: @devseo: YUI Theater — Dav Glass: “YUI 3 and Node.js (Not Just For Web Pages) ” (51 min.) - http://bit.ly/kTLkMH (link: http://www.yuiblog.com/blog/2011/06/09/video-f2esummit2011-glass/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+YahooUserInterfaceBlog+%28Yahoo%21+User+Interface+Blog%29) [21:59] Luke_ has joined the channel [21:59] kohai: @killerspaz: Listening 2 @simBateman speak about Node.js great mind dump http://bit.ly/lox2pc (Put Some JS in your Backend) #node | New info w/refresher (link: http://zaa.tv/2011/06/360flex-denver-2011-put-some-javascript-in-your-backend/) [21:59] kohai: @andreos198: http://t.co/OChvQZ3 #nodejs #socketio #dev tá ficando bom =) (link: http://snake.nodester.com/) [22:00] levi501d has joined the channel [22:00] Wizek: The thing Fodi69 asked would also interest me. [22:01] kohai: @HeyStaks_Public: "LaTeX and the euro currency symbol" voted down in #Nodejs #HSpub http://bit.ly/khexDt (link: http://www.cs.vu.nl/~jms/latexeuro.html) [22:06] jerrysv: not sure what the latex euro symbol has to do with nodejs [22:06] kohai: @dathanvp: #erlang #rabbitMQ #amqp #nodejs #jquery #ec2 == fast fault tolerant realtime event based feed of data with #mysql5.5 persistence [22:09] davidbanham has joined the channel [22:11] stepheneb has joined the channel [22:11] rauchg has joined the channel [22:17] boogyman has joined the channel [22:19] dividinglimits has joined the channel [22:20] stagas has joined the channel [22:20] a0n has joined the channel [22:21] hassox has joined the channel [22:21] jakeg has joined the channel [22:22] luke` has joined the channel [22:25] tim_smart has joined the channel [22:27] kohai: @meitham: Why would any sane pythonista use Node.JS when twisted is pythonic. [22:27] kohai: @carpeliam: holy crap, I'm working on a Node.js app. http://bit.ly/mhZXKA (link: http://www.carpeliam.com/articles/77) [22:27] carpeliam: holy crap, i didn't realize that bot talks to the channel any time you tweet about node. [22:28] erictj has joined the channel [22:28] xerox: :D [22:28] jakeg: carpeliam: yeah, and it's bloody quick too. earlier I twatted, I ctrl+alt'd, my tweet was here [22:29] xerox: carpeliam: I am glad it did [22:29] xerox: twatted haha [22:29] Cover|work: i think it's using twitter streaming api [22:29] tmpvar has joined the channel [22:29] xerox: ACTION nods [22:29] kohai: @nicholefoss: Official Node.js Job Board Pops Onto the Web http://t.co/NHDNTSO (link: http://mashable.com/2011/03/23/node-job-board/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+Mashable+%28Mashable%29) [22:29] markc has joined the channel [22:30] jakeg: does 'kohai' mean something? i got very confused first time in here thinking it was a real person [22:30] Marak has joined the channel [22:31] Cover|work: you know what sucks is that most node knockout peeps took their sites down quickly after [22:31] Cover|work: lots of rails rumble sites are still up [22:32] insin: ACTION wonders who jakeg twatted [22:32] Dinosaurus has joined the channel [22:32] riven has joined the channel [22:32] Dinosaurus: you can get device ip in nodejs? [22:32] pt_tr has joined the channel [22:33] Dinosaurus: *can you [22:34] tim_smart: Dinosaurus: request.socket.remoteAddress I think [22:35] Dinosaurus: i'm not running a http server tim_smart [22:35] Dinosaurus: is that what you imply? [22:35] tim_smart: Dinosaurus: Either way, tcp_stream.remoteAddress [22:35] matyr has joined the channel [22:36] michaelhartau has joined the channel [22:36] tim_smart: Or you want to find the IP of the host? [22:36] Dinosaurus: 1 min [22:36] liar has joined the channel [22:37] kohai: @m4r00p: in middle of discussion with @lmilewski about #nodejs. Hopefully he lets me publish it... :) [22:38] jerrysv: dinosaurus: a host can have more than one ip -- are you looking for the default outbound ip? [22:38] Dinosaurus: a device can only have 1 ip right [22:38] Dinosaurus: 1 min [22:38] Dinosaurus: i am using [22:38] Dinosaurus: node_pcap [22:38] jerrysv: dinosaurus: i dunno, my server has 256 ip's [22:38] Dinosaurus: you can get src and destination from the tcp packets [22:39] Dinosaurus: but i want to find the device ip that it listens on [22:39] Dinosaurus: so that i can determine which is inbound and which is outboudn [22:39] jscheel_ has joined the channel [22:39] jscheel_ has joined the channel [22:40] Dinosaurus: i may just need to look the api [22:40] Dinosaurus: sry bad english [22:40] criswell has joined the channel [22:41] jerrysv: dinosaurus: it looks like node pcap tells you the ip address of each interface? http://howtonode.org/capturing-packets-in-javascript [22:41] jerrysv: dinosaurus: a machine can have any number of interfaces, each interface can have one ip address [22:41] Dinosaurus: devicename is like wlan0 [22:41] Dinosaurus: not the ip [22:41] Dinosaurus: packet.link.ip.saddr [22:41] Dinosaurus: is from the packet [22:41] Dinosaurus: can't tell which is in and which is out [22:41] jerrysv: dinosaurus: so wlan0 can have 10.1.1.1 and wlan0:1 can have 10.1.1.2, and wlan0:2 can have 10.1.1.3, etc [22:42] Dinosaurus: right [22:42] Dinosaurus: so instead of doing regex on the tcp data, i want to get device ip :X [22:42] jerrysv: it looks like, from the output of node_pcap, according to the link i just sent, that it is telling you what ip's are bound to each interface [22:42] Dinosaurus: ? [22:43] jerrysv: http://howtonode.org/capturing-packets-in-javascript [22:43] Dinosaurus: packet.link.ip.tcp.etc? [22:43] Fodi69: hi, i can't get working the socket.io emit() functionality, I can use it perfectly with messages and send, but not with emits, has anyone had this issue before? [22:43] jerrysv: yes [22:43] Dinosaurus: this has source and destination addresses, but it is indeterminate which is the local device [22:44] kohai: @MaartenJJ: @jakeg82 Nice to meet you too today. We can always talk node.js online, because I'm back in Belgium for a while saturday, sadly. [22:45] jerrysv: dinosaurus: the local device may not be the final destination for these packets [22:45] jensn has joined the channel [22:45] DTrejo has joined the channel [22:46] Dinosaurus: right, but in this case they are [22:46] Dinosaurus: if i can get the device ip before capturing the packets, then you can compare to see which is passing through [22:46] jerrysv: dinosaurus: did you take a look at the examples? [22:46] jerrysv: https://github.com/mranney/node_pcap/blob/master/examples/simple_capture [22:46] jerrysv: https://github.com/mranney/node_pcap/blob/master/examples/simple_capture#L28 [22:46] jerrysv: specifically [22:47] Dinosaurus: this looks useful [22:47] xeodox has joined the channel [22:47] jerrysv: good good :) [22:48] xeodox: app.get('/account/prep', account_controller.prep(req,res)); .... does anyone know why this gets "ReferenceError: req is not defined." ? [22:48] Dinosaurus: except i want to do like pcap_session.device.addr :P [22:48] gtramont1na has joined the channel [22:48] xeodox: Before, everything was working, but I moved the function to another file. [22:48] xeodox: And exported it out [22:49] jerrysv: dinosaurus: the problem is that you're not guaranteed to only have one ip [22:49] jerrysv: so, you'll need a filter list [22:49] jerrysv: that should be enough to construct one [22:49] Dinosaurus: the session is created for a device [22:49] Dinosaurus: ala pcap_session = pcap.createSession("", "tcp and (src port 4000 or dst port 4000)"); [22:49] Dinosaurus: "" means default device [22:50] jerrysv: then they should all have a length on 1 [22:50] jerrysv: er, of 1 [22:50] Dinosaurus: which should have a length of 1? [22:51] Luke_: @xedox You are invoking the .prep function inline, not passing it as a reference [22:51] xeodox: Luke_: what do I have to do to call that function then? [22:51] bitwise: any working textmate bundles for node? [22:52] jerrysv: dinosaurus: dev.addresses [22:52] X-Scale: I asked this on the javascript channel and I didn't get many positive oppinions. Let me try here :-) -->> Am I grasping it the wrong way, or Server-Side JavaScript seems to be *the next big thing* ? [22:52] jerrysv: x-scale: server-side javascript has been around forever. the event loop is the awesome part. [22:53] Sorella has joined the channel [22:53] AvianFlu has joined the channel [22:53] Luke_: Wrap it in an anonymous function - app.get('/account/prep', function(req, res) { account_controller.prep(req, res); }); [22:53] Dinosaurus: nono jerrysv: it picks the default device, but findAllDevices still looks for all devices :) [22:53] X-Scale: ah [22:53] Dinosaurus: although dun dun dun [22:53] Dinosaurus: the default device is chosen as the first in the list :D [22:53] Dinosaurus: thanks man [22:53] jerrysv: np :) [22:54] kohai: @Nodester: Yay! @JuniperSecurity is our 1000th follower! You win a free node.js hosting coupon :) DM us your email address... [22:54] xeodox: Luke_: thanks! [22:54] Luke_: @X-Scale - the fact JS has become so ubiquitous elsewhere (AJAX, JSON, document databases, mobile apps etc) has given new impetus to serverside JS [22:54] eee_c has joined the channel [22:54] spaceinv1der: arent node.js coupons free anyway [22:55] jerrysv: node.js coupons? [22:55] joshthecoder has joined the channel [22:55] spaceinv1der: 23:54 < kohai> @Nodester: Yay! @JuniperSecurity is our 1000th follower! You win a free node.js hosting coupon :) DM us your email address... [22:55] kohai: @NodeJSAtSO: Node.js https.request with keep-alive header http://bit.ly/kis07j (link: http://stackoverflow.com/questions/6337328/node-js-https-request-with-keep-alive-header?utm_medium=twitter&utm_source=twitterfeed) [22:55] jerrysv: like 50% off node.js ? [22:55] halfhalo: its like free money! [22:55] spaceinv1der: perhaps nodester is different [22:55] jerrysv: aha, nodester [22:55] spaceinv1der: but i got a free joyent no.de one [22:55] jerrysv: nodester has given a lot of them away [22:56] matyr_ has joined the channel [22:56] baoist has joined the channel [22:56] kohai: @streampunks: A real critique of node.js or just flaming? http://bit.ly/lAjqzr Probably a healthy to read it either way. (link: http://blog.ankurgoyal.com/post/6433642218/node-js-is-backwards) [22:57] Luke_: /nick developerluke [22:58] Luke_: Doh [22:58] charleyd has joined the channel [22:59] jmoyers: wow [22:59] jmoyers: that blog was the first non-dumbass critique i've seen [22:59] jmoyers: on the entire internet [23:00] kohai: @HNTweets: Node.js is Backwards: http://bit.ly/jhiwmH Comments: http://bit.ly/lwZ5pd (link: http://blog.ankurgoyal.com/post/6433642218/node-js-is-backwards) [23:00] jmoyers: sensational title is sensational [23:00] jmoyers: though [23:00] riven has joined the channel [23:00] riven has joined the channel [23:02] SubStack: more uninformed people sharing their uninformation with the rest of the world [23:03] SubStack: the fact that node doesn't have a built-in concurrency "solution" is a good thing [23:03] SubStack: it means module authors are free to compete to build the best one [23:03] SubStack: and it means a lot of different approaches can be tested across lots of niches [23:04] xandrews has joined the channel [23:04] SubStack: if you have a nice module system and a nice package manager then people can build whatever the fuck on top of it [23:05] jmoyers: SubStack i think thats not entirely true [23:05] jmoyers: it comes up so often [23:05] jmoyers: IPC/multi-core is a big thing [23:05] NuckingFuts has joined the channel [23:05] jmoyers: it seems like something that belongs in core to me [23:06] developerluke has joined the channel [23:06] jerrysv: jmoyers: isn't that being built into v8 anyways? [23:06] kevwil has joined the channel [23:06] jmoyers: i have no idea [23:07] jmoyers: but it comes up constantly [23:07] jmoyers: on the mailing list etc [23:07] jerrysv: yeah. trying to remember the name of it in v8 [23:07] jerrysv: was looking though my open tabs [23:07] jmoyers: i mean userland has attempted it, with tj's cluster, multi node and such [23:07] jmoyers: i think those are good [23:07] [[zzz]] has joined the channel [23:07] jmoyers: but a node primitive wouldn't be a bad idea [23:07] jmoyers: i think people don't quite know what the right solution is [23:07] SubStack: disagree [23:07] jerrysv: isolates api [23:07] jmoyers: they know what they DONT want, ie, mutable shared memory [23:07] SubStack: because there is no "right" solution [23:08] SubStack: if there is no "right" solution that shit belongs in user space [23:08] jmoyers: there is though [23:08] SubStack: core should only have enough to build a package manager [23:09] kohai: @coda: Why comparing Node.js and Erlang is misleading: http://bit.ly/iQWGSR (link: http://blog.ankurgoyal.com/post/6433642218/node-js-is-backwards) [23:09] jerrysv: the isolates api allows for multiple v8 instances in the same process [23:10] jerrysv: dunno if it is still a single loop with better isolation, or if it is threadsafe, though [23:10] jmoyers: SubStack i dont think his article was full of 'uninformation' though, regardless of what our core module philosophy is [23:10] jmoyers: he was comparing erlang actors and concurency story with nodes [23:10] jmoyers: or nodes lack thereof, which is valid [23:11] SubStack: jmoyers: he mentions at the end that he's not part of either community [23:11] jmoyers: and might be a design choice, but its one that deserves scrutiny [23:11] jmoyers: i think he's pointing out that he's at least _attempting_ impartiality [23:11] jmoyers: which might be horseshit [23:11] CIA-92: node: 03isaacs 07master * r9967c36 10/ (10 files in 5 dirs): [23:11] CIA-92: node: AMD compatibility for node, with docs and tests [23:11] CIA-92: node: Closes #1173 [23:11] CIA-92: node: Closes #1170 - http://bit.ly/mbTlFa [23:12] SubStack: it seems like something somebody would write who only reads about this stuff and doesn't actually build anything with either one [23:12] SubStack: you can't just reason about this stuff, you've got to actually go out and test your hypotheses [23:12] isaacs: SubStack: i'm gonna write a response on why comparing Go and Python is misleading [23:12] SubStack: hahah [23:13] isaacs: whatevs. it's just programming, right? [23:13] SubStack: yarly [23:13] ryanfitz has joined the channel [23:13] jmoyers: i dont know [23:13] jmoyers: i dont think he meant he doesn't use erlang [23:13] isaacs: speaking of which, amd, woot. [23:13] jmoyers: he seems rather familiar with it ;-) [23:13] isaacs: done finally. [23:13] jmoyers: congrats! [23:13] SubStack: complaining that node doesn't have actors in core seems isometric to complaining that javascript doesn't have classes [23:14] Marak: jmoyers: you talking about multinode distributed io architecture? [23:14] jmoyers: haha [23:14] jmoyers: yes indeed [23:14] Marak: jmoyers: http://github.com/marak/hook.io [23:14] SubStack: ^^ this [23:14] Marak: problem "solved" [23:14] jmoyers: dude, i dont think he's complaining [23:14] Marak: hook.io is a distributed node.js EventEmitter that works cross-process / cross-platform / cross-browser. You create custom i/o scenarios by picking and choosing from an extensive library of tiny, independent, autonomous "hooks" that seamlessly work together. [23:14] jmoyers: he's like, fanboying for erlang [23:14] jmoyers: which is fine [23:14] softdrink has joined the channel [23:15] eb4890 has joined the channel [23:15] descipher_ has joined the channel [23:15] isaacs: erlang IS kinda awesome in some ways [23:15] jmoyers: they made some interesting and hardcore design decisions [23:15] softdrink has joined the channel [23:15] Marak: isaacs: pquerna says i am going very erlang like with the hook.io [23:15] jmoyers: clearly node is different [23:16] isaacs: Marak: yeah, kinda [23:16] Marak: isaacs: going to add persistance to each hook with nconf, then get global state of i/o [23:16] beta_ has joined the channel [23:16] Marak: isaacs: no central persistance [23:16] Marak: global state of i/o tree* [23:16] Marak: each node combines together to create state [23:16] Marak: or you get state of node [23:16] Marak: or its children, etc [23:17] jmoyers: anyway, most nodejs shit talkers and people who dont know shit about shit [23:17] Prism has joined the channel [23:17] jmoyers: i was just surprised [23:17] Marak: jmoyers: I'm still working on trying to know shit. [23:17] jmoyers: *are [23:17] jmoyers: knowing shit is like... [23:17] jmoyers: a lifelong journey and.. shit :-) [23:19] kohai: @v3ronique: Sitting on a #NodeJS session. I don't know people. Flash has been doing this for years on all browsers. [23:19] jmoyers: hahaha [23:19] jmoyers: see what i mean? [23:19] jmoyers: people who dont know shit about shit [23:19] jerrysv: hahahahaha [23:19] jerrysv: silverlight: the next node.js ? [23:19] jmoyers: i know [23:19] jmoyers: we should build a vm based on flash [23:19] jmoyers: that runs on the server [23:19] jmoyers: AS IN THE CLOUD [23:20] materialdesigner has joined the channel [23:20] jerrysv: require('vm'); require('flash'); [23:20] jerrysv: done [23:22] fljitovak has joined the channel [23:23] kohai: @dscape: Good article on node.js vs. erlang. Refreshing seeing someone take a different take on this. "NODE.JS IS BACKWARDS" at http://t.co/pcJBhhN (link: http://blog.ankurgoyal.com/post/6433642218/node-js-is-backwards) [23:23] nash has joined the channel [23:23] jerrysv: marak: is it possible to put a cap on the number of times kohai reposts the same link, just in case something goes viral? [23:25] kohai: @redhotpenguin: @codeslinger thanks for that link, I've been looking at some node.js code recently. [23:25] Astro: hi [23:25] Astro: can anyone tell me the proper podcast feed url for nodetuts.com? [23:26] Astro: http://feeds.feedburner.com/NodeTuts does not have enclosures [23:26] AvianFlu has joined the channel [23:27] KingJamool has joined the channel [23:27] Dinosaurus: will you stimulate my butt [23:27] Dinosaurus: err wrong channel [23:27] Marak: jerrysv: is it spamming? [23:28] Marak: jerrysv: there is levenstien distance algo for all twitter feeds [23:28] Marak: !config get plugins:twitter:filter [23:28] kohai: plugins:twitter:filter is 25 [23:28] Marak: jerrysv: i can increase or decrease the distance [23:28] Marak: so, take that ;-p [23:29] Marak: jerrysv: also, i am told in #Node.js room bot wont tweet more then 5 times in 10 minutes. [23:29] Marak: jerrysv: unless dead silence or @mentions of kohai [23:29] jerrysv: marak: not quite spamming, since the distance may not be very close in some of these [23:29] radicality: hi, i'm using express… why won't the following RegExp '/^\/getUsernames\?term\=(\w+)/' mathc something like '/getUsernames?term=hello' … express keeps saying 'cannot get ….' [23:29] jerrysv: marak: it's that damned erlang vs node.js post [23:30] Marak: jerrysv: http://i.imgur.com/CQhpA.png [23:30] Dinosaurus: man, i purposely do not have a twitter account for one reason: idgaf about the content of the tweets [23:30] Mrfloyd has joined the channel [23:30] jerrysv: marak: hahaha. ok, i guess i deserved that [23:31] Dinosaurus: twitter is socially accepted spam xD [23:31] tjholowaychuk: radicality: req.query contains the querystring obj [23:31] Marak: !config add plugins:alias:whitelist jerrysv [23:31] kohai: jerrysv was added to plugins:alias:whitelist. [23:31] Marak: !config save [23:31] kohai: Config saved. [23:31] Marak: its your problem now jerrysv [23:31] Marak: :-D [23:31] Marak: you can set the lev distance all you want [23:31] tjholowaychuk: radicality: app.get('/getUsernames', fn), and req.query in there [23:31] Marak: type !help for commands [23:32] jerrysv: heh, thanks, i think [23:32] radicality: tjholowaychuk: thanks a lot,…. i was reading the documentaiton and couldn't find it :D [23:32] Marak: jerrysv: :p [23:32] jerrysv: if i get time, i'll check out kohai and see if i can add more than just distance checking [23:32] AvianFlu: !insult jerrysv [23:32] Calvin: jerrysv tried to steal Cassie's legs. [23:32] kohai: jerrysv is an unsightly trouser stain! [23:33] jerrysv: !insult AvianFLu [23:33] kohai: AvianFLu smells of elderberry wine! [23:33] Calvin: AvianFLu liked BSG, even after the first two seasons. [23:33] Marak: jerrysv: we are doing refactor of kohai to use hook.io. if you want to improve a kohai plugin, that is good you can do that. if you want to create new plugin or make changes to core kohai, you should be doing that in hook.io [23:33] kohai: @twitinsin: I like that there's a node.js bot which funnels the tweets of haters, fanboys, hipsters and get-off-my-lawners alike into the IRC channel. [23:33] jerrysv: marak: will do. checked out hook.io last night, in concept it sounded like something i had done a while back, but in practice it is much more [23:34] Marak: !tweet @twitinsin It can also talk shit back to you. [23:34] kohai: @NodeKohai: @twitinsin It can also talk shit back to you. [23:34] kohai: @REDDITSPAMMOR: #reddit Node.js is Backwards: submitted by mistawobin [link] [comment] http://bit.ly/knahFy #rulez (link: http://www.reddit.com/r/programming/comments/hyxgx/nodejs_is_backwards/) [23:34] Marak: !tweet @twitinsin #nodejs rolls real-time everywhere. [23:34] kohai: @NodeKohai: @twitinsin #nodejs rolls real-time everywhere. [23:34] insin: Welcome... to the desert of the real O_o [23:35] Dinosaurus: Marak is your goal to spam in every corner of the interbutt [23:35] insin: ACTION just wishes he had an interesting project to play with something like hook.io in [23:35] jerrysv: says the guy who said "will you stimulate my butt" [23:35] Dinosaurus: that was supposed to be a PRIVATE MESSAGE! [23:36] Dinosaurus: xD [23:36] jakeskik has joined the channel [23:37] puffpio has joined the channel [23:37] sid3k` has joined the channel [23:37] sveimac has joined the channel [23:38] kohai: @afj176: Mad funny “@maraksquires: The open-source gangster advice animal - http://t.co/QOfDQZL #nodejs @github #javascript #rubyonrails” (link: http://imgur.com/a/ElWgw) [23:38] jscheel: is there any benefit (other than the fact that it's in node) to using forever over daemon for daemonizing node apps? [23:39] Melkor_ has joined the channel [23:39] puffpio has joined the channel [23:41] jakeskik has joined the channel [23:42] guest42343 has joined the channel [23:42] kohai: @hackernewsbot: Node.js is Backwards... http://blog.ankurgoyal.com/post/6433642218/node-js-is-backwards [23:42] Marak: enough of that koa [23:42] Marak: kohai [23:42] radicality: does anyone know how do to an SQL-Like statmenet in mongoose ? in the mongo shell, i do something like 'db.users.find({username: /^r/});' , and it does return usernames starting with r. [23:42] radicality: however, in mongoose, i can't get it to work :S [23:44] jerrysv: ok, forking it, i'll try to add the link checker in this evening after my run and before my booze [23:44] havenn has joined the channel [23:45] [[zz]] has joined the channel [23:45] rchavik has joined the channel [23:46] sveimac has joined the channel [23:46] hybsch has left the channel [23:46] hij1nx has joined the channel [23:46] KingJamool has joined the channel [23:47] tmpvar has joined the channel [23:47] rchavik has joined the channel [23:47] jerrysv: marak/isaacs: do either of you remember who the ex-couch guy with the cowboy hat that lives in thailand is? [23:48] isaacs: jerrysv: JasonSmith [23:48] jerrysv: isaacs: thanks! [23:48] isaacs: jerrysv: he usually hangs out in #iriscouch [23:48] isaacs: (for obvious reasons) [23:48] andrewfff has joined the channel [23:48] jerrysv: yeah, pretty obvious reasons :) [23:51] AvianFlu has joined the channel [23:53] Sorella has joined the channel [23:55] kohai has joined the channel [23:55] Marak: and hes back [23:58] tk has joined the channel [23:59] josephboyle has joined the channel