[00:01] c4milo has joined the channel [00:01] c4milo has joined the channel [00:03] c4milo has joined the channel [00:03] _TS has joined the channel [00:05] Zuardi has joined the channel [00:05] c4milo has joined the channel [00:07] c4milo has joined the channel [00:10] c4milo1 has joined the channel [00:11] c4milo1 has joined the channel [00:13] rauchg__ has joined the channel [00:13] Aria has joined the channel [00:17] jedschmidt has joined the channel [00:26] Zuardi has joined the channel [00:26] Zuardi1 has joined the channel [00:28] nolan_d: How do I keep Express from adding "charset=utf-8" to my explicitly-set Content-type header? [00:30] Tim_Smart: Does express or node do that? [00:30] Tim_Smart: nolan_d: Set the charset yourself? Does that work? [00:30] nolan_d: Hmm, how do you do that? (since it's a part of the content-type header) [00:31] justin_: does anybody know of any code that uses handles to node buffers in c++? [00:31] justin_: i'm having some trouble casting them and could go for an example [00:31] Tim_Smart: { 'Content-Type': 'text/html; charset=utf-8' } ? [00:31] c4milo has joined the channel [00:32] Tim_Smart: { 'Content-Type': 'text/html; charset=enter_desired_here' } [00:32] Tim_Smart: Not sure if it will be still appended or not. [00:32] nolan_d: So if I do headers["content-type"] = "my-content-type", you'd think that'd be enough. That's basically what I'm doing. [00:33] nolan_d: It is. [00:35] Tim_Smart: nolan_d: Yeah I don't think node sets it, so express is being annoying I guess. [00:36] nolan_d: Hmm, actually it could be me. Think it's almost time for a break, been at this for most of the day. [00:41] rauchg__ has joined the channel [00:44] JimBastard has joined the channel [00:45] JimBastard: hey creationix1 any idea why wheat is comping Hellesøy into Hellesøy ? [00:45] JimBastard: chompin [00:47] grahamalot has joined the channel [00:48] Aria: That sounds like UTF-8 vs single-byte interpretation of something. [00:51] fictorial has joined the channel [00:51] maushu: Hay. [00:52] fictorial: if you were making a multiplayer game and outsourced the server side (hosting, tournaments, etc.) by what method would you expect to be billed? # of players online at the same time? bandwidth used? # of games played? [00:52] JimBastard: i guess its being chomped on a file read [00:53] JimBastard: fictorial: cpu usage + bandwidth ? [00:53] JimBastard: ohh hosting [00:53] maushu: fictorial, well, normally game servers are billed by the number of slots. [00:53] JimBastard: a million dollars [00:54] Tim_Smart: nodudio now serving my music collection restfully http://121.79.216.71:8080/api/song [00:54] Tim_Smart: Time to put a UI on top of it, using the socket.io api [00:54] maushu: In my case, I'm billing by application and database/filesystem space. Similar to heroku. [00:55] maushu: That reminds me, JimBastard, what is your billing plan? [00:56] fictorial_ has joined the channel [00:56] JimBastard: maushu: free for everyone in #node.js [00:56] maushu: I will grab your price and make mine $0.05 cheaper. [00:56] JimBastard: lol, k [00:56] JimBastard: ill take that deal [00:56] maushu: If you make it free I will just pay $0.05 for each person. xD [00:57] Tim_Smart: JimBastard: Make it free, then he has to pay us. [00:57] Tim_Smart: ^^ [00:57] maushu: Tim_Smart, I can already see the madness. [00:57] maushu: Hosting would start paying people more and more. [00:57] rauchg_ has joined the channel [00:57] maushu: "Host here! We pay you $3000 per month!" [00:58] maushu: "No! Here! We pay $3500!" [00:58] maushu: I've seen crazier. [00:59] ChrisPartridge has joined the channel [01:00] bradleymeck: jimbastard i got a present for you but i dont know if it will link on os x right [01:00] JimBastard: ohh shit [01:00] JimBastard: i could use some fun, ive been blogging hungover all afternoon [01:00] maushu: Blogging? [01:01] JimBastard: im debating adding a redirect to our sites so if people hit us from HN they get a "special" message [01:01] maushu: I think I don't want to know... [01:01] JimBastard: henry bloggins [01:02] bradleymeck: sec reverting changes. sfml's sf::Music api [01:03] fictorial: Sorry got pulled away for screaming kid [01:06] dipser: im trying to throttle a request, but the setTimout does not work with this callback: if(tarpit===true) {setTimeout('dispatch()', 1000, request, response, routes);} [01:07] bradleymeck: jimbastard sent to your email, not sure if it will build at all on os x [01:07] JimBastard: cool ill check it out [01:08] Utkarsh has joined the channel [01:09] dipser: nobody an idea? the console is saying, that Object dispatch() does not have a method 'apply' [01:09] dipser: which the timer is calling [01:10] maushu: dipser, try setTimeout(dispatch, 1000, request, response, routes); [01:11] JimBastard: bradleymeck: how do i run this? make ? [01:12] JimBastard: didnt seem to want to build [01:14] MikhX has joined the channel [01:14] danielzilla has joined the channel [01:14] dipser: maushu no more errors, thanks, but does not work -.- [01:15] ivong has left the channel [01:15] maushu: ...that was the fix, if it doesn't work then it is something else. [01:15] pydroid has joined the channel [01:15] dipser: dispatch() does present the stuff. if i reload the page very fast it will throttle it i thought with setTimout. this ist right or am i wrong? [01:16] JimBastard: anyone wanna take a look at this? http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs [01:16] JimBastard: using jsdom + jquery to scrape pages [01:17] fictorial: maushu: Yeah game servers are by slot. Those are for call of duty etc. I wonder if it matters that what I am talking about is hosting your game logic server side. As if you were the developer of call of duty. [01:17] maushu: fictorial, hmmm, you are wandering into my section. This means war. [01:18] fictorial: Oh really? What are you working on? [01:18] maushu: What you said. [01:18] muk_mb1: oh man you guys, I almost have a working web game [01:18] muk_mb1: I just have to get the win-conditions working [01:18] maushu: For hosting and tcp based servers (actionscript 3 servers). [01:19] fictorial: I have been building up the tech forever. Basic info site up at http://playrelay.io [01:19] maushu: fictorial, http://graphnode.com/ [01:19] maushu: Oh, you are working with iOS. [01:19] maushu: Everything is okay then. We can still be friends. xD [01:21] maushu: fictorial, well, about your price model... hmmm. [01:22] maushu: Maybe per application and maximum number of users (slots)? [01:22] maushu: Probably with addons mixed in, like that geolocation aware tournaments. [01:23] jetienne has joined the channel [01:23] maushu has left the channel [01:23] maushu has joined the channel [01:25] dipser: maushu i have a solution [01:25] dipser: setTimeout(function(request, response, routes){dispatch(request, response, routes);}, 5000, request, response, routes); [01:25] dipser: this works [01:26] dipser: setTimeout(dispatch, 5000, request, response, routes); << this not [01:26] maushu: Something about "this"? [01:26] dipser: the method just does not get called [01:27] dipser: function(){} so no problem anymore ;) [01:27] JimBastard: ahaha , chartbeat owns [01:28] jakehow has joined the channel [01:28] saikat has joined the channel [01:29] dipser: reloading in one sec throttles this >> http://84.132.33.111:8080 *happy* [01:29] Tim_Smart: mape: ping [01:30] Tim_Smart: Oh nevermind. [01:31] Me1000 has joined the channel [01:31] bpadalino: is there something like a stopwatch in node? [01:32] bpadalino: i'm looking to have the capability to count down from 30 seconds, but be able to pause if the request comes in [01:32] maushu: bpadalino, do you need to show the seconds? [01:32] maushu: Or know about them? [01:33] bpadalino: yeah i need to be able to query it .. but that's about it [01:33] JimBastard: where you at announcer bot [01:33] maushu: Hmm, a setInterval and a counter should be enough [01:33] JimBastard: maushu: announcer bot hates me, http://twitter.com/nodejitsu/status/23104469812 [01:33] maushu: Or maybe its just dead. [01:33] maushu: I was wonder how silent this was. [01:34] bpadalino: ah, so you think every second check for a pause ? [01:34] maushu: Huh, to "pause" you just clearInterval it. [01:34] maushu: If you don't care about the seconds, use a setInterval. [01:35] maushu: *setTimeout [01:35] bpadalino: i'll take a look at setInterval and clearInterval [01:35] bpadalino: thanks [01:36] _announcer has joined the channel [01:36] maushu: JimBastard, fire it up. [01:36] maushu: Funny part about the bot, the twitter part breaks up easily, the irc part doesn't. [01:37] maushu: I bet failwhale is at fault. [01:37] chrischris has joined the channel [01:37] JimBastard: maushu: i already shot it out [01:37] maushu: Well, you also linked it here. Pretty useful btw. [01:38] JimBastard: thanks! [01:38] maushu: Still, loading a whole DOM to parse online docs might not be the most efficient solution. [01:39] JimBastard: yeah, node really chokes when you do that [01:39] JimBastard: _-_ [01:43] kaichen has joined the channel [01:44] mshadle has joined the channel [01:44] mshadle: i'll toss in money if someone wants to rewrite mailman in node! [01:44] _announcer: Twitter: "As much as I love BeautifulSoup, nodejs and jQuery sounds like a great way to scrape: http://bit.ly/a3X9Sm" -- Luke Hatcher. http://twitter.com/lukeman/status/23105252201 [01:44] softdrink has joined the channel [01:44] jesusabdullah: mailman? [01:45] mshadle: yeah the archaic piece of shit. [01:45] mshadle: :p [01:45] _announcer: Twitter: "#reddit using jQuery and node.js to scrape html pages in 5 lines: submitted by JimBastard [link] [2 comments] http://bit.ly/adP6ys #rulez" -- REDDITSPAMMOR. http://twitter.com/REDDITSPAMMOR/status/23105316052 [01:45] mshadle: i was going to mess about writing it in php. the biggest piece is just handling attachments and mail parsing appropriately. [01:46] JimBastard: there we go [01:46] mshadle: you can use jquery inside of node.js? [01:47] aaronblohowiak has joined the channel [01:50] maushu: JimBastard, you brought this on us. [01:50] JimBastard: lol [01:50] JimBastard: yeah man [01:50] JimBastard: mshadle: for sure [01:50] JimBastard: we do it all the time here [01:52] mshadle: iw asn't aware. that's sweet. [01:52] jesusabdullah: What do you do with it there? [01:53] maushu: Wicked evil things that shouldn't be mentioned. [01:53] zemanel: im getting ass kicked on tf2 [01:53] jesusabdullah: maushu: Does _announcer still use basic auth? [01:53] maushu: jesusabdullah, hmmm, not need here. [01:54] maushu: Since I'm not giving a service to users. [01:54] maushu: At least not in twitter's eyes. [01:55] jesusabdullah: maushu: So you don't need to authenticate at all? [01:55] maushu: I need to authenticate. [01:55] maushu: Just not 3rd party accounts. [01:55] jesusabdullah: Hmm [01:55] Tim_Smart1 has joined the channel [01:56] polotek: jesusabdullah: the streaming api doesn't require oauth yet [01:58] maushu: That "yet" scares me. [02:01] jesusabdullah: polotek: Ah. I thought they changed it over already. Thanks! [02:01] polotek: maushu: they say they don't don't have plans to require it for streaming any time soon [02:02] maushu: Great. The future of announcer is safe! [02:02] jesusabdullah: \o/ [02:02] Utkarsh has joined the channel [02:02] maushu: As safe as it can be with the failwhale. [02:08] dipser has joined the channel [02:09] jacobolus has joined the channel [02:10] meso has joined the channel [02:10] Tim_Smart: Why websockets *would* be awesome: http://github.com/Tim-Smart/nodudio/commit/c70129ba5da0a8159c5f41706ea1753d2a0cf665 [02:10] Tim_Smart: Only thing that remains is for the browsers to catch up. [02:12] Kami__ has joined the channel [02:15] mizerydearia has joined the channel [02:19] _announcer: Twitter: "Scalable server side JavaScript programming with NodeJS: http://nodejs.org" -- Chris Bumgardner. http://twitter.com/chrisbumgardner/status/23107422270 [02:20] maushu: Tim_Smart, event system based on websockets? [02:20] Tim_Smart: Yeah. [02:21] Tim_Smart: Well more the fact I could remove over 1000 lines of code due to socket.io's fallback system. [02:22] polotek: Tim_Smart: just require all your users to use Chrome or Safari [02:22] polotek: no big deal [02:22] polotek: :P [02:22] maushu: Or Firefox 4. [02:22] polotek: maushu: word, FF4 is actually looking quite nice [02:22] maushu: Disregard all other browsers. [02:22] Tim_Smart: polotek: It is a HTML5 web app, and portability I don't care about. [02:23] Tim_Smart: Well it *will* be one, I have just done the backend for now. [02:23] Tim_Smart: Visit http://121.79.216.71:8080/ and open up the console [02:24] wakawaka: it just says body [02:24] maushu: Open js console. [02:24] Tim_Smart: Its re-indexing my music atm, so you should see the 'save' events coming in. [02:24] wakawaka: oh gotchya, cool [02:24] polotek: Tim_Smart: yep [02:24] fictorial: maushu: Sorry got pulled away again [02:24] polotek: nice [02:24] polotek: I'm seriously going to start building web apps that use all new stuff [02:24] maushu: fictorial, just scroll up. [02:25] maushu: :p [02:25] polotek: the newer apps have a disproportionate amount of chrome/safari/ff3.5 users [02:25] polotek: you could probably get away with it [02:25] fictorial: So our services are fair [02:25] fictorial: ly similar [02:25] wakawaka: Tim_Smart, what is it that youre building? i missed the first part of what you were talking about? [02:25] Tim_Smart: wakawaka: HTML5 media manager [02:25] maushu: fictorial, but you work with iOS apps, right? [02:26] Tim_Smart: wakawaka: An HTML5 version of iTunes I guess. [02:26] fictorial: Yeah to start with. [02:26] maushu: This means war. [02:26] fictorial: Heh [02:26] wakawaka: Ah I see, cool [02:26] maushu: War, I tell you. [02:26] fictorial: Or maybe we join forces :) [02:26] maushu: Hmm. [02:27] fictorial: Anyway, max users has a problem. It pisses everyone off if the quota is hit. [02:27] maushu: I was thinking in redirecting some users to transload.it for processing needs. [02:27] maushu: fictorial, it shouldn't piss off the people that want to pay. [02:27] fictorial: Players can no longer play. Devs want more quota for less $$ [02:27] maushu: Those that does piss off wouldn't pay either way. [02:28] fictorial: Would you just suspend the app once quota was hit? [02:28] maushu: No, no. Players can still play. It just doesn't let more players join. [02:28] maushu: "Overloaded servers" or something. [02:28] _announcer: Twitter: "node.js API documentation translation finished, I published. http://nodejs.jp/nodejs.org_ja/ # nodejs_jp" [ja] -- koichik. http://twitter.com/koichik/status/23108044356 [02:28] fictorial: Right that is exactly what I meant [02:29] maushu: So? It's imposible to service everyone without losing money. [02:29] fictorial: I guess that is a hard pill for me to swallow although you are right of course. [02:30] maushu: Well, you *could* service everyone with fixed limits... but how do you "measure" performance. [02:30] maushu: Unless the server got really slow it would be noticeable. [02:31] MikhX has joined the channel [02:31] maushu: People like tiers easy to measure. [02:31] maushu: 500 users is better than 20% faster. [02:31] fictorial: Yes they do. Then there is AWS. [02:31] maushu: Let's not talk about that madness. [02:32] fictorial: Right ok [02:32] maushu: If you go with AWS, lets just say you get what you paid for. [02:32] fictorial: I agree though: trial, basic, silver, gold, platinum [02:32] fictorial: No I meaner [02:32] maushu: The trial could be "development". [02:32] fictorial: Fffffuu I hate the iPad keyboard [02:33] maushu: It doesn't scare people as much. [02:33] maushu: The development could have around 5/10/15 users. [02:33] MikhX has joined the channel [02:33] fictorial: I meant aws has 0.15/gb xfer plus base price plus ... [02:34] maushu: I don't mean the gb xfer, I meant the cpu "units". [02:34] fictorial: Which gets complicated to reason about. I do like tiers with fixed limits per. [02:34] fictorial: When are you launching? [02:35] maushu: At least until the end of the year. [02:35] maushu: Wait, that phrase didn't come out right. [02:35] maushu: Until the end of the year. [02:35] fictorial: Same [02:36] fictorial: I signed up for your beta [02:36] maushu: We should make an alliance to destroy the evil ninja Jim. [02:36] fictorial: So will you run arbitrary js on your servers? [02:36] maushu: Pretty much. [02:37] maushu: http servers, tcp servers, no servers, etc. [02:37] fictorial: What are you going to use to sandbox it? Jefe? Something else? [02:38] MikhX has joined the channel [02:38] maushu: My own sandbox, it needs to be a super sandbox. [02:38] fictorial: Define super [02:39] maushu: Well, it needs memory control like jefe does but I will try it to be better, cpu control, capable of making connections with other sandbox and the master controller. [02:39] polotek has left the channel [02:40] maushu: fictorial, I also need to rewrite some parts of node.js js code. [02:40] dbathurst_ has joined the channel [02:40] fictorial: Ah so it can do more than just vanilla js ok. What does jefe need for better memory control - I am looking to improve it [02:40] maushu: Because everything is "in the cloud" including file systems. [02:41] maushu: Well, it just kills the child when it reaches the memory limit. I'm trying to find a way to keep it running yet limit the memory usage. [02:42] maushu: Not having much luck though. [02:42] fictorial: Oh sure. Rlimit. I did not want that by default so that I could report oom errors easily [02:44] fictorial: I worried that doing rlimit for v8 would have some issues recovering [02:44] fictorial: Wrt mem [02:46] saikat has joined the channel [02:47] mshadle has left the channel [02:48] fictorial: Btw check out the pricing for Exit Games' Neutron. It is crazy expensive. [02:49] fictorial: 500 players online per game for $350/mo. [02:50] jamescarr_: ryah? [02:50] jamescarr_: is there a way to configure node-amqp to autocreate exchanges if they don't exist? I thought this was amqp's default behavior? [02:52] jamescarr_: I mean, it looks like you have to call connection.exchange to explicitly create it, but I think it should create the exchange if a queue is subscribed to it and it doesnt exist? [02:52] _announcer: Twitter: "Meryl - Minimalistic Web Framework for NodeJS http://coffeemate.github.com/meryl/" -- realnorth. http://twitter.com/realnorth/status/23109662838 [02:53] jamescarr_: lol... I need to create my own framework [02:53] jamescarr_: NoN [02:53] jamescarr_: Node.js on Nails [02:53] jetienne: jamescarr_: good name [02:53] maushu: Sounds painful. [02:53] lachlanhardy has joined the channel [02:54] jetienne: jamescarr_: with such a good name, only a good webpage is needed. no need to do actual work behind :) [02:54] Dmitry1 has left the channel [02:54] jetienne: node on noodle [02:54] jetienne: rails is static, noodle is subtle [02:54] Tim_Smart has joined the channel [02:55] maushu: *noodles [02:56] fictorial: I love noodles (C&H anyone?) [02:56] jetienne: node follows noodles flow, like electron on wires :) [02:57] jetienne: agility [02:57] jetienne: yep good name :) [02:57] jetienne: but meryl got cartoon and good color [02:57] jetienne: ok i stop :) [02:58] siculars has joined the channel [02:59] pquerna: node.js on sharks with fricken laser beams NoSwFLB [02:59] Tim_Smart: NOSFLB [02:59] pquerna: something like that [03:00] pquerna: sounds like a good project for the next knockout. [03:00] Tim_Smart: Then remove SLB. [03:00] Tim_Smart: NOS. [03:00] Tim_Smart: FLB* [03:01] rtomayko has joined the channel [03:01] maushu: Node On Sharks? [03:02] bpadalino: require('laserbeams'); [03:02] Tim_Smart: pwq. [03:02] Tim_Smart: pew. [03:02] jacobolu_ has joined the channel [03:03] jakehow has joined the channel [03:03] _announcer: Twitter: "NoN, Node on Noodles - a web nodejs framework - node follows noodles flow, like electron on wires #nodejs #freenode" -- Jerome Etienne. http://twitter.com/jerome_etienne/status/23110419547 [03:03] pquerna: we've been had. [03:03] jetienne: let mess with twitter instead :) [03:04] maushu: pew pew pew [03:05] _announcer: Twitter: "@ MrTopf interesting? http://edward.oconnor.cx/2009/12/nodejs-and-djangode.html" [de] -- Markus Stumpf. http://twitter.com/Maex/status/23110552812 [03:05] mattikus has joined the channel [03:06] _announcer: Twitter: "Node on Noodles - web nodejs framework - rails is static, noodle is subtle, some are born to endless night, some are born to sweet the light" -- Jerome Etienne. http://twitter.com/jerome_etienne/status/23110653334 [03:08] _announcer: Twitter: "The social conference directory http://lanyrd.com/ .You can find lots of UX/F2E/Web conference.(Written in Python, Django and Node.js)" -- RaNdy Lien. http://twitter.com/Randylien/status/23110817072 [03:15] JimBastard has joined the channel [03:15] JimBastard: whats the diffirence between response.headers) and response.rawHeaders [03:16] _announcer: Twitter: "@ianbicking Something like this? http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs" -- Tom Brander. http://twitter.com/dartdog/status/23111368380 [03:19] JimBastard: boom! [03:19] zemanel: JimBastard, read ze documentazion [03:19] zemanel: then let me know [03:19] JimBastard: i didnt find it in there [03:19] zemanel: read ze code [03:20] _announcer: Twitter: "Diving into node.js since it seems to be the next biggest thing... as well as actually useful to life for once." -- Matthew General. http://twitter.com/mattgen88/status/23111643198 [03:20] zemanel: JimBastard, do you know C [03:20] JimBastard: sure [03:20] zemanel: C++ ? [03:21] JimBastard: why not [03:22] JimBastard: wow i have 51 concurrent users on the blog [03:22] JimBastard: fucking charbeat owns [03:22] zemanel: ive been reading some stuff to possibly integrate node with gpu computing [03:22] JimBastard: cuda? [03:23] hassox has joined the channel [03:23] zemanel: aye [03:24] Yuffster has joined the channel [03:24] zemanel: seems to have the best doc for now [03:24] zemanel: but it all looks like, well C to me [03:24] bpadalino: you hoped for ? [03:25] zemanel: bynary code, c is too high level for me [03:25] bpadalino: i think they have an assembler if you want to figure that out [03:25] JimBastard: im trying to figure out what, if anything this will do http://github.com/sstephenson/node-http-proxy/commit/6748607d5899748fd185adfac01f7b0d03d21d5b [03:25] JimBastard: sstephenson_: ping? [03:25] zemanel: bpadalino, i was joking [03:26] bpadalino: oh :( [03:26] zemanel: only thing i did in C++ was the turtle thing, 12y ago lol [03:26] sstephenson_: heya [03:26] Yuffster has joined the channel [03:27] JimBastard: hey sstephenson_ , sorry to bother. i was going to pull from your fork, was wondering the repercussions of that change. im clueless [03:27] JimBastard: is that an API update in node? or is it a new value? [03:27] JimBastard: were you having an issue? [03:27] sstephenson_: it works with this patch: http://github.com/ry/node/pull/259 [03:27] JimBastard: ahhh [03:27] JimBastard: awesoke [03:27] JimBastard: awesome [03:28] JimBastard: so i'll wait for that to land in core? [03:28] sstephenson_: yeah. the issue is that multiple set-cookie headers would be clobbered [03:28] sstephenson_: hopefully [03:28] JimBastard: okay, cool! [03:28] JimBastard: send me a pull request if it does? [03:28] sstephenson_: sure [03:28] JimBastard: thanks [03:28] JimBastard: :-) [03:28] _announcer: Twitter: "node.jsのMLは活発だなー" -- ain oumiline. http://twitter.com/oumiline/status/23112280721 [03:28] _announcer: Twitter: "woo. just discovered require.registerExtension function. neato #nodejs" -- Don Park. http://twitter.com/donpark/status/23112283586 [03:29] Egbert9e9 has joined the channel [03:29] _announcer: Twitter: "Hey, @ianbicking's node.js thread made me join Google Buzz. http://is.gd/eSHTL" -- Atul Varma. http://twitter.com/toolness/status/23112313092 [03:29] zemanel: any good pdf about c on the intrwebs you recommend ? [03:30] JimBastard: i've got a copy of How-to-grow-a-neckbeard.pdf if you want [03:30] zemanel: lol [03:31] zemanel: i C [03:32] bpadalino: what's so wrong with C? :( [03:34] zemanel: nothing [03:34] zemanel: every dev should know it [03:35] ryah: jamescarr_: hm - i think creating an exchange should be done explicitly? [03:39] dbathurst__ has joined the channel [03:40] _announcer: Twitter: "jsdom + jQuery in 5 lines with node.js. http://ow.ly/2zUac super #nice #js" -- Loki Zavala. http://twitter.com/Siedrix/status/23113121844 [03:47] AAA_awright: I'm trying to figure out how I'm supposed to implement events.EventEmitter, the documentation isn't very helpful [03:48] pydroid: AAA_awright: see howtonode.org [03:49] JimBastard: wow i hope the server doesnt crash [03:49] JimBastard: this is a lot of traffic [03:49] Tim_Smart: Lol. I ab'ed my node.js rest server, and it can server around 500MB per second of JSON [03:49] JimBastard: >.< [03:49] Tim_Smart: serve* [03:49] JimBastard: i gotta assume ab hit its max [03:50] Tim_Smart: It takes like 3-4 seconds to generate the cache though [03:51] Tim_Smart: (2900-ish songs all serialized to JSON data takes some time) [03:52] noahcampbell has joined the channel [03:53] AAA_awright: pydroid: Is there something in particular? [03:53] genbit has joined the channel [03:54] Tim_Smart: madness https://gist.github.com/03905a4acc35bc4e8053 [03:54] genbit1 has joined the channel [03:55] abiraja: is there something virtualenv for node? my /lib directory is ~50mb and i dont want to deploy all of it [03:57] dmcquay has joined the channel [03:57] ryah: Tim_Smart: ? [03:58] Tim_Smart: ryah: Oh, I was just benchmarking http://121.79.216.71:8080/api/song [03:59] Tim_Smart: ryah: How are fast-buffers coming along? [03:59] ryah: a bit annoying [03:59] ryah: thanks for your patch [03:59] ryah: almost passing test/simple/test-buffer.js [03:59] [[zz]] has joined the channel [03:59] Tim_Smart: Yay. [04:00] Tim_Smart: What are the stragglers? [04:00] ryah: base64 stuff [04:00] Tim_Smart: -_- [04:01] [[zz]] has joined the channel [04:02] ryah: it's also crashing my macintosh [04:02] Tim_Smart: Oh hax. [04:02] ryah: :) [04:04] Tim_Smart: I tend to prefer my Ubuntu over Mac (dual boot) [04:04] Utkarsh has joined the channel [04:04] sts193 has joined the channel [04:05] Tim_Smart: Whenever I boot into Mac it is like Steve Jobs is there insisting I use a GUI for everything. [04:05] mikew3c_ has joined the channel [04:05] sts193 has left the channel [04:16] CIA-77: node: 03Ryan Dahl 07fast-buffer * r1b848bb 10/ src/node_buffer.cc : remove unnecessary casts - http://bit.ly/acwYGN [04:16] CIA-77: node: 03Ryan Dahl 07fast-buffer * r5520570 10/ src/node_buffer.cc : Fix base64 write for buffers - http://bit.ly/btpO1S [04:16] ryah: fixed the base64 stuff [04:16] ryah: it's pretty crazy - it runs in a loop [04:16] ryah: forever [04:17] Tim_Smart: and ever? [04:17] Tim_Smart: Nice. [04:17] bpadalino: sounds like a long time [04:21] LFabien has joined the channel [04:21] hdon has joined the channel [04:22] mizerydearia has joined the channel [04:22] dmcquay has joined the channel [04:24] jetienne: especially at the end [04:26] Tim_Smart: Hmm yeah that is a strange loop... [04:28] Tim_Smart: Maybe something to do with an empty buffer? [04:28] Tim_Smart: I.e. new Buffer("") [04:29] Tim_Smart: Because it never gets past console.log(''); [04:29] ryah: hm [04:30] ryah: i do think so... [04:30] ryah: don't [04:31] Tim_Smart: OK. Yeah I got no idea to be honest. [04:33] dbathurst has joined the channel [04:35] dmcquay has joined the channel [04:36] _announcer: Twitter: "Implemented sign in with Twitter using Node.js. Sure it's been done before. Nice to know it worked, though." -- Ricky Hussmann. http://twitter.com/rhussmann/status/23117016325 [04:41] Blackguard has joined the channel [04:44] _announcer: Twitter: "@scrabb_ly, have there been any moves to open source the backend portion of Scrabb.ly? I'm curious to see the node.js end." -- Simucal. http://twitter.com/Simucal/status/23117515149 [04:46] JimBastard has joined the channel [04:47] stepheneb has joined the channel [04:48] satori_ has joined the channel [04:48] stepheneb has joined the channel [04:50] Blackguard has joined the channel [04:55] _announcer: Twitter: "#NodeJS tip: crypto dying? Make sure you've got libssl-dev (or equivalent) then recompile Node. (via IRC logs)" -- Ken Franqueiro. http://twitter.com/kfranqueiro/status/23118221176 [04:59] Utkarsh has joined the channel [05:00] _announcer: Twitter: "I just made a html parser server side using jQuery syntax in less than 14 lines with node.js ... # Sonice ..." [es] -- Loki Zavala. http://twitter.com/Siedrix/status/23118489959 [05:05] peutetre has joined the channel [05:06] dmcquay has joined the channel [05:09] jbenesch has joined the channel [05:11] ryah: gr [05:12] ryah: this bug... [05:12] ryah: ACTION kicks it [05:12] mjr_: ACTION kicks it old school [05:12] _announcer: Twitter: "NodeJS is so fast, my NYTimes query code exceeded their allowed Queries Per Second (qps) allotment. :-D" -- Clint Andrew Hall. http://twitter.com/clintandrewhall/status/23119269479 [05:13] HAITI: y [05:13] tyfighter has joined the channel [05:13] prettyrobots has joined the channel [05:14] prettyrobots: What should I use to generate documentation for a library? [05:14] prettyrobots: What is the equivalent of Doxygen/Javadoc/RDoc/POD? [05:14] ryah: prettyrobots: ronn.js ? [05:14] ryah: not generated from source but good [05:15] ryah: s/good/does not create agony/ [05:15] prettyrobots: ryah: Yeah. Generating docs from source is not the most amazing thing that ever happened to software. [05:17] prettyrobots: It probably makes more sense to embed your documentation when you've already got thousands upon thousands of lines of code. [05:17] mjr_: Are there examples of embedding documentation in source code that generate both good documentation and readable/mtaintainable source code? [05:18] bpadalino: maintaining both the source code and the documentation seems like a lot of work .. [05:18] bpadalino: it seems like the documentation quickly becomes a work of fiction [05:18] prettyrobots: bpadalino: That's what they say. [05:18] mjr_: My experience is that the embedded documentation rots just as fast as external docs. [05:19] prettyrobots: mjr_: Agreed. [05:19] mjr_: Except now thanks to embedded documentation, you can't read the code anymore. [05:19] mjr_: And if you have anything like change control that gets involved just for a simple documentation change. [05:19] mjr_: You are changing production code! [05:19] prettyrobots: I believe that it rots fast if you have a lot of bureaucratic code: getters and setters, factory factories, etc. [05:20] bpadalino: it seems that unit tests/examples are better than documentation in the en [05:20] bpadalino: d [05:20] prettyrobots: It is hard to learn about code from tests. [05:20] mjr_: tests are indeed the best documentation for a fast moving codebase. [05:21] bpadalino: prettyrobots: maybe tests are a bad thing to call them .. working examples ? [05:21] prettyrobots: It is good for learning about details, specific details, but when I want to dive in, I want documentation. The Node.js documentation is great. [05:21] prettyrobots: Use cases? [05:21] bpadalino: use cases is another way to put it [05:21] bpadalino: is that what node.js documentation essentially is ? [05:22] prettyrobots: bpadalino: I like when someone has a synopsis or 5 minute intro, so yes. I agree. [05:22] bpadalino: i used is to sandwich that sentence and i feel bad about that [05:22] prettyrobots: I like how Node.js landing page has the 6 line HTTP server. That is a mind bender. [05:22] ryah: that'd be interesting if you wrote docs around tests [05:22] prettyrobots: Nice doc: http://vowsjs.org/ [05:23] prettyrobots: I adopted Vows for testing because the doc was so pretty and easy to understand. [05:23] ryah: instead of commenting up the code [05:23] prettyrobots: ryah: Literate testing? [05:23] ryah: eah [05:23] ryah: y [05:23] ryah: e h [05:23] prettyrobots: I've taken to calling my tests "Pursuasive Tests". [05:23] Aria: I, for one, would love this. [05:23] ryah: y a [05:23] ryah: damn [05:23] bpadalino: vows sounds a bit like design by contract [05:23] ryah: y a [05:24] ryah: e h [05:24] danielzilla: O e [05:24] danielzilla: h n s [05:24] danielzilla: Dammit. [05:24] prettyrobots: In that, I like to write tests that build a case for the software. Not a real proof, but something along the lines of, if we know that X works, then we know that we can do Y. [05:25] prettyrobots: Vows is nice for that. [05:25] prettyrobots: Also, JavaScript/Node.js is very easy to test. [05:26] bpadalino: i'm still new to both [05:26] bpadalino: and pretty much orthogonal to what i actually do for work which doesn't help the learning curve :( [05:27] prettyrobots: bpadalino: I just moved over everything in my day job to Node.js. [05:27] prettyrobots: No new projects that are not Node.js [05:28] prettyrobots: Watching my line counts plummet. [05:28] bpadalino: i wish i could do that just to help with learning, but i usually write vhdl all day long for software radio stuff - like i said, completely orthogonal to this stuff [05:28] mjr_: bpadalino: does your work mostly involve stuff that is non-new and also non-awesome? [05:28] KungFuHamster has joined the channel [05:28] bpadalino: oh, no - it's all very new and very awesome .. just a different space - software radio is a pretty neat field [05:29] mjr_: Yeah, software radio is super cool. [05:29] bpadalino: lots of information theory, analog circuits [05:29] prettyrobots: Cool. Get Node.js to run in hardware for us please. [05:29] bpadalino: lisp machines exist(ed?) .. so i guess it isn't completely unfeasible [05:30] prettyrobots: Sun went on about JVM in hardware for a while, too. [05:30] prettyrobots: (Vapor.) [05:31] bpadalino: well - ARM used to put it in their embedded processors .. but it just was never any good for the most part [05:31] mjr_: Yeah, I remember an early tag on sun.com where they were super excited to announce the news of Java silicon. [05:31] bpadalino: there is jop - an open source fpga implementation of the jvm [05:32] bpadalino: but i suppose we digress [05:32] prettyrobots: bpadalino: I should get your thoughts on: http://github.com/bigeasy/node-packet/wiki [05:32] prettyrobots: Better page: [05:32] prettyrobots: http://github.com/bigeasy/node-packet/wiki/Concerns-and-Decisions [05:32] mjr_: I'm now comfortable enough with this heresy to say that I literally only care about Java this [---] much. [05:33] mjr_: three minuses worth. [05:33] ryah: bpadalino: cool - that's exciting [05:33] ryah: bpadalino: that you're using node so much [05:33] jbenesch has joined the channel [05:33] bpadalino: well, i don't use node for work - this is just a personal project i am using node for [05:33] ryah: ah :) [05:34] bsstoner has joined the channel [05:34] prettyrobots: Java makes me grind my teeth. [05:34] bpadalino: but event based actions are natural to me since i work with that stuff in vhdl [05:34] bpadalino: dataflow programming [05:35] SubStack: oh noes, vhdl [05:35] bpadalino: we shall not speak of it anymore! [05:35] SubStack: for the best [05:36] prettyrobots: http://bigeasy.github.com/node-packet/ [05:36] bpadalino: prettyrobots: interesting page - why are you looking for my input? (just curious) [05:36] prettyrobots: Binary to JavaScript. It has been tricky. [05:37] bpadalino: ooh, fancy [05:38] bpadalino: minus sign for signed, huh? interesting [05:39] _announcer: Twitter: "using jQuery and node.js to scrape html pages in 5 lines http://goo.gl/fb/TGJCN #html5" -- Daniel Chow. http://twitter.com/danielchow77/status/23120805601 [05:40] prettyrobots: Trying to keep the language compact. Compared to Perl's pack, which has a character for each type. [05:40] mephux has joined the channel [05:41] marshall_law has joined the channel [05:41] kaichen has joined the channel [05:43] bpadalino: is a switch statement really an if/else ladder, or is it a jump table ? [05:44] ryah: bpadalino: not sure - but i suppose of the values are compact it does a jump table [05:44] ryah: v8 seems pretty smart [05:44] v8bot: ryah: SyntaxError: Unexpected identifier [05:44] pzich: it is in most languages, not sure about node [05:45] ryah: s/of/if [05:45] bpadalino: interesting [05:47] bpadalino: a lot of stuff still works with bits - i believe huffman coding is a pretty widely used thing that bit streams would be good to use .. especially being able to push back and traverse - it's a huge pain, but useful to be able to ff/rw [05:49] prettyrobots: huffman coding? [05:49] bpadalino: most anything with variable length coding works in bits instead of bytes i am pretty sure .. [05:49] bpadalino: image compression algorithms (jpeg, png, mpeg, etc) use it [05:52] prettyrobots: I'll have to read up on that. It is hoped that 8 bits would be good for most applications, but other applications might have a different notion of a byte or word that doesn't lie on an 8 bit boundary. [05:52] bpadalino: but again, a digression .. this packet stuff looks interesting [05:52] prettyrobots: I was wondering what those might be. [05:53] prettyrobots: I was looking at PostgreSQL and MySQL as examples of packets to parse. Network stuff. 8 bit aligned. [05:55] bpadalino: network wise yeah, i think you're good to go [05:55] bpadalino: it's just picking apart the bytes of the stream you end up getting from the packets [05:56] bpadalino: then again, i am not super familiar with all the different high level protocols that node would really be parsing [05:56] bpadalino: looks like a fun project, tho [05:56] JimBastard: im sooo tempted to put a nasty referral message on my site for people who clicked on hackernews links [05:58] bpadalino: prettyrobots: why deal with both arrays of bytes and actual integers ? [05:59] prettyrobots: JimBastard: Unwanted traffic? [05:59] JimBastard: prettyrobots: i just hate HN [05:59] callen: mape: is bladderblock not supposed to be up right now? [05:59] keeto has joined the channel [05:59] prettyrobots: I don't like it when some troll infested site links to me. [05:59] JimBastard: they censor their site a lot [05:59] mape: callen: No it is crashing because of some websocket issue I believe, and the stacktrace gives no useful info, and I can't reproduce i :S 1sec and I'll restart [06:00] JimBastard: they lock out any non Y-comb news too [06:00] callen: mape: okay, thank you. [06:00] mape: callen: now? [06:00] JimBastard: if you post about a startup which competes with a y-comb one's area, and you arent important, they will squash the article [06:00] callen: mape: lookin' good. [06:00] JimBastard: even worse, they do it silently, so if dont know to check, you'll never notice [06:00] JimBastard: fuck HN [06:01] bpadalino: harsh [06:01] prettyrobots: bpadalino: Anything bigger than 64 bits won't fit in a JavaScript type except for an array. [06:01] callen: JimBastard: it's been a walled garden from the beginning, you know this. [06:01] bpadalino: prettyrobots: so why not stick with arrays ? [06:01] JimBastard: im about to put up a friendly fence on my site then [06:01] callen: HN = unwanted traffic? [06:01] _announcer: Twitter: "the #linux community should look at replacing bash and python system scripts w/ #node.js because of its parallellism and low learning curve" -- Bryan. http://twitter.com/bryanwb/status/23122008165 [06:01] BryanWB has joined the channel [06:02] bpadalino: if you did only arrays, you could make them very compatible with Buffers in node, right ? [06:02] callen: BryanWB: concurrency is not parallelism [06:02] sschuermann has joined the channel [06:03] prettyrobots: bpadalino: That's kind of... I mean, the point is to turn an array of bytes into a meaningful type. The array output is only for things like UUIDs, things that don't fit into number, but have an object representation somewhere. [06:03] callen: I smell a need for a 'struct' :D [06:04] bpadalino: seems like that would be the interesting part .. where you are able to supply some object which defines the structure of the array, and it populates it appropriately [06:04] bpadalino: similar to a pointer cast in C to a structure [06:04] prettyrobots: callen: That's what node-packet is. A struct. [06:05] prettyrobots: bpadalino: That's what's happening. [06:05] callen: I always feel like I'm at the bottom of the conversational water slide [06:05] bpadalino: oh! [06:06] prettyrobots: You git a packet pattern and a callback and node-packet will call the callback with the bytes converted to the types in the packet pattern. [06:06] prettyrobots: Evented, of course. [06:06] _announcer: Twitter: "Aforementioned "Sign in with Twitter" implementation in node.js: http://bit.ly/c7ron6 #nodejs" -- Ricky Hussmann. http://twitter.com/rhussmann/status/23122268330 [06:06] bpadalino: how complex can the packet pattern get ? [06:06] prettyrobots: But, the there are synchronous uses to, if the entire buffer is available, the callback will get fired immediately. [06:06] MrTopf has joined the channel [06:07] SamuraiJack has joined the channel [06:08] prettyrobots: So far, 8 bit aligned unsigned and signed integers up to 64 bits. IEEE 754 singles and doubles (floats). Hex strings (for your UUIDs). Big and little endian all. [06:08] prettyrobots: Next up is length encoded strings and zero (or CRLF) terminated strings. [06:09] prettyrobots: callen: http://bigeasy.github.com/node-packet/ [06:09] callen: back to the future I see [06:09] callen: cool. [06:10] bpadalino: so i couldn't do something like { len : l32, count : l16, id : l32[8], payload : l8[] } ? [06:11] ph^ has joined the channel [06:12] bpadalino: could make "peeling the onion" so to speak a little easier if i could proto.packet the res.payload each time to the appropriate function until it was all parsed out [06:12] bpadalino: but i am new to all this stuff so i am probably a terrible person to ask about any of this :( [06:14] prettyrobots: parser.read("l32l16132[8]", function (len, count, id) { }); [06:14] prettyrobots: Rather: [06:15] prettyrobots: parser.recieve("l32l16132[8]", function (len, count, id) { }); [06:15] bpadalino: oh i see [06:15] prettyrobots: parser.read(buffer); [06:15] JimBastard: aight, i just added an awesome alert() for anyone who hits blog.nodejitsu from HN [06:15] bpadalino: so it's a whole string that defines it .. [06:15] JimBastard: mwahahahahahahaha [06:15] prettyrobots: Need better intro. Getting there. [06:15] bpadalino: if i have an empty [] will that read to the end of the buffer ? [06:16] prettyrobots: ACTION Off to Hacker News to see what people are saying about JimBastard. [06:16] aaronblohowiak: JimBastard: i thought you were going to R&R tonight [06:16] JimBastard: aaronblohowiak: that was last night [06:16] JimBastard: you can test alert from here, http://news.ycombinator.com/newest [06:17] rtomayko_ has joined the channel [06:17] aaronblohowiak: it is extremely bias ? [06:17] aaronblohowiak: it is extremely biased [06:17] freeall has joined the channel [06:17] JimBastard: thanks aaronblohowiak [06:17] aaronblohowiak: np [06:18] bpot has joined the channel [06:18] callen: what's the drama? [06:18] bpadalino: prettyrobots: just curious, any reason why you went with - for signed instead of [u|s][b|l][8|16|32|64]([\d+?])? [06:18] rtomayko has joined the channel [06:18] JimBastard: lets see how long before they ban our domain [06:18] JimBastard: fuck HN [06:19] JimBastard: they lucky i dont goatse their traffic [06:19] callen: JimBastard: what's going on? [06:19] JimBastard: callen: you know when i said "we" missed you, i actually was being sarcastic [06:19] JimBastard: :-\ [06:19] JimBastard: lol [06:19] aaronblohowiak: JimBastard: you seem to make a lot of enemies [06:20] JimBastard: just callen and HN [06:20] JimBastard: and even callen is alright [06:20] JimBastard: :p [06:20] callen: ACTION rolls eyes [06:20] prettyrobots: Axes ground here. [06:20] JimBastard: homer, you sure have a lot of enemies [06:20] JimBastard: i'm a people person! [06:20] JimBastard: with a drinking problem.... [06:20] JimBastard: ^_^ [06:21] ezmobius has joined the channel [06:21] prettyrobots: bpadalino: Conservation. Might need u or s for something else down the road. [06:22] bpadalino: gotcha [06:22] prettyrobots: Okay. I'm out for the night. Just hit the wall. [06:22] prettyrobots: Um, well... [06:22] bpadalino: night [06:22] aaronblohowiak: JimBastard: i'm really sorry to read that.. it took liver disease to scare me sober.. [06:22] prettyrobots: JimBastard: You don't like YC? [06:22] prettyrobots: Why no like YC? [06:22] prettyrobots: What did YC ever do to hurt you? [06:22] JimBastard: they've banned me one too many times on HN [06:22] JimBastard: and they squashed a few of my friends posts [06:22] prettyrobots: Hah. [06:22] JimBastard: that were super legit [06:22] bpadalino: when it comes to events and callbacks, can you get circular references somewhat easily ? [06:23] JimBastard: friends trying to promote their startups [06:23] JimBastard: also, i mean i dont know about you, but i wouldnt be excited if someone invested money in my company under the assumption that there was a 90% chance it was gonna fail [06:24] prettyrobots: Have they said as much? [06:24] callen: that's how all angel and VC works, YC isn't exceptional in that respect. [06:25] _announcer: Twitter: "# Reddit readability.js + node.js: submitted by sridhr [link] [comment] # rulez http://bit.ly/aKB5xa" [fil] -- REDDITSPAMMOR. http://twitter.com/REDDITSPAMMOR/status/23123210848 [06:25] prettyrobots: Nasty business, that. [06:25] JimBastard: ill have none of it (at least being on the receiving end) [06:26] prettyrobots: JimBastard: believe your grievances to be just. [06:27] prettyrobots: And with that. I'm out of here. [06:27] prettyrobots has left the channel [06:27] JimBastard: lolwut [06:27] jesusabdullah: grievances? [06:27] jesusabdullah: Oh, baninating [06:27] jesusabdullah: right [06:29] _announcer: Twitter: "Just favorited 'Node.js and Ruby' on SlideShare. http://slidesha.re/9U4WoB" -- ever.zet. http://twitter.com/everzet/status/23123438052 [06:31] _announcer: Twitter: "jsdom + jQuery in 5 lines with node.js - blog.nodejitsu.com - scaling node.js applications one callback at a time. http://t.co/hSz1Hl5" -- Joe. http://twitter.com/joe_carney/status/23123496618 [06:31] JimBastard: :-) [06:31] jesusabdullah: cute :) [06:32] jesusabdullah: JimBastard: Get raphael working server-side now [06:32] JimBastard: jesusabdullah: opengl? [06:32] jesusabdullah: opengl? What? [06:32] JimBastard: opengl works in node kinda [06:32] JimBastard: you want to do svg rendering server-side? [06:32] callen: jesusabdullah: you want to pre-render in the server? [06:32] derferman has joined the channel [06:32] jesusabdullah: Maybe [06:33] jesusabdullah: What I really want is a plotting library in node :) [06:34] jesusabdullah: and raphael has g.raphael [06:35] SubStack: jesusabdullah: write one then! [06:36] saikat has joined the channel [06:38] aaronblohowiak: FUUUUUUUUUCK websockets suck [06:38] aaronblohowiak: i mean, the concept is great, but the protocol handshake is total shit [06:38] jesusabdullah: SubStack: That sounds hard! :( [06:38] aaronblohowiak: ACTION goes off to cry in the corner [06:39] jesusabdullah: Aww [06:39] jesusabdullah: there there [06:39] jesusabdullah: *pat pat* [06:39] aaronblohowiak: jesusabdullah: thanks, hombre [06:39] JimBastard: ACTION waits for HN to take down the nodejitsu article [06:40] Tim_Smart has joined the channel [06:44] jesusabdullah: JimBastard: Link? [06:45] JimBastard: http://news.ycombinator.com/news [06:45] JimBastard: just find the nodejitsu link there, you can see it [06:45] JimBastard: im gisting it [06:45] JimBastard: err [06:45] JimBastard: http://news.ycombinator.com/newest [06:46] JimBastard: http://gist.github.com/566721 [06:47] _announcer: Twitter: "@rhussmann which nodejs oauth lib are you using?" -- alexander sicular. http://twitter.com/siculars/status/23124263040 [06:48] jesusabdullah: upvote [06:48] JimBastard: lulz [06:49] jesusabdullah: Nice pop-up. [06:49] JimBastard: how dare they try to send relevant traffic to my site [06:49] jesusabdullah: I know! [06:49] JimBastard: :-D [06:49] jesusabdullah: oh snap [06:49] jesusabdullah: It just hit me how awesome jquery for scraping would be [06:49] JimBastard: jesusabdullah: hell yeah [06:50] JimBastard: we use it here for a couple of clients [06:50] ryah: jesusabdullah: yep [06:50] JimBastard: it was hard at first, but we landed a couple of jsdom patches and its pretty nice now [06:50] ryah: JimBastard: sweet [06:50] JimBastard: jsdom.jqueryify is from indexzero [06:50] ryah: scraping is going to be a major use-case for node [06:50] ryah: just got to improve the damn http client [06:50] jesusabdullah: I've been meaning to try out beautifulsoup for a while, but, I mean, I'm already learning jquery and it's pretty stupid-easy, so [06:51] ryah: ACTION wonders if felixge is working on an improved http client [06:51] JimBastard: for sure, ryah if you look at the article ive been spamming about it shows how to use mikeal's request module , plus an http-agent we wrote that helps automate the process with multiple requests [06:51] jesusabdullah: Man kinda wanna try it now [06:51] JimBastard: http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs [06:51] Tim_Smart: What was the library that allowed you to, to like, run a queues with 5 tasks in parallel. [06:51] ryah: Tim_Smart: step? [06:51] Tim_Smart: s/run a/run/ [06:52] Tim_Smart: ryah: Na not step - that is just control flow. [06:52] aaronblohowiak: Tim_Smart: can you more thoroughly describe what you want to do? [06:52] jesusabdullah: do? [06:52] jesusabdullah: Was it do? [06:54] Tim_Smart: ryah: I prefer vanilla functions over step -> http://gist.github.com/560231 [06:54] JimBastard: fuck, our server is slowing down [06:54] sschuermann has joined the channel [06:54] Tim_Smart: Except it can bring up issues with the GC if you aren't careful; I found that out the hard way... [06:56] jesusabdullah: Tim_Smart: http://github.com/creationix/do ? [06:56] JimBastard: fuck, our main load balancer only has 512 of ram on it righ tnow [06:56] JimBastard: and indexzero has the pw for that account, oops [06:56] JimBastard: got like 10 megs free now >.< [06:56] jesusabdullah: only half a gig? Lawdy [06:57] tylergillies: how do i do synchronus redis with nodejs? [06:57] Tim_Smart: JimBastard: A load balancer shouldn't use over 512 :/ [06:57] JimBastard: Tim_Smart: must be leaking [06:57] JimBastard: could be wheat or one of its depends [06:57] aaronblohowiak: tylergillies: don't do that [06:57] Tim_Smart: tylergillies: Syncronous database - ew. [06:57] JimBastard: its on the same machine atm, which is temp [06:57] JimBastard: load balancer and app server running on same box >.< [06:57] Tim_Smart: synchronous* [06:58] aaronblohowiak: tylergillies: what are you trying to do? [06:58] ryah: Tim_Smart: me too [06:58] ryah: less overhead [06:58] tylergillies: aaronblohowiak: i want to create a function that checks if a value matches or not, can't figure out how to do it without blocking. the "you're ok" message gets sent before the "oh wait" gets triggered [06:59] aaronblohowiak: you have to pass the next step in to that function as a parameter [06:59] Tim_Smart: ryah: This pattern works nice too, for more complex stuff: http://github.com/Tim-Smart/nodudio/blob/master/src/service.coffee#L17-182 [06:59] Tim_Smart: EventEmitter <3 [07:00] tylergillies: aaronblohowiak: so an intial function to call the check, the check function, and then the "you're ok" function that gets called from the check function? [07:01] aaronblohowiak: tylergillies: yes [07:01] tylergillies: aaronblohowiak: gotcha, thanks. why is blocking bad in this case? isn't redis super fast? [07:01] aaronblohowiak: tylergillies: and don't forget to handle the error condition if redis is down / unavailable! [07:01] mikeal has joined the channel [07:02] aaronblohowiak: tylergillies: it is fast as far as databases go, but it is not something that you can do within the CPU cache. IO is a few thousand times slower than the computation within the process [07:02] aaronblohowiak: ACTION makes up numbers that are analogous to the truth for lack of rigour [07:02] tylergillies: aaronblohowiak: so its fast, but not fast enough essentially? [07:03] aaronblohowiak: tylergillies: anything that is leaving the node process is not fast enough. [07:03] Tim_Smart: tylergillies: You shouldn't block on anything outside of CPU and RAM. [07:03] aaronblohowiak: Tim_Smart: IPC is also unacceptably slow, imho [07:03] tylergillies: aaronblohowiak: Tim_Smart: ok thanks guys [07:03] Nohryb has joined the channel [07:04] Tim_Smart: aaronblohowiak: Yeah, unix named sockets are reasonably fast though, but I wouldn't want to block on them either. [07:05] JimBastard: aight i bumped it up to 1 gig [07:05] JimBastard: lets see how she holds [07:05] aaronblohowiak: Tim_Smart: :-0 [07:05] Tim_Smart: One of these days I'll give pgriess's web workers a spin. [07:05] JimBastard: gonna find out how good rackspace is about reprovisioning resources on the fly [07:05] JimBastard: *crosses fingers* [07:06] tylergillies: is this a "continuation" or is that something else? [07:06] aaronblohowiak: Tim_Smart: i've been thinking about web workers + runInNewContext to run some untrusted code [07:06] JimBastard: i dont get how node could be taking up this much ram [07:07] JimBastard: WHO IS LEAK [07:07] JimBastard: I FIND YOU [07:07] mikeal1 has joined the channel [07:07] Gruni has joined the channel [07:07] JimBastard: aight servers down, lets see what you got rackspace [07:08] BryanWB has joined the channel [07:09] JimBastard: and we are back! [07:09] JimBastard: that was like < 30 seconds [07:09] JimBastard: <3 rackspace [07:09] pquerna: oh, you resized it. [07:09] JimBastard: creationix1: how big is the box that runs wheat? [07:09] pquerna: we did that once. [07:10] pquerna: 2g to 4g [07:10] pquerna: it took like 13 hours [07:10] JimBastard: pquerna: we were on 512, bumped to 1 [07:10] pquerna: they say its faster for the small nods [07:10] pquerna: :x [07:10] JimBastard: 60 concurrent connections was maxing it out on the current setup [07:10] mjr_: Tracking down memory leaks in JS/node can be really awkward. [07:10] mjr_: Our tools are so primitive. [07:10] JimBastard: we got everything running on that box though, including two instances of broodmother running in slave / master mode [07:10] JimBastard: i think its just a matter of too much in one place [07:11] JimBastard: ill get all this spread across multiple boxes and see how bad it really is [07:11] JimBastard: so two broodmothers, plus like 8 apps [07:11] JimBastard: and HN / reddit traffi [07:11] JimBastard: >.< [07:11] mjr_: I battled a memory leak recently, and it was really sobering. [07:11] JimBastard: mjr_: by hand? or using tools? in js? [07:11] mjr_: I just had no idea where it was coming from. [07:12] mjr_: I managed to find it using tests and just commenting out chunks of code until I narrowed it down. [07:12] JimBastard: i mostly worry about memory leaks in OPC [07:12] mjr_: But it made me realize how vulnerable we are to this sort of thing. [07:12] mjr_: Writing servers in JavaScript with no tools to trace memory leaks. [07:12] JimBastard: mape has a tool i thought [07:13] JimBastard: kinda [07:13] mape: mjr_: dtrace? :) [07:13] pquerna: well, you have very little visiblity into the GC in general [07:13] mape: JimBastard: nah it is just a wrapper for the v8 profiler [07:13] pquerna: why does it not GC up object'wrapped things.. etc [07:13] mape: don't think it is very good for memory leaks [07:13] mjr_: I was hoping that dtrace would come to the rescue, but bcantrill says that it's pretty hard and that V8 will have to do a bunch of work to make it useful. [07:13] JimBastard: word [07:14] mjr_: The V8 heap profiler is really crude. [07:14] mape: Yeah [07:14] mjr_: Or heap whatever they call it. [07:14] mape: So they would have to fork V8 or make them oblidge to make it really snassy? [07:15] TomY_ has joined the channel [07:15] mape: The probes they added for nodeKO was just the easy part? [07:15] mjr_: As is my wont, I'm just going to complain in public about a problem I'm seeing and hope that someone with time resources can address it. [07:15] mape: hehe [07:16] aaronblohowiak: ACTION chortles [07:16] JimBastard: hrmmm, app server went down [07:16] JimBastard: watching the logs now [07:16] JimBastard: debuggin from HN is fun! [07:16] mjr_: When I meet smart people in and around node, I pretty much bring up two things: SSL needs help badly, and WTF are we going to do about memory leaks?. [07:16] Tim_Smart: JimBastard: Only 60 to take down a 512? [07:16] mjr_: Hoping I'll inspire somebody to change the world for the better. [07:16] pquerna: JimBastard: http://news.ycombinator.com/item?id=1666137 [07:16] pquerna: node doesnt' scale guys [07:17] pquerna: its all over [07:17] pquerna: lets try scala next [07:17] JimBastard: Tim_Smart: we are running a shit ton of stuff on one box [07:17] JimBastard: Tim_Smart: i told you, two broodmothers and like 8 apps [07:17] mjr_: Oh boy, I can't wait for the 512MB memory footprint! [07:17] Tim_Smart: mjr_: I have been playing with memory a lot lately. [07:17] mape: Hmm when I was on the top of hacker news I was at 0.00 load [07:17] Tim_Smart: I managed to reduce memory usage by about 5x in my app just by re-arranging code. [07:18] stagas has joined the channel [07:18] felixge has joined the channel [07:18] felixge has joined the channel [07:18] JimBastard: Tim_Smart: i think its a leak, caus when i restarted i didnt see a spike back [07:18] JimBastard: its low now [07:18] leap has joined the channel [07:18] mjr_: pquerna: do you remember Airplane! where Leslie Nielsen comes into the cockpit and says, "I just want to tell you both good luck. We're all counting on you." [07:19] Tim_Smart: JimBastard: Yeah the garbage collector is smart, but don't rely on it. [07:19] aaronblohowiak: Tim_Smart: you should blog about that [07:19] JimBastard: Tim_Smart: im sure its in OPC [07:19] aaronblohowiak: memory leaks in GCd code is scary as hell to me [07:19] JimBastard: maybe resourcer, or something inside weak [07:19] JimBastard: err, wheat [07:19] JimBastard: prob the caching in resourcer, its new [07:20] _announcer: Twitter: "Using jQuery and node.js to scrape html pages in 5 lines: Comments http://bit.ly/cNZnK2" -- Rk Tech. http://twitter.com/arkay_tech/status/23125823756 [07:20] JimBastard: >.< [07:20] Tim_Smart: aaronblohowiak: The main area of concern is closures and scope. [07:20] mape: JimBastard: Ok if I run apache bench against the site? [07:20] JimBastard: mape: sure [07:21] JimBastard: mape: apache bench is lagom right? [07:21] aaronblohowiak: Tim_Smart: so you end up with more c-like code than OO/functional code? [07:21] JimBastard: :p [07:21] mape: JimBastard: Totally [07:21] mape: The server denies connections. [07:21] mape: :/ [07:21] JimBastard: net:883 self.fd = socket(self.type); ^ Error: EMFILE, Too many open files [07:21] JimBastard: was that you mape ? [07:21] JimBastard: lol [07:21] pquerna: aaronblohowiak: as javascript was meant to be written :) [07:21] JimBastard: it just crashed [07:21] mape: JimBastard: nope, didn't get time to run [07:21] pquerna: like C with garbage collection [07:21] Tim_Smart: Also prototypes are you friend - they are insanely fast and the GC can clean them up easier. [07:22] JimBastard: not good [07:22] JimBastard: not good [07:22] JimBastard: net:883 self.fd = socket(self.type); ^ Error: EMFILE, Too many open files [07:22] _TS has joined the channel [07:22] guybrush has joined the channel [07:22] JimBastard: how the fuck do i fix that [07:22] aaronblohowiak: pquerna: you mean return function(){} isn't your usual bag? [07:22] mape: JimBastard: You are making node look bad! :P [07:22] JimBastard: mape: I KNOW [07:22] JimBastard: HELP [07:22] pquerna: ulimit -n [07:22] mape: increase the amount of files [07:22] _TS: cheers [07:22] mape: yeah ^^ [07:22] mjr_: Or possibly use fewer files. [07:23] mjr_: Ying and Yang. [07:23] mape: mjr_: That would sillyness [07:23] JimBastard: pquerna: can i run that command line? [07:23] JimBastard: pretend i was a 5 year old [07:23] JimBastard: :-( [07:23] pquerna: ulimit -n 10000 [07:23] pquerna: node ./server.js [07:23] _sri has joined the channel [07:23] Tim_Smart: JimBastard: It is past your bed time, 5 year old. [07:23] JimBastard: im wondering if i should wait for it to crash again [07:24] JimBastard: pquerna: do you know the default limit on a ubuntu 10.4 box? [07:24] pquerna: mjr_: ohh limiting concurrency, right, i was told thats bad :) [07:24] pquerna: JimBastard: ulimit -a will print it [07:25] mjr_: pquerna: I hear you are a published author on that subject. [07:25] JimBastard: pquerna: i see a lot of info [07:25] Tim_Smart: JimBastard: Was it a static file server causing the issues? [07:25] mjr_: ulimit -n is file number [07:25] pquerna: open files (-n) 1024 [07:25] JimBastard: http://gist.github.com/566747 [07:25] mjr_: And if you are Linux, you'll need to update /etc/security/limits.conf [07:25] JimBastard: open files (-n) 1024 ? [07:25] mjr_: not enough [07:25] mjr_: Get more! [07:25] pquerna: yes, so it would stop after 1024 [07:26] JimBastard: fuck, 108 concurrents [07:26] JimBastard: thats no good [07:26] JimBastard: i tried running that earlier line, i guess it didnt increase? [07:26] JimBastard: 1024 isnt enough right? [07:27] JimBastard: fuck, 136 concurrent [07:27] tylergillies: if i have a var named res(response object) and a global var named gRes and i make gRes = res, will gRes get overwritten when i get a new quest? [07:27] JimBastard: i was hoping my anti hacker news popup alert would get me removed lol [07:27] tylergillies: reques* [07:28] JimBastard: pquerna: is 1024 a "normal" limit for an OS? it seems ulimit -n 10000 didn't increase it? [07:28] aaronblohowiak: tylergillies: you should not do that. [07:28] robinduckett has joined the channel [07:28] robinduckett: morning [07:28] Tim_Smart: JimBastard: Why do you need 1024 files open to start with? [07:28] aaronblohowiak: tylergillies: what re you trying to do? [07:28] tylergillies: aaronblohowiak: yay another no no. :) I just don't want to pass the res object to each function. do i have to do that? [07:28] JimBastard: Tim_Smart: i think its because our proxy isnt doing connection pooling [07:28] JimBastard: Tim_Smart: so each file needs a new http client [07:28] JimBastard: right? [07:29] pquerna: JimBastard: 1024 is the normal default. using more than 1024 probally indicates a FD leak until your concurrency is much higher [07:29] JimBastard: pquerna: i think we just have something really inefficient right now, is it possible to safely bump up the number temporarily? [07:30] aaronblohowiak: tylergillies: you have to either pass it around, or make it an attribute on an object that is constructed whose prototype contains the other methods you want to call (so they merely refer to "this" [07:30] JimBastard: 10000 didnt seem like it did anything [07:30] aaronblohowiak: ) [07:30] freeall: Slightly off topic, but how does one usually do if you want to have your website send out emails. Like "share on email"-kinda thing [07:30] Tim_Smart: JimBastard: Is the code anywhere? [07:30] paulwe has joined the channel [07:30] tylergillies: aaronblohowiak: functionOne(res, req){ checkValue(res, value) } checkValue(res,value){ if foo.bar(res.send("baz"); async("foo",callBack); callBack(){ res.send("yay") } [07:30] JimBastard: Tim_Smart: its in the http-proxy, so yeah [07:30] JimBastard: http://github.com/nodejitsu/node-http-proxy [07:30] JimBastard: at least i think it is [07:31] JimBastard: so i bumped up to 2056 [07:31] JimBastard: as a stop gap [07:31] tylergillies: aaronblohowiak: ok thnx [07:31] tylergillies: i need to research prototypes still. not sure i fully understand them [07:31] pquerna: JimBastard: yes, fd limits can be in the 100k range easily without linux doing anything excessively dumb [07:32] JimBastard: pquerna: interesting. im thinking more about what you said about concurrency problem. i think our http-proxy is the issue. do you think having a proxy that didnt do any pooling would caus that? [07:32] aaronblohowiak: tylergillies: functionOne(res, req){ var vc = new ValueCheck(res, req); vc.checkvalue(value) }; function ValueCheck(res, req){ this.res = res; this.req=req; }; ValueCheck.prototype.checkvalue = function(value){ this.res ... } [07:32] aaronblohowiak: tylergillies: guy javascript the good parts [07:33] pquerna: JimBastard: more likely on an error path its not closing a socket somewhere [07:33] aaronblohowiak: tylergillies: and read it over and over until you get it right =) [07:33] JimBastard: pquerna: untrapped error perhaps? [07:33] JimBastard: causing http.client to not close? something like that? [07:33] pquerna: yeah, if it somehow prevent it from getting GCed [07:33] tylergillies: aaronblohowiak: will do [07:33] pquerna: referenced somewhere, etc [07:33] tylergillies: aaronblohowiak: thnx for recommendation [07:34] aaronblohowiak: tylergillies: it is available for kindle / the kindle app which runs everywhere (mac / pc/ ipad etc) if you dont want to go the dead-tree route [07:34] pquerna: hard to debug, if thats the case, but you should be able to test for it using simple tools like lsof [07:34] _announcer: Twitter: "Does anybody know any good nodejs i18n library? #nodejs" -- Pau. http://twitter.com/masylum/status/23126507871 [07:35] sveimac has joined the channel [07:36] JimBastard: lol great, now its my fault node.js doesnt scale [07:36] JimBastard: http://news.ycombinator.com/item?id=1665999 [07:36] JimBastard: fuck [07:39] JimBastard: yeah pquerna , im seeing a shit ton of, node 4644 root 452u IPv4 54665 0t0 TCP localhost:47218->localhost:8001 (ESTABLISHED) [07:39] JimBastard: looks like the http.client proxying [07:39] JimBastard: so you think connections not being closed correctly? [07:40] _announcer: Twitter: "If you're thinking about checking out node.js, also look at npm, a package manager to help with node libraries: http://github.com/isaacs/npm" -- Ricky Hussmann. http://twitter.com/rhussmann/status/23126778294 [07:40] mr-rock has joined the channel [07:40] JimBastard: i gotta assume if thats the problem then i'll just have to constantly restart the server to fix it? [07:41] pdelgallego has joined the channel [07:42] pquerna: runit? [07:43] konobi: or close the connections? [07:43] JimBastard: you talking to me? [07:43] JimBastard: konobi: thats the goal, there is a bug in our http-proxy for sure [07:43] JimBastard: right now im a bit focused on keeping the server up, but id like to patch this asap [07:43] konobi: stream.setTimeout() along with stream.on('timeout', ..._ [07:44] JimBastard: konobi: isnt there a built in timeout? [07:45] konobi: don't believe so [07:45] JimBastard: that would prob explain it then [07:45] konobi: otherwise how would long-polling/websockets work [07:45] JimBastard: konobi: i assumed you had to set the timeout to be longer for that [07:45] JimBastard: i thought it was pre baked to 60 [07:45] JimBastard: maybe that was old api, or im just imaging it [07:46] JimBastard: so yeah, fuck lol [07:46] JimBastard: gotta patch the proxy at 4am [07:46] JimBastard: maybe just push FD count to a few k and try to sleep [07:46] JimBastard: where the fuck is indexzero when you need him [07:47] JimBastard: 161 concurrents :\ [07:47] konobi: there's a pre-baked timeout of 2 minutes, it seems [07:48] JimBastard: that would explain the odd timed crashes [07:48] JimBastard: maybe certain spikes of bad requests catching it just right [07:49] JimBastard: should decrease it for sure [07:49] JimBastard: pquerna: do you know how to get a count from lsof? im reading man but coming up short [07:50] pquerna: lsof -p $pid | wc -l [07:51] pquerna: and subtract 1? [07:51] jetienne_ has joined the channel [07:51] _announcer: Twitter: "Screen scraping getting easier with node.js http://bit.ly/b6x8Cs Wonder if any online travel scrapers have tried this yet..." -- Steve Evans. http://twitter.com/steve_e/status/23127292055 [07:51] JimBastard: pquerna: that says, lsof: no process ID specified [07:51] MrTopf has joined the channel [07:52] JimBastard: do i need to hardcode my node pid in there? [07:52] pquerna: yes [07:52] pquerna: lsof takes a pid [07:52] pquerna: in that example [07:53] robinduckett: finally jsdom does jquery [07:53] JimBastard: robinduckett: it did months ago lol [07:53] JimBastard: we just added jqueryify and blogged about it [07:53] robinduckett: yeah I haven't used it for longer [07:53] aubergine has joined the channel [07:53] JimBastard: pquerna: thanks for the lsof tip, you fucking rock [07:54] JimBastard: some of us "web developers" are serious fucking linus noobs [07:54] _announcer: Twitter: ""jsdom + jQuery in 5 lines with node.js" http://ajxn.it/aqQm20 /by @indexzero" -- Dion Almaer. http://twitter.com/dalmaer/status/23127416696 [07:54] robinduckett: the implemented dom spec wasn't even complete [07:54] robinduckett: when i last used it [07:54] JimBastard: wow, shit is blowing up [07:54] robinduckett: and trying to install it and htmlparser and getting anything to work without segfaulting node was a miracle [07:54] JimBastard: im glad i fucking got on indexzero to blog [07:54] JimBastard: ahaha robinduckett , yeah we pushed through that >.< [07:55] robinduckett: did anyone find out what was behind the segfaults? node being extreme alpha alpha or a memory leak or what? [07:55] _announcer: Twitter: "Using jQuery and node.js to scrape html pages in 5 lines http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs" -- Sten Misund-Asphaug. http://twitter.com/stenmorten/status/23127490200 [07:55] JimBastard: robinduckett: i havent seen a random segfault in node for a while [07:55] robinduckett: touch wood i haven't been able to segfault node since 0.1.99 [07:55] JimBastard: yeah [07:55] robinduckett: rofl [07:55] robinduckett: twitter blow up [07:56] JimBastard: its been non stop [07:56] JimBastard: i have to watch the server logs, we have a leak in http-proxy [07:56] robinduckett: it's a good thing though] [07:56] JimBastard: 188 concurrents atm [07:56] robinduckett: on nodejitsu? [07:56] JimBastard: robinduckett: just the blog [07:56] Tim_Smart: JimBastard: Why is the proxy creating a client on every request, can't it just reuse one? [07:56] JimBastard: Tim_Smart: hell yeah it should, we need to implement connection pooling [07:56] JimBastard: WILL ACCEPT PATCHES [07:56] robinduckett: source? [07:56] JimBastard: AND SEND DONUTS FOR THEM [07:57] JimBastard: http://github.com/nodejitsu/node-http-proxy [07:57] Tim_Smart: client.request can be called multiple times.... [07:57] DoNaLd` has joined the channel [07:57] MikhX has joined the channel [07:57] JimBastard: Tim_Smart: again, patches very welcome. we'll be sorting this out asap [07:58] JimBastard: please try to keep perspective about how many pieces of code we write / use. stuff does slip through the cracks [07:58] JimBastard: and then we fix it [07:58] JimBastard: :-) [07:58] aliem has joined the channel [07:58] stagas: is there a concurrency test for node web apps anywhere? [07:58] JimBastard: stagas: hackernews [07:58] JimBastard: and reddit [07:58] JimBastard: i use ab locally, its okay [07:59] Tim_Smart: ab -n 100000000 -c 100 http://... [07:59] _announcer: Twitter: "Mustache.js # nodejs http://icio.us/fo5cez" [lv] -- Mauro De Giorgi. http://twitter.com/mdgArt/status/23127661851 [07:59] Tim_Smart: then kill it :p [07:59] stagas: I have cygwin ab isn't there [07:59] JimBastard: well this is fun, people are now asking questions on HN and since me and my team are all perma ban, we cant answer anything [07:59] JimBastard: http://news.ycombinator.com/item?id=1665999 [07:59] Tim_Smart: stagas: It is part of apache tools [07:59] aubergine_ has joined the channel [08:00] JimBastard: if anyone feels like chiming in, please let them know i want to respond, but cant [08:00] robinduckett: why are you all permabanned? [08:00] JimBastard: fucking HN [08:00] robinduckett: submitted something non YC related? :P [08:00] zorzar_ has joined the channel [08:00] robinduckett: so thaaats what the strange message was when I clicked through [08:00] JimBastard: im banned for a few reasons, but some others for much lamer [08:00] JimBastard: ive been talking to a few people [08:00] JimBastard: but yeah robinduckett , if you could leave a note about me giving my best wishes and sorry for not responding that would be awesome lol [08:00] JimBastard: if not, thats cool too [08:01] JimBastard: :-) [08:01] JimBastard: ahaha awesome robinduckett , thanks [08:01] robinduckett: That was my snarky response [08:01] robinduckett: I'll do another [08:01] konobi: httperf might be good too [08:02] robinduckett: What's your github JimBastard, Marak? [08:02] sschuermann: re [08:02] _announcer: Twitter: "@jkreeftmeijer what was that domain you had to track visitors on your blog? moni....something? The NodeJS one. :)" -- Michael van Rooijen. http://twitter.com/meskyanichi/status/23127819744 [08:02] JimBastard: robinduckett: aye [08:02] JimBastard: and nodejitsu [08:02] robinduckett: kk [08:02] JimBastard: lots of repos on both [08:03] stagas: Tim_Smart: thanks I'll try to find it, is it the one that says apache2-devel? [08:03] konobi: http://www.hpl.hp.com/research/linux/httperf/docs.php [08:03] Tim_Smart: stagas: Not sure, I haven't used windows for ages. [08:03] stagas: ok [08:04] _announcer: Twitter: "Interesting read on scraping with node.js and jQuery: http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs" -- Jim Neath. http://twitter.com/jimneath/status/23127887874 [08:04] JimBastard: 230 concurrent [08:04] JimBastard: fucking shit [08:05] _announcer: Twitter: "@ianbicking does this help? “@newsycombinator: Using jQuery and node.js to scrape html pages in 5 lines http://j.mp/9JXgtC”" -- Jim Roepcke. http://twitter.com/JimRoepcke/status/23127940673 [08:05] mbrochh has joined the channel [08:05] JimBastard: ahaha awesome robinduckett , i owe you a beer [08:05] robinduckett: hmm [08:05] robinduckett: That question by il is interesting [08:06] Tim_Smart: JimBastard: When you say connection pooling, do you mean "open x connections and pump incoming requests to them" [08:06] Tim_Smart: Where x might be 5 or something. [08:06] JimBastard: Tim_Smart: i mean use the same http.client if request are going to same domain? [08:06] karboh has joined the channel [08:06] JimBastard: but yeah, keep X a fixed number [08:06] _announcer: Twitter: "NodeJs + JQeruy = Really nice web scarping http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs" -- Ronen. http://twitter.com/narkisr/status/23128004513 [08:06] JimBastard: and use the connections as a pool [08:06] JimBastard: FUCK NO MORE LINKS [08:06] JimBastard: AHHH [08:06] Tim_Smart: JimBastard: Right, I might hack something together real quick. [08:06] robinduckett: jsdom doesn't run the page right? as in, it doesn't start executing the in page javascript right? [08:07] JimBastard: Tim_Smart: that would be awesome, id take your time. i dont think ill be pulling a patch until traffic dies down a bit [08:07] FuzzYspo0N has joined the channel [08:07] JimBastard: robinduckett: jsdom is just a javascript representation of the dom [08:07] Tim_Smart: JimBastard: That is cool, just want something to do... [08:07] JimBastard: fuck 250 concurrent [08:08] robinduckett: JimBastard, so I could parse the page for javascript, and run it with new Script() with the sandbox being tied to the window reference of jsdom? [08:08] robinduckett: that'd be sweet for testing. [08:08] JimBastard: robinduckett: you can do a lot of mind bending things [08:08] JimBastard: with jsdom [08:08] robinduckett: although I suppose things like xmlhttprequest would have to be implemented [08:09] JimBastard: robinduckett: already exists [08:09] robinduckett: in node itself? [08:09] JimBastard: prob just needs a little jsdom love to work smoothly [08:09] robinduckett: hmm [08:09] JimBastard: robinduckett: someone has a module [08:09] robinduckett: ah [08:09] robinduckett: it would not be difficult to emulate [08:09] robinduckett: have to be careful about keeping the security policies intact [08:10] JimBastard: fuck, i need to rig up chartbeat alerts to my speakers [08:10] _announcer: Twitter: "screen scraping with node.js #nodejs #jquery http://icio.us/wimttu" -- Mauro De Giorgi. http://twitter.com/mdgArt/status/23128206658 [08:10] JimBastard: :-( [08:11] _announcer: Twitter: "jsdom + jQuery in 5 lines with node.js http://is.gd/eX9LQ" -- jarrold. http://twitter.com/jarrold/status/23128219211 [08:11] jesusabdullah: chartbeats? [08:11] JimBastard: www.chartbeat.com [08:11] JimBastard: real-time analytics [08:11] JimBastard: its pretty awesome [08:11] mape: calacanis thingyadoo [08:11] jesusabdullah: to your speakers? [08:12] JimBastard: yeah, it gives me alerts when site goes down [08:12] mape: should be easy enough to do with node though [08:12] jesusabdullah: hmm [08:12] JimBastard: yeah, im just being slightly delirious [08:12] jesusabdullah: I was thinking, like [08:12] jesusabdullah: well [08:12] JimBastard: i was out drinking last night till 5am, and now im here doing server log baby sitting [08:12] jesusabdullah: signal --> fft --> sound out [08:12] jesusabdullah: or something like that [08:12] JimBastard: its more of a pingdom check [08:13] jesusabdullah: Well, actually, you'd probably want to do f(t) = A*sin(w_0*x(t)*t) --> speaks [08:14] jesusabdullah: So that higher frequencies mean higher numbers [08:14] jesusabdullah: except sin waves are annoying [08:14] jesusabdullah: so you'd want to just convert to a note and pass to a synth or something [08:14] altamic has joined the channel [08:15] jetienne_: i need to do some stuff in serie, what is the recommended plugin ? [08:17] jesusabdullah: serie? [08:17] stagas: heh ab is fun :P [08:18] jetienne_: jesusabdullah: sequentiql order, one after the other [08:18] _announcer: Twitter: "Got node.js installed on my Joyent SmartMachine - got Node running - tried to tweet about it - twitter was down." -- Rod Boothby. http://twitter.com/rod11/status/23128569694 [08:20] JimBastard: fuck 270 concurrents [08:21] konobi: ryah: is bryan's dtrace stuff in mainline? [08:21] aubergine has joined the channel [08:22] teemow has joined the channel [08:22] sideshowcoder has joined the channel [08:22] mape: konobi: he has a fork on github with some stuff [08:22] MrTopf has joined the channel [08:22] codetonowhere has joined the channel [08:24] jesusabdullah: jetienne_: step? [08:24] konobi: mape: yar... just wondering how far behind, etc. etc. [08:24] hassox has joined the channel [08:24] jetienne_: jesusabdullah: ok will look [08:24] Nohryb has joined the channel [08:24] stagas: I haven't used ab before what are the average numbers I should be getting? [08:24] mape: konobi: seems there is some work in v8 that needs to be done [08:24] mape: stagas: depends on what you are doing [08:24] [[zzz]] has joined the channel [08:25] hellp has joined the channel [08:25] stagas: I'm not sure where I should be looking, requests per second? [08:25] Throlkim has joined the channel [08:25] JimBastard: 294, fudge [08:25] stagas: localhost [08:25] JimBastard: ryah: damn you and your awesome software *waves fist* [08:26] mape: Think I got around 6k req/sec on a hello world kinda situation on a quadcore [08:26] JimBastard: mape using one core? [08:26] JimBastard: or using something like spark? [08:26] mape: yeah [08:26] konobi: mape: mkay... i'll poke him about it tomorrow [08:26] mape: 23k ish on quad with 4 [08:26] JimBastard: i can get about 5k in a hello world on my laptop [08:26] JimBastard: word [08:27] JimBastard: ive never actually seen spark work like that, need to try beefier machines [08:27] JimBastard: i thought i had a dual core, but when i did spark on 2 procs nothing really happened [08:27] JimBastard: i prob set it up wrong [08:27] stagas: mape: with how many -c -n ? [08:27] _announcer: Twitter: "Screen scraping is not new, but with jquery, and jsdom node.js you still new possibilities, cool! http://bit.ly/a3X9Sm" [nl] -- Maurice Jumelet. http://twitter.com/mjumelet/status/23128984348 [08:27] mape: stagas: c 200 [08:27] konobi: anyone have any example apps that show increasing memory over time with node (especially if it was running on no.de)? [08:29] aubergine_ has joined the channel [08:29] Tim_Smart: JimBastard: What is a good connection pool size you think? [08:29] mape: konobi: just keep adding buffers to an array? [08:30] JimBastard: Tim_Smart: i really have no clue. i know that mikeal and ryah were talking about this, maybe on the mailing list? [08:30] JimBastard: i think mikeal might even have a patch landed / waiting / in progress? [08:31] JimBastard: dammit, 300 [08:31] JimBastard: open files is holding between 1300-1600, so i guess thats OK for now [08:31] JimBastard: lol [08:31] konobi: mape: I mean real-life application [08:31] _announcer: Twitter: "It it high time I look into this node.js magic" -- Christan Grant. http://twitter.com/christangrant/status/23129173861 [08:31] SteveDekorte has joined the channel [08:32] JimBastard: 430am debugging sessions are(n't) fun [08:32] stagas: ok my computer sucks then because I'm getting 340/sec on a hello world -c 200 [08:32] _announcer: Twitter: "@tuxychandru you should investigate node.js performance on opensolaris (using Dtrace). Interesting results there." -- Sriram Narayanan. http://twitter.com/sriramnrn/status/23129185772 [08:32] stagas: in cygwin [08:33] margle has joined the channel [08:34] Tim_Smart: stagas: I was getting 500mb / sec @ 800 req / sec serving 600kb of JSON from a api. [08:34] Tim_Smart: (That is megabytes) [08:34] Tim_Smart: -c 100 [08:35] stagas: Tim_Smart: yeah but you have a real computer :) [08:35] ryah: konobi: no, http://github.com/bcantrill/node-dtrace [08:36] konobi: ryah: ah k... gonna hold off on that for a while I assume? [08:36] ryah: need to do some more testing - i guess it will be merged soon [08:36] ryah: it's only useful to solaris users though [08:36] ryah: unfortuantely [08:37] konobi: yeah, with the apple screwup [08:37] mape: ryah: not osx? [08:37] mape: they messed up with dtrace? [08:37] konobi: user defined probes don't work correctly on OSX it seems [08:38] ryah: hm - i forget what the issue was [08:38] mape: but there will most likely be an issue? [08:38] rudebwoy has joined the channel [08:39] ryah: we'll need to work around it somehow [08:39] konobi: ryah: something about unrolling the stack for arguments (or something along those lines, iirc) [08:39] ryah: konobi: hm, okay [08:40] aubergine has joined the channel [08:41] mape: Yeah seems like only doing solaris would be a great loss for the OSX people, if it is easy to fix that is [08:42] _announcer: Twitter: "http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs" -- leeight. http://twitter.com/leeight/status/23129653469 [08:42] konobi: bryan seemed to indicate it'd be non-trivial... then again he says that, then 2 days later we get something [08:42] JimBastard: fuuuuuuuuu [08:42] konobi: =0) [08:42] caolanm has joined the channel [08:43] JimBastard: im debating nohup ing the server on 2056 ulimit and going to sleep [08:43] JimBastard: hrmmmm [08:44] JimBastard: ill give it a bit longer [08:44] JimBastard: holding at about 280 concurrents [08:48] konobi: hhhmmm... no websocket load testing tools yet, it seems [08:50] Gruni has joined the channel [08:54] _announcer: Twitter: "Nurph is hiring a Chief Technology Officer (Rails, Node.js & Redis!) http://nurph.com/jobs" -- Neil Cauldwell. http://twitter.com/NeilCauldwell/status/23130191838 [08:57] adambeynon has joined the channel [09:04] JimBastard: yeah once i bumped the ram up to 1gig and the FD up to 2k, all responses are taking < 100ms [09:04] JimBastard: sweeeeeeet [09:05] JimBastard: still using 700mb though [09:05] _announcer: Twitter: "I exist? node.js manager package. . ." [ja] -- Hirohisa Mitsuishi. http://twitter.com/bongole/status/23130743166 [09:06] robinduckett: hmm [09:06] robinduckett: I dunno if i'm doing it wrong [09:06] saikat has joined the channel [09:06] robinduckett: but running the same jquery selector in the browser vs the jquery selector in node isn't working [09:06] robinduckett: just going to try another selector to get the same thing, it may be my code [09:06] _announcer: Twitter: ""@ Newsycombinator: Using jQuery and node.js to scrape HTML pages in five lines http://j.mp/9JXgtC" village equipo # UX # # # dsp PSC yam" [id] -- Juan José Miranda. http://twitter.com/jjmiranda/status/23130783831 [09:07] JimBastard: >>><<< [09:07] robinduckett: lol [09:07] robinduckett: MOAR [09:07] robinduckett: get it on digg, reddit and BBC.co.uk [09:07] JimBastard: ACTION feeds the internet node machine +50 [09:07] robinduckett: hahah [09:07] robinduckett: put 50 in the meter [09:07] JimBastard: You have gained a new level. [09:07] JimBastard: You are now, node troll lvl 12! [09:07] robinduckett: roflmao [09:08] JimBastard: You have gained a new power, summon Dion. [09:08] robinduckett: dude you're going to have to put that blog behind something like varnish [09:08] JimBastard: ACTION casts summon Dion [09:08] robinduckett: otherwise you're going to die [09:08] JimBastard: http://twitter.com/dalmaer [09:08] JimBastard: robinduckett: for sure, we are on it [09:08] JimBastard: this is great testing for broodmother [09:09] JimBastard: mikeal had some experimental cache stuff going [09:09] caolanm: argh, streams and sys.pump are so unreliable! [09:09] caolanm: perhaps I'm just using them wrong [09:09] JimBastard: we will prob build a simple one, and allow clients to pick static caching on routes [09:09] JimBastard: so people can just be like, click click cache [09:09] caolanm: but my code is full of hacks to detect sys.pump screw ups [09:09] JimBastard: click explude [09:09] JimBastard: hrmm [09:10] Tim_Smart: caolanm: http doesn't have true stream, as they don't have an 'exit' [09:10] Tim_Smart: *streams [09:10] caolanm: Tim_Smart: even between fs streams I get some odd errors [09:10] caolanm: like the sys.pump callback being called before all data is written [09:10] caolanm: or the data being written twice for some odd reason [09:10] Tim_Smart: caolanm: OK. I have never had a problem with sys.pump [09:10] caolanm: hmm [09:11] pquerna: caolanm: http://github.com/cloudkick/cast/blob/master/lib/util/http_pumpfile.js [09:11] caolanm: but yeah using sys.pump with http 'streams' is more messy [09:11] pquerna: caolanm: might be helpful, its how we are using sys.pump with http [09:11] ly- has joined the channel [09:12] caolanm: pquerna: thanks [09:12] caolanm: looks very similar to the way I'm using them [09:14] caolanm: the annoying thing is that most the errors only occur once in about every 20 attempts [09:14] pquerna: yes, though we made some test cases for those [09:14] pquerna: you can do things like open a non-existent file [09:14] pquerna: butit doesn't throw until sys.pump would try to use it [09:14] caolanm: so I have a bunch of tests to run [09:14] _announcer: Twitter: "PHP and want to spread against node.js" [ja] -- こば@偽リア充なう. http://twitter.com/KOBA789/status/23131150340 [09:15] caolanm: they will pass 95% of the time [09:15] caolanm: and the same tests will randomly fail due to strange things happening with streams and sys.pump [09:15] ntelford has joined the channel [09:15] caolanm: either events being emitted twice or callbacks seemingly firing at the wrong time [09:15] JimBastard: hrmmm response time jumping up now [09:15] JimBastard: moar perf tools [09:18] caolanm: pquerna: with the read stream do you not have to wait for the 'open' event? [09:18] xla has joined the channel [09:19] caolanm: seemingly not [09:19] caolanm: strange, because when using it with a http stream I sometimes got "TypeError: Bad argument" in fs:173 [09:20] caolanm: unless I waited for the 'open' event [09:20] caolanm: before calling sys.pump [09:22] pquerna: hmm [09:22] pquerna: don't think i've seen that yet [09:23] _announcer: Twitter: "http://tinyurl.com/33rzt6e Node.js - Wikipedia, the free encyclopedia" -- cube_ice. http://twitter.com/cube_ice/status/23131530113 [09:23] caolanm: I'm going to have to try and create some tests to catch these more reliably [09:23] _announcer: Twitter: "It's amazing really node.js Na" [ja] -- こば@偽リア充なう. http://twitter.com/KOBA789/status/23131546095 [09:25] _announcer: Twitter: ""HTML5 times real-time applications" - node.js" [ja] -- こば@偽リア充なう. http://twitter.com/KOBA789/status/23131623205 [09:26] _announcer: Twitter: "Mastering Node.js ", an eBook Open Source control Node.js http://bit.ly/ccZA7E # v # in" [fr] -- Guillaume Plessis. http://twitter.com/w_a_s_t_e/status/23131665597 [09:27] aubergine has joined the channel [09:29] abiraja has joined the channel [09:30] _announcer: Twitter: "@_randName_ do you happen to have access to a server that we can load node.js onto?" -- Yuchuan. http://twitter.com/yyc478/status/23131872203 [09:33] JimBastard: im thinking the nodejitsu.com domain will be perma banned from HN as soon as a moderator wakes up [09:33] JimBastard: anyone taking bets? [09:36] caolanm: argh, really don't like the 'magic' in-scope functions in couchdb [09:36] caolanm: send() ...where did that come from? [09:36] caolanm: start() ...which you can only call before getRow() [09:36] caolanm: both of which just happen to be in scope and you're supposed to know about it [09:37] caolanm: ACTION feels a rant coming on [09:41] aubergine has joined the channel [09:42] _announcer: Twitter: "As much as I want to use #NodeJS it's useless to me without E4X support. Come on #Google, add E4X to #V8!" -- Phillip B Oldham. http://twitter.com/digitala/status/23132375835 [09:42] robinduckett: E4X sucks giant donkey balls [09:43] _announcer: Twitter: "An Open Source e-book to control Node.js http://github.com/visionmedia/masteringnode" [fr] -- Edouard Seynaeve ✔. http://twitter.com/seynaeve/status/23132433841 [09:45] zorzar_ has joined the channel [09:48] mikew3c^ has joined the channel [09:49] jetienne_: base64 is ok in a url ? [09:49] JimBastard: jetienne_: data uris.... [09:50] jetienne_: ? [09:50] JimBastard: hrmmmmm 862828k [09:50] jetienne_: ok http url [09:50] JimBastard: i think so? [09:50] jetienne_: ok me too [09:50] jetienne_: deal :) [09:50] JimBastard: :-D [10:00] _announcer: Twitter: "The Node.js now running on webOS – and more Web improvements http://tinyurl.com/27gnqqz" -- Yuki Naotori. http://twitter.com/naotori/status/23133221539 [10:03] _announcer: Twitter: "Immediately after my translation API # nodejs was declared Japanese http://nodejs.jp/nodejs.org_ja/api.html:) But # ru still was the first." [ru] -- Serge Shirokov. http://twitter.com/kurokikaze/status/23133345501 [10:04] _announcer: Twitter: "@ Kurokikaze if it were not you, popularity and general level of node.js we have been much lower. Not the fact that we all would know about it." [ru] -- ramainen. http://twitter.com/ramainen/status/23133422101 [10:05] sts193 has joined the channel [10:05] mikew3c_ has joined the channel [10:05] MikeSmithXX has joined the channel [10:06] sts193: I'm new to web development and I'd like to get started in node.js.. but I'm not quite sure what it is exactly, does it replace django/rails? [10:07] _announcer: Twitter: "@ Ramainen would know anyway, I think:) Node Knockout well demonstrated popularity # nodejs in the world - I thought it would be 15-20 teams, but it was 215." [ru] -- Serge Shirokov. http://twitter.com/kurokikaze/status/23133534111 [10:09] CIA-77: node: 03Ryan Dahl 07fast-buffer * ra3b9f14 10/ lib/buffer.js : map charsWritten to fast buffer - http://bit.ly/aRZ6fZ [10:09] ryah: Tim_Smart: --^ [10:09] ryah: that was the missing thing. [10:09] stagas: sts193: node gives you a low level api on all the stuff you need to build an asynchronous server from scratch [10:10] Tim_Smart: ryah: Oh right, didn't know about _charsWritten. [10:10] ryah: Tim_Smart: yeah, i forgot about it too [10:10] Tim_Smart: ryah: So tests passing good now? [10:10] ryah: so it's looking pretty good now [10:10] sts193: stagas: ok, so all I need to know is javascript and HTTP basics? [10:10] ryah: still need to fix up the http parser and crypto [10:10] ryah: but then we should be in good shape [10:11] ryah: i'll do that tomorrow [10:11] ryah: the parser will a bit of work... [10:12] stagas: sts193: yes, you also should get npm to download and include modules easily [10:12] JimBastard: hrmmm, still leaking memory, but holding solid on FDs [10:12] JimBastard: interesting [10:13] Tim_Smart: JimBastard: I have some working code with a basic client pool. [10:13] JimBastard: Tim_Smart: ya! link? [10:14] sts193: stagas: alright, there isn't much learning material covering node is there? [10:14] Tim_Smart: JimBastard: http://gist.github.com/566872 [10:15] Tim_Smart: JimBastard: Just has a basic API for now. [10:15] JimBastard: Tim_Smart: you try any benches on it? [10:15] stagas: sts193: http://nodejs.org/api.html http://howtonode.org http://github.com/visionmedia/masteringnode for a start [10:15] JimBastard: there are basic ab tests in http://github.com/nodejitsu/node-http-proxy/blob/master/benchmarks/proxy-to-http [10:15] JimBastard: you can like, run the base line tests [10:15] JimBastard: patch the project [10:15] JimBastard: and rerun [10:16] JimBastard: i gotta assume its gonna be faster [10:16] sts193: stagas: thanks! so just to make it clear for me, a web app with node.js will have all of its backend written in javascript? Node isn't a framework is it? [10:16] Tim_Smart: JimBastard: What did you proxy to in the tests? [10:17] JimBastard: Tim_Smart: http://github.com/nodejitsu/node-http-proxy/blob/master/demo.js [10:17] JimBastard: run a local http server [10:17] JimBastard: then a local httpProxy [10:17] JimBastard: then ab to the proxy [10:18] stagas: sts193: mostly javascript yes [10:19] Tim_Smart: JimBastard: Bench look fine to you? http://gist.github.com/566872#file_bench.js [10:19] sts193: stagas: alright, I'll read into it more and check it out. Thanks for your help [10:19] Tim_Smart: JimBastard: Except for the missing require... [10:19] _announcer: Twitter: "This morning I had a visit toulouse.jfg-networks.net the company that develops over-blog.com ... they have consulted my articles node.js" [fr] -- Vincent RABAH. http://twitter.com/itwars/status/23134101289 [10:20] JimBastard: Tim_Smart: I think so... [10:20] JimBastard: im pretty tired its 620 am here [10:20] JimBastard: im going to fork for certain [10:20] JimBastard: i wish HN would delete the post already so i can go to sleep [10:20] JimBastard: im tired of watching server logs [10:21] JimBastard: slowing down a bit, at 250 concurrents right now [10:21] stagas: sts193: other useful places: http://github.com/ry/node/wiki/modules http://npm.mape.me http://nodejs.se [10:23] sts193: stagas: cool, thanks. I'll have to dig deeper before asking ridiculous questions :-) [10:23] stagas: sts193: they aren't ridiculous it's normal for all this to be blurry to you [10:25] _announcer: Twitter: "#nodejs Wrap a function to run only once. Useful for managing Jake tasks: http://gist.github.com/566881" -- Jonas Huckestein. http://twitter.com/jonashuckestein/status/23134370487 [10:26] _announcer: Twitter: "Exciting node.js presentation at @brisjs! No love for the JavaScript's syntax though, everyone wants to use CoffeeScript." -- Johnson Page. http://twitter.com/jwpage/status/23134386205 [10:27] xraid has joined the channel [10:27] christkv has joined the channel [10:29] Tim_Smart: JimBastard: Yeah I compared them on my machine and mine is a magnitude faster. [10:29] JimBastard: niiiice [10:29] JimBastard: did you look at any of the work mikeal did Tim_Smart ? [10:30] JimBastard: or did you just roll it [10:30] JimBastard: ill run a local test here [10:30] JimBastard: perhaps coffee and french toast are in order [10:31] Tim_Smart: JimBastard: Briefly. Mostly just rolled it though. [10:31] Tim_Smart: The bench result were: Mine was averaging 85ms/req, your one 95ms/req [10:32] Tim_Smart: At -c 100 -n 1000 [10:33] moesian has joined the channel [10:34] Tim_Smart: ryah: So for crypto and stuff you just have to do similar to what you did with net and file? [10:35] shreekavi has joined the channel [10:37] abiraja: is there a virtualenv equivalent for node.js and its modules? [10:43] robinduckett: virtualenv? [10:43] robinduckett: JimBastard [10:43] robinduckett: lol [10:43] robinduckett: they are flaming you hard on HN [10:44] JimBastard: robinduckett: lol [10:44] JimBastard: abiraja: npm [10:44] JimBastard: http://github.com/isaacs/npm [10:44] robinduckett: Marak, the guy behind the Nodejitsu (and, presumably, the popup message) is known to exhibit asshole behaviour. (See: http://news.ycombinator.com/item?id=1448309) The popup message is consistent with what HN knows of him. [10:44] robinduckett: Whether being a jerk justifies banning I can't say - but his assertion that HN is biased has little justification (particularly when you consider that the writer himself is biased.) Kindly ignore. [10:44] abiraja: JimBastard, robinduckett wherE? [10:44] abiraja: oh [10:44] JimBastard: yeah i saw [10:44] robinduckett: but [10:44] JimBastard: whatever, i dont want our stuff on HN anyway [10:44] robinduckett: you're a Bastard [10:44] JimBastard: :p [10:44] robinduckett: so [10:44] robinduckett: :D [10:45] JimBastard: HN is ripe for falling [10:45] abiraja: JimBastard: but npm doesn't let me export envs to my remote server right? [10:45] JimBastard: abiraja: not really, no [10:45] JimBastard: its kinda a problem [10:45] JimBastard: we are working on some solutions around that [10:45] JimBastard: you can package everything you need in a package.json [10:45] JimBastard: and then install that [10:45] robinduckett: rofl [10:46] TomY has joined the channel [10:46] abiraja: whats a package.json? [10:46] robinduckett: do they really hate you for one code comment in one ported porject? [10:46] robinduckett: *project [10:46] abiraja: i've used npm but havent explored it enough yet [10:46] JimBastard: yeah robinduckett , the internet is stupid [10:46] JimBastard: <3 zed shaw [10:46] robinduckett: I remember seeing that and actually feeling "yeah the amount of times I've had to do shit like that" [10:48] robinduckett: fuck em [10:48] robinduckett: i dislike social media [10:48] robinduckett: espescially highly specialised knit picky groups [10:48] abiraja: JimBastard: so i guess i use package.json to setup dependencies for my app? [10:48] JimBastard: abiraja: for sure [10:49] robinduckett: I'm actually like npm a lot now that it's actually working on my box [10:49] _announcer: Twitter: "this unlocks a couple of things: http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs (node + jsdom + jquery love)" -- Janos P Toth. http://twitter.com/tjp/status/23135450096 [10:49] JimBastard: robinduckett: are you getting any strange content errors / css errors on http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs ? [10:49] JimBastard: ahahah fuuu [10:49] robinduckett: installed it as root a while ago and it never worked [10:49] JimBastard: i must be bugging out, but every once and a while i get a content error [10:49] JimBastard: ACTION no clue [10:49] robinduckett: JimBastard, what browser? [10:49] JimBastard: chrome and ff [10:49] JimBastard: randomly [10:49] _announcer: Twitter: "Why You Should Pay Attention to Node.Js http://rb.tl/a9xCzc" -- Robert Brook. http://twitter.com/robertbrook/status/23135472932 [10:50] robinduckett: no errors for me on ff [10:50] JimBastard: yeah, maybe im losing it [10:50] JimBastard: favicon hell maybe [10:50] robinduckett: nor chromium nor opera [10:50] robinduckett: and the favicon is working for me :P [10:50] robinduckett: you've got a few SEO issues tho :P [10:52] robinduckett: title tag should be up to 11 words and under 70 chars but currently is 18 words and 114 characters, no meta description, you're using H1 tags where you should be using H2 tags with one H1 tag for the title of the blog post [10:52] JimBastard: word up [10:52] robinduckett: And you have a lot of outgoing links [10:52] JimBastard: i can add you to the blog repo but id feel bad asking you to fix our blog >.< [10:52] robinduckett: more than inbound links to other sections, which sucks for your pagerank [10:53] JimBastard: we gotta improve it for sure, we made it in a rush [10:53] digitalspaghetti has joined the channel [10:54] mape: JimBastard: text-align center... [10:54] fyskij has joined the channel [10:54] robinduckett: brb bosscunt [10:54] robinduckett: i will help if you like just in work at the moment :( [10:54] JimBastard: what did i do mape [10:54] JimBastard: cool robinduckett ! ill add you to the bloggers group on nodejitsu [10:54] mape: Seems like it is fixed now [10:55] mape: So what difference is there to that thing and howtonode? [10:55] JimBastard: mape: codewise? its mostly the same, i took some things out [10:55] JimBastard: im sure ill have to add some more things [10:56] mape: Idea/execution [10:56] JimBastard: ohhh [10:56] JimBastard: its geared more towards building scalable node stuff, and high tech node stuff, opposed to tutorials [10:56] mape: The server denies connections. [10:56] JimBastard: yeah? [10:56] mape: jup [10:56] JimBastard: it died [10:56] JimBastard: brb [10:57] robinduckett: ohnoes D: [10:58] JimBastard: its back [10:58] JimBastard: odd error there [10:58] robinduckett: What happened? [10:58] JimBastard: something about stream not writable [10:58] robinduckett: perhaps a client disconnected during data being sent? [10:58] JimBastard: lots of data in these logs....need better logging.... [10:58] JimBastard: all that should be trapped [10:58] JimBastard: i would hope [10:58] JimBastard: and caught [10:58] robinduckett: are you serving the static images through node too? [10:59] JimBastard: got node-static in place [10:59] robinduckett: images/data [10:59] JimBastard: also connect [10:59] JimBastard: yeah [10:59] JimBastard: i think [10:59] robinduckett: hm [10:59] JimBastard: first time ive seen that error all night, could have been something else [10:59] fyskij has joined the channel [10:59] JimBastard: im gonna order food and watch it some more [11:00] JimBastard: we've got too many apps running on this one box, thats the core of the issue i think [11:01] JimBastard: our plan is to run the LBs on their own machines, and the app servers on their own machines. then like 10apps on an app server [11:01] JimBastard: right now its all smushed into one box [11:01] JimBastard: sounds like a good thing to do this week [11:04] Nohryb has joined the channel [11:05] zorzar has joined the channel [11:05] _announcer: Twitter: "RT: @boxersb: RT jsdom + jQuery in 5 lines with node.js - scaling node.js applications one callback at a time. http://ow.ly/18SPXo" -- Outsider. http://twitter.com/Outsider__/status/23136215326 [11:07] JimBastard: > . < [11:07] mape: hmm seems my server died and went to shit [11:07] JimBastard: yeah, ive been getting that a bit today [11:07] JimBastard: sorry to hear mape [11:07] JimBastard: you got a bunch of free hosting from no.de right? [11:09] mape: Yeah, probly [11:09] mape: sudo: unable to execute /sbin/shutdown: Input/output error [11:09] mape: :P [11:09] mape: hoping the disk isn't shite [11:10] JimBastard: dedicated? [11:10] zorzar_ has joined the channel [11:10] robinduckett: has anyone done any caldav stuff in node? [11:10] robinduckett: thinking of doing a fast backend [11:10] _announcer: Twitter: "scraping with node.js http://rb.tl/byk6b5" -- Robert Brook. http://twitter.com/robertbrook/status/23136442877 [11:10] mape: JimBastard: at home [11:10] JimBastard: fuuuu [11:11] JimBastard: got ya [11:11] JimBastard: dont mind me, im yelling at _announcer [11:11] robinduckett: hahaha [11:13] moesian: hi if I use node.js do I use it with a sever such as apache, or does node.js handle serving e everything? [11:15] JimBastard: moesian: it does everything [11:15] JimBastard: node server.js [11:15] JimBastard: boom [11:15] d0k has joined the channel [11:15] moesian: nice [11:18] V1 has joined the channel [11:19] robinduckett: moesian you can use things like nginx to proxy / cache the connection if you're running a webserver through node [11:19] robinduckett: so you don't run into issues like JimBastard :P [11:19] JimBastard: im not sure where my issues are [11:20] JimBastard: im running like 20+ modules [11:20] JimBastard: maybe 30 [11:20] JimBastard: >.< [11:20] JimBastard: but, im fixing them! [11:22] _announcer: Twitter: "Wow "Heroku Node.js the support - client-side scripting with Web Standards" http://is.gd/eXmyP" [ja] -- azu. http://twitter.com/azu_re/status/23136987488 [11:22] jetienne has joined the channel [11:24] _announcer: Twitter: "Translation appears that "Node is, Ruby and Python's Twisted Event Machine and the influence of" "node.js" http://is.gd/eXmEH" [ja] -- azu. http://twitter.com/azu_re/status/23137090962 [11:25] Tim_Smart: JimBastard: My verdict after doing some test -> Don't do http proxy-ing with node. [11:25] Tim_Smart: testing* [11:25] Tim_Smart: http client is just not good enough. [11:25] JimBastard: lol [11:25] JimBastard: not efficient enough? [11:25] JimBastard: whats soo bad about it? [11:25] Tim_Smart: TCP proxy maybe. [11:25] Tim_Smart: JimBastard: Yeah not very efficient, starts using way too much memory. [11:26] JimBastard: yeah? but what about routing and stuff [11:26] JimBastard: i dont get how youd do it with tcp [11:26] JimBastard: youd have to implement http stuff by hand? [11:26] JimBastard: or no? [11:26] JimBastard: maybe you should start a thread on mailing list? [11:26] _announcer: Twitter: "Come to the @asyncjs show'n'tell at @theskiff on Thursday if you want to see me go from fresh server to full node.js backed stack in 4mins." -- Jon. http://twitter.com/binarytales/status/23137208125 [11:26] JimBastard: sounds like you figured out some good info [11:26] Tim_Smart: Well HTTP is just on top of TCP, so it is harder to modify the headers and stuff without parsing yourself. [11:27] Tim_Smart: But a TCP proxy will just send a 1 to 1 copy of the incoming stuff. [11:27] _announcer: Twitter: "node.js Sounds interesting. But think of uses for the flop. . ." [ja] -- 両角博之. http://twitter.com/morozumi_h/status/23137257292 [11:27] _announcer: Twitter: "Wondering why I have a bunch of "npm-\d{5}" directories littered around /Projects. #npm #nodejs" -- Robin Berjon. http://twitter.com/robinberjon/status/23137261784 [11:29] lachlanhardy has joined the channel [11:30] lachlanhardy: is there an Express mailing list or IRC? [11:30] lachlanhardy: or do folks usually just seek help here? [11:30] jetienne: irc is here [11:30] JimBastard: people usually hang out in here [11:30] leitgebj has joined the channel [11:32] JimBastard: nice traffic seems to be going back down [11:32] JimBastard: maybe nohup and sleep [11:32] wakawaka has joined the channel [11:33] _announcer: Twitter: "node.js if, maybe, in making the web system, the server-side or client side, all done with JS that you'll just thick? Somewhat. And Ruby Action Script Perl PHP with what I can come to forget about good times as well." [ja] -- 羽田野太巳/Futomi Hatano. http://twitter.com/futomi/status/23137538500 [11:36] _announcer: Twitter: "Nice use of jQuery + node.js for screen-scraping: http://bit.ly/b6x8Cs" -- David Winterbottom. http://twitter.com/codeinthehole/status/23137705986 [11:36] lachlanhardy: in that case, jimbastard, anybody else had issues with express, or express on heroku throwing this error? [11:36] lachlanhardy: http:432 [11:36] lachlanhardy: throw new Error("This type of response MUST NOT have a body."); [11:36] lachlanhardy: ^ [11:36] lachlanhardy: Error: This type of response MUST NOT have a body. [11:36] lachlanhardy: at ServerResponse.write (http:432:11) [11:37] JimBastard: lachlanhardy: looks like a put request [11:37] JimBastard: what version of node [11:37] JimBastard: ive seen that error [11:38] JimBastard: i think that happens when you try to response.write('foo') on a PUT request [11:38] JimBastard: but yeah, express and heroku are ehhh [11:38] JimBastard: not to my immediate liking [11:38] lachlanhardy: v0.1.101 I think [11:39] JimBastard: o.O [11:39] JimBastard: 0.2.0 yo [11:39] lachlanhardy: well, that's what I use. [11:39] lachlanhardy: and did for nodeko [11:39] lachlanhardy: but heroku... [11:39] JimBastard: yeah, we used our own hosting for nodeko [11:39] _announcer: Twitter: "Oh yeah, Palm's webOS node.js Naa I also would have adopted." [ja] -- 羽田野太巳/Futomi Hatano. http://twitter.com/futomi/status/23137859654 [11:39] lachlanhardy: we used joyent [11:39] JimBastard: but then they made us push to joyent [11:39] JimBastard: lol [11:39] JimBastard: ya [11:39] lachlanhardy: ha [11:40] lachlanhardy: probably helped with tracking for the comp [11:40] JimBastard: but yeah, why are you using heroku> [11:42] FuzzYspo0N: ahoy [11:43] mizerydearia has joined the channel [11:43] stephank has joined the channel [11:43] JimBastard: there is no FuzzYspo0N [11:44] lachlanhardy: cause I had the hosting available and it's free [11:44] lachlanhardy: otherwise I ahve to config another server etc [11:44] JimBastard: got ya [11:44] JimBastard: what you hosting? [11:44] lachlanhardy: it's for the sydjs community, so being able to just add other people securely is important too [11:45] JimBastard: dunno what that is [11:46] FuzzYspo0N: JimBastard: original ;) [11:46] JimBastard: wheres my french toast [11:46] FuzzYspo0N: i tried heroku too, but i got over rack pretty quick [11:46] lachlanhardy: oh, just javascript folks in sydney - http://sydjs.com [11:47] JimBastard: app crashed! [11:47] lachlanhardy: yae [11:47] JimBastard: lachlanhardy: i can give you guys free hosting if you want [11:47] lachlanhardy: that's where I'm at [11:47] JimBastard: its a community site? [11:48] _announcer: Twitter: "jsdom + jQuery screen scraping with node.js. Bags of potential here: http://bit.ly/a3X9Sm" -- Anthony Mann. http://twitter.com/MrNibbles/status/23138261211 [11:48] JimBastard: fuuuuu [11:48] JimBastard: lol [11:48] JimBastard: nooo more [11:48] Utkarsh has joined the channel [11:48] FuzzYspo0N: i might still use heroku but not for my main app [11:48] lachlanhardy: yar [11:48] lachlanhardy: http://github.com/sydjs/sydjs [11:49] lachlanhardy: you mean you have your own server, or? [11:49] JimBastard: lachlanhardy: i help run nodejitsu [11:49] JimBastard: we are a node.js hosting platform [11:49] JimBastard: www.nodejitsu.com [11:50] FuzzYspo0N: JimBastard: awesome too. thanks [11:50] JimBastard: still private alpha atm, but we are slowly opening things up [11:50] lachlanhardy: never heard of it :| [11:50] FuzzYspo0N: lachlanhardy: yea i just run my own node on my host [11:50] lachlanhardy: ah, that'd be why! [11:50] DTrejo has joined the channel [11:50] lachlanhardy: yeah, fuzzyspoon, that's what I've done too [11:50] DTrejo: JimBastard: yo [11:50] JimBastard: morning DTrejo [11:50] DTrejo: JimBastard: http://github.com/silentrob/Apricot [11:50] DTrejo: might make life somewhat easier [11:50] JimBastard: apricot doesnt do anything DTrejo [11:50] lachlanhardy: but for the community, it really needs to be somewhere more accessible [11:50] DTrejo: haven't used it tho [11:51] JimBastard: i know you havent [11:51] DTrejo: JimBastard: oh is it broken? [11:51] JimBastard: because if you did, we wouldnt be having this chat [11:51] JimBastard: no, it doesnt do anything [11:51] JimBastard: jsdom has a method now called jqueryify [11:51] JimBastard: apricot uses umm sizzle [11:51] JimBastard: we've been doing a bit of work with this [11:51] JimBastard: plus, tmpvar....is kinda on our team [11:52] FuzzYspo0N: lachlanhardy: http://www.webbynode.com/ [11:52] JimBastard: lol [11:52] DTrejo: JimBastard: oh [11:52] FuzzYspo0N: JimBastard: interesting stuff [11:53] JimBastard: FuzzYspo0N: whats that? [11:53] FuzzYspo0N: nodejitsu [11:53] JimBastard: ahh yeah [11:53] FuzzYspo0N: i put my email in there. [11:53] JimBastard: you peep our github? [11:53] JimBastard: cool cool [11:53] JimBastard: http://github.com/nodejitsu [11:53] FuzzYspo0N: ill check now [11:53] FuzzYspo0N: sweet [11:53] JimBastard: our team humbles me [11:54] JimBastard: serious blackbelts [11:54] FuzzYspo0N: yea looks like it [11:54] FuzzYspo0N: very cool [11:54] JimBastard: :-) [11:54] FuzzYspo0N: i need couchdb though. [11:54] FuzzYspo0N: well, thats what im doing now anyway [11:54] JimBastard: for what? [11:54] JimBastard: your app? [11:54] JimBastard: we have a couch cloud, and we have access to couch.io [11:54] FuzzYspo0N: is hosting couchdb and node on the same ip, so its closed [11:54] JimBastard: you can connect to our couch over the vlan, using private ips [11:54] delapouite has joined the channel [11:54] FuzzYspo0N: leet [11:55] JimBastard: might have to secure it a little, but its all there [11:55] FuzzYspo0N: cos i only access couch from node [11:55] JimBastard: for sure [11:55] JimBastard: thats how the signup works [11:55] FuzzYspo0N: to keep the db from the app, and same ip routing etc [11:55] FuzzYspo0N: it uses that cookie based auth which is cool [11:55] JimBastard: for sure [11:55] FuzzYspo0N: but iv made it rolling and dynamic rather [11:56] FuzzYspo0N: like a rogue email addy gets the new key for the couch users, then the node propogates its config etc [11:56] JimBastard: you'll have to excuse me, ive been up staring at log files for hours now [11:56] FuzzYspo0N: lol, no problem [11:56] JimBastard: hit some big numbers today with software, catch some errors [11:56] JimBastard: caught* [11:56] Tim_Smart: JimBastard: A TCP proxy has a lot better efficiency, still doubles the overhead though. [11:56] JimBastard: Tim_Smart: overhead meaning? cpu and ram? [11:56] frekw_ has joined the channel [11:56] bjartek has joined the channel [11:57] JimBastard: proxy time? [11:57] Tim_Smart: JimBastard: response time, yeah [11:57] JimBastard: that makes sense [11:57] JimBastard: do you think you could like, try to summarize all this up? [11:57] Tim_Smart: Memory usage peaks at 50mb, instead of climbing. [11:57] JimBastard: mailing list? [11:57] JimBastard: i dont want this good info to disappear [11:57] JimBastard: :-) [11:57] herbySk has joined the channel [11:58] Tim_Smart: Summary: use HAProxy or code something in C [11:58] _announcer: Twitter: "Many thanks to the translation. Great. http://nodejs.jp/nodejs.org_ja/" [ja] -- Moto Ishizawa. http://twitter.com/summerwind/status/23138835232 [12:03] _announcer: Twitter: "Node.js is the new hotness and awesome. #nincsvita" -- Bártházi András. http://twitter.com/ba78/status/23139106814 [12:03] Tim_Smart: JimBastard: Proxies are a reasonably low level kind of thing, and I think you are best to use a tried and tested solution for the sake of reliability. [12:04] JimBastard: Tim_Smart: but then our whole stack isnt node :-) [12:05] jsrx has joined the channel [12:05] Tim_Smart: JimBastard: Then you sir, will shoot yourself in the foot. [12:06] jsrx: http://news.ycombinator.com/item?id=1448309 # JimBastard is a thief? [12:06] JimBastard: Tim_Smart: well like, we need proxying + routing in the same stack [12:06] JimBastard: ohh noes jsrx you caught me [12:06] JimBastard: the shame [12:06] JimBastard: THE SHAME [12:06] JimBastard: MY LIFES WORK RUINED [12:06] JimBastard: ASCIIIIMOOOOOOooo [12:06] jsrx: Are all node.js developers thiefs? [12:07] _announcer: Twitter: "@makdotgnu we were using a standalone comet server for the comet service. would suggest u to also look into node.js chat #comet #nodejs" -- Tojo Chacko. http://twitter.com/tojochacko/status/23139329536 [12:07] webr3: why would you want node on the whole stack? [12:07] JimBastard: webr3: for fun [12:07] DTrejo: JimBastard: OS in node? [12:07] JimBastard: im eating breakfast so if people want to troll im gonna be slow on the come back [12:08] JimBastard: DTrejo: maybe! [12:08] FuzzYspo0N: ROFL [12:08] Tim_Smart: >.> [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] FuzzYspo0N: wtf jsrx [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] FuzzYspo0N: jsrx: even so, youre an idiot [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] jsrx: http://news.ycombinator.com/item?id=1448309 # Jim Barstard IS A THIEF!!! [12:08] FuzzYspo0N: lol, noob [12:08] Tim_Smart: /kick jsrx [12:08] DTrejo: woops [12:09] FuzzYspo0N: how do i shot flooding [12:09] FuzzYspo0N: im 12 what is this [12:09] niko has joined the channel [12:09] JimBastard: i just dropped in #freenode [12:09] JimBastard: he'll be kline soon i hope [12:09] FuzzYspo0N: yar, they usually handle that well [12:09] JimBastard: lol, now niko is here and the guy shuts up [12:09] JimBastard: >.< [12:09] DTrejo: that's all it takes to be super banned for ever on all channels? [12:09] hsuh has joined the channel [12:09] webr3: but the benefit of node is that it's a nice fast accessible implementation of ECMAScript, and the benefit of ECMAScript is that unlike most langauges, it can be viewed more as an API/interface in that it is bound to a single runtime, more an interface that said runtime implements; node itslef (whilst great) isn't much more than a nice wrapper around V8 - sticking node on the whole stack makes no sense, unless you want to make [12:09] JimBastard: jsrx you done spamming room? [12:10] FuzzYspo0N: DTrejo: no [12:10] webr3: s/is bound/is not bound [12:10] _announcer: Twitter: "@ Ba78 so that the cross-domain js long Polling still sucks, terjedhetne websocket already, but this is not the fault of node.js." [hu] -- Andras Biczo. http://twitter.com/abiczo/status/23139548216 [12:10] webr3: who's Barstard btw.. [12:11] Tim_Smart: jsrx left freenode... [12:11] JimBastard: lol [12:11] JimBastard: ohh yeah i missed it [12:11] JimBastard: like i said, foodz [12:11] Tim_Smart: Hmm I think some Ice Cream is needed on that note. [12:11] _announcer: Twitter: "Documents node.js div Ppoku frame're seeing is normal I'm doing with" [ja] -- azu. http://twitter.com/azu_re/status/23139612527 [12:15] JimBastard: thats kinda annonying, patorjk is stalking me on HN [12:15] JimBastard: http://news.ycombinator.com/item?id=1666486 [12:15] JimBastard: that dude has nothing to do with node in any way [12:15] webr3: JimBastard, shame to see you getting slammed for being enthusiastic in the threads - you were being a bit of a diva though [12:17] webr3: maybe patorjk loves you, or maybe he's a ruby coder from digg :S [12:17] _announcer: Twitter: "Screenscrape with node.js and jQuery in 5 lines. http://bit.ly/b6x8Cs #h4X0r" -- wesnolte. http://twitter.com/wesnolte/status/23139924173 [12:17] webr3: ACTION guesses and goes home [12:17] _announcer: Twitter: "nodejitsu.com is a node.js application hosting and martial arts training company" -- Mark Headd. http://twitter.com/mheadd/status/23139948013 [12:18] JimBastard: ahahahaha [12:18] JimBastard: lol too many tweets [12:22] _announcer: Twitter: "@booshtukka i have written a cmd line nodejs proxy. like @andybeeching says, this is what you want. can send code if you want it." -- ray brooks. http://twitter.com/rayui/status/23140242863 [12:24] _announcer: Twitter: "@booshtukka @markstickley @rayui Free is a good price but IMO Charles worth one-time hit for utility. CLI/Nodejs === geek points tho :)" -- andybeeching. http://twitter.com/andybeeching/status/23140363042 [12:27] dr4g has joined the channel [12:28] dr4g: Hey, looking to write a small nodejs component to return results from an XML file that my PHP IRC bot will call. [12:28] dr4g: Is this a good thing that nodejs could do ? [12:28] peol has joined the channel [12:29] robinduckett: sure but why not just use SimpleXML to read the xml from PHP itself? [12:30] _announcer: Twitter: "jsdom + jQuery in 5 lines with node.js - blog.nodejitsu.com - scaling node.js applicatio... http://bit.ly/cFHbDb #jquery" -- Michael Davis. http://twitter.com/web2feed/status/23140684202 [12:30] bpot has joined the channel [12:32] dr4g: robinduckett, thats what i thought but somoene suggested node.js i'll ask his reasoning to make it more clear [12:32] robinduckett: node is no faster than PHP at reading XML [12:33] robinduckett: infact with that new E4X extension from Facebook, PHP is much better at reading XML than node [12:33] robinduckett: make an IRC bot in node though may be a good way to learn :) [12:33] christkv: I know this is not strictly on topic but I would love some feedback on some ideas around organizing a business that's been running through my head lately http://christiankvalheim.com/post/1047361816/business-with-a-difference [12:34] jetienne: christkv: #startup may be of help [12:34] jetienne: +s [12:34] christkv: @jetienne thanks :) [12:34] robinduckett: christkv, [12:35] robinduckett: how is that different to any other business? lol [12:36] JimBastard: robinduckett: you see that patorjk guy? he stalks me on HN and posts links to my reddit rap [12:36] JimBastard: http://news.ycombinator.com/item?id=1666486 [12:36] BryanWB has joined the channel [12:36] JimBastard: following his account is lulz [12:36] robinduckett: reddit rap? [12:36] JimBastard: ahahahaha [12:36] christkv: @robinducket I'll not discuss it the channel to avoid spamming everyone else :) But the key is the social model of the business and limiting the customer base :) [12:37] christkv: on another note has anyone tried running the node-mongodb driver with the C++ bson parser ? [12:37] robinduckett: no [12:37] robinduckett: JimBastard, I'm not on reddit. [12:37] robinduckett: At work at least, they blocked it :( [12:38] JimBastard: yeah, i just made this stupid rap video about reddit [12:38] JimBastard: when i was bored [12:38] JimBastard: its kinda epic [12:38] robinduckett: hahaha [12:38] robinduckett: did it get front page? [12:38] JimBastard: no [12:38] robinduckett: awh [12:38] robinduckett: bbiab [12:38] JimBastard: it kinda bothers me that "supporting" is talking smack about the node community like hes part of it. dude is a vb6 developer who hasnt do anything even remotely related to node [12:39] robinduckett: ROFL VB6 [12:39] robinduckett: man [12:39] robinduckett: I haven't done anything in VB6 since I was 14 [12:39] robinduckett: I used to make an open source MSN client in VB6 [12:39] robinduckett: long time ago now [12:39] robinduckett: bbiab [12:43] christkv: I noticed a definitive weird vibe at railsconf this year. People were talking about how node was stealing mindshare from the ruby camp [12:43] JimBastard: lol christkv [12:44] JimBastard: i think the ruby people are getting upset [12:44] JimBastard: i dont see a problem, we can share! [12:44] Nohryb has joined the channel [12:44] jetienne: well js on server got this key advantage... you can forget the others [12:45] christkv: my point exactly, I guess it's more of a knee-jerk reaction from entrenched people [12:45] jetienne: and js you have to know it due to its presence in browser... so the opposite is not true [12:45] SamuraiJack: hello [12:45] SamuraiJack: in the express, how I can send the response, which is available asynchronously? [12:45] SamuraiJack: nothing similar in the docs.. [12:46] webr3: yup, ruby, php, java etc all come bundled with a runtime - ecmascript is an API that can be (and is) implemented by many runtimes - thus, you can't beat it.. lest you go with other standardized langs.. [12:46] webr3: ACTION made yup sound like a language there.. soudns good [12:46] christkv: there seems to be two facets. One is node itself but the other one seems to be evented over threads [12:46] BryanWB: anybody here had much experience using riak w/ node.js? [12:47] christkv: @webr3. It's the node evented model that makes it awesome :) not only emacscript [12:47] jetienne: eventio is old idea. nothing new in itself [12:47] christkv: ecmascript [12:47] _announcer: Twitter: "Sequelize me (MySQL) for NodeJS just got some awesome updates ... Check it out! http://github.com/sdepold/sequelize" [ga] -- Christopher Pitt. http://twitter.com/verylastminute/status/23141751814 [12:47] BryanWB: just curious if there are any gotchas i should know about before diving in [12:47] jetienne: christkv: eventio is available in almost all langauges [12:47] shockie has joined the channel [12:48] christkv: @jetienne yeah but usually strapped on top a synchronous development framework [12:48] jetienne: christkv: like node :) [12:48] evanpro has joined the channel [12:49] christkv: @jetienne, rephrasing. Node was born designed for eventing, ruby, java etc was born without and then got it as an extension [12:49] christkv: @jetienne the pain higher on other platforms (for now) [12:49] christkv: is higher [12:51] _announcer: Twitter: "Node.js + Comet looks like a lot of fun. I need to get into that." -- Kfir Breger. http://twitter.com/kfirbreger/status/23141983581 [12:51] BryanWB: am torn between using riak and mongodb for my little pet project. anyone have strong feelings either way? [12:51] jetienne has joined the channel [12:51] Tim_Smart: redis! [12:52] Tim_Smart: <3 [12:52] wattz: morning! [12:52] christkv: I'm biased but I would recommend mongodb [12:53] christkv: it's more full featured and better documented but obviously riak is more fault-tolerant [12:53] BryanWB: christkv, over riak? or just in general? [12:53] robinduckett: supporting needs to eat a chode. [12:53] BryanWB: christkv, tks [12:54] christkv: if you need high fault tolerance riak is built on the amazon dynamo model but if you are building a normal website go for mongo [12:55] BryanWB: christkv, i am building a project mgt tool, w/ the target customer being the UN [12:55] BryanWB: so I think I will go for fault-tolerant [12:55] nolan_d has joined the channel [12:55] christkv: @BryanWB, how many users are you talking about ? [12:55] BryanWB: few thousand [12:56] wattz: I was thinking of Mongo or couch and big group in here told me: [12:56] christkv: is it running in a central data center [12:56] FuzzYspo0N: wattz: im using couch [12:56] BryanWB: christkv, could be [12:56] wattz: "Mongo will read fast but write slow, couch will write sorta fast and read sorta fast" [12:56] _announcer: Twitter: "Mastering Node - Open Source Nodejs eBook: Mastering Node eBook. Open Source Node eBook. Created by TJ Holowaychuk... http://bit.ly/9Z3CBf" -- Queena. http://twitter.com/Queena7139/status/23142358303 [12:56] christkv: my experience is that mongo will write fast but read even faster [12:57] wattz: bascially a large conversation that ended up with me just using mysql for main data, and using couchdb for some custom stuff im doing [12:57] FuzzYspo0N: iv got mongo setup but havent tested it yet [12:57] FuzzYspo0N: my db access isnt really in users time space [12:57] JimBastard: now how the hell can i rig up a pingdom to an alarm before i pass out [12:57] wattz: christkv: have you really load test mongo yet? [12:57] wattz: christkv: or is this from you just writing your app that you have 'noticed'? [12:57] christkv: we use it here for storing all our log data [12:57] wattz: log data makes sense too [12:57] mape: JimBastard: write a node script that does a http req every couple sec and use say.js to tell you it is down? [12:58] BryanWB: yeah, i am more focussed on fault-tolerance and less on speed. If the UN were to ever to adopt my yet to be written app, they would need lots of scaling [12:58] wattz: christkv: im not defending either way or anything, im also curious about this [12:58] christkv: About 10-20GB of log data a day [12:58] JimBastard: mape: i meant like, how can i rig up my speakers at home really loud [12:58] JimBastard: lol [12:58] wattz: JimBastard: bigger speakers :D [12:58] wattz: MORE AMPS [12:58] JimBastard: i think maybe sms to burner i have is best idea [12:58] JimBastard: wattz: you see HN today? [12:58] JimBastard: they hating hard [12:58] wattz: newp [12:58] JimBastard: i gave them a nice FU alert() box [12:58] christkv: @wattz not at all lol, we picked mongo due to it coming out as the fastest and most flexible solution for our problem [12:58] wattz: JimBastard: where have you been? I have missed our cute banter [12:59] BryanWB: HN hates anything that isn't common lisp [12:59] BryanWB: HN pro-MIT, anti-NewJersey [12:59] JimBastard: wattz: ive been here nonstop? i took sat night off [12:59] JimBastard: got wasted [12:59] wattz: JimBastard: it was an empty saturday for me then... [12:59] JimBastard: unlicensed club in brooklyn with model chicks, good times [12:59] JimBastard: almost as fun as node time [12:59] JimBastard: not quite though [12:59] wattz: LAIR [12:59] wattz: :D [12:59] wattz: LAWR [12:59] JimBastard: ahahaha, sigh [13:00] JimBastard: i got really drunk and hooked up with an ugly chick anyway [13:00] JimBastard: so, jokes on me [13:00] wattz: lmao [13:00] KungFuHamster has joined the channel [13:00] wattz: dude, i have to tell you this funny story about my brother in law [13:00] wattz: we have friends "spammers" who made a shit ton of money off affiliate marketing and now sport a nice amex black centruion card [13:01] christkv: @wattz I did some mini-benchmarking using the node driver (simple document). On my laptop it took 2.6 sec to retrieve and deserialize 100 000 docs [13:01] JimBastard: i fucking hate spammer [13:01] christkv: with the C++ BSon parser and 5.5 with the pure js parser [13:01] wattz: so one night, my bro-in-law decides to come up with a back story of how he is a .com millionaire, and our friend paul gives my bro his black card to make it more believable [13:01] JimBastard: >.< [13:01] christkv: and about 9 seconds to insert 100 000 docs [13:01] wattz: all these hot as chicks where after his nuts (I was playing his body guard) [13:02] wattz: at the end of the night, my friends and I caught him outside on the deck of this club with a really REALLY fat chick [13:02] wattz: :D [13:02] wattz: moral of the story. [13:02] wattz: Regardless of how many hot chicks want to fuck you... Beer tells you other wise [13:02] wattz: :D [13:03] KungFuHamster_ has joined the channel [13:04] JimBastard: ahaha [13:04] JimBastard: we had 4loco jello shots [13:04] JimBastard: thats when you make jello shots, but use 4loco instead of water [13:04] wattz: i don't drink so i just got to be a spectator [13:04] JimBastard: so rum + 4loco + jello [13:05] wattz: JimBastard: nice [13:05] wattz: JimBastard: get a jar of cherries, drain the juice out of them, fill it back up with Everclear [13:05] wattz: Cherry bombs are awesome [13:05] JimBastard: >.< [13:05] wattz: ACTION doesn't drink _anymore_ [13:06] wattz: www.motiivate.com :D [13:06] wattz: landing page up! [13:08] JimBastard: well [13:08] JimBastard: pingdom should be pointing to my phone [13:08] JimBastard: i think i can sleep now [13:08] JimBastard: holding at about 180 concurrents, down from 300 [13:08] wattz: NO [13:09] JimBastard: wattz: you feel like yelling at someone, go call this guy out [13:09] JimBastard: http://news.ycombinator.com/item?id=1666486 [13:09] JimBastard: imposter! [13:09] Kung_Fu_Hamster has joined the channel [13:09] wattz: JimBastard: they talking about you? [13:10] ctp has joined the channel [13:10] wattz: lmao [13:10] JimBastard: yeah, that dude "supporting" is this guy i mad upset a while ago, hes trollings [13:10] wattz: lmao, watching your video [13:10] JimBastard: i dont care if people say i suck, it bothers me that people assert things about node when they know nothing [13:10] JimBastard: and are trollings [13:10] wattz: to....much....free.....time.... [13:10] wattz: :D [13:11] JimBastard: ahahaha [13:11] okuryu has joined the channel [13:12] wattz: haha I love that [13:12] _announcer: Twitter: "http://tinyurl.com/2wsu3g7 Using jQuery and node.js to scrape html pages in 5 lines" -- catch_down. http://twitter.com/catch_down/status/23143408923 [13:12] JimBastard: NO MORE [13:12] wattz: " assert things about node when they know nothing [13:12] wattz: 09:10 < JimBastard> and are trollings [13:12] JimBastard: STOP IT _announcer [13:12] wattz: 09:10 < wattz> to....much....free.....ti" [13:12] wattz: oops [13:12] wattz: i dont care if people say i suck, it bothers me that people assert things about node when they know nothing [13:12] wattz: ^ [13:12] wattz: haha [13:12] wattz: "Screw me, Love Node" [13:13] JimBastard: i mean for real, that guy isnt in irc [13:13] JimBastard: hes not doing node stuff [13:13] JimBastard: he's contributed 0 to the community [13:13] JimBastard: and of course, im perma ban on HN, so i cant say dick [13:13] wattz: dribbble was fun until it just became "I can design that better than you" [13:16] jamescarr_: JimBastard, who? [13:16] JimBastard: patorjk [13:17] JimBastard: hes my HN and reddit stalker [13:17] JimBastard: i think he gave up on reddit since people kept down voting him [13:18] christkv: @JimBastard he does not seem like good nemesis material [13:18] JimBastard: not really [13:18] genbit has joined the channel [13:19] JimBastard: im still scared to go to sleep [13:19] _announcer: Twitter: "Node.js http://nodejs.org - is definitely happening." -- Kris Krause. http://twitter.com/dragthor/status/23143885434 [13:19] JimBastard: i dont trust this pingdom sms [13:19] JimBastard: lol [13:19] JimBastard: _announcer knows the future [13:22] _announcer: Twitter: "Swarmation, nodejs knockout overall winner. http://swarmation.com/" -- Martijn de Haan. http://twitter.com/martijndeh/status/23144074608 [13:24] MrTopf has joined the channel [13:24] [[zz]] has joined the channel [13:25] _announcer: Twitter: "Threw together a stand alone amqp example for node.js, if you want an example. http://github.com/jamescarr/nodejs-amqp-example ;)" -- jamescarr. http://twitter.com/jamescarr/status/23144349203 [13:29] _announcer: Twitter: "Finally, what I have been looking for all these days scraping in JS with Node - http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs" -- Jaideep Dhok. http://twitter.com/jdhok/status/23144562649 [13:29] zapnap has joined the channel [13:31] andrehjr has joined the channel [13:31] HerrTopf has joined the channel [13:32] mizerydearia has joined the channel [13:37] fyskij has joined the channel [13:37] DTrejo has joined the channel [13:40] shreekavi has joined the channel [13:40] _announcer: Twitter: "Reading: Mastering Node - Open Source Nodejs eBook http://bit.ly/drww0D" -- Colin Wright. http://twitter.com/ebookling/status/23145409392 [13:42] arnorhs has joined the channel [13:42] ama has joined the channel [13:42] JimBastard: aight i gotta go to zzzzz [13:43] JimBastard: if the sites go down and anyone feels like hollering just ping me and i might appear [13:43] JimBastard: i hope i dont run out of FDs [13:43] JimBastard: and or pingdom works [13:43] JimBastard: ACTION prays [13:44] dnolen has joined the channel [13:44] ama: is the ssl http client still leaking? [13:44] mikew3c has joined the channel [13:45] mikew3c has joined the channel [13:51] christkv: If I ever get a payout from anything I'm going to request to be paid in 200 pound canadian 1 million dollar coins [13:52] vvsh has joined the channel [13:53] Kung_Fu_Hamster has joined the channel [13:55] matclayton has joined the channel [13:58] rtomayko has joined the channel [13:58] george_ has joined the channel [14:02] _announcer: Twitter: "Node.js has become something like a spy's fanatic" [ja] -- こば@偽リア充なう. http://twitter.com/KOBA789/status/23147042769 [14:02] _announcer: Twitter: "Node.js for Server Newbs http://bit.ly/bZFEAe <- Short but awesome." -- Jeremy Day. http://twitter.com/jeremyday/status/23147048193 [14:03] _announcer: Twitter: "@jamescarr Love to see an #amqp + #nodejs talk at next #nodejstl" -- Peter Griess. http://twitter.com/pgriess/status/23147131760 [14:03] _announcer: Twitter: "Oh I node.js. I do not incorporate into your own. A V8. We received it will be useful anyway" [ja] -- キャットフード. http://twitter.com/nullkal/status/23147136217 [14:10] moesian has joined the channel [14:11] moesian: hi is there a recommended database to use with node.js or at least one that is most popular? [14:11] caolanm: hi moesian [14:12] V1: couchdb, mongodb, redis, [14:12] caolanm: there are a load of database libs available for node.js [14:12] _announcer: Twitter: "Learning Node.js - finally a programming language that I can enjoy!" -- Jason Gill. http://twitter.com/iota/status/23147817811 [14:12] kaichen has joined the channel [14:12] caolanm: so pick the db that's right for your app [14:12] caolanm: or stick to one your comfortable with perhaps? ;) [14:12] Tim_Smart: redis is a good fit for node, but I am bias :p [14:13] caolanm: http://github.com/ry/node/wiki/modules#database [14:13] caolanm: moesian: ^ [14:13] caolanm: we're spoilt for choice with databases these days ...its so refreshing :) [14:14] DTrejo has joined the channel [14:14] Tim_Smart: I'll probably give http://github.com/bnoguchi/redis-node a shot on my next project. [14:16] jamescarr_: ryah, you're right, you should explicitly specify the exchange [14:16] jelveh has joined the channel [14:16] jamescarr_: Tim_Smart, I've remained in the dark on redis [14:17] Tim_Smart: As in you haven't given it a shot yet? [14:18] Tim_Smart: It requires a bit of a paradigm shift in your thinking. But if you use it well, it is insanely performant. [14:19] christkv: I think the mysql situation is getting better too [14:19] Tim_Smart: Yeah, with fast-buffers on the horizon, database clients will see a decent speed up. [14:20] christkv: what exactly is fast-buffers ? [14:20] evanpro has joined the channel [14:20] christkv: I heard it mentioned [14:20] christkv: but I'm not sure what it is [14:20] Tim_Smart: Basically just a memory pool (old buffer) [14:21] christkv: so it's the current buffer but with a memory pool for allocation ? [14:21] Tim_Smart: API on top of the old one [14:21] christkv: so reuse ? [14:22] christkv: I'll be interested if that makes much difference to be honest as db drivers will be allocating a lot of different sized buffers [14:22] bradleymeck: ugg jimbastard sorry about running out on you yesterday, yea make works fine on my machine, but has a ton of things that are probably not going to work on mac os, so i gave it a potshot at you, basically all that needs to be fixed is linking to libsndfile , sfml, and openal in waf for mac os x. but waf doesnt seem to hot w/ Frameworks [14:22] Tim_Smart: Not re-use, it just prevents creating lots of external v8 objects; which is expensive. [14:22] Utkarsh has joined the channel [14:22] christkv: @Tim_Smart is this in the master branch ? [14:22] Tim_Smart: No. [14:22] bradleymeck: External::Wrap is also more expensive than ::New cause of all the heuristics and casting [14:22] Tim_Smart: It has its own branch, as it breaks things at present. [14:23] stagas: mape: your sites are down [14:23] christkv: oh I see [14:24] christkv: @Tim_Smart has anyone done any "micro-benchmarks" using fast buffers ? [14:24] christkv: I'm mostely interested if it makes sense for the mongodb driver [14:24] Tim_Smart: christkv: For lots of small allocations it is around 30x faster. [14:25] _announcer: Twitter: "Sencha + NodeJs not have anyone =)" [pt] -- e-Genial. http://twitter.com/egenial/status/23148865969 [14:25] moesian: Thanks for you help. I've used postgres in the past. I see that redis is popular. Would Redris be a bit of shock, is it completely different from using a relational db? [14:25] Tim_Smart: 20-30 anyway. This is for creation only. [14:25] christkv: for serialization on the mongodb driver (C++ version) I precalculate the size of the serialized object and then do a single allocation [14:25] christkv: using pointers to write into the allocated memory [14:25] christkv: so I'm not sure it will help there :( [14:26] Tim_Smart: Right. Fast-buffers just create a large set-sized pool, then allocate new pools when they fill up. [14:26] christkv: One thing I'm considering is to make the serialization a streaming serialization at some point when I have time [14:27] christkv: so it would write to mongodb as it's serializing [14:27] christkv: should lower memory consumption a fair bit [14:27] christkv: in this case it fast buffers might be helpful [14:27] _announcer: Twitter: "ahhh, then blz! trivia was the trickster .... lol ... RT: @ egenial: Sencha + NodeJs not have anyone =)" [pt] -- Adelino P. Mazuti. http://twitter.com/adelinopmazuti/status/23149051195 [14:27] stepheneb has joined the channel [14:31] Akufen has joined the channel [14:31] Akufen has joined the channel [14:33] mape: stagas my router/dev wwws hdd crashes [14:33] mape: *d [14:34] stagas: mape :( [14:34] mape: hehe [14:35] mape: guess i need a boot cd to fsck it [14:36] elliottkember has joined the channel [14:36] overra_ has joined the channel [14:37] elliottkember: hey all [14:37] BryanWB has joined the channel [14:37] V1: Ha, just reduced my Node.js server load with 50%. [14:38] V1: Optimized code > nko hacked code :p [14:39] Tim_Smart: V1: Yeah I optimized some code I had hacked together recently, and memory usage dropped by 3-4x [14:39] dbathurst has joined the channel [14:39] V1: Fun stuff :p [14:39] elliottkember: eerrgh I've got a tricky one today [14:40] elliottkember: I've got a chat app running node + redis for "who's online" [14:41] LFabien has joined the channel [14:42] elliottkember: now I have to split it into 'watching' and 'taking part' [14:43] _announcer: Twitter: "http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs [pic] http://ff.im/-qiwlw" -- Ilya Furman. http://twitter.com/falsefalse/status/23150357213 [14:44] _announcer: Twitter: "@pgriess good idea! Tomorrow night is rabbitMQ in general, perhaps a good #nodestl prez would be integrating node.js with backend systems" -- jamescarr. http://twitter.com/jamescarr/status/23150364465 [14:44] Tim_Smart: I have been using redis a lot lately... [14:44] elliottkember: Tim_Smart: it's really nice, although I find it gets tricky when you try to do complicated things with it [14:45] _announcer: Twitter: "Tonight, I'll try to build my first app with #couchdb (or #nodejs + #couchdb). Loads of data to collect before making it useful." -- Thomas Parisot. http://twitter.com/oncletom/status/23150463085 [14:45] _announcer: Twitter: ""Node.js to run in Windows XP - client-side scripting with Web Standards" (http://bit.ly/b0WYPB)" [ja] -- meumix. http://twitter.com/meumix/status/23150469777 [14:45] Tim_Smart: elliottkember: Right. I'm using it to manage a music library. [14:45] _announcer: Twitter: "@oberonix node.js = evented IO who cares about multithreading? Just a thought ;)" -- Zak Zajac. http://twitter.com/madzak/status/23150519991 [14:46] shreekavi has left the channel [14:49] Tim_Smart: Anyway - I'm out. [14:49] herbySk has joined the channel [14:50] sschuermann: Aron heckmann there ? [14:50] sschuermann: or better said: here? [14:50] sschuermann: Thanks for the answer, i will try the answer to http://groups.google.com/group/express-js/browse_thread/thread/8746267da81789ed [14:52] ph^ has joined the channel [14:52] _announcer: Twitter: "#Node.js knockout competition - see next gen web apps and games in reality! http://bit.ly/9eSNic #nodejs #webdev" -- Dominik Guzei. http://twitter.com/DominikGuzei/status/23151101934 [14:55] jtsnow has joined the channel [14:56] KungFuHamster has joined the channel [14:57] tmcneal43 has joined the channel [15:00] _announcer: Twitter: "http://bit.ly/bXgR1Z ◊ Npm.mape.me - A repository for NodeJS modules" -- François-G. Ribreau. http://twitter.com/FGRibreau/status/23151703273 [15:00] genbit has left the channel [15:00] mape: great timing >_< [15:00] bradleymeck: so i set waf to link against a .so for my c++ addon, but it never seems to find the so, when i put it in the same dir as the executing script and the dir of the addon it fails on both [15:00] christkv: Damn the _announcer is getting pretty spammy [15:01] FuzzYspo0N: yea cos they talk lots about node :p [15:02] christkv: maybe it could be keyed in the future on something like #nodejsannounce [15:02] christkv: or something [15:03] FuzzYspo0N: yea, or a pastebin link every 10 minutes of the last 10 minutes [15:05] DTrejo has joined the channel [15:06] jamescarr_: hahahah [15:06] jamescarr_: Dos on Dope [15:06] jamescarr_: http://www.secretgeek.net/dod_intro.asp [15:08] DTrejo: this "guide" is mindbloggling [15:08] DTrejo: http://expressjs.com/guide.html [15:08] DTrejo: It's not actually a guide, it's documentation [15:09] DTrejo: end of mini rant [15:14] noahcampbell has joined the channel [15:18] dohtem has joined the channel [15:18] bsstoner has joined the channel [15:21] dipser: is it possible to send parameter to a running app with terminal/console? [15:23] bradleymeck: rephrase that? [15:24] bradleymeck: stdin you mean? [15:25] jamescarr_: java is so complicated sometimes [15:25] dipser: mhm thats looks good. i have overseen this. sorry [15:27] bradleymeck: jamescarr_ java is often complicated [15:28] jamescarr_: bradleymeck, yeah yeah, this is coming from a guy that does it day in and day out... [15:28] jamescarr_: put together java piece to my amqp example [15:28] jamescarr_: ridiculous amount of work [15:28] John9e9 has joined the channel [15:28] bradleymeck: ouch [15:28] bradleymeck: though, the interface system is nice [15:29] mbrochh has joined the channel [15:29] mbrochh has joined the channel [15:31] _announcer: Twitter: "Just found a really good post from #nodejitsu about screen scraping in node.js: http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs" -- Kevin Bowler. http://twitter.com/levkaizer/status/23154341559 [15:31] elijah-mbp has joined the channel [15:34] sideshowcoder has joined the channel [15:34] Zuardi has joined the channel [15:34] programble has joined the channel [15:35] ph^ has joined the channel [15:38] tisba has joined the channel [15:38] marshall_law has joined the channel [15:41] dilvie has joined the channel [15:41] overra_ has joined the channel [15:45] boaz_ has joined the channel [15:45] _announcer: Twitter: "#jsdom + #jQuery in 5 lines with node.js - scaling node.js applications one #callback at a time. http://bit.ly/9bntEG" -- Sergio Parilli. http://twitter.com/bironcho/status/23155477963 [15:45] ashleydev has joined the channel [15:48] ceej has joined the channel [15:48] christkv: how's the expressjs guide generated ? [15:55] femtoo has joined the channel [15:58] stephank has joined the channel [16:00] femtoo has joined the channel [16:01] robinduckett has joined the channel [16:01] robinduckett: yo [16:01] sudoer has joined the channel [16:04] _announcer: Twitter: "#delicious_hotlist jsdom + jQuery in 5 lines with node.js - blog.nodejitsu.com - scaling node.js applications one ... http://bit.ly/cgOBZE" -- redes sociales web. http://twitter.com/redesocialesweb/status/23157029812 [16:04] _announcer: Twitter: "via Del.icio.us : jsdom + jQuery in 5 lines with node.js - blog.nodejitsu.com - scaling node.js... http://bit.ly/cNZnK2 #social #networking" -- Karen Kinnaman. http://twitter.com/KarenKinnaman/status/23157030194 [16:04] _announcer: Twitter: "Tip of delicious jsdom + jQuery in 5 lines with node.js - blog.nodejitsu.com - scaling node.js applicat ... http://bit.ly/cNZnK2 # education" [nl] -- Shatheeswaran. http://twitter.com/Evercome/status/23157030490 [16:04] tyfighter has joined the channel [16:09] mizerydearia has joined the channel [16:10] digitalspaghetti has joined the channel [16:12] elliottkember has joined the channel [16:13] mikew3c has joined the channel [16:14] _announcer: Twitter: "Scraping by node.js + jQuery / jsdom + jQuery in 5 lines with node.js - blog.nodejitsu.com - scaling node.js applications ... http://htn.to/aRUnU2" [ja] -- Jxck. http://twitter.com/Jxck_/status/23157835064 [16:17] jacquesc has left the channel [16:18] mizerydearia has joined the channel [16:18] _announcer: Twitter: "node.js Maikurofuremuwaku in / Meryl - Minimalistic Web Framework for NodeJS http://htn.to/EdfVzf" [ja] -- Jxck. http://twitter.com/Jxck_/status/23158163061 [16:20] Apage43 has joined the channel [16:23] mizerydearia has joined the channel [16:24] podman has joined the channel [16:25] bradleymeck: mmmm dlopen does not like linking to shared library files from .node files [16:26] adambeynon has joined the channel [16:27] tj has joined the channel [16:28] stephank: Ugh, I have the worst kind of bug: the kind that goes away when you try to debug it. :/ [16:28] bradleymeck: hehehe [16:28] bradleymeck: tj you played around w/ .so's linked to by addons? [16:29] tjholowaychuk: bradleymeck: nope, havent touched addons really since when they were first introduced [16:29] FuzzYspo0N: hmm [16:33] tjholowaychuk: is today a holiday lol [16:33] bradleymeck: for the US [16:33] tjholowaychuk: oOo [16:34] mcarter_ has joined the channel [16:35] MrTopf has joined the channel [16:37] softdrink has joined the channel [16:41] jamescarr_: yeah, I'm laboring on Labor Day [16:41] ph^ has joined the channel [16:41] jamescarr_: got a presentation on RabbitMQ tomorro night I forgot about :) [16:41] tjholowaychuk: ya i never really pay attention to holidays lol tons to do anyway [16:43] cloudhead has joined the channel [16:43] d0k: it should be called non-labor day [16:43] ph^ has joined the channel [16:43] christkv has joined the channel [16:44] FuzzYspo0N: yea lol [16:44] Vekz has joined the channel [16:45] hdon has joined the channel [16:45] _announcer: Twitter: "Redis MacPorts 2.0.0 and 0.2.0 from the node.js I installed. Show details Umm. Very easy." [ja] -- 村田 賢一郎. http://twitter.com/muraken720/status/23160252154 [16:47] jamescarr_: heh... I'm going to write a node.js app that serves as a user front end to some old java code we got at work [16:47] jamescarr_: with amqp as the glue between em [16:47] mizerydearia has joined the channel [16:47] qFox has joined the channel [16:48] jamescarr_: I shouldnt say old... I should say "fairly recent" :) [16:48] mizerydearia has joined the channel [16:49] elliottkember has joined the channel [16:50] _announcer: Twitter: "wrapping up the communication between node.js and couch.For a nice simpler example wrapper see http://github.com/felixge/node-couchdb" -- FuzzYspo0N. http://twitter.com/FuzzYspo0N/status/23160631174 [16:50] jelveh has joined the channel [16:54] sveimac has joined the channel [16:54] marshall_law has joined the channel [16:56] bradly has joined the channel [16:57] mikeal has joined the channel [17:00] bradly has left the channel [17:01] matclayton has left the channel [17:04] jedschmidt has joined the channel [17:04] justin__ has joined the channel [17:06] mikeal1 has joined the channel [17:09] bsstoner has joined the channel [17:09] jacobolus has joined the channel [17:11] mikew3c has joined the channel [17:12] _announcer: Twitter: "#AMQP Example in javascript using Node.js http://bit.ly/bMFNN8" -- Evan Genieur. http://twitter.com/Evangenieur/status/23162291322 [17:13] stephank: Is the order in which WebSocket messages arrive in the browser guaranteed? I have a totally weird bug that dissappears when I put a `console.log` right before I create the WebSocket. [17:16] bpadalino: are you writing to the socket in two different functions driven by different events ? [17:17] bpadalino: underneath, isn't a websocket tcp ? [17:17] stephank: yeah, that's why it's totally weird. [17:17] Utkarsh has joined the channel [17:17] stephank: There's no real reply-response cycle in my communication. I just expect the first message to be a specific format, but then it somehow isn't. [17:18] bpadalino: are you only writing to it in a single function ? [17:18] _announcer: Twitter: "Getting a "could not configure a cxx compiler" error when trying to compile node.js on OS X 10.4. I know little about Macs. Any ideas?" -- Sean O. http://twitter.com/seanodotcom/status/23162719807 [17:18] _announcer: Twitter: "NODE.JS or the triumph of JavaScript for the web real time http://blog.inovia-conseil.fr/?p=101" [fr] -- Evan Genieur. http://twitter.com/Evangenieur/status/23162762759 [17:19] stephank: bpadalino: No, but the basic order of things on the server is to write the opening message, then add the client to a list, and further messages are broadcasts from to all clients. [17:19] stephank: There's no way a broadcast can happen before an opening message though, because the socket is not in my connection list yet. [17:19] bpadalino: interesting [17:20] stephank: Lemme just make a wireshark trace real quick to verify that it's not in the server. (but I'm fairly sure) [17:21] rtomayko has joined the channel [17:22] stephank: bah, it looks like it's somewhere in my server any ways. :/ [17:22] KungFuHamster has joined the channel [17:23] claudiu__ has joined the channel [17:23] bpadalino: :( [17:27] masch|off: mikeal1: are u the author of the node.js request library? [17:27] hdon has joined the channel [17:28] bmavity has joined the channel [17:28] tjholowaychuk: masch|off: I believe he is :D [17:28] masch: tjholowaychuk: is there any documentation? [17:28] tjholowaychuk: no clue [17:28] tjholowaychuk: its in a utils repo i think [17:28] tjholowaychuk: would be nice to maybe have it as a seperate lib [17:29] _announcer: Twitter: "http://tinyurl.com/38gdgvv Node.js for Server Newbs" -- onion_soup. http://twitter.com/onion_soup/status/23163520644 [17:29] elliottkember has joined the channel [17:29] weetabix has joined the channel [17:29] masch: ahhh thanks a lot [17:29] masch: found it [17:29] elliottkember has joined the channel [17:30] _announcer: Twitter: "I wrote a node.js webapp that reports the local weather. Now to add twitter support so that I will be considered an expert programmer..." -- Jason Gill. http://twitter.com/iota/status/23163599532 [17:30] AAA_awright: Anyone have some duct tape I can borrow? I think my head is going to explode comprehending all this nesting [17:31] bpadalino: the nesting can get pretty serious [17:31] bpadalino: can you paste your code online with the nesting ? [17:34] jedschmidt has joined the channel [17:37] keeto_ has joined the channel [17:38] AAA_awright: Alrighty there, I'm just making things harder for myself than they need to :) [17:40] DTrejo has joined the channel [17:42] codysoyland has joined the channel [17:42] tmpvar has joined the channel [17:43] tmpvar: lo [17:43] mr_daniel has joined the channel [17:43] v8bot has joined the channel [17:49] mikeal1: masch: yes [17:49] mikeal1: i wrote that [17:49] masch: thanks for that :-) [17:49] mikeal1: tmpvar: is there a way to get a dump of the HTML for the current DOM in jsdom? [17:49] mikeal1: masch: you welcome :) [17:49] mikeal1: er your [17:50] DTrejo has joined the channel [17:52] jedschmidt has joined the channel [17:54] tmpvar: mikeal1, you can get the outerHTML of the body [17:54] _announcer: Twitter: "node.js + screen scraping = peanut butter and jelly: http://bit.ly/bUMf3J" -- Brian Stoner. http://twitter.com/bsstoner/status/23165240380 [17:56] jchris has joined the channel [17:56] digitals1aghetti has joined the channel [17:56] tmpvar: mikeal1, actually the document has an outerHTML getter [17:57] FuzzYspo0N has left the channel [18:00] tmpvar has joined the channel [18:02] TomsB has joined the channel [18:02] maushu has joined the channel [18:03] BryanWB has joined the channel [18:04] Gruni has joined the channel [18:04] _announcer: Twitter: "Seeking Freelancer for Small Scope Project: NodeJS, Coffeescript, Ruby (Any location): I'm looking for a freelance... http://bit.ly/bQzeZo" -- Savvy Talent. http://twitter.com/Savvy_Talent/status/23165943197 [18:04] _announcer: Twitter: "@previouspost: not possible with my current website. how disappointing. however, http://chat.nodejs.org/ is cool. #fyi" -- B3n greenier. http://twitter.com/Beng2cool4u/status/23165949757 [18:06] tmpvar: mikeal1, indexzero mentioned that you were doing some dom/couch related stuff? [18:09] _announcer: Twitter: "jsdom + jQuery in 5 lines with node.js - blog.nodejitsu.com - scaling node.js applications one callback at a time.: http://bit.ly/cgOBZE" -- Roel Lousberg. http://twitter.com/Roel_91/status/23166232630 [18:09] _announcer: Twitter: "Back to Arduino hacking, now with node.js uh yea" -- Human API. http://twitter.com/humanapi/status/23166238938 [18:09] Yuffster has joined the channel [18:10] _announcer: Twitter: "@oncletom interesting - Expect some feedback on this #couchdb #nodejs" -- Nicolas Steinmetz. http://twitter.com/nsteinmetz/status/23166299834 [18:12] _announcer: Twitter: "Study break of node.js and websockets, tomorrow is over = D" [pt] -- Filipe La Ruina. http://twitter.com/filipelaruina/status/23166471796 [18:13] _announcer: Twitter: "@m1ke_ellis Also interesting: screen-scraping with node.js (if you're into that kind of thing) - http://bit.ly/9wqFPp" -- Dan Zambonini. http://twitter.com/zambonini/status/23166529733 [18:15] mau2 has joined the channel [18:15] tobeytailor has joined the channel [18:18] V1 has joined the channel [18:18] aho has joined the channel [18:19] _announcer: Twitter: "Node.js !!" -- Hadrien Lanneau. http://twitter.com/hadrienl/status/23166916293 [18:19] bpadalino: nice tweet [18:21] V1: And it's not even stuffed with hash tags [18:21] luc4s has joined the channel [18:24] bpadalino: #nicetweet [18:25] V1: Does anybody know a easy way to get usage information about our no.de machines? I wonder how much CPU, bandwidth etc I'm currently using so i can do some capacity planning [18:25] tobeytailor: hey! anybody here willing to help me with an anoying libeio issue? :) [18:26] bpadalino: i'm willing, but my ability is extremely low [18:26] zk has joined the channel [18:27] Me1000 has joined the channel [18:27] paulwe has joined the channel [18:28] webr3: mikekelly, so you do! just noticed you in here too - sweet, checks one more room, pushing luck [18:29] technoweenie has joined the channel [18:29] _announcer: Twitter: "Thought of that while reading this: http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs" -- Russell Beattie. http://twitter.com/RussB/status/23167594225 [18:34] codetonowhere has joined the channel [18:35] elliottkember has joined the channel [18:35] LowValueTarget has joined the channel [18:38] zemanel: anyone need anything done? need to make a couple of bucks for a plane ticket :) [18:39] tmpvar: how much is a couple? [18:39] zemanel: 200eur [18:39] zemanel: have to go to jsconf london [18:39] mau2: http://ai-contest.com/ [18:39] mbrochh: How did you guys create the _accouncer? [18:39] zemanel: aw i never win contests [18:40] _announcer: Twitter: "I really need to take the time to play with node.js everyone's making neat stuff with it. I want to make neat stuff too!!" -- Trashhalo. http://twitter.com/trashhalo/status/23168237234 [18:41] tobeytailor: there's a jsconf in london? [18:42] zemanel: a miniconf [18:42] zemanel: http://www.meetup.com/londonajax/calendar/14449749/ [18:42] tobeytailor: nice [18:43] saikat has joined the channel [18:44] zemanel: but im broke :p [18:45] tobeytailor: help me fixing my libeio prob and i'll give you 10 bucks [18:45] tobeytailor: :) [18:45] zemanel: dont know enough C [18:46] tobeytailor: :) [18:46] technoweenie: where are the npm files stored? i thought it was ~/.npm or something, but i'm not seeing it [18:47] zemanel: im currently on http://www.cprogramming.com/begin.html [18:47] zemanel: :p [18:48] _announcer: Twitter: "having a flick through namaiki, a lightweight node.js/express-based blog engine http://bit.ly/bmsrG8 from @sideshowbarker, Michael(tm) Smith" -- nathan. http://twitter.com/webr3/status/23168771480 [18:48] tobeytailor: i've started with C 2 weeks ago [18:48] tobeytailor: :D [18:49] sstephenson_: technoweenie: ~/.node_libraries/.npm iirc [18:49] technoweenie: i checked that too, wtf [18:52] technoweenie: npm is kinda busted [18:52] bpadalino: whoops [18:54] _announcer: Twitter: "Oh wow, i just discovered twitters Streaming API. Good stuff! combining with node.js and couchdb... epic shit!" -- fabian. http://twitter.com/fabianmu/status/23169119506 [18:54] stagas has joined the channel [18:57] _TS has joined the channel [18:57] Nohryb has joined the channel [18:58] MikhX has joined the channel [18:58] dnolen has joined the channel [18:58] voxpelli has joined the channel [18:59] _announcer: Twitter: "@sdepold Just noticed all those commits on github, looks like you've been busy with sequelize! #nodejs" -- Tane Piper. http://twitter.com/tanepiper/status/23169431421 [18:59] jamescarr_: Police are now focused on collecting more evidence while shooing away meth-heads trying to snort the ashes. [19:01] TomsB has joined the channel [19:01] DTrejo has joined the channel [19:05] _announcer: Twitter: "finally digging into node.js and html5 :)" -- andy sawyer. http://twitter.com/ndyswyr/status/23169833059 [19:07] technoweenie: oh i think npm despises periods in package names [19:07] statim has joined the channel [19:08] _announcer: Twitter: "filemtime in node j's return new Date (fs.statSync (filename). mtime). getTime ();" [de] -- Ryan Day. http://twitter.com/soldair/status/23169994553 [19:08] [[zz]] has joined the channel [19:09] maushu has joined the channel [19:11] pkrumins has joined the channel [19:12] mau has joined the channel [19:13] _announcer: Twitter: "GraphViz with Node.js: The pleasure that I use GraphViz does not seem ready to fade. The proof ... http://bit.ly/cMxDB0" [fr] -- Grégoire Lejeune. http://twitter.com/glejeune/status/23170354269 [19:14] ph^ has joined the channel [19:16] dnolen has joined the channel [19:17] DTrejo has joined the channel [19:17] tmpvar has joined the channel [19:17] jesusabdullah: http://github.com/glejeune/node-graphviz for the non-Frenchaise of us [19:19] CIA-77: node: 03Ryan Dahl 07fast-buffer * r0de36a4 10/ src/node_http_parser.cc : Fast buffers for http-parser - http://bit.ly/aHF8wU [19:19] CIA-77: node: 03Ryan Dahl 07fast-buffer * r7d08a8b 10/ test/simple/test-repl.js : Don't refer to private API in test-repl - http://bit.ly/ayipbb [19:19] CIA-77: node: 03Ryan Dahl 07fast-buffer * rcefa148 10/ src/node_crypto.cc : fast buffers for crypto - http://bit.ly/8YWpas [19:19] CIA-77: node: 03Ryan Dahl 07fast-buffer * r90c06df 10/ test/simple/test-http-parser.js : test-http-parser should not use private API - http://bit.ly/9BAyv2 [19:19] V1: argh :( I don't understand why browser make it sooo hard :9 [19:19] ryah: there [19:19] ryah: fast-buffers is mostly complete now [19:20] ryah: just need to rewrite history so that it looks like im a good programmer [19:20] ryah: then i'll land it [19:20] mattly has joined the channel [19:20] stagas: ryah heh :) [19:21] V1: thanks god you can actually rewrite history / commits with git ;) [19:21] sztanpet: how are fast buffers different btw? [19:21] digitals1aghetti: npm repo down? [19:21] bpadalino: i have to say, looking at the postgres example and building a small example on my own - it looks pretty straight forward to interface from node.js to C libs [19:21] Astro: V1: don't tell the nodeko contestants ;) [19:21] ryah: fast buffers are fast [19:21] Astro: will they change the Buffer api? [19:21] V1: psst Astro I also entered ;) [19:21] _announcer: Twitter: "@ Popdevelop based on kollektivt.se node.js?" [sv] -- Fredrik W. http://twitter.com/warnsberg/status/23170848715 [19:22] ryah: Astro: no [19:22] bpadalino: i felt bad yesterday saying i don't use node.js for work, so i thought it might be interesting to write something that connects up to fftw3 (i know, not webby enough for most, but pertinent to stuff i do) [19:22] ryah: there is some changes to the c++ buffer api though [19:24] herbySk has joined the channel [19:24] jesusabdullah: bpadalino: fftw being the fastest fourier transform in the west? [19:24] bpadalino: you got it, bub [19:24] _announcer: Twitter: "Javascript is rapidly becoming my favorite programming language. I need to put a node.js app together sometime soon." -- Alan Johnson. http://twitter.com/commondream/status/23171001616 [19:24] jesusabdullah: This is relevant to my interests. [19:24] bpadalino: fftw3 ? [19:24] jesusabdullah: Most of my work is in matlab and scipy [19:24] bpadalino: heynow! [19:24] jesusabdullah: so anything science-related is great for me :D [19:25] jesusabdullah: even though it's not too often I need a fourier transform <_< [19:25] bpadalino: let node.js be your backend simulator on large computers [19:25] jesusabdullah: Always looking for an excuse though :P [19:25] jesusabdullah: \o/ [19:25] bpadalino: well, fftw3 was just an excuse to learn the js<->c interface .. [19:25] bpadalino: you could always connect up to BLAS or something [19:25] jesusabdullah: Yeah [19:26] zemanel: jesusabdullah, would you be able to sketch a math api for node? [19:26] jesusabdullah: zemanel: What do you have in mind? [19:26] jesusabdullah: zemanel: I don't know c++, just so y'know [19:26] jesusabdullah: Willing to learn a little though I guess :) [19:26] mcarter__ has joined the channel [19:27] jesusabdullah: The biggest thing is having some sort of tensor-like class [19:27] zemanel: ive bee looking into gpu computing, which can process data very fast, calculations and sorts [19:27] jesusabdullah: hmm [19:27] bpadalino: there is a large latency overhead with gpu computing - watch out [19:28] zemanel: dunno [19:28] bpadalino: shuffling data back and forth is a big hit [19:28] jesusabdullah: I'd like to look at gpgpu as well, just cause it looks interesting [19:28] Validatorian has joined the channel [19:29] jesusabdullah: In numpy, there are special arrays that you make like, array([[1,2],[3,4]]) [19:29] jesusabdullah: and those are ctypes [19:30] zemanel: jesusabdullah, theres a lib with numpy/scipy for gpu computing [19:30] jesusabdullah: pycuda, right? [19:30] zemanel: http://mathema.tician.de/software/pycuda [19:30] jesusabdullah: I've looked at other stuff by the same author [19:30] jesusabdullah: I just haven't had a decent vidcard lately [19:30] jesusabdullah: XD [19:31] jesusabdullah: Andreas Klockner, right? Or something of the sort? He also wrote a FEM mesher I wanted to try [19:31] Yuffster has joined the channel [19:32] jesusabdullah: Ah, forgot an e [19:32] jesusabdullah: Kloeckner [19:32] jesusabdullah: He just hit up the scipy mailing list--ran into problems porting pycuda to python 3 actually [19:33] zemanel: hum [19:33] zemanel: i havent looked deeper int oit yet [19:33] Nohryb has joined the channel [19:35] SamuraiJack_ has joined the channel [19:37] BryanWB has joined the channel [19:38] atourino has joined the channel [19:39] tjholowaychuk: ryah: nice job man! excited to see the perf benefits [19:39] mikeal has joined the channel [19:40] JimBastard has joined the channel [19:40] Astro: is there anything that parses stream.getPeerCertificate().subject already? [19:40] ryah: there seems to be marginal improvement in hello world server [19:40] ryah: but i suspect buffer heavy apps are going to see some memory improvement [19:40] moesian has joined the channel [19:41] losvedir has joined the channel [19:42] tjholowaychuk: the redis client should be quite a bit faster now [19:43] ryah: tjholowaychuk: yeah, hopefully [19:44] tmpvar has joined the channel [19:45] _announcer: Twitter: "Confirmed, node.js IS sexy shite!" -- Darius Kruythoff. http://twitter.com/dkruythoff/status/23172264608 [19:48] Aria has joined the channel [19:48] HAITI: anyone use this redis client btw? http://github.com/bnoguchi/redis-node [19:49] sts193 has joined the channel [19:50] aaronblohowiak has joined the channel [19:50] tjholowaychuk: HAITI: I use http://github.com/fictorial/redis-node-client [19:50] tjholowaychuk: its great [19:50] sts193 has left the channel [19:50] technoweenie: redis-node looks better [19:51] zapnap has joined the channel [19:51] Validatorian: I also use redis-node-client -- I hope that fictorial adds the MULTI stuff, now that it's been done in redis-node [19:51] HAITI: Im using that right now =) [19:52] HAITI: i like it too [19:52] technoweenie: seems silly to write a whole new lib to add one feature [19:52] _announcer: Twitter: "Small note for those who the node.js MongoDB driver with a persistent "open" state, be sure to have a fallback once your connection drops." -- Arnout Kazemier. http://twitter.com/3rdEden/status/23172770873 [19:53] V1: who use* [19:53] Validatorian: technoweenie: the API is slightly different [19:53] V1: twitter > my fat fingers [19:53] technoweenie: still silly :) [19:54] aaronblohowiak: redis-node has transactions [19:54] _TS: Im becoming really fond of redis [19:55] genbit has joined the channel [19:55] technoweenie: neither are in npm, slackers [19:56] _TS: still leaking a bit of mem with redis-node-client though... [19:56] technoweenie: http://github.com/bnoguchi/redis-node/blob/master/test/hash_commands.vows.js#L69-70 are commands queued internally or something? [19:57] _announcer: Twitter: "very interested in node.js. I think we're headed pro inevitable: all javascript. : P" [pt] -- brunocarvalho. http://twitter.com/brunocarvalho/status/23173070892 [19:58] technoweenie: yea it does. rock on [20:01] teemow has joined the channel [20:01] ryah: hm [20:02] ryah: "node test/fixtures/print-chars.js 1048576" is much slower under fast-buffers [20:02] ryah: something is getting caught... [20:04] BrianTheCoder has joined the channel [20:07] boaz_ has joined the channel [20:12] stepheneb has joined the channel [20:13] jchris1 has joined the channel [20:13] rauchg_ has joined the channel [20:14] saikat has joined the channel [20:14] hellp has joined the channel [20:15] JimBastard: morning rauchg_ [20:15] Guest5243: Hey Jim. [20:16] rauchg_: morning JimBastard [20:16] Adora has joined the channel [20:16] maushu: The HN are like a lynch mob against you. [20:16] JimBastard: ahahahaha [20:16] JimBastard: mother-fuck HN [20:16] rauchg_: :D [20:16] JimBastard: even with a warning popup they still link to my site [20:16] maushu: You should probably change name to JimPleasant. [20:16] JimBastard: next time im gonna do goatse on every 10th request from HN [20:16] _announcer: Twitter: "Node.js looks quite interesting for streaming data as some Comet alternatives #nodejs #comet #javascript #connectid" -- Frank Desmettre. http://twitter.com/frankdsm/status/23174266090 [20:17] maushu: Huh, you do know that the popup only shows up *after* getting linked? [20:17] JimBastard: maushu: its a refferal check for HN [20:17] JimBastard: so, yes [20:17] JimBastard: it only appears if you click on nodejitsu.com from HN [20:17] maushu: How would they know that the popup shows up before? [20:17] JimBastard: why the fuck should my good work help paulg make money [20:17] _announcer: Twitter: "I just compiled nodejs on windows." -- Scott Gamon. http://twitter.com/sgamon/status/23174326286 [20:17] JimBastard: fuck that guy [20:18] maushu: Hmm, it's like an exchange of services. [20:18] JimBastard: well im saying, no thank you [20:18] maushu: You get more users and he gets more money. [20:18] JimBastard: i dont want HN traffic [20:18] JimBastard: next step will be banning domain [20:19] bmavity has joined the channel [20:23] _TS: What are my best for hosting at the moment? [20:23] _TS: options [20:24] JimBastard: _TS: probably just getting a VPS [20:24] JimBastard: what do you need to host? [20:24] JimBastard: we have a node.js hosting platform, running private alpha atm [20:24] maushu has left the channel [20:24] maushu has joined the channel [20:24] _TS: Just a personal project [20:24] aaronblohowiak: _TS: do you need to do websockets? [20:24] _TS: Yes [20:25] JimBastard: rackspace vps is like 10 bucks a month [20:25] _TS: JimB: signed up at nodejitsu.com, im interested in what you have to offer =) [20:25] JimBastard: _TS: awesome! will be sending out emails once we have something good to say :-) [20:26] aaronblohowiak: _TS: try the joyent SmartPlatform. it will help to support node development as well =) [20:26] _TS: Cool, looking forward to it thanks! [20:26] _TS: Aaron, thanks for the headsup cheers =) [20:26] aaronblohowiak: =) [20:27] Esteth has joined the channel [20:28] Esteth: Hey folks. I'm having trouble with the express.compiler middleware. I've done: app.use(express.compiler({src: __dirname + '/views/stylesheets', dest: __dirname + '/public/stylesheets',enable: ['sass']})); but no compilation seems to take place. Anyone know what's going on here? [20:29] jchris has joined the channel [20:29] Esteth: or if I should be asking in some kind of #connect channel [20:29] _TS: JimBastard: what kinda timeframe before it becomes public if you know... [20:30] JimBastard: _TS: hopefully private beta in the next month, maybe less [20:30] JimBastard: just ironing out some kinks [20:30] JimBastard: doing some stress testing with hackernews >.< [20:30] tisba: anyone working with node.js and textmate? what bundle should I use? [20:31] _TS: I saw that =) [20:31] Esteth: tisba: I am, and I just use the builtin javascript bundle :) [20:31] _TS: Too many sensitive people catching the wrong feelings IMO [20:31] tjholowaychuk: Esteth: try { src: __dirname + '/views', dest: __dirname + '/public' } [20:31] tmpvar has joined the channel [20:31] tisba: Esteth: I want a bit mit comfort, like CMD+r, syntax check and stuff [20:31] _TS: not that it matters [20:31] JimBastard: i thought tj or someone made a TM bundle for node [20:31] tjholowaychuk: tisba: I have this, but it has not been touched for a while http://github.com/visionmedia/node.tmbundle [20:32] tjholowaychuk: but has some basic stuff [20:32] tisba: JimBastard: there is one from drnic, but it sucks [20:32] JimBastard: word [20:32] tisba: (reads: it is old and unmaintained ^^) [20:32] aaronblohowiak: tjholowaychuk: why did you take down visionmedia/mini from github ? [20:32] devinus_ has joined the channel [20:33] tjholowaychuk: aaronblohowiak: was not happy with it, haml is to annoying for small project pages and i try to have `make docs` auto generate these days [20:33] tisba: tjholowaychuk: hmm, just snippets, I hoped for a bit more... hmm [20:33] devinus_: welp, that's it. the next step for JS is to emulate an x86 processor. [20:33] aaronblohowiak: tjholowaychuk: ah, thanks. [20:33] tjholowaychuk: tisba: yeah like i said it is not very complete, but something to start from [20:34] Esteth: tjholowaychuk: That doesn't seem to change anything, unfortunately :( Even moving my sass to the root of views as well as that doesn't fix anything [20:34] sschuermann has joined the channel [20:34] sschuermann has left the channel [20:34] tjholowaychuk: Esteth: weird one sec i will check [20:35] CIA-77: node: 03Ryan Dahl 07fast-buffer * r4dbc358 10/ lib/buffer.js : Expose Buffer.poolSize - http://bit.ly/aXYKR4 [20:35] CIA-77: node: 03Ryan Dahl 07fast-buffer * rd799db0 10/ src/node_buffer.cc : Fix ByteLength hangup - http://bit.ly/bKdgD5 [20:35] _announcer: Twitter: "Any #nodejs developers out there using #textmate which can recommend a bundle?" -- Sebastian Cohnen. http://twitter.com/tisba/status/23175434790 [20:36] Esteth: tjholowaychuk: I can zip and upload the code somewhere if you'd like a sample of code that's causing the problem [20:36] tjholowaychuk: Esteth: possibly, just going to verify that it works for me [20:36] _announcer: Twitter: "I really, really like node.js for quickly building nifty little servers." -- Philip Luppens. http://twitter.com/philipluppens/status/23175476188 [20:36] altamic has joined the channel [20:37] tisba: tjholowaychuk: I'll have a look, thx [20:38] tjholowaychuk: Esteth: added 25c3480 to connect, showing the usage of src/dest [20:38] tjholowaychuk: Esteth: $ curl http://localhost:3000/style.css [20:38] tjholowaychuk: works fine or me [20:38] tjholowaychuk: for* [20:38] andrehjr` has joined the channel [20:40] Esteth: 404's for me :( I shall zip and upload the code I have. I'm afraid I must be going at the moment, sorry for the pain :S Just a sec while I find somewhere to upload [20:40] teemow has left the channel [20:40] ryah: tjholowaychuk: you should bench fast-buffer with redis [20:41] tjholowaychuk: ryah: can do [20:41] tjholowaychuk: Esteth: weird :s [20:41] devinus_: somebody convert this to JS & canvas http://jpc.sourceforge.net/home_home.html [20:41] satori_ has joined the channel [20:45] jacobolus has joined the channel [20:45] Esteth: tjholowaychuk: sample: http://host-ajc237.cs.st-andrews.ac.uk/compilenotworking.zip [20:45] Esteth: sorry about having to leave :( [20:45] tjholowaychuk: no worries thanks man [20:47] genbit has left the channel [20:48] stepheneb has joined the channel [20:49] tobeytailor has joined the channel [20:49] aaronblohowiak: i am setting up a pub/sub system on top of socket.io. since authentication/authorization is asynchronous, i have to handle the case where people try to send messages before the auth is complete. should i synchronously reject those messages with an error that it is not ready in the client, or buffer them in the server and send if everything is okay or asynchronously error if it isnt [20:50] cloudhead: I'd do it at the client level [20:51] technoweenie: buffer it [20:51] cloudhead: don't even send the req until the server says it's ok [20:51] _announcer: Twitter: "@tisba I know nodejs developers and use textmate but somehow that shows close enough is sometimes just not enough ;)" -- Oliver Thylmann. http://twitter.com/othylmann/status/23176378778 [20:51] technoweenie: some of the nicer connection libs buffer commands internally [20:53] technoweenie: compare http://github.com/orlandov/node-mongodb to http://github.com/felixge/node-mysql [20:53] aaronblohowiak: cloudhead, technoweenie well at least i was right to be conflicted about it =). i am leaning towards buffer because there is already a success/failure handling mechanism (async) for sending messages and the buffer means you don't have to have a connection.isReady() call all the time [20:54] cloudhead: buffer is ideal, but the additional complexity isn't worth it imo [20:54] cloudhead: especially that auth shouldn't take more than a couple hundred ms [20:54] technoweenie: well, i meant buffer it on the client [20:54] stepheneb has joined the channel [20:54] technoweenie: i didnt realize the choices were a) raise error and b) buffer on the server [20:55] technoweenie: those client libs i pointed to buffer on the client [20:55] rtomayko has joined the channel [20:55] aaronblohowiak: in this case, client is web browzar [20:55] technoweenie: its still javascript [20:55] technoweenie: look at how much simpler the mysql lib is to work with [20:56] herbySk: strange, I found node behaviour that is not ES5 compliant (blame V8, probably), but not listed in http://github.com/ry/node/wiki/ECMA-5-Mozilla-Features-Implemented-in-V8 as missing... [20:56] jakehow has joined the channel [20:56] JimBastard: herbySk: whats that? [20:56] aaronblohowiak: i think buffering on the server will reduce latency for the browser, so you can start sending messages as soon as you begin initiating a connection.. you'll get a metric fuck-ton of errors if you are rejected, though. [20:57] herbySk: valueOf.call() returning global (it is compliant with ES3, but in ES5 it should be undefined) [20:57] cloudhead: technoweenie: well, the node-mysql example doesn't show how to retrieve values [20:57] herbySk: JimBastard: ^^^ [20:57] JimBastard: interesting [20:58] sudoer has joined the channel [20:59] technoweenie: cloudhead: sure it does, there's a select statement at the bottom [20:59] technoweenie: pretty standard callback stuff [20:59] _announcer: Twitter: "LearnBoost and NodeJS http://ow.ly/2AdfD @LearnBoost #nodejs" -- newsicare. http://twitter.com/newsicare/status/23176852584 [20:59] cloudhead: oh yea hm [20:59] cloudhead: well, it just has a query() method [20:59] bpot has joined the channel [21:00] cloudhead: the api is lower level [21:00] atourino: you have to get down with it [21:01] technoweenie: im down [21:05] boaz_ has joined the channel [21:05] TooTallNate has joined the channel [21:07] _announcer: Twitter: "just because node.js is asynchronous doesn't mean your libraries have to depend on nested callbacks. i really dig @felixge" -- technowürst. http://twitter.com/technoweenie/status/23177371947 [21:08] sudoer has joined the channel [21:09] derferman has joined the channel [21:09] jedschmidt has joined the channel [21:09] aheckmann has joined the channel [21:12] leedo__ has joined the channel [21:13] paulwe has joined the channel [21:13] leedo__ has left the channel [21:13] siculars has joined the channel [21:14] _announcer: Twitter: "Seems to become a routine :) Created new #nodejs module, this time POP3 server to serve arbitrary data to email clients http://bit.ly/d3TTkc" -- Andris Reinman. http://twitter.com/andris9/status/23177826836 [21:17] _announcer: Twitter: "@anoras Oh. Your ending should have been how totally awesome my js/node operational transform collaboration library will be." -- Einar Otto Stangvik. http://twitter.com/einaros/status/23177973473 [21:18] jacobolus has joined the channel [21:19] rnewson has joined the channel [21:21] herbySk: (and Function.prototype.bind is buggy, too: it transforms thisArg in ES3 fashion :-( ) [21:23] _announcer: Twitter: "@JenniferSmithCo it was just me and Andy. 2 hackers :) Nodejs stuff worked a treat. Mostly tried to get my head round the code" -- Christian Blunden. http://twitter.com/christianralph/status/23178397571 [21:25] sts193 has joined the channel [21:25] sts193: Is node.js used to build web servers or web apps? [21:26] SubStack: sts193: yes [21:26] sts193: both? [21:26] moesian has joined the channel [21:26] Aria: I do. [21:27] SubStack: sts193: what do you suppose the difference is? [21:27] sts193: I'm not quite sure, I'm very new to web programming [21:27] aaronblohowiak: sts193: yes, both. [21:27] aaronblohowiak: sts193: do you have experience with other kinds of programming [21:28] SubStack: I like how unmagical node programs are for web programming [21:28] sts193: Nothing major [21:28] _announcer: Twitter: "@creatonix What's the best way to handle file uploads in #connect / #express ? (#nodejs)" -- Drew LeSueur. http://twitter.com/drewlesueur/status/23178725846 [21:28] SubStack: the entry points tend to be very obvious [21:28] sts193: A few CS classes, and dabbling in a bunch of languages [21:28] moesian: hi there a number of node.js frameworks is there one that is gaining more popularity than the rest with node.js users? [21:29] aaronblohowiak: moesian: express [21:29] stepheneb has joined the channel [21:29] SubStack: meh, frameworks [21:29] eisd has joined the channel [21:29] aaronblohowiak: sts193: ah, ok. well, i recommend reading JavaScript: the good parts and then diving into express or raw connect [21:30] SubStack: express looks nice enough though [21:30] sts193: aaronblohawiak: ok, I started eloquent javascript, is that any good? [21:31] aaronblohowiak: sts193: i dunno havent read it [21:31] moesian: thanks i'll give exress a go [21:31] _announcer: Twitter: "#Document much? 3Pack: "MongoDB (from "humongous")" > http://bit.ly/VCpR5 <> "Express" > http://bit.ly/cBaeMu < for http://NodeJS.org <" -- Ben Tremblay. http://twitter.com/bentrem/status/23178927717 [21:31] tjholowaychuk: moesian: http://expressjs.com or ask me or the mailing list if you are having issues [21:33] sts193_ has joined the channel [21:33] sts193_: aaronblohowiak: Alright, so node.js itself is not a web framework [21:33] sudoer has joined the channel [21:35] aaronblohowiak: sts193_: nope! node.js is a set of asynch I/O libraries bound to v8 with some additional niceties built-in. you can build web frameworks on top of it [21:35] aaronblohowiak: sts193: you can also build terminal emulators, email servers, irc bots or pants out of it. [21:35] sts193: aaronblohowiak: Ah I see now, node basically gives you a JS interpreter to run on the server side [21:36] aaronblohowiak: sts193: with asynch i/o libraries. [21:36] aaronblohowiak: sts193: asynch i/o is the key to why node is awesome [21:36] tmpvar has joined the channel [21:36] sts193: aaronblohowiak: got it, makes much more sense now. So it's possible to build say a django app on top of a node web server? [21:37] aaronblohowiak: sts193: django is a python web application framework [21:37] andrehjr has joined the channel [21:37] emmanueloga has joined the channel [21:37] aaronblohowiak: sts193: you can't run python on top of node, only javascript [21:38] eisd: sts193: You can run Python code from Node.js by spawning child processes [21:38] aaronblohowiak: eisd: while that is true, i don't want to confuse our n00b friend [21:38] eisd: aaronblohowiak: heh :) [21:38] aaronblohowiak: :-) [21:38] sts193: aaronblohowiak: ok, but django/python runs on top of a web server, correct? [21:39] aaronblohowiak: sts193: so there are a couple of ways to run django/python. there is something called CGI which lets some servers host other languages. node is not a cgi host [21:40] aaronblohowiak: sts193: and then there are faster / more efficient forms of cgi, none of which node supports. [21:40] aaronblohowiak: sts193: there are python-based web servers that you can use with django so you can avoid having a separate web server process [21:40] statim has joined the channel [21:41] sts193: aaronblohowiak: Oh, something like apache? [21:42] lachlanhardy has joined the channel [21:42] aaronblohowiak: sts193: apache is a very complicated piece of software that is more than just a web server. it can also be used as a proxy, for instance. [21:42] sts193: aaronblohowiak: So then node replaces pretty much everything on the server side? [21:42] JimBastard: node, friend, companion, secret lover [21:42] JimBastard: sts193: we are running pretty much 100% node stack [21:42] JimBastard: with a few exceptions [21:42] aaronblohowiak: sts193: you can run node behind a proxy, or you can expose it raw to the internet. it does not replace a data storage process (like a database) [21:43] sts193: Ok, so it still requires a database. So I will have to know how to build all of these things myself, while with for example django/rails these are provided already? [21:44] KungFuHamster_ has joined the channel [21:44] JimBastard: sts193: there are pure node dbs....not recommended [21:45] JimBastard: like nStore [21:45] JimBastard: but noSQL databases work nicely with node, i like couch [21:45] aaronblohowiak: sts193: pretty much. django/rails gives you bindings to databases out of the box, they dont actually include the database themselves. node does not include any bindings out of the box, but you can easily download them. [21:45] aaronblohowiak: ACTION should have a tweed jacket and a pipe [21:46] frode has joined the channel [21:46] sts193: I see now, node gives you the basics to build off of... So many people are rolling their own frameworks? [21:47] sts193: Or rather, it's possible to build web apps without frameworks all together, no? [21:47] tjholowaychuk: sts193: of course [21:48] tjholowaychuk: just depends what you need. if you are just playing pass w/ json or similar then you wont really need a framework [21:48] aaronblohowiak: sts193: the answer to both of those is yes, but it is a pain in the ass and you will end up building a framework to support your application when it gets to any level of complexity [21:49] sts193: alright, I think I almost have it now :D [21:49] aaronblohowiak: sts193: sweeet! [21:50] sts193: node + JS framework == python web server + django ? [21:50] bpot has joined the channel [21:51] eisd: Node would be more like Python's twisted [21:51] eisd: `v google python twisted @ sts193 [21:51] v8bot: sts193: Twisted - http://twistedmatrix.com/ [21:52] tmpvar has joined the channel [21:52] _announcer: Twitter: "@siculars Formidable. I'm using it to file uploads in #nodejs - http://bit.ly/9puBmm" -- Emerson Macedo. http://twitter.com/emerleite/status/23180268784 [21:53] sts193: Ah, ok. So it basically does it's own thing on the server side [21:53] sts193: So what is the bare minimum I need to know to get started? [21:54] eisd: Well you should have an understanding of Javascript [21:54] sts193: Ok, how about web servers/http/tcp/etc? [21:54] Aria: Depends on what you want to do! [21:55] eisd: Well you'll need a basic understanding of that as well [21:55] eisd: And, yes, what Aria said [21:55] _announcer: Twitter: "[Dopeness Labs] jsdom + jQuery in 5 lines with node.js – blog.nodejitsu.com – scaling node.js applications one callb... http://dopen.es/1m" -- Soren Macbeth. http://twitter.com/sorenmacbeth/status/23180481057 [21:55] cloudhead has joined the channel [21:55] sts193: wow, so many things I want to do! how about if I want to make something like video chat? [21:55] _TS: does github.com provide any analytics? [21:56] saikat has joined the channel [21:56] eisd: sts193: You can write a server that *handles* video chat with Node.js, but I wouldn't recommend you start there if you've never written a server before [21:57] eisd: Additionally, JS+DOM can't interact with webcams afaik [21:57] sts193: how about basic chat? [21:57] eisd: Yes [21:57] softdrink has joined the channel [21:58] sts193: so i would have to shape the server based on my application rather than relying on a bunch of out-of-box plugins that frameworks provide [21:58] nolan_d has joined the channel [21:59] eisd: You should download Node and start with the "Hello World" application [22:00] devinus_ has joined the channel [22:00] sts193: I've done that, but I'm having trouble making anything slightly more complex. I should take a look at github for some node.js code so I can see how apps are built [22:01] aaronblohowiak: tjholowaychuk: would you accept a patch to allow Rapid to run in-process only (ie: turn off redis persistence) ? [22:02] Validatorian: sts193: here's a good place to start for node.js code: http://github.com/ry/node/wiki/modules [22:02] tjholowaychuk: aaronblohowiak: why do you want that? [22:02] tjholowaychuk: what rapid really needs is indexing :D [22:03] aaronblohowiak: tjholowaychuk: i want the ability to use its interface while not forcing users of my library to have a redis dependency if they are willing to have everything in-memory [22:03] sts193: Validatorian: thanks! there weren't that many books/tutorials I could find. I guess I will just read through some code [22:03] tjholowaychuk: aaronblohowiak: ah i gotcha. hmm well I dont know, that makes it more abstract which is what I wanted to actually get away from, and just have redis specifics [22:04] tjholowaychuk: plus then you sort of have to reproduce the entire redis api [22:04] jchris has joined the channel [22:04] LowValueTarget has joined the channel [22:04] admc has joined the channel [22:04] mattikus has joined the channel [22:05] aaronblohowiak: tjholowaychuk: i suppose i could just set client to something that reproduces the redis api [22:05] tjholowaychuk: aaronblohowiak: yup that would probably be fine. [22:05] aaronblohowiak: okay, I'll do that, then. [22:06] mikew3c_ has joined the channel [22:06] sts193: thanks for everyone's help. I'm off to read some code [22:07] bsstoner has left the channel [22:19] bsstoner has joined the channel [22:20] _announcer: Twitter: "Is Node.js positioned to be the next Ruby on Rails? /cc @coopernurse @monkchips" -- Chris Tacy. http://twitter.com/cbtacy/status/23182129384 [22:21] JimBastard: !tweet cbtacy node could never be RoR, its better! :-) [22:21] Aria: God, I hope it's not the next Ruby on Rails. [22:22] _announcer: Twitter: "people don't get that #node.js is more like #jetty than #rails." -- aaron blohowiak. http://twitter.com/aaronblohowiak/status/23182280662 [22:22] jesusabdullah: !tweet cbtacy Someday maybe there'll be "Node on a Dirtbike!" [22:23] jesusabdullah: !tweet aaronblohowiak Hear-hear! [22:23] paulwe has joined the channel [22:23] jesusabdullah: oho! [22:23] _announcer: Twitter: "Top story on the #nodejs Daily http://bit.ly/aOxf1J ▸ Parsing file uploads at 500 mb/s with node.js » Debuggable Ltd" -- Samuel Morello. http://twitter.com/ouvanous/status/23182335836 [22:23] _announcer: Twitter: "14 Tweets | jsdom + jQuery in 5 lines with node.js - blog.nodejitsu.com - scaling node.js applications one callbac... http://bit.ly/cbGjrb" -- marcelobernard. http://twitter.com/marcelobernard/status/23182376154 [22:24] trotter has joined the channel [22:24] aaronblohowiak: !tweet @ouvanous very, very cool. [22:27] _announcer: Twitter: "@cbtacy node.js seems pretty slick, always a fan of anything that avoids OS type resource brokering or hardware reservation" -- Andy Newbom. http://twitter.com/coffeecandy/status/23182606044 [22:27] trotter has joined the channel [22:30] eisd|away has left the channel [22:40] nolan_d has joined the channel [22:42] jmc has joined the channel [22:49] Anti-X has joined the channel [22:50] _announcer: Twitter: "Want to make a webserver with javascript facinho? Use Node.js and solve this problem with three lines of code." [pt] -- Alfredo Segundo. http://twitter.com/alfredosegundo/status/23184088731 [22:52] hassox has joined the channel [22:53] _announcer: Twitter: "nodejs install finished! # Nodejs" [zh-CN] -- あおい. http://twitter.com/n_aoi/status/23184260555 [22:53] jchris has joined the channel [22:54] markwubben has joined the channel [22:57] pandark_ has joined the channel [22:59] _announcer: Twitter: "node.js http://nodejs.org/ is worthwhile getting into #vfdev" -- Vidhya Gholkar. http://twitter.com/vgholkar/status/23184645957 [23:03] _announcer: Twitter: "Palm inviting devs to a node.js meet-up by the Bay http://dlvr.it/4ptcF" -- solydzajs. http://twitter.com/solydzajs/status/23184947067 [23:05] TobiasFar has joined the channel [23:08] Kung_Fu_Hamster has joined the channel [23:08] tmpvar has joined the channel [23:12] Esteth has joined the channel [23:15] stepheneb has joined the channel [23:17] lachlanhardy has joined the channel [23:17] mikew3c has joined the channel [23:18] tmpvar has joined the channel [23:20] Esteth: tjholowaychuk: Sorry about having to dissapear mid-way through the discussion on express.compile not working. Had everyone ready to leave, and I didn't want to keep them waiting :( [23:21] tjholowaychuk: Esteth: no worries, that file you were sending was taking a long time for some reason so I stopped it [23:21] _announcer: Twitter: "A productive weekend: converted an old Rails project to version 3 and got my first project using node.js and websockets off of the ground" -- Justin Leitgeb. http://twitter.com/justinleitgeb/status/23186072380 [23:22] _announcer: Twitter: "jsdom + jQuery in 5 lines with node.js http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs <- Cool idea, wow!" -- Charl van Niekerk. http://twitter.com/charlvn/status/23186135462 [23:23] JimBastard: !!! [23:23] JimBastard: nonstop all day [23:23] Esteth: tjholowaychuk: ah, looking at it, i left in my vendor directory with socket.io. that fattened it up a lot :( will reup now without socket.io. I don't even need it anymore... [23:23] hassox: allo [23:29] saikat has joined the channel [23:29] [[zz]] has joined the channel [23:34] bsstoner has joined the channel [23:34] bsstoner_ has joined the channel [23:35] Esteth: tjholowaychuk: Done. Try the same url again: http://host-ajc237.cs.st-andrews.ac.uk/compileNotWorking.zip [23:36] Esteth: should be a number of KB this time, rather than MB [23:36] _announcer: Twitter: "Screen scrape in 5 lines of code with #jQuery and #node.js http://post.ly/w1NP" -- skvch. http://twitter.com/skvch/status/23187060623 [23:37] aaronblohowiak: tjholowaychuk: how do I add additional methods to a Rapid model's prototype? [23:37] ChrisPartridge has joined the channel [23:38] tjholowaychuk: aaronblohowiak: you should be able to access it via rapid.Model [23:38] tjholowaychuk: Esteth: got it, one sec [23:40] evanpro has joined the channel [23:42] tjholowaychuk: Esteth: oh :p take of /public in link(rel:'stylesheet', src:'/public/stylesheets/main.css') [23:42] tjholowaychuk: Esteth: should work [23:43] JimBastard: wow, dude called node.js retarded, http://teddziuba.com/2010/09/programming-things-i-wish-i-knew.html [23:43] JimBastard: lol [23:43] JimBastard: and its front page of slashdot [23:44] cloudhead has joined the channel [23:46] Esteth: tjholowaychuk: so it becomes link(rel:'stylesheet', src:'/stylesheets/main.css')? That still doesn't seem to work :( I can't access it at localhost:3000/stylesheets/main.css In fact, the file there doesn't seem to be on my filesystem [23:47] tjholowaychuk: Esteth: yeah /stylesheets/main.css should work, that is what I am doing in the connect example [23:47] tjholowaychuk: hmmm [23:47] mikew3c: JimBastard: seems like he actually was referring specifically to the "because nothing blocks" statement on the node.js homepage [23:48] JimBastard: yeah [23:48] Tim_Smart has joined the channel [23:48] mikew3c: JimBastard: and of course node.js can't be "magic scalability pixie dust", because that's what shards are [23:48] JimBastard: i/o doesnt block [23:48] JimBastard: seems to be a misread [23:49] rcy has joined the channel [23:49] JimBastard: mikew3c: id like to know more about scaling node.js apps, what do you think [23:49] mikew3c: well, that statement is sorta inviting misreading [23:50] JimBastard: i think anyone who has JSON.parse(somehugefile) knows that node can block [23:50] Esteth: tjholowaychuk: Right. I must be doing something stupid somewhere else as well. at extjs.github.com/Connect/compiler.html there's just an example of how to call the method, not the corresponding folder structure [23:50] JimBastard: seems to be a bunch of new people in the chan today [23:50] JimBastard: :-) [23:50] tjholowaychuk: Esteth: ah I need to update that, look in connect's ./examples/sass [23:51] tjholowaychuk: just updating it to match what you are doing [23:51] mikew3c: JimBastard: I know next to nothing about node.js scalability, so I prolly ain't much help [23:51] JimBastard: mikew3c: :p [23:51] mikew3c: JimBastard: a general solution to scalability that I've heard works really well is if you pipe your data to /dev/null [23:52] JimBastard: lol [23:52] JimBastard: we just spawn up multiple app servers and route traffic over http :-) [23:52] JimBastard: works for http scaling for now [23:52] tjholowaychuk: Esteth: k 4dc6d9f has the change in ./examples/sass [23:53] JimBastard: hey mape , did we lose http://stats.nodejs.se/ ? [23:54] dgathright has joined the channel [23:54] Tim_Smart: ryah: Nice to see tests passing. For some reason test-exception-handler2.js is failing for me, [23:56] jakehow has joined the channel [23:56] Esteth: tjholowaychuk: Not sure how to interpret k 4dc6d9f. I assume it's some kind of revision number in the repo? the current version doesn't have a ./examples/sass [23:56] Esteth: tjholowaychuk: Sorry for being such a newb :S [23:56] Utkarsh has joined the channel [23:57] tjholowaychuk: Esteth: http://github.com/senchalabs/connect/blob/master/examples/sass/app.js :) [23:57] tjholowaychuk: should help you out, I changed the exampel to do exactly what you are trying to do [23:57] tjholowaychuk: which is a reasonable use-case [23:57] ajpiano has joined the channel