[00:00] piscisaureus: ryan___: hmm I'll cleanup my code then show it. [00:01] ryan___: piscisaureus: GetQueuedCompletionStatus calls the callback you gave it [00:01] ryan___: ? [00:01] boogyman has joined the channel [00:01] piscisaureus: ryan___: not exactly [00:02] ryan___: well - okay [00:02] piscisaureus: ryan___: a second [00:02] ryan___: ACTION goes back to his own stuff [00:02] amerine has joined the channel [00:03] boogyman has left the channel [00:03] creationix_: asimismo: I just use upstart on linux and whatever Joyent wrote on no.de (solaris) [00:03] creationix_: nothing fancy [00:03] gerad has joined the channel [00:03] creationix_: upstart is little more than a while true loop in bash [00:04] creationix_: from a monitoring perspective [00:04] asimismo: creationix_: Ok. We've got Zabbix, so I can do a port test and such. [00:04] airhorns has joined the channel [00:05] creationix_: some people use monit [00:05] asimismo: Just wondered if other best practices had emerged. [00:05] piscisaureus: ryan___: you pass a pointer to a "overlapped" struct to every windows api call operation that supports iocp [00:05] piscisaureus: windows fiddles only with the overlapped struct, but if you allocate more memory than windows needs you can use the extra space to store your own metadata. [00:05] piscisaureus: So I store a pointer to the callback in that extra space and iocp_poll calls that [00:06] creationix_: asimismo: you could ask felixge what he uses for transloadit or rauchg_ what he uses for learnboost [00:06] creationix_: my most busy site only gets on average a couple thousand visitors a day, that's nothing from a node server's perspective [00:06] asimismo: creationix_: Ok, thanks. [00:07] ryan___: piscisaureus: okay [00:07] asimismo: Yeah, our load is low now. But once the app takes off... ;-) [00:08] ryan___: piscisaureus: so - it seems that you can mark all the ev_check watchers as pending after you get an io packet (or whatever they call it) [00:08] ryan___: then call all those callbacks [00:08] ryan___: then call the callback for the io packet [00:08] paulrobinson has joined the channel [00:09] ryan___: or? [00:09] piscisaureus: ryan___: just call them every time ... hmmm [00:09] ryan___: "completion packet", sorry [00:09] tmpvar has joined the channel [00:09] ryan___: piscisaureus: the nexttick one is zero overhead [00:10] piscisaureus: does not sound very efficient but I guess it'll do. [00:10] piscisaureus: ryan___ I will try that before bothering you further [00:11] ryan___: i do need to redo how nextTicks are dispatched for long-stack traces... so i'm not against refactoring it either [00:11] piscisaureus: ryan___ let's see if I can get node to get acceptable throughput with 10k sockets, then see further. [00:12] tmpvar: official song is pretty good [00:12] ryan___: piscisaureus: :) [00:13] sleeplessinc has joined the channel [00:13] riven` has joined the channel [00:14] rburhum has joined the channel [00:15] piscisaureus: Some stuff is just too complex for me. The official node song, for example. [00:17] altamic has joined the channel [00:17] altamic has joined the channel [00:17] piscisaureus: I like dumb and simple. http://www.youtube.com/watch?v=bB3M4Bi1eLU [00:18] pcardune has joined the channel [00:22] sleeplessinc: Wondering who chose the official song. [00:22] sonolin has joined the channel [00:23] matyr has joined the channel [00:23] sonolin: Hello [00:23] stalled has joined the channel [00:23] aphelion has joined the channel [00:23] aphelion has joined the channel [00:24] sonolin: I'm trying out the best/most secure/easiest way to stream data to a particular user using node.js and socket.io [00:24] sonolin: How my app will work - somebody makes a phone call, and my "Twilio" PHP app will log the call in the database, and make a request to my node.js app [00:24] lukegalea has joined the channel [00:25] sonolin: the node.js app should then update the *authenticated* clients with the JSON data for the phone call [00:25] jpick has joined the channel [00:25] sonolin: so that the JS/HTML client updates it with a modal popup "Phone Call received from XXXXXX" [00:25] sonolin: is this doable? [00:26] creationix_: sonolin: easy, just have php hit an http endpoint on the node server [00:26] creationix_: which sends a message to the client via the socket.io channel [00:26] sonolin: "via the socket.io channel"... how do I make sure I only send to the correct client tho? [00:27] creationix_: you have a handle to each client [00:27] sonolin: I don't want "John Doe" recieving a phone call, but node updating both "John Doe" and "Jane Doe" [00:27] jimt has joined the channel [00:27] pHcF has joined the channel [00:27] creationix_: you'll need to somewhere keep track of which clients you want to send the message to [00:27] sonolin: what do you mean by that? Sorry, I'm jumping into node.js today ;) [00:28] creationix_: sonolin: node servers are long running, the handles to the clients are just objects in memory [00:28] sonolin: ok so are you saying I should store their unique ID generated by Node.js in the database, along with their username? [00:28] creationix_: you can give them ids if you want, that may help [00:28] Zil has joined the channel [00:28] creationix_: and have a hash table somewhere that translates the ids to socket.io handles [00:28] sonolin: ok that maeks sense [00:29] sonolin: *makes [00:29] creationix_: I'm not sure if socket.io generates unique ids for each user (beside the fd of the actual socket) [00:29] creationix_: actually, I think it does internally, not sure if it's exposed though [00:30] sonolin: hm I'm a little confused still [00:30] creationix_: if you have a database like redis that also works as a great in-between [00:30] sonolin: can you help me think this out? [00:30] sonolin: step 1 -> Client connects via socket.io [00:30] creationix_: redis clients can be notified with values in the database changes [00:30] sonolin: I'm using mysql [00:30] zzak: +1 redis [00:31] creationix_: redis can be used with mysql, they serve different purposes [00:31] sonolin: oh I see [00:31] creationix_: but node can do what redis does too, you just have to code it yourself [00:31] sonolin: ok... well [00:31] sonolin: how do I get the user's username to store in the database? [00:31] creationix_: in the redis case, php would update some value in the redis database and node would just see the change and forward it to the right user [00:32] zzak: redis is good for pub/sub [00:32] creationix_: username probably comes from your session [00:32] sonolin: yes [00:32] sonolin: but how do I access that via node.js [00:32] sonolin: for instance, how do I assign that username to a particular handle? [00:32] creationix_: socket.io should have the cookie values frmo the client [00:32] sonolin: I'm a little confused on that [00:32] sonolin: ohhh [00:32] creationix_: including the PHP session id [00:32] sonolin: wow [00:32] sonolin: that's cool [00:32] creationix_: if it's the same domain at least [00:33] creationix_: depends on how you're hosting the two servers [00:33] tktiddle has joined the channel [00:33] skm has joined the channel [00:33] mrlase: Anyone else having problems with connect-redis saying "TypeError: Object function RedisStore(options) { ...... } has not method 'set'" [00:33] mrlase: ? [00:33] sonolin: how would I decode the PHP session ID? would I have to store that in the DB? [00:33] creationix_: and if it doesn't have the cookie header, you can just have the client explicitly send it's session id to the node server in the body of a message [00:34] sonolin: ok that makes sense, I'm just concerned with session hi jacking [00:34] mrlase: wait wait, nvm, my bad, wasn't setting the store as new.. [00:34] sonolin: if somebody gets that session id, they can just pass it to the node server as well [00:34] creationix_: sonolin: can't you do that anyway? [00:34] sonolin: well I guess they could do the same thing in their browser right? [00:34] creationix_: or is the http server over ssl/tls? [00:34] sonolin: no its not all ssl [00:34] sonolin: so I guess that point is null [00:34] skm has joined the channel [00:35] creationix_: sonolin: another option, is couchdb, the browser can directly subscribe to changes on the database over http [00:35] sonolin: hm interesting [00:35] atmos has joined the channel [00:35] creationix_: and then php can update the database directly through http calls [00:36] sonolin: so if a new entry is created, the client is automatically updated? [00:36] Zil: Sup guys [00:36] creationix_: redis, socket.io, and couchdb can all push events to their clients [00:36] davidascher has joined the channel [00:36] sonolin: ok [00:36] sonolin: thanks for all the help [00:36] creationix_: redis and couchdb both have query types that push changes to clients (they specify what changes they want to see) [00:36] sonolin: hm ok [00:37] axfraxfr has joined the channel [00:37] Zil: Hey guys, can't find anything in the doc's about the method called from a socket object ie socket.on('connection', function(client){... [00:37] creationix_: if you just want pus/sub, couch is probably too heavyweight [00:37] sonolin: this is turning into a big project.. the original task was like 4 hours lol [00:37] creationix_: also I'm not sure how good browser support is for the changes feed [00:37] creationix_: sonolin: then just use node with socket.io [00:37] sonolin: kk [00:37] sonolin: that's what I'm gonna do I think [00:37] isaacs: ryah: https://gist.github.com/859599 [00:37] sonolin: thanks [00:37] creationix_: have a little http server in node that the php script can make calls to [00:37] isaacs: or anyone else, reallyt [00:38] creationix_: and then in-process the node server can route messages to the clients [00:38] bradleymeck1 has joined the channel [00:38] isaacs: i'm thinking the paths are a bit too noisy [00:38] sonolin: ok cool [00:38] atmos: anyone know of any express apps that use mustache templating ? [00:38] sonolin: should I store the session ID in the DB? [00:38] sonolin: so that I can get their user data to properly route the message? [00:38] creationix_: isaacs: you should use some cool unicode character instead of "node_modules" ;) [00:39] isaacs: creationix_: ha [00:39] tprice has joined the channel [00:40] creationix_: sonolin: yeah, the simplest method for you will probably be for node to just keep a hash of session id -> socket handles, and php will tell node what messages to send to what session ids [00:40] creationix_: the rest of the logic will be in php [00:40] creationix_: when a user connects to socket.io, it needs to tell the node server (either through cookie headers or the body message) it's session id [00:41] SubStack: ☠ [00:41] creationix_: node does support socket.io over ssl, but the client probably won't like [00:41] tprice: what's the best way to store a lot of data for sessions of an app and can be acsessed really [00:41] squeeks_: redis, memcached, etc [00:42] sonolin: ok [00:42] tprice: whats a good module for a redis client? [00:42] sonolin: good to know [00:42] piscisaureus: ryan___: node isn't really using watcher priorities, is it? [00:42] sonolin: just curious, does node have a decent MVC framework? [00:43] sonolin: I have to pick a framework for a next prjoect, and I'm kind of leaning towards Rails (I'm a Django guy)... but Node/js sounds kind of cool [00:43] squeeks_: tprice: node-redis floats my boat, at least [00:43] zzak: tprice: https://github.com/mranney/node_redis [00:43] mjr_: my boat is also floated [00:43] ryan___: piscisaureus: there are a few places they are used [00:43] malkomalko has joined the channel [00:44] jetheredge has joined the channel [00:44] pillowfactory has joined the channel [00:45] piscisaureus: ryan___: I could only find the debug watcher being set to max pri [00:45] creationix_: sonolin: check out expressjs [00:45] MatthewMueller has joined the channel [00:47] Evet_ has joined the channel [00:47] ttpva has joined the channel [00:48] fly-away has joined the channel [00:48] tprice: what about storing data in memory? [00:49] MatthewMueller has left the channel [00:49] themiddleman_itv has joined the channel [00:49] creationix_: tprice: that's the easiest, but it has different limitations [00:49] tprice: would that work? [00:49] creationix_: you're probably capped at 1gb and if your process dies, so does all the data [00:49] creationix_: but it's super fast and doesn't even require non-bocking APIs [00:50] creationix_: var db = {}; [00:50] creationix_: done! [00:50] creationix_: key value store [00:52] ryan___: piscisaureus: i think the eio async watcher hsa a priority [00:52] ryan___: piscisaureus: and the GC idle watcher a minimum priority [00:53] creationix_: tprice: if you want in-memory, but out of process, then redis would be a good choice [00:53] matyr_ has joined the channel [00:54] slickplaid: redisftw [00:55] mjr_: I love me some redis. [00:55] slickplaid: same [00:55] mjr_: Currently wrestling with a couchdb issue, so I can hang around and be redis-y. [00:56] ttpva has joined the channel [00:57] Zil: Is equivalent to [00:57] langworthy has joined the channel [00:57] Zil: I see it being used with socket.io and node but I can't find it mentioned anywhere in the doc [00:58] slickplaid: I believe on is socket.io's implementation of addListener, yes. [00:58] mattikus has joined the channel [00:58] seivan has joined the channel [00:59] creationix_: Zil it should be in the node docs [00:59] insin: http://nodejs.org/docs/v0.4.2/api/events.html#emitter.on [00:59] Zil: Alright, the event's where can I find a list of them? Or are they similar to the ones that are in the node doc's with the event require [00:59] creationix_: http://nodejs.org/docs/v0.4.2/api/events.html [00:59] slickplaid: Oh, i see what you were asking now. [00:59] slickplaid: ^^ what they said then :D [01:00] Zil: Alright, I was looking at the right spot, I was just kind of lost haha thanks :) [01:01] charlenopires has joined the channel [01:02] testuser has joined the channel [01:05] shiawuentan has joined the channel [01:06] tshpaper has joined the channel [01:07] softdrink has joined the channel [01:08] Remoun has joined the channel [01:08] OhMeadhbh has joined the channel [01:09] deepthawtz has joined the channel [01:12] raidfive has joined the channel [01:13] perlmonkey2 has joined the channel [01:13] lukegalea has joined the channel [01:13] nonnikcam has joined the channel [01:14] wilmoore has joined the channel [01:18] sonolin has left the channel [01:19] creationix_ has left the channel [01:20] sprout has joined the channel [01:26] ryanfitz has joined the channel [01:28] zentoooo has joined the channel [01:29] hassox has joined the channel [01:32] paul_k has joined the channel [01:33] mickael has joined the channel [01:34] jtsnow has joined the channel [01:35] siaoeh has joined the channel [01:36] lukegalea has joined the channel [01:36] mdoan has left the channel [01:39] sivy has joined the channel [01:40] sivy has joined the channel [01:41] papyromancer has joined the channel [01:42] fisted has joined the channel [01:43] matschaffer has joined the channel [01:44] bradleymeck2 has joined the channel [01:44] ryan_ has joined the channel [01:45] piscisaureus: why does the buildbot not keep its history? [01:48] piscisaureus has joined the channel [01:49] Tony_ has joined the channel [01:50] piscisaureus: PING 1299549034801 [01:50] Tony_: hi, i'm just run "node npm install mysql" on the windows binary provided at http://node-js.prcn.co.cc, but it occured a DNS error [01:51] Tony_: Is there anyone suffering from the same issue? [01:51] MikhX has joined the channel [01:51] isaacs: Tony_: it doens't work very well on that, i don't think. [01:51] isaacs: Tony_: seen a lot of issues [01:52] piscisaureus: [01:52] piscisaureus: Node 0.4.1 binaries were released. NPM seems to be broken - please report here and suggest a solution to the NPM author. As a workaround you can copy the new exe to older releases of the binaries with older NPM. The problems are: 1) NPM relies on sh and a few other tools for non-critical tasks like displaying its own installation logs. These tools don't exist in our stripped package. 2)... [01:52] piscisaureus: ...Newer releases of NPM perform setuid operations which are not necessary in our single-user xcopy-style installation. [01:52] piscisaureus: [01:52] mickael has joined the channel [01:52] isaacs: piscisaureus: it should only be doing that if process.setuid is available, and if the current uid is 0 [01:52] libv8 has joined the channel [01:53] piscisaureus: ^-- isaacs: that is what the website says. I have nothing to do with that package. [01:53] isaacs: piscisaureus: please post an issue :) [01:53] isaacs: piscisaureus: oh, ok [01:53] seivan has joined the channel [01:53] isaacs: maybe i'll take a look later. [01:54] isaacs: been busy with npm 1.0 [01:54] piscisaureus: more important :0 [01:54] isaacs: Speaking of which! here's a preview: https://gist.github.com/859599 [01:54] BillyBreen has joined the channel [01:54] fusspawn: *cant wait for npm 1.0* [01:55] fusspawn: ooo -p makes me happe [01:55] piscisaureus: I think --long makes me happy [01:55] piscisaureus: mucho easier to dive into a package internals once you can see what it depends on [01:56] fusspawn: ACTION just spent most of the day setting up a parser for npm output.. do want -p [01:56] fusspawn: even if it made the day mostly worthless :/ [01:56] Yuffster has joined the channel [01:56] lukegalea has joined the channel [01:57] jtsnow has joined the channel [01:58] Tony_: Is there anyone tried out the redis-node package, is that stable and fast? [01:58] mickaelz has joined the channel [01:59] Emmanuel__ has joined the channel [01:59] Guest58918 has joined the channel [01:59] timmywil has joined the channel [02:01] gazumps856 has joined the channel [02:01] sechrist has joined the channel [02:02] jimt has joined the channel [02:02] BillyBreen has joined the channel [02:05] Tony_ has left the channel [02:06] mbrochh has joined the channel [02:06] Jourkey has joined the channel [02:06] piscisaureus: poll: a = static_cast(malloc(sizeof(A)) [02:06] piscisaureus: or a = new A() ? [02:06] piscisaureus: ^-- A is a dumb data type [02:06] axfraxfr has joined the channel [02:07] yozgrahame has joined the channel [02:08] zakabird: is the ugly way faster? reminds me why I like untyped dynamic langs more [02:09] piscisaureus: I don't think the ugly way is faster [02:10] Evet has joined the channel [02:12] sivy_ has joined the channel [02:13] lukegalea has joined the channel [02:13] Murugaratham has joined the channel [02:19] Qix_ has joined the channel [02:23] ryan_: piscisaureus: new A() [02:23] yhahn has joined the channel [02:24] piscisaureus: ryan_: yah ok. Looks really bad when mixed with libev api implementation [02:24] piscisaureus: but yeah [02:25] vilsonvieira has joined the channel [02:25] raidfive has joined the channel [02:26] ryan_: piscisaureus: the libev backend should be done in c though [02:26] ryan_: or? [02:27] piscisaureus: ryan_: why? I am not writing a libev backend [02:27] piscisaureus: I am writing an event loop with libev api [02:27] ryan_: it should still be done in C, imo [02:27] ryan_: why use c++? [02:27] ryan_: that will only anger the gods [02:28] jesusabdullah: C would anger the v8 gods :( [02:28] tbranyen: c/c++ its all the same when the lights go out [02:28] ryan_: ACTION looks for the mute button [02:28] jacobolus has joined the channel [02:29] jesusabdullah: It's /ignore [02:29] tbranyen: remind me to mute my humor, welp [02:29] hassox has joined the channel [02:29] jesusabdullah: hehe :) [02:30] ryan_: piscisaureus: ev is a c api, iocp is a c api [02:30] ryan_: why introduce c++? [02:30] piscisaureus: ryan_: yeah. I was writing c style code mostly. Though I was very tempted to do: [02:30] piscisaureus: struct ev_stupid { [02:30] piscisaureus: bool active; [02:30] piscisaureus: ev_stupid *next; [02:30] piscisaureus: } [02:30] piscisaureus: struct ev_check: ev_stupid { ... } [02:30] piscisaureus: O.o [02:30] tmpvar has joined the channel [02:31] piscisaureus: ryan_: no worries. will be C. [02:31] ryan_: good :) [02:32] lukegalea has joined the channel [02:32] piscisaureus: I actually just started hating c++ again so we're safe [02:33] AAA_awright has joined the channel [02:34] sprout has joined the channel [02:37] kkaefer has joined the channel [02:38] piscisaureus: ryan_: your reasoning is a fallacy btw. [02:38] piscisaureus: The road is bricks, the garage is bricks. Why use steel to build a car? [02:39] fusspawn: the roads tar. [02:39] andrewfff has joined the channel [02:39] tbranyen: garage is cheap paneling [02:40] stepheneb has joined the channel [02:40] fusspawn: the cars probally not steel. [02:40] fusspawn: but yes i agree :P [02:42] dguttman has joined the channel [02:43] exitdescription has joined the channel [02:46] asimismo has joined the channel [02:46] eyesUnclouded has joined the channel [02:48] pillowfactory has joined the channel [02:51] softdrink has joined the channel [02:51] Murugaratham has joined the channel [02:52] ryan_: piscisaureus: you're not building a car, you're just building a driveway [02:52] ryan_: piscisaureus: use bricks [02:52] Apes has joined the channel [02:52] piscisaureus: ryan_: I'm building a highway :p [02:56] piscisaureus: ryan_: btw, you plan on landing that path.relative patch? If so, I'm going to shoot at it once more. [02:56] Croms has joined the channel [02:56] piscisaureus: ACTION Concentration problems or just multitasking? [02:56] Zil has joined the channel [02:58] lukegalea has joined the channel [02:59] soulofpeace has joined the channel [03:03] pyrony has joined the channel [03:04] zzak: a brick driveway.. [03:04] possibilities has joined the channel [03:04] zzak: sounds expensive [03:06] Qix_ has joined the channel [03:09] eb4890 has joined the channel [03:09] hij1nx has joined the channel [03:09] Aria has joined the channel [03:10] jtsnow has joined the channel [03:11] sleeplessinc has joined the channel [03:11] axfraxfr has joined the channel [03:11] eventi has joined the channel [03:12] jakehow has joined the channel [03:12] briznad has joined the channel [03:13] Yuffster_work has joined the channel [03:15] wilmoore has joined the channel [03:16] mike5w3c has joined the channel [03:17] lukegalea has joined the channel [03:19] ajashton has joined the channel [03:21] rburhum has left the channel [03:22] FunkyFortune has joined the channel [03:22] Emmanuel__ has joined the channel [03:23] pcardune_ has joined the channel [03:23] ajashton has left the channel [03:23] tmpvar has joined the channel [03:25] piscisaureus: quits [03:28] jacobolus has joined the channel [03:28] lukegalea has joined the channel [03:29] tfe_ has joined the channel [03:32] mnot has joined the channel [03:34] zachsmith has joined the channel [03:36] timmywil has joined the channel [03:38] bartt has joined the channel [03:38] guybrush: i have a problem with npm, when installing a package which has tarball-url-dependencies npm says it does not find the packages on which the tarball-url-package depends [03:38] davidascher has joined the channel [03:38] guybrush: anyone else experienced the same problem? [03:40] guybrush: like, the package i want to install depends on http://x.y/z.tar.gz and z depends on cradle - npm says it does not find cradle [03:41] paul_k has joined the channel [03:42] davidascher has joined the channel [03:42] lukegalea has joined the channel [03:43] Murugaratham has joined the channel [03:45] mikegerwitz: heh, was wondering when you'd do that [03:46] guybrush: i am trying to write a deploying-tool which is a wrapper of npm [03:46] guybrush: my projects are all npm-packages [03:46] guybrush: but i do not want to publish them into the npm-registry :D [03:47] guybrush: since its customer related stuff [03:47] mikegerwitz: guybrush: sorry I have little experience with npm and Mr. npm guy appears to have vanished..I'm sure someone'll be able to help eventually [03:47] guybrush: right [03:48] srid has joined the channel [03:48] srid has joined the channel [03:48] srid: no.de users - do you install your own mongodb, or use an external service like mongohq? [03:48] whaka has joined the channel [03:50] pillowfactory: hello [03:50] zachsmith: srid I installed it myself [03:51] pillowfactory: dumb question: should I be using npm, or "freezing" the libraries in my project? [03:51] zachsmith: srid: it was pretty easy [03:51] srid: initially, yea. but need to worry about auto-start (what if the no.de machine restarts?) and regular maintainence. [03:53] zachsmith: srid: I feel like using something like mongohq would be a huge bottleneck if you're doing a lot of reads [03:53] srid: that's what I feel too. [03:53] lukegalea has joined the channel [03:53] srid: I'd prefer something like dotcloud.com - but their python client is buggy for me. [03:54] tilgovi has joined the channel [03:55] nwhite_ has joined the channel [03:56] AAA_awright: guybrush: That package probably dissappeared from the central repository, that's been causing a lot of problems recently [03:57] guybrush: AAA_awright: thx for the hint, will check it out [03:57] AAA_awright: I would always sugguest providing URLs directly to the project page of the modules you depend on [03:58] AAA_awright: Mostly selfishly for people like me who manage dependencies by hand with Git [03:58] guybrush: right now i am deploying everything with git [03:59] guybrush: wanted to try to switch to npm [03:59] guybrush: since dependencies are managed way better [03:59] guybrush: git-submodules are not so cool [04:00] AAA_awright: They can work, with an army of git commits and symlinks in a node_modules/ subdirectory [04:01] AAA_awright: And without needing the additional system-wide setup npm requires can actually be easier to setup [04:01] guybrush: right [04:01] guybrush: but [04:02] guybrush: if you want to deploy multiple versions of the same package [04:02] meso has joined the channel [04:02] raidfive has joined the channel [04:03] guybrush: you will have to manage that, npm does that for free [04:06] lukegalea has joined the channel [04:07] jtsnow has joined the channel [04:07] olegp has joined the channel [04:07] apoc has joined the channel [04:07] framlin has joined the channel [04:07] bruse has joined the channel [04:07] guybrush: especially when it comes to deploying to more than 1 machine -- maybe git is the better approach still figuring it out [04:07] Zil has joined the channel [04:08] guybrush: fearing the dependency-hell :D [04:09] Qix_ has joined the channel [04:09] tilgovi has joined the channel [04:09] [tm] has joined the channel [04:10] drostie has joined the channel [04:10] papyromancer has joined the channel [04:10] ec|detached has joined the channel [04:10] rudebwoy has joined the channel [04:12] seivan has joined the channel [04:12] malkomalko has joined the channel [04:13] jimt_ has joined the channel [04:15] Nacho has joined the channel [04:16] sivy has joined the channel [04:19] luke` has joined the channel [04:21] brianc has joined the channel [04:22] sivy has joined the channel [04:23] inimino has joined the channel [04:27] dnolen has joined the channel [04:28] foobnoob has joined the channel [04:29] cognominal has joined the channel [04:31] pkrumins: ACTION breaks silence by throwing e [04:31] Me1000 has joined the channel [04:31] malkomalko: :D [04:34] Viriix has joined the channel [04:34] lukegalea has joined the channel [04:35] Murugaratham: catch {...} [04:35] tmzt_: careful, you might get a stack trace [04:36] tk has joined the channel [04:36] mynyml has joined the channel [04:36] tk has joined the channel [04:36] mjr_ has joined the channel [04:37] wadey has joined the channel [04:38] gkatsev: hm... I have a no.de machine but when sshing i get permission denied (publickey), is that because the machine was created before an sshkey was posted to the account? [04:38] papyromancer has joined the channel [04:42] Viriix has left the channel [04:42] ryankirkman has joined the channel [04:42] ryankirkman: Does it make sense to want to send my response to a http request in 1 packet? [04:43] briznad has joined the channel [04:43] shaver: yes [04:43] razvandimescu has joined the channel [04:45] ryankirkman: shaver: How do I do it? The reason I want this is it seems like I'm incurring a whole roundtrip every time I receive a packet / chunk [04:48] Shrink has joined the channel [04:48] Shrink has left the channel [04:48] rhdoenges has joined the channel [04:49] lukegalea has joined the channel [04:56] stonecobra has joined the channel [04:56] mjr_: If you have nagle, then it'll tend to coalesce them into larger packets. [04:56] mjr_: Nagle is on by default in node, isn't it? [04:57] shaver: you don't need TCP_CORK? [04:57] mjr_: that's how you'd make SURE [04:57] mjr_: But good ole automagical Nagle should tend to make packets larger [04:58] shaver: trust in nagle, but cork your sockets [04:58] mjr_: And it'll certainly push out a full MTU packet once you've got enough data to fill one and the timer hasn't expired. [04:58] gkatsev: oh, to ssh to no.de its node@machine [05:00] lukegalea has joined the channel [05:01] DTrejo has joined the channel [05:02] ryankirkman: Hmm [05:05] ryankirkman: So in summary, does doing something like (https://gist.github.com/02a8108fb9da74d3fc18) buffer the response such that it will be sent in 1 packet? [05:05] mjr_: one or more, sure [05:06] mjr_: By buffering it explicitly in node you sort of take control of when the first byte gets emitted. [05:06] mjr_: Except when do you call sendHeader [05:06] mjr_: ? [05:07] ryankirkman: I'm using express.js [05:08] papyromancer has joined the channel [05:08] ryankirkman: So they have this method called "send(obj)", which I think they wrap around the response object [05:08] ryankirkman: and it says in the docs it is equivalent to a write() and an end() [05:09] ryankirkman: http://expressjs.com/guide.html#res-send-body-status-headers-status-status- [05:10] tmzt_: it detects what type of object you send, for instance, it can create application/json if you pass a normal object, or send the contents of a Buffer, or just a status code (number) [05:10] dwww has joined the channel [05:10] ryankirkman: Right, so I am always sending JSON data [05:11] kriszyp has joined the channel [05:11] tmzt_: what's the question? [05:12] dominic_ has joined the channel [05:12] lukegalea has joined the channel [05:13] david has joined the channel [05:13] ryankirkman: From Before: (Does it make sense to want to send my response to a http request in 1 packet?) then ... (How do I do it? The reason I want this is it seems like I'm incurring a whole roundtrip every time I receive a packet / chunk), e.g. sometimes my request takes ~400ms to complete rather than ~200ms [05:13] mjr_: Do you have 200ms RTT to your server? [05:13] ryankirkman: Yes I do [05:13] mjr_: Because that's a long time. [05:13] mjr_: Oh, O [05:13] mjr_: K [05:14] ryankirkman: Australia -> America (San Francisco) [05:14] ryankirkman: Ok, so I think it could be CouchDB [05:14] ryankirkman: Rather than node [05:14] tmzt_: oh sorry, didn't realize you were on the same topic [05:15] ryankirkman: Because I am seeing the same behaviour when I do the raw http request to CouchDB [05:15] ryankirkman: perhaps because the browser lists chunk in its TE header? [05:16] sub_pop has joined the channel [05:16] ryankirkman: CouchDB and Node.js are on the same server though, so I am thinking I could buffer CouchDB's response in Node and send it all at once [05:17] ryankirkman: But I don't know if a) That is possible and b) How I would do it [05:19] ryankirkman: This is the express.js wrapper around response: https://github.com/visionmedia/express/blob/master/lib/response.js [05:21] kylefox has joined the channel [05:22] windsurf_ has joined the channel [05:22] Spion_ has joined the channel [05:24] seivan has joined the channel [05:25] rhdoenges: /quit [05:25] Evet_ has joined the channel [05:26] Evet has joined the channel [05:30] hij1nx has joined the channel [05:33] lukegalea has joined the channel [05:35] aways|bnc has joined the channel [05:35] briznad has joined the channel [05:35] void_ has joined the channel [05:36] Astro has joined the channel [05:39] whaka has joined the channel [05:40] jimt has joined the channel [05:41] paul_k has joined the channel [05:44] lukegalea has joined the channel [05:45] windsurf_ has left the channel [05:46] mattikus has joined the channel [05:48] mlncn has joined the channel [05:49] fangel has joined the channel [05:51] papyromancer has joined the channel [05:51] jimt_ has joined the channel [05:52] tedsuo has joined the channel [05:53] mike5w3c has joined the channel [05:55] sub_pop: wow so nStore got pwned by the changes in npm... [05:55] tedsuo: sitting down to install 0.42, and noticed this build line in on the wiki: export JOBS=2 # optional, sets number of parallel commands. [05:55] tedsuo: anyone know what parallel commands refers to? [05:55] tbranyen: npmignore doesn't seem to work with npm install in a package folder to test [05:55] tbranyen: weird [05:56] Aria: tedsuo: number of concurrent compiles. [05:56] Aria: (set JOBS= the number of cores you have, unless your disks are the bottleneck for compiling.) [05:57] tedsuo: Aria: cool, so it just speeds up compiling if you have multiple processors? [05:57] Aria: Yep. [05:57] tedsuo: Aria: sweet thanks [05:57] Aria: And in node, I imagine, it works right. (haven't tried) [05:57] tbranyen: oh bam [05:57] Aria: Some badly written makefiles in other systems may fail, but node should be good. [05:57] tbranyen: i had no idea about that iether [05:57] void_ has joined the channel [06:00] lukegalea has joined the channel [06:00] void_ has joined the channel [06:01] JaMeSiTeGeN has joined the channel [06:02] kawaz_air has joined the channel [06:05] whaka has joined the channel [06:06] theturtle321 has joined the channel [06:08] zachsmith has joined the channel [06:09] mjr_: It seems to spread out the V8 build as well [06:12] yozgrahame has joined the channel [06:12] JaMeSiTeGeN: Any idea on a method to have V8 as a Linux kernel module? [06:12] JaMeSiTeGeN: And how can I be used. [06:12] SamuraiJack has joined the channel [06:13] lukegalea has joined the channel [06:16] theturtle321 has joined the channel [06:16] Murugaratham has joined the channel [06:19] kawaz_air has joined the channel [06:24] dthompson has joined the channel [06:26] FireFly has joined the channel [06:29] Emmanuel__: JaMeSiTeGeN: why would anyone want to do that ? [06:29] Gregor has joined the channel [06:30] Croms_ has joined the channel [06:31] MikhX has joined the channel [06:33] JaMeSiTeGeN: Emmanuel__: Simple even faster Javascript :) I'm working on a LinuxOS written is almost compleatly Javascript. [06:34] tbranyen: JaMeSiTeGeN: i had that idea too [06:34] tbranyen: just not smart enough to execute it [06:34] tbranyen: i'd have to build on top of lfs or something [06:34] KryosDion has joined the channel [06:36] lukegalea has joined the channel [06:36] tbranyen: time to dink around with this in windows [06:36] tbranyen: fuuuuuck [06:36] davidascher has joined the channel [06:37] AAA_awright: JaMeSiTeGeN: Are you still set on doing that? Javascript doesn't have the instructions necessary to program for hardware, too [06:37] JaMeSiTeGeN has left the channel [06:39] nwhite has joined the channel [06:39] siculars has joined the channel [06:40] ryankirkman has joined the channel [06:40] deepthawtz has joined the channel [06:40] ryankirkman: If do socket.setNoDelay(), will I notice any speed increase with a Round-Trip Time of 200ms? [06:41] ryankirkman: e.g. is node.js waiting for an ACK before sending any subsequent packets? [06:41] muk_mb has joined the channel [06:43] zakabird: i guess this has has already been discussed here? http://www.reddit.com/r/programming/comments/fyjod/is_nodejs_wrong/ [06:43] samcday: ryankirkman: Should do - setNoDelay turns off nagle's algorithm [06:44] ryankirkman: samcday: From what I can see, I am getting 400ms response time on big result sets, vs 200ms response time for small result sets [06:45] ryankirkman: samcday: I am using express.js and adding a module that does res.socket.setNoDelay() [06:45] samcday: ryankirkman: Well it's extremely subjective to how you're generating said data, sending it, etc [06:45] Aria: zakabird: not that I've seen, but that person is trying to do everything inline and not use the tools given. [06:45] ryankirkman: Would that accomplish the right thing? [06:45] ryankirkman: sacday: In short, I am using node.js as a proxy for couchdb (I need to do some business logic / authentication stuff) [06:45] zakabird: just reading thru the comments on reddit now. kinda interesting [06:46] dspree has joined the channel [06:46] Croms has joined the channel [06:46] ryankirkman: samcday: So both node.js and couchdb are on the same server. [06:46] hassox has joined the channel [06:46] dominic_ has joined the channel [06:47] samcday: ryankirkman: Are you accessing Node in a RESTful manner? Requests in / data out in a single http request? [06:48] ryankirkman: samcday: Yes [06:48] samcday: ryankirkman: Well regarding the latency of a request, it really could be a number of things. You might be doing something blocking elsewhere in your app, or there might be something up with the way you're grabbing data from couchdb [06:48] lukegalea has joined the channel [06:49] samcday: Have you tried timing the express request handler and seeing how long that takes? [06:49] ryankirkman: samcday: It is unlikely that I am blocking elsewhere. I am the only user at the moment. [06:50] ryankirkman: samcday: I have X-Response headers turned on for express.js. I am getting under 20ms all the time, and usually under 10ms so that is insignificant compared to the total time. [06:51] samcday: ryankirkman, yeah it is quite insignificant. I dunno, perhaps there's something up with http parser [06:51] mjr_: I am currently quite stymied by this "socket hang up" in the http client. [06:51] samcday: I really doubt the actual socket data transfer is taking 150+ ms [06:52] ryankirkman: samcday: In wireshark it looked like it was waiting for ACKs from the client. I then used res.socket.setNoDelay(), but not too much seemed to change [06:53] samcday: ryankirkman: Maybe express is doing something with chunking or it's overriding setnodelay. I'm not sure as I haven't worked with express much. Mayhaps try and just use http.Server directly first [06:54] mraleph has joined the channel [06:56] theturtle321 has left the channel [06:57] aho has joined the channel [06:58] davidascher has joined the channel [06:58] sirkitree has joined the channel [06:59] jankoprowski has joined the channel [07:02] _jdalton has joined the channel [07:02] Qix_ has joined the channel [07:05] mjr_: zakabird: that blog post gets written about once a week. [07:05] mjr_: What about servers that do heavy computation? Node sucks! [07:06] mjr_: The answer is either, don't do that in node, or use one of the many fine ways of spawning subprocesses. [07:08] SubStack: or writing the heavy-lifting parts in C++ modules that can make use of the thread pool [07:08] samcday: Yeah, EIO is your friend [07:08] samcday: As I'm sort of learning right now [07:08] mjr_: That's a bit painful, but certainly an option. [07:08] breccan has joined the channel [07:09] mjr_: Surely not as easy as, oh, I dunno, dnode? [07:09] mjr_: I hear that's really easy. [07:09] lukegalea has joined the channel [07:09] SubStack: that's what I hear too [07:14] Murugaratham has joined the channel [07:14] windsurf_ has joined the channel [07:14] windsurf_: I'm 'working on my first basic net server http://pastebin.com/aiktCzDm [07:14] mattikus has joined the channel [07:14] windsurf_: which part of that is considered a client connection [07:15] windsurf_: say there are two remote clients that have connected to my server [07:15] windsurf_: is each of those a 'socket' or a 'connectionListener' ? [07:20] Qix_ has joined the channel [07:20] lukegalea has joined the channel [07:21] liar has joined the channel [07:25] aways|bnc: ACTION Hi all How are you ? [07:27] gh0stz has joined the channel [07:28] pascalopitz has joined the channel [07:29] flippyhead has joined the channel [07:30] johans_ has joined the channel [07:30] lukegalea has joined the channel [07:30] johans_: join #jquery [07:30] johans_ has left the channel [07:31] mikeal has joined the channel [07:31] Lagnus has joined the channel [07:33] skohorn has joined the channel [07:34] johndahlstrom has joined the channel [07:35] jimt has joined the channel [07:35] pquerna: ryah: scary. now you can.. detect failures. [07:35] Yuffster_work has joined the channel [07:36] pomodoro has joined the channel [07:37] dguttman has joined the channel [07:37] mscdex: whoa, i didn't know multipart/x-mixed-replace was available on more than just gecko-based browsers nowadays [07:37] mscdex: awesome [07:38] OhMeadhbh has joined the channel [07:38] groom has joined the channel [07:38] dubbe has joined the channel [07:39] atiti has joined the channel [07:39] pquerna: ryah: oh, for socket.io, heh, I thought you were still on the botnet... [07:40] SeanBannister: Just got my node.js server running 34,283 simultaneous connections, CPU and RAM is fine, must be a connection limit I'm hitting [07:40] dominic_ has joined the channel [07:40] amerine has joined the channel [07:42] seivan has joined the channel [07:45] unfo-: SeanBannister, ulimit [07:45] SeanBannister: unfo-: already worked on ulimit and the kernel tcp settings [07:45] unfo-: SeanBannister, check. rogerroger [07:45] nyholt has joined the channel [07:46] sechrist has joined the channel [07:46] SeanBannister: unfo-: lol, you just made me google rogerroger until I figured out what you were saying :) [07:47] unfo-: hahah ;D [07:47] unfo-: SeanBannister, think star wars clone army ;) [07:47] whaka has joined the channel [07:48] ph^ has joined the channel [07:48] sivy has joined the channel [07:48] whaka has left the channel [07:49] davidascher has joined the channel [07:52] mikeal has joined the channel [07:53] dominic_ has joined the channel [07:54] zab has joined the channel [07:55] dubbe: ACTION is away: I'm away (gone at 8th Mar, 08:55:18) [07:55] dubbe: ACTION returns (I'm away [6s]) (total away time: 6s) [07:55] dubbe: ACTION is away: I'm away (gone at 8th Mar, 08:55:45) [07:55] fangel has joined the channel [07:58] emattias has joined the channel [07:58] zakabird: does a 'programmers blog' using node where 'code posts' can be exec'd via node sound like a good idea? [07:58] ttpva has joined the channel [07:58] troessner has joined the channel [07:59] zomgbie has joined the channel [07:59] zakabird: im trying to write one for myself: organize things with a web app interface, launch compiles from button on page etc [07:59] sveimac has joined the channel [07:59] mape: zakabird: make sure to secure it though [08:00] zakabird: yeah. need to look into vm's [08:00] zakabird: but for now on local machine i *want* full control of fs and exec.. [08:01] lukegalea has joined the channel [08:01] zakabird: i think the securing part may be hard. I know lua can be sandboxed well, not sure about python etc. Havn't used vm's... [08:02] zakabird: I think a web ide of sorts for many programming tasks might be very useful. [08:03] meso has joined the channel [08:03] zakabird: it would be much easier to come up with new interfaces etc than it would in eclipse or whatever [08:04] zakabird: if its a local or team tool, then i guess security would not be too much of an issue [08:04] unfo-: dubbe`away, public away messages and away nicks :( [08:04] zakabird: but im not sure [08:05] zpao has joined the channel [08:05] dubbe`away: unfo-, it is something my irc-client thought of of it's own... i am trying to get rid of it [08:06] luke` has joined the channel [08:06] dubbe: unfo-, i think i got it now! :) [08:06] unfo-: dubbe, ^______^ the internets thank you ;) [08:07] dubbe: ACTION thanks himself [08:07] zakabird: can anybody see themselves having a use for something like that? people seem happy with the command line... [08:09] TomY has joined the channel [08:09] TomY_ has joined the channel [08:10] dominic_ has joined the channel [08:10] jimt has joined the channel [08:10] swistak has joined the channel [08:10] jesusabdullah: http://fuckyeahnouns.com/node.js It was actually relevant :D [08:12] zum has joined the channel [08:12] meso has joined the channel [08:14] bergie has joined the channel [08:14] V1 has joined the channel [08:15] jimt_ has joined the channel [08:15] Druid_ has joined the channel [08:17] mekazu has joined the channel [08:18] mAritz has joined the channel [08:18] mkopras has joined the channel [08:19] kawaz_air has joined the channel [08:19] zakabird has joined the channel [08:22] kal-EL_ has joined the channel [08:24] sechrist: man [08:24] sechrist: I want couchdb with the ops features of riak [08:24] sechrist: why doesn't this exist [08:24] sechrist: stupid cap theorem >:( [08:25] pietern has joined the channel [08:26] v8bot has joined the channel [08:28] mytrile has joined the channel [08:30] Murugaratham has joined the channel [08:30] jesusabdullah: What's a cap theorem? [08:31] exitdescription: cap theorem [08:31] sechrist: some silly person thinks that we can't have consistency, availability, and persistence in a distributed system at the exact moment in time [08:31] sechrist: hogwash [08:32] unfo-: ^_^ [08:32] exitdescription: soft consistensy [08:32] sechrist: one day this whole datastore problem will be solved [08:32] sechrist: and we won't even think twice about what system to use [08:32] mhausenblas has joined the channel [08:32] sechrist: you throw all your shit into this magic system [08:33] sechrist: and it scales infinitely and is simple to query with predictable response times [08:33] sechrist: it will happen >:( [08:33] exitdescription: as long as there's latency before the eventual writes to disk .. there won't be any solution [08:33] sechrist: no stop that [08:33] sechrist: you gotta believeeeee [08:34] dominic_ has joined the channel [08:34] mhausenblas_ has joined the channel [08:34] exitdescription: believe ... ridiculous [08:34] jollyroger_ has joined the channel [08:34] jesusabdullah: No no no, [08:34] [AD]Turbo has joined the channel [08:34] jesusabdullah: believeeeee! [08:34] sechrist: FairyDustDB [08:36] jesusabdullah: I believe in fairies! I believe in fairies! [08:36] lukegalea has joined the channel [08:36] ukev has joined the channel [08:36] exitdescription: i believe we're all fairies [08:37] jollyroger_ has joined the channel [08:37] jollyroger_: hi everybody there [08:37] [AD]Turbo: hi there [08:37] dubbe: hi [08:37] jollyroger_: fhi [08:39] msucan has joined the channel [08:40] xla has joined the channel [08:41] jollyroger_: Guys, is dbsslayer the only way to use mysql with node.js? [08:41] SubStack: sechrist: I think that thinking of the database as a separate system is part of the problem [08:42] TomY has joined the channel [08:42] jollyroger_: what you mean? [08:42] sechrist: everything is a separate system [08:42] SubStack: it should integrate well with the target language's existing data structures [08:42] sechrist: there's separate systems within the same process [08:42] sechrist: and thread even [08:42] dominic_ has joined the channel [08:43] Evet: i typed npm install npm for a fresh nodejs install [08:43] Evet: yeah i did this. [08:43] SubStack: querying should work with the same language that you're using [08:43] SubStack: bonus points for being able to use local state in the query [08:43] SubStack: have the computer figure out how that should work [08:43] sechrist: that's what orms are for! [08:43] sechrist: (and fail horribly at) [08:44] prof-freud has joined the channel [08:44] SubStack: you still get horrible impedence mismatch with ORMs [08:45] Croms_ has joined the channel [08:45] SubStack: I want to be able to do var x = 10; query(function (y) { return y < x }).on('data', fn) [08:45] SubStack: plus object graph traversals [08:46] SubStack: plus the ability to host transparent persistence on a subtree of the graph [08:46] SubStack: using something akin to harmony proxies [08:47] SubStack: nodedb [08:48] adambeynon has joined the channel [08:48] SubStack: couch views come pretty close I think [08:48] SubStack: not that I've even used couch yet >_< [08:49] romainhuet has joined the channel [08:50] insin has joined the channel [08:50] razvandimescu has joined the channel [08:50] lukegalea has joined the channel [08:51] sechrist: couch views are sweet [08:52] sechrist: and they're why i'm on the fence with riak and couch [08:52] SubStack: neo4j looks neat too [08:52] sechrist: that sounds weird [08:52] dubbe: i havn't really gotten the hang of couch after years of using mysql... [08:52] sechrist: just because of it's name, it won't be adopted [08:52] SubStack: oh wait java? blech [08:52] SubStack: disregard that [08:52] sechrist: lol [08:53] breccan has joined the channel [08:56] muhqu has joined the channel [08:56] SamuraiJack has joined the channel [08:57] tbassetto has joined the channel [08:57] liquidproof has joined the channel [08:59] exitdescription: but how do you maintain atomic transactions on couchdb ? [09:02] jollyroger_: guys [09:02] exitdescription: whut? [09:03] jollyroger_: i'm freaking out, what is the easiest database to use with node.js? [09:03] jollyroger_: mysql doesn't work goddamn, for some reason i can't install dbslayer on my server [09:03] jollyroger_: weird strange errors [09:03] dominic_ has joined the channel [09:04] mscdex: jollyroger_: you've tried node-mysql? [09:04] jollyroger_: mscdex: i read it's unstable [09:04] v8bot has joined the channel [09:04] mscdex: i haven't had any issues with it... [09:04] mscdex: and it's used in a production environment [09:05] jollyroger_: mscdex: so you recommend it over dbsslayer? [09:05] mscdex: felixge uses it in production too [09:05] mscdex: yeah [09:05] jollyroger_: allright, i'll give it a try [09:05] jollyroger_: mscdex: thanks [09:05] markwubben has joined the channel [09:05] Jonasbn_ has joined the channel [09:06] Guest67719 has joined the channel [09:06] mscdex: if you need Blob support, i have a patch for that for node-mysql [09:07] jollyroger_: no thanks [09:07] jollyroger_: not yet at least :) [09:09] lukegalea has joined the channel [09:10] erabuj has joined the channel [09:12] mytrile has joined the channel [09:13] sechrist: http://www.charliesheentopten.com/topmoment4.html [09:13] sechrist: what the hell [09:15] nivoc has joined the channel [09:16] andrewfff has joined the channel [09:17] teemow has joined the channel [09:20] lukegalea has joined the channel [09:23] seivan_ has joined the channel [09:26] brianmario has joined the channel [09:26] aabt has joined the channel [09:26] Remoun has joined the channel [09:27] andrewfff has joined the channel [09:30] flou has joined the channel [09:31] CrazyGoogle has joined the channel [09:32] seivan has joined the channel [09:32] eventi has joined the channel [09:34] jdalton has joined the channel [09:34] jdalton has left the channel [09:36] lukegalea has joined the channel [09:40] muhqu_ has joined the channel [09:40] pomodoro has joined the channel [09:42] dsirijus has joined the channel [09:43] ttpva_ has joined the channel [09:43] mysterion` has joined the channel [09:45] saikat has joined the channel [09:47] lukegalea has joined the channel [09:48] markwubben has joined the channel [09:48] msch has joined the channel [09:50] markwubben has joined the channel [09:52] jbpros has joined the channel [09:54] insin has joined the channel [09:54] mhausenblas has joined the channel [09:57] herbySk has joined the channel [09:59] mike5w3c has joined the channel [10:01] seivan has joined the channel [10:02] lukegalea has joined the channel [10:08] bzinger has joined the channel [10:08] riven has joined the channel [10:08] Egbert9e9 has joined the channel [10:10] ph^ has joined the channel [10:12] ph^_ has joined the channel [10:12] lukegalea has joined the channel [10:13] seivan has joined the channel [10:14] aklt has joined the channel [10:16] xla has joined the channel [10:18] markwubben has joined the channel [10:18] wav1 has joined the channel [10:20] micheil has joined the channel [10:21] pietern has joined the channel [10:23] andrewfff has joined the channel [10:25] Throlkim has joined the channel [10:25] ttpva has joined the channel [10:27] Adman65 has joined the channel [10:27] davidc_ has joined the channel [10:28] Nohryb has joined the channel [10:28] dominic_ has joined the channel [10:29] papyromancer has joined the channel [10:33] atiti has joined the channel [10:33] lukegalea has joined the channel [10:35] Gruni has joined the channel [10:35] saikat has joined the channel [10:35] eyesUnclouded has joined the channel [10:36] saikat has joined the channel [10:38] Astro has joined the channel [10:38] sveimac has joined the channel [10:40] mcahornsirup has joined the channel [10:41] jimt has joined the channel [10:44] kristsk has joined the channel [10:45] herenowcoder has joined the channel [10:45] johndahlstrom has joined the channel [10:46] seivan has joined the channel [10:46] rooty has joined the channel [10:48] jollyroger_ has joined the channel [10:48] jollyroger_: I'm frustrated [10:48] jollyroger_: dreamhost sucks [10:49] rooty: they do so much [10:51] unfo-: jollyroger_, how much does that cost? [10:51] jollyroger_: 15$/month for a VPS [10:51] jollyroger_: which is not too bad [10:51] jollyroger_: still, they suck [10:51] unfo-: hmmh [10:52] jollyroger_ has left the channel [10:53] aphelion has joined the channel [10:53] unfo-: should check out micro instances from EC2.. cheaper than that [10:53] unfo-: oh he left [10:54] seivan has joined the channel [10:55] breccan has joined the channel [10:59] atiti has joined the channel [10:59] jollyroger_ has joined the channel [11:01] xsyn has joined the channel [11:02] dve has joined the channel [11:06] lukegalea has joined the channel [11:06] samcday: God damn, someone needs to write a good C++ lib to abstract away all the boilerplate necessary with making async node stuff [11:07] dve: samcday: have you tried the aysnc module? [11:08] samcday: dve: Talking about C++ addons [11:08] samcday: Working with V8 directly [11:08] samcday: There's alot of boilerplate crap when you want to go into a thread [11:08] dve: ahh i see [11:09] samcday: But yeah I use that async module, it's fantastical =D [11:09] squeeks_: unfo-: you realise a micro EC2 instance works out to be $14/mo, right? [11:09] squeeks_: that's before S3, EBS, or whatever else you get on top. [11:14] hellp has joined the channel [11:17] siaoeh has joined the channel [11:18] siaoeh: Does minifying server.js files give any difference on performance? [11:18] guybrush: no [11:18] jimt has joined the channel [11:18] siaoeh: Will it give more overhead instead? [11:18] guybrush: no [11:19] siaoeh: It will be compiled n interpreted by nodejs? [11:19] guybrush: minifying js only makes sense when it comes to delivering the code to the client [11:19] guybrush: since bandwith is expensive [11:19] samcday: Actually that's an interesting question though. [11:19] guybrush: *width [11:20] samcday: Google Closure compiler actually inspects javascript and does optimizations [11:20] siaoeh: Was thinking along that line to somehow obfuscate it [11:20] samcday: Wonder if there would be a way to make it work with node code lol [11:20] floby has joined the channel [11:20] lukus has joined the channel [11:21] siaoeh: Obfuscate vs minifying does it impact performance at all? [11:21] guybrush: optimizations != minification ^^ [11:21] guybrush: those are 2 different things [11:21] samcday: guybrush: "The Closure Compiler compiles JavaScript into compact, high-performance code. The compiler removes dead code and rewrites and minimizes what's left so that it downloads and runs quickly" [11:21] guybrush: right [11:21] guybrush: so closure does minification AND optimazation [11:21] samcday: Correct [11:22] samcday: I was simply saying, if it does dead-code analysis and optimizes code paths [11:22] samcday: That might actually have a benefit for larger node projects [11:22] samcday: Would make debugging production code a bitch though [11:22] guybrush: V8 does code-optimizations as far as I know [11:22] samcday: Yes, but at compile time [11:22] jetienne: samcday: you minify only working code. dont debug it [11:23] samcday: Doing them at source level would save V8 having to do it [11:23] knirhs has joined the channel [11:23] Ian_Corne has joined the channel [11:23] samcday: jetienne: When did I say you should minify untested code? [11:23] Ian_Corne: Hello! [11:23] masahiroh has joined the channel [11:23] knirhs has left the channel [11:23] jetienne: samcday: ? [11:23] jetienne: samcday: unless you debug working code... [11:23] samcday: I said deploying Closure-compiled code to production (where you would deploy it for a speed optimization) would make debugging harder if you have issues, as you won't get correct line numbers on stack traces etc. [11:24] skohorn has joined the channel [11:24] jetienne: samcday: relax you seems touchy [11:24] jimt_ has joined the channel [11:24] samcday: Not touchy at all :) [11:24] guybrush: samcday: if there is any difference at all, it will be very minimal i guess [11:25] siaoeh2 has joined the channel [11:25] Ian_Corne: Anyone who can point me to node path? [11:25] samcday: Well this is all moot really, as I doubt closure compiled code would work for node lol [11:25] siaoeh2: Trains always cut network off don they [11:25] guybrush: mmh closure-compiled code is valid javascript, isnt it? [11:25] jetienne: Ian_Corne: what do you mean ? [11:26] jetienne: guybrush: yes [11:26] Ian_Corne: well i'm trying to install https://github.com/agnat/node_mdns/blob/master/README.textile [11:26] siaoeh2: As I was saying minifying js codes is already some level of obfuscation [11:26] Ian_Corne: and node-waf configure is failing on node path [11:26] samcday: lol sorry to hijack you siaoeh2 [11:26] siaoeh2: Lol np [11:26] samcday: Yes minfying would obfuscate [11:26] samcday: As all variable/fn names are removed [11:26] siaoeh2: At least comments are gone [11:27] samcday: well, replaced with compact ones [11:27] unfo-: squeeks_, if you use it on-demand sure, but a 1 year plan reserved is cheaper [11:27] samcday: So even if you beautified the minified JS, it'd still be fairly unreadable [11:27] siaoeh2: Sometimes u just dun find the need for ppl to know how things are done [11:27] jetienne: Ian_Corne: pastbin your error [11:27] samcday: Well if we're talking about Node code though, I don't see the point. [11:28] siaoeh2: But if obfuscation do not impact any performance, I'd rather obfuscate [11:28] samcday: If you're not gonna make it open source, it's not that easy for someone to get access to the node.js source code [11:28] mike5w3c has joined the channel [11:28] MikhX has joined the channel [11:28] siaoeh2: Wat if it's a freelance work n I dun want my clients to noe how it's done [11:29] siaoeh2: Or if they have the full source and decide to engage some cheaper vendors [11:29] siaoeh2: Just thinking along that line lol [11:29] samcday: Good point I suppose. [11:29] samcday: Would be interesting to see something like Zend encoder for Node! [11:30] Ian_Corne: http://paste.ubuntu.com/577418/ [11:30] siaoeh2: Although it defeats the opensource spirit but uglifying it n releasing it elsewhere is another thing [11:30] Ian_Corne: jetienne: ^^ [11:30] siaoeh2: Maybe someone shud test n blog about it lol [11:30] samcday: Well, yeah... But if yuo'rer doing freelance work, ethically (and probably legally), you should be handing over something they can use. [11:31] samcday: If they've paid you for deliverables, you can't really put them in vendor lock. [11:31] siaoeh2: It depends on t&c I guess [11:31] jetienne: inarru: dns_sd.h this is what you need [11:32] Ian_Corne: ah [11:32] q_no has joined the channel [11:32] siaoeh2: Or wat if they let someone else handle another phase and screws up something n u have to come in to fix their part n redo wat they supposed to [11:32] Ian_Corne: and any idea in which package I can find that? (ubuntu) [11:32] jetienne: Ian_Corne: looking [11:32] Ian_Corne: ok thanks! [11:33] siaoeh2: Maybe I shud read up more or ask the contributors if that makes any difference in performance lol [11:33] dsirijus has joined the channel [11:33] jetienne: sudo apt-get install libavahi-compat-libdnssd-dev <- Ian_Corne try this [11:34] Ian_Corne: yes I found it too [11:34] Ian_Corne: thanks :) [11:34] jetienne: Ian_Corne: it works ? [11:34] Ian_Corne: configure works now [11:34] Ian_Corne: but [11:34] Ian_Corne: Checking for function DNSServiceGetAddrInfo : not found [11:34] Ian_Corne: but it worked with npm too now [11:35] Ian_Corne: so it's all good :)) [11:35] jetienne: Ian_Corne: cool :) [11:35] Ian_Corne: I'll keep lurking here [11:36] Ian_Corne: anyone know of a ppa for nodejs? the one in the natty repo is quite old [11:37] jimt has joined the channel [11:39] jetienne: sudo add-apt-repository ppa:jerome-etienne/neoip && sudo apt-get update && sudo apt-get install nodejs [11:39] jetienne: Ian_Corne: it will install 0.4.2 [11:39] jetienne: Ian_Corne: i maintain the stable branch in .deb [11:39] Ian_Corne: also for the main archive? [11:39] jetienne: Ian_Corne: nope just the ppa [11:40] jetienne: main archive got many rules which make recent node.js impossible [11:40] Ian_Corne: oh [11:40] Ian_Corne: ok [11:40] erabuj has joined the channel [11:40] Ian_Corne: I've installed it from source now, so it's ok but it's good to know :) [11:40] jetienne: ok [11:41] Ian_Corne: since there's no uninstall created [11:41] p0ns has joined the channel [11:43] jetienne: Ian_Corne: cd /path/to/node && make uninstall <- this should work [11:44] floby: jetienne: ping [11:44] jetienne: floby: pon g [11:44] floby: jetienne: I'm not sure but I think you speak french right ? [11:44] jetienne: floby: i do [11:44] SamuraiJack_ has joined the channel [11:44] Ian_Corne: aha ok [11:45] floby: jetienne: cool, do you know if there is any repository for the translation of nodejs docs ? [11:45] jollyroger_ has joined the channel [11:45] aphelion has joined the channel [11:45] d0k has joined the channel [11:45] Ian_Corne: aha jetienne you don't have a natty build yet :) [11:45] floby: jetienne: because I've been starting on my own a french branch on my fork [11:45] jetienne: floby: nope. i dont. i spoke to a guy in charge of node doc. i dont remember his name. isaacs were talking about translation yesterday. i dunno more [11:46] jetienne: floby: good :) [11:46] jetienne: Ian_Corne: natty = ? [11:46] Ian_Corne: ubuntu 11.04 [11:46] Ian_Corne: development version [11:47] jetienne: ah ok, no :) i stick to stable everything :) [11:47] floby: jetienne: so if you or another french speaker want to help, you can pull request me ;) [11:47] jetienne: floby: ask on #parisjs, maybe some people may be interested. there is a mailing list too [11:47] floby: jetienne: good idea [11:48] seivan_ has joined the channel [11:50] jimt has joined the channel [11:51] Ian_Corne: well jetienne it's not really an issue, I just use the maverick ppa then :) [11:51] malkomalko has joined the channel [11:52] jetienne: :) [11:53] fly-away has joined the channel [11:54] devrim has joined the channel [11:55] RusAlex has joined the channel [11:55] RusAlex: hi progressive guys [11:57] masahiroh has joined the channel [11:58] fermion has joined the channel [11:59] kristsk: uh huh [11:59] anno^da has joined the channel [12:00] teemow has joined the channel [12:02] anno^da has left the channel [12:06] tc77 has joined the channel [12:06] seivan has joined the channel [12:07] mickaelz has joined the channel [12:09] fermion has joined the channel [12:11] eee_c has joined the channel [12:12] ennay has joined the channel [12:18] ennay has left the channel [12:20] mraleph has joined the channel [12:21] nyholt has joined the channel [12:23] FireFly|n900 has joined the channel [12:24] wav1 has joined the channel [12:25] dberlinger has joined the channel [12:30] lukegalea has joined the channel [12:32] __tosh has joined the channel [12:39] fisted has joined the channel [12:39] kkaefer has joined the channel [12:39] chiel has joined the channel [12:39] stepheneb has joined the channel [12:39] FunkyFortune has joined the channel [12:39] Gruni has joined the channel [12:39] adelcambre has joined the channel [12:39] Bonuspunkt has joined the channel [12:39] andrewfff has joined the channel [12:39] iFire has joined the channel [12:39] mlncn has joined the channel [12:39] __tosh has joined the channel [12:39] dberlinger has joined the channel [12:39] wav1 has joined the channel [12:39] FireFly|n900 has joined the channel [12:39] nyholt has joined the channel [12:39] mraleph has joined the channel [12:39] eee_c has joined the channel [12:39] fermion has joined the channel [12:39] seivan has joined the channel [12:39] tc77 has joined the channel [12:39] teemow has joined the channel [12:39] RusAlex has joined the channel [12:39] devrim has joined the channel [12:39] fly-away has joined the channel [12:39] jimt has joined the channel [12:39] d0k has joined the channel [12:39] jollyroger_ has joined the channel [12:39] SamuraiJack_ has joined the channel [12:39] erabuj has joined the channel [12:39] q_no has joined the channel [12:39] MikhX has joined the channel [12:39] mike5w3c has joined the channel [12:39] Ian_Corne has joined the channel [12:39] lukus has joined the channel [12:39] hellp has joined the channel [12:39] xsyn has joined the channel [12:39] atiti has joined the channel [12:39] rooty has joined the channel [12:39] johndahlstrom has joined the channel [12:39] herenowcoder has joined the channel [12:39] kristsk has joined the channel [12:39] mcahornsirup has joined the channel [12:39] Astro has joined the channel [12:39] eyesUnclouded has joined the channel [12:39] papyromancer has joined the channel [12:39] dominic_ has joined the channel [12:39] davidc_ has joined the channel [12:39] Adman65 has joined the channel [12:39] ttpva has joined the channel [12:39] Throlkim has joined the channel [12:39] pietern has joined the channel [12:39] markwubben has joined the channel [12:39] xla has joined the channel [12:39] aklt has joined the channel [12:39] ph^_ has joined the channel [12:39] Egbert9e9 has joined the channel [12:39] bzinger has joined the channel [12:39] herbySk has joined the channel [12:39] mhausenblas has joined the channel [12:39] mysterion` has joined the channel [12:39] muhqu has joined the channel [12:39] CrazyGoogle has joined the channel [12:39] flou has joined the channel [12:39] Remoun has joined the channel [12:39] aabt has joined the channel [12:39] nivoc has joined the channel [12:39] Guest67719 has joined the channel [12:39] Jonasbn_ has joined the channel [12:39] v8bot has joined the channel [12:39] liquidproof has joined the channel [12:39] tbassetto has joined the channel [12:39] romainhuet has joined the channel [12:39] adambeynon has joined the channel [12:39] TomY has joined the channel [12:39] msucan has joined the channel [12:39] ukev has joined the channel [12:39] [AD]Turbo has joined the channel [12:39] kal-EL_ has joined the channel [12:39] mkopras has joined the channel [12:39] mAritz has joined the channel [12:39] mekazu has joined the channel [12:39] Druid_ has joined the channel [12:39] V1 has joined the channel [12:39] bergie has joined the channel [12:39] zum has joined the channel [12:39] swistak has joined the channel [12:39] luke` has joined the channel [12:39] troessner has joined the channel [12:39] emattias has joined the channel [12:39] fangel has joined the channel [12:39] mikeal has joined the channel [12:39] sivy has joined the channel [12:39] sechrist has joined the channel [12:39] dubbe has joined the channel [12:39] groom has joined the channel [12:39] Yuffster_work has joined the channel [12:39] Lagnus has joined the channel [12:39] liar has joined the channel [12:39] Qix_ has joined the channel [12:39] mattikus has joined the channel [12:39] aho has joined the channel [12:39] dspree has joined the channel [12:39] ryankirkman has joined the channel [12:39] siculars has joined the channel [12:39] Guest30242 has joined the channel [12:39] FireFly has joined the channel [12:39] dthompson has joined the channel [12:39] aways|bnc has joined the channel [12:39] Spion_ has joined the channel [12:39] sub_pop has joined the channel [12:39] mjr_ has joined the channel [12:39] cognominal has joined the channel [12:39] inimino has joined the channel [12:39] brianc has joined the channel [12:39] Nacho has joined the channel [12:39] rudebwoy has joined the channel [12:39] elliottcable has joined the channel [12:39] [tm] has joined the channel [12:39] bruse has joined the channel [12:39] framlin has joined the channel [12:39] apoc has joined the channel [12:39] olegp has joined the channel [12:39] raidfive has joined the channel [12:39] bartt has joined the channel [12:39] jacobolus has joined the channel [12:39] wilmoore has joined the channel [12:39] exitdescription has joined the channel [12:39] sprout has joined the channel [12:39] AAA_awright has joined the channel [12:39] bradleymeck2 has joined the channel [12:39] matyr_ has joined the channel [12:39] jetheredge has joined the channel [12:39] stalled has joined the channel [12:39] riven has joined the channel [12:39] [[zz]] has joined the channel [12:39] terite has joined the channel [12:39] julienXX has joined the channel [12:39] fusspawn has joined the channel [12:39] hunterloftis has joined the channel [12:39] randallagordon has joined the channel [12:39] kenbolton has joined the channel [12:39] polyrhythmic has joined the channel [12:39] jlewis has joined the channel [12:39] xSmurf has joined the channel [12:39] omni5cience has joined the channel [12:39] tbranyen has joined the channel [12:39] dschn has joined the channel [12:39] gsf has joined the channel [12:39] jiveB has joined the channel [12:39] orospakr has joined the channel [12:39] Nevtus has joined the channel [12:39] Chunk has joined the channel [12:39] nilyt has joined the channel [12:39] pedrobelo has joined the channel [12:39] SeanBannister has joined the channel [12:39] tg has joined the channel [12:39] jetienne has joined the channel [12:39] MrNibblesFreenod has joined the channel [12:39] sav has joined the channel [12:39] c4milo has joined the channel [12:39] forzan has joined the channel [12:39] jjardon has joined the channel [12:39] gf3 has joined the channel [12:39] Twelve-60 has joined the channel [12:39] comster has joined the channel [12:39] abraham has joined the channel [12:39] aconran has joined the channel [12:39] cce_ has joined the channel [12:39] Aikar has joined the channel [12:39] eresair has joined the channel [12:39] pastak has joined the channel [12:39] gormer has joined the channel [12:39] slloyd has joined the channel [12:39] mrdonald has joined the channel [12:39] killfill has joined the channel [12:39] aelaguiz_ has joined the channel [12:39] L4rd0 has joined the channel [12:39] bwinton has joined the channel [12:39] throughnothing has joined the channel [12:39] dylang has joined the channel [12:39] bradleymeck has joined the channel [12:39] daleharvey has joined the channel [12:39] boaz has joined the channel [12:39] zzak has joined the channel [12:39] Vertice has joined the channel [12:39] PyroPeter has joined the channel [12:39] larsemil has joined the channel [12:39] phiggins has joined the channel [12:39] squeeks_ has joined the channel [12:39] Nomon has joined the channel [12:39] mif86 has joined the channel [12:39] ntelford has joined the channel [12:39] raz has joined the channel [12:39] sugardave has joined the channel [12:39] arkx has joined the channel [12:39] slickplaid has joined the channel [12:39] jtrally has joined the channel [12:39] heavysixer has joined the channel [12:39] justis_ has joined the channel [12:39] strimpaz_ has joined the channel [12:39] shajith_ has joined the channel [12:39] mrkurt has joined the channel [12:39] vilhonen_ has joined the channel [12:39] dispalt_ has joined the channel [12:39] sugyan_ has joined the channel [12:39] jesusabdullah has joined the channel [12:39] __sri has joined the channel [12:39] sstreza has joined the channel [12:39] gredman_ has joined the channel [12:39] caligula__ has joined the channel [12:39] meso_ has joined the channel [12:39] disq has joined the channel [12:39] hobs has joined the channel [12:39] Atmoz has joined the channel [12:39] loktar has joined the channel [12:39] kawaz_home has joined the channel [12:39] mischief has joined the channel [12:39] unlink has joined the channel [12:39] sonnym has joined the channel [12:39] jeromegn has joined the channel [12:39] narph has joined the channel [12:39] TheCowboy has joined the channel [12:39] kloeri has joined the channel [12:39] freeformz has joined the channel [12:39] ruxpin has joined the channel [12:39] mikegerwitz has joined the channel [12:39] ryah has joined the channel [12:39] robarnold has joined the channel [12:39] zmack has joined the channel [12:39] devinus has joined the channel [12:39] sadiq has joined the channel [12:39] mikeputnam has joined the channel [12:39] adamholt has joined the channel [12:39] Martz has joined the channel [12:39] ekes has joined the channel [12:39] vuliev has joined the channel [12:39] persson_ has joined the channel [12:39] aakour_ has joined the channel [12:39] chilts has joined the channel [12:39] russell_h has joined the channel [12:39] grncdr has joined the channel [12:39] MiiCode2 has joined the channel [12:39] wang has joined the channel [12:39] Crshman has joined the channel [12:39] pkrumins has joined the channel [12:39] gkatsev has joined the channel [12:39] Sembianc1 has joined the channel [12:39] ajpiano has joined the channel [12:39] benatkin has joined the channel [12:39] rajab has joined the channel [12:39] sstephenson has joined the channel [12:39] mattijs_ has joined the channel [12:39] mscdex has joined the channel [12:39] temp01 has joined the channel [12:39] peol has joined the channel [12:39] zilt has joined the channel [12:39] cloudhead has joined the channel [12:39] beawesomeinstead has joined the channel [12:39] dans has joined the channel [12:39] bengl has joined the channel [12:39] cyraxx has joined the channel [12:39] RichardJ has joined the channel [12:39] brianloveswords has joined the channel [12:39] cainus has joined the channel [12:39] gwoo has joined the channel [12:39] SvenDowideit has joined the channel [12:39] JeremyCL has joined the channel [12:39] Sami_ZzZ_ has joined the channel [12:39] triel has joined the channel [12:39] wdperson has joined the channel [12:39] mediacoder has joined the channel [12:39] pt_tr has joined the channel [12:39] mrlase has joined the channel [12:39] hoodoos has joined the channel [12:39] ringomanatee has joined the channel [12:39] borgling has joined the channel [12:39] asdfsafdsa has joined the channel [12:39] mnbvasd has joined the channel [12:39] jan____ has joined the channel [12:39] rbranson has joined the channel [12:39] slaskis has joined the channel [12:39] viirya has joined the channel [12:39] ivan has joined the channel [12:39] joshthecoder has joined the channel [12:39] couchquid has joined the channel [12:39] figital has joined the channel [12:39] sigue has joined the channel [12:39] jimmyz2 has joined the channel [12:39] oninoshiko has joined the channel [12:39] samcday has joined the channel [12:39] boucher has joined the channel [12:39] mlangenberg has joined the channel [12:39] aegir has joined the channel [12:39] CIA-75 has joined the channel [12:39] akl has joined the channel [12:39] Tobias| has joined the channel [12:39] sth has joined the channel [12:39] blowery has joined the channel [12:39] deoxxa has joined the channel [12:39] tsyd has joined the channel [12:39] ollie has joined the channel [12:39] skrug has joined the channel [12:39] tmm1 has joined the channel [12:39] halfhalo has joined the channel [12:39] jakob has joined the channel [12:39] Guest42813 has joined the channel [12:39] cferris has joined the channel [12:39] konobi has joined the channel [12:39] cilantro has joined the channel [12:39] gmci has joined the channel [12:39] DoNaLd` has joined the channel [12:39] Connorhd has joined the channel [12:39] dantalizing has joined the channel [12:39] L_star has joined the channel [12:39] moneal_ has joined the channel [12:39] walkah has joined the channel [12:39] Blackguard has joined the channel [12:39] sr has joined the channel [12:39] maru_cc__ has joined the channel [12:39] lstoll has joined the channel [12:39] superdug has joined the channel [12:39] barodeur has joined the channel [12:39] tswicegood has joined the channel [12:39] Epeli has joined the channel [12:39] chapel has joined the channel [12:39] mlins has joined the channel [12:39] astralab_ has joined the channel [12:39] brianm has joined the channel [12:39] gaYak has joined the channel [12:39] jwm has joined the channel [12:39] linkmauve has joined the channel [12:39] Minos has joined the channel [12:39] mmso has joined the channel [12:39] andoma has joined the channel [12:39] themcgruff has joined the channel [12:39] stynx_ has joined the channel [12:39] termie has joined the channel [12:39] rjack has joined the channel [12:39] geoffeg_ has joined the channel [12:39] hdon has joined the channel [12:39] zaiste has joined the channel [12:39] paulrollo has joined the channel [12:39] tanepiper has joined the channel [12:39] MikeW has joined the channel [12:39] webben has joined the channel [12:39] mape has joined the channel [12:39] RushPL has joined the channel [12:39] franck34 has joined the channel [12:39] jakeskik has joined the channel [12:39] ybit has joined the channel [12:39] zined_ has joined the channel [12:39] kei has joined the channel [12:39] hoodow has joined the channel [12:39] brainproxy_ has joined the channel [12:39] Slashbunny has joined the channel [12:39] MaSch has joined the channel [12:39] cha0s has joined the channel [12:39] Prometheus has joined the channel [12:39] rphillips_ has joined the channel [12:39] pzich has joined the channel [12:39] spaceinvader has joined the channel [12:39] matt_c has joined the channel [12:39] lianj_ has joined the channel [12:39] jspiros has joined the channel [12:39] KrooniX has joined the channel [12:39] leoric has joined the channel [12:39] rjbs- has joined the channel [12:39] tmzt_ has joined the channel [12:39] pekim_ has joined the channel [12:39] janne- has joined the channel [12:39] cnu has joined the channel [12:39] TheEmpath2 has joined the channel [12:39] wao has joined the channel [12:39] kawaz_work has joined the channel [12:39] fromz has joined the channel [12:39] zhware has joined the channel [12:39] ysynopsis has joined the channel [12:39] FMJaggy has joined the channel [12:39] marienz has joined the channel [12:39] Kudos has joined the channel [12:39] nuba has joined the channel [12:39] rednul has joined the channel [12:39] marcab has joined the channel [12:39] jbergstroem has joined the channel [12:39] neshaug has joined the channel [12:39] joeshaw has joined the channel [12:39] criswell has joined the channel [12:39] s0enke has joined the channel [12:39] ashb has joined the channel [12:39] doki_pen has joined the channel [12:39] doffm has joined the channel [12:39] shachaf has joined the channel [12:39] chrisdickinson has joined the channel [12:39] addisonj has joined the channel [12:39] meder has joined the channel [12:39] Lorentz has joined the channel [12:39] tomaw has joined the channel [12:39] onar has joined the channel [12:39] crodas has joined the channel [12:39] benvie has joined the channel [12:39] ivanfi has joined the channel [12:39] tylergillies has joined the channel [12:39] micxer has joined the channel [12:39] zedas has joined the channel [12:39] thermal has joined the channel [12:39] petermanser_ has joined the channel [12:39] gbot2 has joined the channel [12:39] johnnywengluu has joined the channel [12:39] justin____ has joined the channel [12:39] Kinbote_ has joined the channel [12:39] keeto has joined the channel [12:39] ircretary has joined the channel [12:39] badas has joined the channel [12:39] eirikur has joined the channel [12:39] ddollar has joined the channel [12:39] Ezku\ has joined the channel [12:39] inarru has joined the channel [12:39] synoptase`off has joined the channel [12:39] steadicat has joined the channel [12:39] tux21b has joined the channel [12:39] voodootikigod has joined the channel [12:39] chrischris_dcon has joined the channel [12:39] beppu has joined the channel [12:39] wereHamster has joined the channel [12:39] jperras has joined the channel [12:39] er1c_ has joined the channel [12:39] Kami_ has joined the channel [12:39] wink_ has joined the channel [12:39] guybrush has joined the channel [12:39] coffeecup has joined the channel [12:39] Pilate has joined the channel [12:39] scoates has joined the channel [12:39] morgabra has joined the channel [12:39] stride has joined the channel [12:39] thedjinn has joined the channel [12:39] pquerna has joined the channel [12:39] sucaba-524 has joined the channel [12:39] sanslocust has joined the channel [12:39] Draggor has joined the channel [12:39] SubStack has joined the channel [12:39] krazyivan has joined the channel [12:39] niclone has joined the channel [12:39] dorkitud1 has joined the channel [12:39] roger_raymond has joined the channel [12:39] hipe has joined the channel [12:39] bluegene has joined the channel [12:39] drudge has joined the channel [12:39] NickP has joined the channel [12:39] Hadaka has joined the channel [12:39] nail_ has joined the channel [12:39] frodenius has joined the channel [12:39] DoubleV has joined the channel [12:39] naneau has joined the channel [12:39] darklajid has joined the channel [12:39] augustl has joined the channel [12:39] kig has joined the channel [12:39] Roelven has joined the channel [12:39] Throlkim has joined the channel [12:41] lukegalea has joined the channel [12:44] hij1nx has joined the channel [12:46] L4rd0: which mysql module do yall recommend? [12:47] L4rd0: looking at dbslayer atm, but bit worried that it has been in beta since 2007 [12:47] kristsk: i have this in production: https://github.com/Sannis/node-mysql-libmysqlclient [12:48] RusAlex: kristsk: in which production ? [12:49] L4rd0: thanks kristsk, probably a safer option... [12:49] kristsk: in production which makes a some money. [12:49] eventi has joined the channel [12:51] [AD]Turbo has joined the channel [12:54] lukegalea has joined the channel [13:01] siaoeh2 has joined the channel [13:02] Croms has joined the channel [13:02] gozala has joined the channel [13:03] zomgbie has joined the channel [13:03] dnolen has joined the channel [13:03] Croms_ has joined the channel [13:04] lukegalea has joined the channel [13:07] eventi: express connect dependency hell [13:07] mauritslamers has joined the channel [13:08] dubbe: eventi: agreed! [13:08] eventi: copied all versions from laptop to ubuntu, getting https not found [13:08] eventi: from connect.js [13:08] eventi: ugh [13:09] eventi: I'm even doing epress@1.0.7 and connect@0.5.10 [13:09] eventi: *express [13:09] dubbe: try node 0.4.1 [13:10] eventi: yeah? I tried 0.4.2 and 0.4.0 (laptop version) and stable [13:10] eventi: might as well [13:10] dubbe: i got it working with node 0.4.1 express@1.0.7 and connect@0.5.10 [13:10] eventi: i had 0.4.0 in dev [13:10] eventi: ACTION is now saying "Works in dev" [13:11] eventi: hurts as a sysadmin to say that [13:11] dubbe: :) [13:11] eventi: what are you using for diff node versions? I'm using nave [13:11] eventi: seems ok [13:12] eventi: no.de seems to do some magic with environments [13:12] floby has joined the channel [13:13] eb4890 has joined the channel [13:13] hij1nx has joined the channel [13:14] dubbe: i installed something called n [13:14] dubbe: i am pretty noob with node.js, started last week :) [13:14] hij1nx has joined the channel [13:15] dberlinger has joined the channel [13:15] jmar777 has joined the channel [13:15] eventi: ugh [13:15] eventi: no dice [13:15] eventi: I'm going to try npm bundle [13:17] lukegalea has joined the channel [13:17] dubbe: yeah, i used npm to install n, express and connect [13:18] jbpros has joined the channel [13:19] Sembiance: hrm, I think I'm the only one who doesn't use npm. [13:20] Sembiance: I just like being able to control exactly where the source is, what version it is (latest git clone or a fork, etc). Plus I've come across 1 or 2 packages where the author would warn users not to use the npm version for various reasons. Seems like it's just all around safer to handle it manually. [13:21] dubbe: Sembiance: I like the simplicity of it [13:21] Sembiance: I guess maybe in a year or two when there is dependencies all over the place and I'm using a ton more modules than I do today (5) then maybe I'll use it :) [13:21] eventi: seems like I'll have to go that route [13:21] kriszyp has joined the channel [13:22] dubbe: eventi: have you tried express@1.0.8 from git? [13:22] eventi: not yet [13:22] eventi: I'll try anything at this point [13:23] squeeks_: I hear cocaine is a hell of a drug [13:23] dubbe: eventi: try it... it should have better support newer node and connect, the reason i couldn't insall it was npm's fault [13:23] floby has joined the channel [13:23] eventi: I just finished cloning it - gotta switch trains - i'll keep you posted [13:24] astoon has joined the channel [13:24] siaoeh2 has joined the channel [13:25] gormer has joined the channel [13:31] eventi has joined the channel [13:31] jimt_ has joined the channel [13:35] tiemonster has joined the channel [13:38] lukegalea has joined the channel [13:38] zachsmith has joined the channel [13:40] Aikar: hmm, this cloud9 has alot of potential but still alot to go [13:40] xandrews has joined the channel [13:42] samcday: Aikar, Agreed [13:42] samcday: It's pretty amazing already imo, but still lacking a lot of stuff before I'd move from Eclipse [13:43] Aikar: lil bold to say "all the features eclipse etc provides" and then it doesnt even have code completion yet lol.... [13:43] Aikar: thats... kind of a big thing [13:43] samcday: Yeah it is [13:44] samcday: Also I wasn't necessarily saying it has to have *everything* Eclipse does [13:44] samcday: I don't use even 10% of the shit Eclipse provides lol [13:44] samcday: But right now Cloud9 is like, 0.001% of Eclipse :P [13:44] eventi: dubbe: no dice [13:44] Aikar: oh your one of the devs? lol. well i mean that code completion is like a first requirement of an ide [13:44] samcday: When it gets to 0.005% of Eclipse it will be fantastic! [13:44] samcday: No I'm not hehe [13:44] eventi: now arriving in penn station NY [13:44] dubbe: eventi: darn [13:44] samcday: I'm agreeing that code completion is a big deal, and also a big development project [13:44] eventi: ughh deps suck [13:44] Aikar: ah [13:45] perlmonkey2 has joined the channel [13:45] samcday: Then again - code completion in Eclipse javascript IDE sucks man. [13:45] samcday: If you don't use prototypes for all your declarations, most of your stuff won't come up in code complete anyway [13:45] Aikar: the way you said "also I wasn't necessarily saying" i thought you meant you wrote the line on the cloud9 desc :P [13:45] samcday: orite! lol [13:45] samcday: bleary eyed - sorry for any confusion [13:45] samcday: i'm confusing myself just by staying awake tbh [13:46] Aikar: yeah i only tested PHP files so far, i just got it working. master is broken, but tag 0.2.0 least semi works [13:46] samcday: I got a beta invite [13:46] samcday: The beta is fairly stable, there must be stuff on the site that isn't in the github [13:46] samcday: or something [13:46] Aikar: seems lil silly to have a 'private beta' for FOSS... [13:46] fumanchu182 has joined the channel [13:47] samcday: holy shit [13:47] samcday: the website has already changed [13:47] samcday: They're al;ready selling it [13:47] mikegerwitz: Aikar: not entirely. That's the whole cathedral vs bazaar concept [13:47] Aikar: "hey lets release the code in its current state and let people test, but only let a few people test the REAL latest changes, and lets leave master in a broken state"... doesnt make much sense lol [13:47] floby: viù does code completion =) [13:47] floby: vim* [13:48] samcday: Well, they're obviously trying to make a product out of it, which is fair enough [13:48] Emmanuel__ has joined the channel [13:48] Aikar: samcday: yeah selling it with them hosting the process [13:48] samcday: Good on them for releasing so much as open source ;D [13:48] Aikar: free if you run your own [13:48] Sorella has joined the channel [13:48] Aikar: or free for open source projects hosted on their server [13:48] mikegerwitz: floby++ :) [13:48] samcday: Mmm [13:48] jimt has joined the channel [13:48] Aikar: afk going to work, be back in 25~ :P [13:49] samcday: haha =D [13:49] floby: mikegerwitz: although I don't use it. for javascript I mainly use snipmate and the built-in silly code completion. [13:50] floby: "code completion" being "word completion" [13:51] davidc_ has joined the channel [13:52] mikegerwitz: floby: Heh, ah :) I use vim for everything that can be opened in a text editor [13:52] paul_k has joined the channel [13:52] floby: mikegerwitz: same here, I read my logs in vim rather than grepping them [13:53] Jonasbn_ has joined the channel [13:53] mikegerwitz: floby: Ah I don't go so far as to do that (unless I'm piping grep output to it, but I normally just use less unless I want syntax highlighting) [13:54] FireFly|n900 has joined the channel [13:55] floby: mikegerwitz: true. I only do it when people are watching so I can look cool at mastering my vim [13:56] jlecker has joined the channel [13:56] mikegerwitz: floby: haha [13:59] Nohryb has joined the channel [13:59] eventi has joined the channel [14:00] dyer has joined the channel [14:00] charlenopires has joined the channel [14:01] MattJ has joined the channel [14:01] tmpvar has joined the channel [14:01] jollyroger_ has joined the channel [14:02] drostie has joined the channel [14:02] amacleod has joined the channel [14:02] jollyroger_ has left the channel [14:03] dominic_ has joined the channel [14:03] chillfactor has joined the channel [14:04] lukegalea has joined the channel [14:04] bmavity has joined the channel [14:05] malkomalko has joined the channel [14:05] Druid_ has joined the channel [14:05] rooty has joined the channel [14:06] lukegalea: Good morning all [14:06] malkomalko: morning luke [14:06] mscdex: possibly [14:06] lukegalea: I have an interesting problem today :) [14:06] lukegalea_ has joined the channel [14:06] lukegalea: We have an *awful* cisco load balancer in front of all our infrastructure. [14:07] lukegalea: We have a sneaking suspicion that high connection loads that are fine in testing directly with node will cause our LB to fail. [14:07] lukegalea: What tools are people using to test c10k connection loads? [14:07] tmpvar: what model is the lb? [14:07] lukegalea: lemme check. [14:07] lukegalea: but I'm guessing ab -n 100000 -c 10000 http://blah isn't going to work :) [14:07] kristsk: wasnt siege or somth ? [14:07] jimt has joined the channel [14:08] tmpvar: siege may work [14:08] chillfactor has left the channel [14:08] kristsk: dunnno if 1 source will be enought thou [14:08] tmpvar: or you might want to write something that does what you want (easy with node) [14:08] eventi: lukegalea: you'll run outta fd's in the client [14:09] lukegalea: it's a css 11501 [14:09] lukegalea: total piece of crap. Can't terminate ssl, etc.. [14:09] trotter has joined the channel [14:09] lukegalea: I'll take a look at siege. I'm okay with multiple sources. [14:09] matschaffer has joined the channel [14:09] lukegalea: I'm actually trying to simulate long polling requests. [14:09] lukegalea: If I can't find a tool, I'll just write something in node. [14:09] lukegalea: I'm guessing a single node client could handle more than 10k requests. [14:10] kristsk: depends. [14:10] eventi: eventi: ^^^^^^ [14:10] eventi: you'll run outta file descriptors [14:10] lukegalea: hmm... [14:10] troessner has joined the channel [14:10] lukegalea: I was thinking of ephemeral ports.. I could increase that to > 10k... [14:11] lukegalea: but FDs are an issue as well eh? [14:11] eventi: yeah - bites us all [14:12] lukegalea: It's funny that for all the buzz around the term c10k there isn't a clear testing mechanism for it. [14:12] kristsk: ulimit -n or somth, if you can. [14:12] lukegalea: aah.. http://engineering.monetate.com/do-c10k-testing-with-gevent [14:12] kristsk: it wont open :/ [14:12] lukegalea: weird. fine for me. [14:13] lukegalea: anyway.. that link describes a python way to do it using ec2.. But I might just stick with node for this. I'll give it a go and report back. [14:15] jlecker has joined the channel [14:15] maushu has joined the channel [14:16] prof-freud has joined the channel [14:17] Venom_X has joined the channel [14:18] mlncn has joined the channel [14:20] seivan has joined the channel [14:26] PyroPeter has joined the channel [14:28] L4rd0: CSS11501 Maximum concurrent connections per I/O module: 200000 with 256-MB RDRAM [14:29] lukegalea_ has joined the channel [14:30] L4rd0: Used to use them before we moved to the cloud... [14:30] dyer has joined the channel [14:31] mbrochh has joined the channel [14:31] mbrochh has joined the channel [14:31] jmar777: Someone please fill in the blank, there HAS to be a word for this. _________ refers to the synchronous or asynchronous nature of the element. [14:31] AphelionZ has joined the channel [14:31] jmar777: the word that "sounds" right is something like synchronicity, but that's not it... [14:32] squeeks_: Congratulations, you've now made a lot of people worldwide scratch their heads and become slightly confused. [14:32] dberlinger has joined the channel [14:32] jmar777: hehe [14:33] jmar777: having a hard time describing. Imagine this question: "Hey squeeks, what is the _______ of http.get()". To which, you would say "http.get is asynchronous" [14:34] davidsklar has joined the channel [14:34] squeeks_: You know, in the world of node, unless stipulated, everything is async unless specified otherwise. Even then you shove it on event watch where a mugshot of the method name will get pranced around.. sorry got carried away there. [14:35] jmar777: lol [14:35] jmar777: this is driving me nuts. i know there's a word, somewhere... [14:35] jmar777: if not, i think it's high time we make one [14:37] lukegalea: jmar777: apparently synchronousness is a word. [14:37] squeeks_: Sounds a bit too big for my vocab. [14:37] lukegalea: heheh [14:37] jmar777: lukegalea: ha, sounds made up. i didn't even think to search for it [14:38] squeeks_: I'd just say "is http.get() blocking?" or "is http.get() asynchronous" [14:38] erabuj has joined the channel [14:38] montylounge has joined the channel [14:40] jmar777: IT EXISTS!!! http://en.wikipedia.org/wiki/Asynchrony [14:40] erabuj_ has joined the channel [14:40] squeeks_: The more you know. [14:40] ttpva has joined the channel [14:41] maushu has joined the channel [14:41] jmar777: pardon the caps - you don't know the pain that was responsible for. [14:41] thecarlhall has joined the channel [14:41] devrim has joined the channel [14:41] zzak: asyncrommunism [14:42] jmar777: "Did you mean asean communism?" lol [14:42] zzak: haha [14:42] thecarlhall has left the channel [14:43] Sembiance: rofl [14:43] floby: git push [14:43] Sembiance: floby: fast forward error [14:43] floby: wow that wasn't even close to the right window [14:43] pascaloptiz has joined the channel [14:43] lukegalea_ has joined the channel [14:44] Gregor: lukegalea, jmar777: All words are made up, they exist if they're useful. I'm sure synchrounesness wasn't a word twenty years ago. [14:44] Gregor: Hm, it's 2011 ... make that forty years :P [14:45] floby: I think synchrony exists before [14:45] colinclark has joined the channel [14:45] floby: existed* [14:45] hwinkel has joined the channel [14:45] lukegalea: The dictionary says it's the noun version of synchronous.... I always knew that verbing weirds language, but it appears that nouning weirds language too. [14:45] jmar777: i'm sure that etymologists have had their hands full for the last couple decades... [14:45] Gregor: Synchronesness, synchronicity and synchrony are all subtly different :P [14:45] lukegalea: sorry.. nounness weirds language. [14:46] lukegalea: or maybe nounness begets the weirding of language?? [14:46] zzak: i speeek gewd [14:47] jmar777: need to write a blog post on Synchroncity, synchrony, asynchrony, synchronesness, and asean communism [14:47] zzak: start a new framework, call it castro [14:47] lukegalea: If there were lightning talks for node conf that would be a good topic. [14:47] lukegalea: are there? [14:47] jmar777: zzak: haha [14:48] jimt_ has joined the channel [14:48] floby: one could also write a song about synchrony and asynchrony living together in perfect harmony [14:48] link has joined the channel [14:49] dberlinger has joined the channel [14:49] bradleymeck1 has joined the channel [14:50] jasong_at_apache has joined the channel [14:50] jmar777: ACTION whistles "... you never give me your synchrony..." [14:50] okuryu has joined the channel [14:50] jpstrikesback has joined the channel [14:51] floby: jmar777: you only give my your funny pointers [14:51] jmar777: floby: hahaha - i was hating myself for not thinking of a second half [14:52] floby: floby: I've been thinking for a minute too. [14:52] mytrile has joined the channel [14:52] floby: damned not floby: jmar777 ^^^ [14:52] mkrecny has joined the channel [14:52] jmar777: "...and in the middle of continuations, you block" [14:53] floby: jmar777: doesn't fit in the melody does it? [14:53] jmar777: guess it's a beat short... [14:53] floby: jmar777: and in the middle of continuations you dead block ? [14:53] floby: dead lock* [14:54] lexnihilo has joined the channel [14:54] jmar777: "i never give you my fd..." ok, sorry everyone [14:54] timmywil has joined the channel [14:54] floby: ^^ [14:54] floby: jmar777: I can go on for the whole song [14:55] wilmoore has joined the channel [14:55] strmpnk has joined the channel [14:55] eee_c has joined the channel [14:55] rfay has joined the channel [14:56] pillowfactory has joined the channel [14:56] pillowfactory has left the channel [14:57] lexnihilo: hi all, quick question - is there any way to prevent node from printing stack trace and exiting when a http.request gets ECONNRESET? I tried adding an error listener to the socket already. [14:58] lessthanzero has joined the channel [14:58] ncb000gt has joined the channel [14:59] mlncn has joined the channel [14:59] L4rd0: try "forever install yourscript.js" [14:59] L4rd0: worked for tcp connections for me... [14:59] mkrecny: yeah use forever [14:59] L4rd0: worked on tcp connections for me... [14:59] hoodoos: hey, guys, does anybody remember what changed in querystring.unescape lately? like if I used 0.2.5 and now using 0.4.2 it acts kinda strange [15:00] mkrecny: http://stackoverflow.com/questions/5228254/too-many-open-files-using-child-process/5229103#5229103 [15:00] tfe_ has joined the channel [15:00] tfe_ has joined the channel [15:00] orospakr: Hi! I just noticed that V8/node.js bails out when run on a Geode. I assume that it's assuming an x86 instruction set extension in the JITter. I don't suppose there's a means to disable that? [15:00] eee_c1 has joined the channel [15:00] brianc: I got libpq bindings working for node-postgres. Now you can opt to use libpq or pure javascript with the same API [15:01] tmzt_: is there mongoose or other ORM that makes it easy to expose JSON rest routes via express, including $idref ? [15:01] kriszyp has joined the channel [15:01] tmzt_: orospakr: olpc might know [15:01] ajashton has joined the channel [15:01] hij1nx has joined the channel [15:01] orospakr: tmzt_, one laptop per child...? [15:01] tmzt_: as in, how to make code compatible with geode [15:01] tmzt_: yeah [15:02] orospakr: ah, right. [15:02] orospakr: yeah. [15:02] orospakr: well, I think this is an issue very specific to v8's codegen. [15:02] tmzt_: or maybe they have v8 running on the xo1 [15:03] orospakr: brianc, if you're interested, a friend of mine has been maintaining a pg library for node in pure js: https://github.com/aurynn/postgres-js/ [15:03] dubbe has joined the channel [15:04] brianc: orospakr: ah, yeah I'm familiar w/ that lib [15:04] glitterfang has joined the channel [15:04] aheckmann has joined the channel [15:04] heavysixer has joined the channel [15:04] omni5cience has left the channel [15:04] brianc: this is the one I been working on: https://github.com/brianc/node-postgres [15:04] tmzt_: trying to get my node startup off the ground, need to figure out that ORM question and how to do a type of mailmerge between json data sources (ones a template) [15:04] Aikar: :O Komodo Edit 7.0 in trunk is getting node.js support, they added require() parsing support few days ago [15:05] jmar777: Aikar: woot! [15:05] tmzt_: like, today :) [15:05] jmar777: Aikar: where can you get 7? [15:05] Aikar: 2011/03/04 18:55:44 7345 7345 toddw codeintel: nodejs: process require statements [15:05] Aikar: http://svn.openkomodo.com/openkomodo/log/openkomodo/trunk/src [15:05] Aikar: not sure, i just saw it on commit [15:05] tmzt_: komodo still using gecko/xul? [15:06] Aikar: yeah [15:06] Aikar: im glad of that :p [15:06] tmzt_: any faster? [15:06] Aikar: so much faster than java crap [15:06] tiemonster: yay java! [15:06] Aikar: it runs fine for me, cept on samba mounts file navigation can be slow since my mount is on a server out of this building :( [15:06] statik has joined the channel [15:06] Aikar: but at home on pure local it runs great [15:07] Aikar: right now im trying to write tools thatll let me keep a local cache of my remote home folder lol [15:07] deepthawtz has joined the channel [15:07] tmzt_: what's wrong with rsync? [15:07] Aikar: id like 2 way [15:07] tmzt_: it's not? [15:07] Aikar: nope [15:07] Aikar: and rsync isnt meant for realtime either [15:08] Aikar: ive wrote code that gets lsyncd working perfectly for 2 local dirs... but local <->samba mount isnt working due to the remote changes not issueing inotify events :/ [15:08] tmzt_: we need an open/ssh dropbox [15:08] kristsk: sshfs ftw! [15:08] Me1000 has joined the channel [15:08] Aikar: kristsk: sshfs seemed slower than smbfs... [15:08] dubbe has joined the channel [15:08] Aikar: i tried it [15:08] kristsk: but generaly does note require much mucking around config files [15:09] davglass has joined the channel [15:09] tiemonster: Aikar: heck no [15:09] davglass has left the channel [15:09] tmzt_: I always wondered why ja didn't have samba support directly in rsync [15:09] Aikar: tiemonster: heck no what? [15:09] tiemonster: there's no way its slower [15:09] Aikar: when i switched my mount to sshfs, files took longer to open [15:09] tiemonster: unless you're on windows... [15:09] Aikar: nope, ubuntu [15:09] tiemonster: how are you authenticating? [15:09] c4milo has joined the channel [15:10] Aikar: pub key [15:10] hswe has joined the channel [15:10] Aikar: how else would you authenticate? ;) [15:10] Aikar: passwords are for the birds [15:10] tiemonster: did you disable password and Kerberos on the server? [15:10] Aikar: nope, not my call :p [15:10] tmzt_: actually private key [15:10] Aikar: its a shared dev server everyone in company uses [15:10] mikegerwitz: Aikar: I agree. I never use sshfs. Whenever I need to transfer files I just use scp or git :) [15:10] tiemonster: well, the start up time may be somewhat longer because it has to reauthenticate each time [15:10] Aikar: tmzt_: yeah but its referred as "public key authentication" :P [15:10] kristsk: ssfs is nice for dev [15:10] tiemonster: but large file transfers will be way faster than SMB [15:11] Aikar: well source code typically is not large files lol [15:11] tmzt_: tiemonster: why is that? [15:11] kristsk: not for overly large files thou [15:11] tmzt_: for source code use git :) [15:11] kristsk: um, too slow. [15:11] tiemonster: tmzt_: which? [15:11] Aikar: tmzt_: talking about editing code and testing on a remote server [15:11] tmzt_: use a bare repo, don't try to push to a non bare repo [15:11] tmzt_: me too, but I just edit live with gedit (gvfs) [15:12] mikegerwitz: Aikar: Ah testing remotely is a pain. I guess I'd suffer through sshfs then. I do all development locally [15:12] tiemonster: not a good idea [15:12] tmzt_: probably could do the same with komodo [15:12] tiemonster: local dev is the way to go [15:12] Aikar: my company has a beefy dev server that all devs connect to, which runs a highly configured apache to do a sep install from your home folder for each employee [15:12] kristsk: mikegerwitz: i have not suffered at all [15:12] Aikar: tiemonster: our apps too complicated for that [15:12] tiemonster: a git workflow for remote div is a second best [15:12] tmzt_: hey, I haven't completely killed it yet [15:12] kristsk: and i do dev through ssfs [15:12] tmzt_: I'll be pushing to my alpha server in a while, then opening that up [15:12] mikegerwitz: kristsk: I haven't tried sshfs in years. Perhaps it's improved since my last attempt [15:13] kristsk: it is quite nice. [15:13] tmzt_: .gvfs is about the same thing, just a little more convenient if you use gnome [15:13] Aikar: so im pretty much editing files over a remote file system, but navigation can be slow at times. especially expanding large folders in komodo [15:13] tiemonster: I have rsync+inotify that sends diffs to the dev server every time a file is saved [15:13] mikegerwitz: .gvfs is slow as shit too ._. for ssh [15:13] Aikar: so i was trying to cache files locally to make komodo faster [15:13] mikegerwitz: not for smb [15:13] tmzt_: kernel should be caching directories for fuse [15:13] kristsk: generaly it does [15:13] kristsk: but it is tweakable [15:13] Aikar: tiemonster: im trying to do something like that, im about to try unison [15:13] kristsk: defaults work fine for me [15:14] Aikar: but i want my 'working copy' to be a pure local fs [15:14] tiemonster: Aikar: I've heard good things [15:14] Aikar: but if i checkout code remotely, i need to see it on my local pc too [15:14] tmzt_: tiemonster: d.jobitr.com , signup code node1 [15:14] Aikar: so a 2 way sync is really what i need [15:14] plasson has joined the channel [15:15] tmzt_: Aikar: why isn't rsync two way? [15:15] kristsk: my only gripe with sshfs is - git wont work over it. [15:15] tmzt_: you can reverse the paths [15:15] Aikar: tmzt_: its source -> target. if i delete a file on target, rsync recreates it [15:15] kristsk: but that has somthing to do with osx i belive. [15:15] plasson: hi all [15:15] tmzt_: might be macfuse [15:16] tmzt_: plasson: hello [15:16] tiemonster: kristsk: wha? [15:16] Aikar: lsyncd handles it better because it uses inotify events. so i got this: http://aikar.co/2011/03/07/2-local-folder-synchronization-lsyncd/ [15:16] tiemonster: git uses ssh by default... [15:16] Aikar: only problem is the smbfs mountpoint is not issueing the inotify events for lsyncd to work [15:16] kristsk: yeah, it just wont work :/ and i am using expandrive which in turn uses macfuse [15:16] plasson: i have a question [15:16] tmzt_: ssh is not the same as sshfs [15:17] plasson: i can't make "git checkout" oh any version [15:17] nonnikcam has joined the channel [15:17] kristsk: tiemonster: i can't, for instance, check out or commit if files are on a fs which is sshfs [15:17] kristsk: files == repo [15:18] dberlinger|away has joined the channel [15:19] kristsk: plasson: exactly what do you want to do? [15:20] Aikar: i just want my samba mount to be cached so im able to navigate folders quickly [15:20] tmzt_: Aikar: I'm trying to do something like this with json template: [{fieldname: 'name'}] data: [{name: 'Name'}] but I need to be able to edit the template or the data, and I need to be able to create a new document from the template and existing data [15:20] tmzt_: is that something I could do with nova? [15:20] ph^ has joined the channel [15:20] montylounge has joined the channel [15:21] Aikar: hmm im a bit confused by your question [15:21] Aikar: nova is meant to be used like most other template engines. you build a template, then you 'render' it and pass it an array of variables for it to use in rendering the dynamic content [15:22] wilmoore has joined the channel [15:22] Aikar: so div({id: 'content'}, h1(renderVar('pageTitle')), p('Hello!')) [15:22] tmzt_: okay, the difference is I want to use it on the client side, having data and the template in different json structures [15:22] softdrink has joined the channel [15:23] Viriix has joined the channel [15:23] Aikar: then template.render('template', {pageTitle: 'fooBar'}, function(html) { }); [15:23] Aikar: oh yeah theres no client side support yet [15:23] Aikar: well, i poked with it a lil bit for jsperf. but that was by removing node.js code and hacking around [15:23] tmzt_: hmm, so it just creates the html using the tag name in the tempalte [15:23] Aikar: yeah [15:24] bradleymeck1 has joined the channel [15:24] tmzt_: the procedural stuff could be interesting, what I really want is to have paths like @sections/section1 and be able to render multiple copies of that section [15:24] Aikar: https://github.com/Aikar/node-nova/blob/master/examples/templates/template.js [15:24] Aikar: thats doable with a partial and passing an array [15:24] plasson: I'm building node.js on cygwin [15:25] tmzt_: I think the wysiwyg is going to be the hard part anyway [15:25] ryanfitz has joined the channel [15:25] tmzt_: I'll just end up writing this myself [15:25] Aikar: partial('sections/section1.js', [{title: 1}, {title:2}]) will render section1 twice and partialVar('title') will be set to 1 and 2 respectively [15:25] dberlinger|away has joined the channel [15:25] tmzt_: ah [15:26] tmzt_: that's good [15:26] tmzt_: so I just need that client side, and to be able to source those js's from mongo [15:26] orospakr: okay, with gdb, I have determined that node is using SSE2 instructions. I looked into the code, and was happy to find that it can be apparently disabled at runtime. [15:26] orospakr: however [15:26] Aikar: well feel free to fork it and modify it to suit your needs lol [15:26] Aikar: the code itself is pretty much done, i just need to add proper unit testing and finish documentation [15:26] tmzt_: right, good to have example code to look at, mpl? [15:27] Aikar: the examples folder has a huge template.js [15:27] Aikar: https://github.com/Aikar/node-nova/blob/master/examples/templates/template.js [15:27] plasson: ...it give me a fatal error ...could not load winmm.dll Win32 erro 487 [15:27] Aikar: which covers like every possible way of using the syntax [15:27] orospakr: "--enable_sse2 (enable use of SSE2 instructions if available)", it's listed as being a "boolean option with default" true, but --enable-sse2=false or --disable-sse2 don't work [15:28] Aikar: ignore the huge comment block at bottom. thats out of date and shows old style syntax (which still works... just its not as pretty) [15:28] orospakr: if I do "--enable-sse2 false", node itself interprets that as a javascript module file name. [15:28] tmzt_: oh wow, this + dnode would be perfect [15:28] jetienne: orospakr: try --enable-sse2=0 [15:28] tmzt_: getComments can just be moved to dnode [15:28] orospakr: jetienne, I did. [15:28] Aikar: the div(h1('blah'), p('blah2')) syntax actually translates to the syntax you see in the large comment [15:29] orospakr: Error: illegal value for flag --enable-sse2=0 of type bool [15:29] tmzt_: so the html tags are function calls? [15:29] Aikar: yeah [15:29] Aikar: look at lib/nova/helpers.js [15:29] tmzt_: I'll just replace those with semantic equivalents [15:29] jetienne: https://github.com/joyent/node/blob/master/deps/v8/src/flag-definitions.h#L156 <- orospakr it is there :) dunno if it help [15:29] yhahn has joined the channel [15:29] tmzt_: then I can store the template in a json (for sanitization, etc.) [15:29] Yuffster has joined the channel [15:29] Aikar: https://github.com/Aikar/node-nova/blob/master/lib/nova/helpers.js#L317 [15:30] orospakr: jetienne, I get the feeling that v8 command line options weren't fully tested with node's command line parsing stuff, so ones that accept arguments don't work. [15:30] Aikar: i could of wrapped it with a try catch and caught undefined function errors... but ive read try catch hurts performance [15:30] sveimac has joined the channel [15:30] Aikar: so i just manually built every known html tag [15:31] ceej has joined the channel [15:31] Aikar: and if you need to use a custom tag, you can still do {'custTag: [['content']]} [15:31] Aikar: err ' after Tag [15:32] jetienne: orospakr: i cant set any options to false... you may be right [15:32] Aikar: hmm, i think for my specific use case at work im gonna combine unison and lsyncd. ill use unison for a sync from remote server -> local every 5 mins or so, then ill have lsyncd push local -> sambamount on save [15:33] tmzt_: hmm, so you don't execute the js, you actually parse it [15:33] tmzt_: I see [15:33] jetienne: node --noenable_sse2 <- orospakr this doesnt trigger any exception... not sure it actually does what is expected [15:33] Aikar: all of those html() etc functions return a function. so its called on compile and not parse [15:34] Aikar: the compiler function will execute functions and use their result [15:34] jpstrikesback has joined the channel [15:34] tmzt_: ok [15:34] Aikar: so the html () returns a function that returns {html: []} [15:34] Aikar: all of this is cached to pure html as much as possible on compile time though [15:34] sivy has joined the channel [15:34] tmzt_: hah, I'm just going to have everything as
with different classes [15:34] tmzt_: and generate matching css with > selectors [15:35] tmzt_: it's not the full page, just a small part of it [15:35] tmzt_: anyway, I see where to do that with nova [15:35] Aikar: so div(h1(renderVar('title')), p(renderVar('content'))) is cached to [15:35] lukegalea: hey.. does anyone have some good sample code for generating md5 hashes using crypto? [15:35] Aikar: ['

', #, '

', #, '

'] [15:36] Aikar: and the # is filled in on render [15:36] lukegalea: I wrote something I thought was trivial but it disagrees with unix md5 cmd. [15:36] tmzt_: lukegalea: in node? [15:36] lukegalea: ya: http://pastie.org/1647668 [15:36] tmzt_: why are you implementing it yourself? [15:36] tmzt_: Aikar: with regex? [15:36] Aikar: no [15:37] lukegalea: no.. just calling crypto.createHash, etc. [15:37] lukegalea: lemme guess.. there's an easier way? [15:37] lukegalea: that would be nice ;) [15:37] tmzt_: sure you don't have extra whitespace etcetera on the command line version? [15:37] Aikar: tmzt_: on compile time it builds an array of known 'render functions', and as they 'return' (by calling their async callback) the response is filled in place [15:37] tmzt_: hmm [15:38] tmzt_: oh, I see so # is really a promise [15:38] Aikar: and the html is not returned until we only have 1 long string and no functions left to call [15:38] Aikar: yeah [15:38] floby: tmzt_ how does it disagree with md5sum ? [15:38] dubbe: ACTION is away: Auto-away after 30 mins idle (gone at 8th Mar, 16:38:41) [15:38] tmzt_: floby: wasn't me [15:38] lexnihilo has joined the channel [15:38] floby: tmzt: snap [15:39] Aikar: tmzt_: the # isnt in code, i typed that to just show the concept :P [15:39] tmzt_: I see that now [15:39] Aikar: check out nova.js to see how it processes the render callbacks [15:39] tmzt_: but I think I'll skip the js parsing and just use json [15:39] floby: lukegalea: how does it disagree with md5sum ? [15:39] tmzt_: since the templates are being designed on the client [15:39] tmzt_: not coded [15:39] Aikar: https://github.com/Aikar/node-nova/blob/master/lib/nova/nova.js#L102 [15:40] lukegalea: floby: Lemme check.. I was running "md5", not md5sum [15:40] BillyBreen has joined the channel [15:40] tmzt_: echo -n 'data |md5sum - [15:40] floby: lukegalea: I thought you were talking about md5sum, I don't have a m5 command on my ubuntu [15:40] tmzt_: echo -n 'data' |md5sum - [15:40] lukegalea: aah.. I am running osx.. and I have md5 and *not* md5sum ;) [15:41] floby: lukegalea: anyway as tmzt_ pointed out I think your problem may come from newlines characters [15:43] eyesUnclouded has joined the channel [15:43] lukegalea: floby: Ya, I would have thought so.. but look at this: echo 'something' | openssl dgst -md5 returns b1946ac92492d2347c6235b4d2611184 [15:43] robert_larsen has joined the channel [15:43] lukegalea: openssl dgst == md5.. [15:43] Astro has joined the channel [15:43] lukegalea: hmm.. [15:43] tmzt_: -n [15:43] lukegalea: does echo auto append a newline. [15:44] lukegalea: .. maybe.. [15:44] tmzt_: echo 'something' | xxd [15:44] tmzt_: ( or od) [15:44] tmzt_: vs. echo -n 'something' | xxd [15:44] jtsnow has joined the channel [15:44] lukegalea: ahah!! [15:44] lukegalea: okay. that'll do it [15:45] lukegalea: That's perfect [15:45] lukegalea: node agrees with openssl now [15:45] lukegalea: thanks tmzt_ & floby !! [15:45] floby: lukegalea: np, I must admit that I spent more time on this than I wanted to [15:45] floby: lukegalea: when it happened to me [15:46] lukegalea: Thanks. Much appreciated. [15:46] mkrecny: how would you request just the header of a URI [15:46] mkrecny: ? [15:46] lukegalea: I think because crypto is so new, I was quick to blame it ;) [15:46] floby: new lines, can't live with'em, can't live without'em [15:47] halfhalo: Lol [15:47] robert_larsen: Hi all. Does any of you have experience with using the Google Closure library from Node ? [15:47] floby: robert_larsen: you missed them! they were here not 1 hour ago ;) [15:48] robert_larsen: doh :-) [15:48] floby: robert_larsen: what do you mean use Closure FROM node ? [15:48] FunkyFortune has joined the channel [15:48] robert_larsen: I mean, write a server to run from Node, which uses Closure classes. [15:49] Andi5 has joined the channel [15:49] Viriix has joined the channel [15:49] robert_larsen: I am looking into game development with LimeJS, which is built on Closure, and I want to share code between server and client. [15:49] mytrile has joined the channel [15:50] robert_larsen: So using the Closure code for inheritance and such would seem natural. But can that code be used from Node ? [15:50] floby: robert_larsen: I'm not expert enough with Closure to answer that. but you should look in the modules wiki page for a Closure module [15:51] floby: robert_larsen: if it's pure javascript, there is no reason for it not to work. [15:51] EyePulp has joined the channel [15:51] floby: robert_larsen: node doesn't force its inheritance system on you [15:52] robert_larsen: Seems like there is a wrapper module for closure. Thanks. [15:52] liar has joined the channel [15:53] robert_larsen: It's just that you include stuff in closure by adding