[00:00] evilhackerdude: but only know do we have thousands of sites with more complex visuals than just pre-rendered sliced up PNGs [00:00] Mikeee: Browsers move slow :) html5 spec isnt even due for offical release until we've all dead... [00:00] Mikeee: we're* [00:01] meatmanek_: browsers don't move that slow, actually - a lot of HTML5's progress has been because one browser implemented something [00:01] Mikeee: Dont move slow? [00:01] Mikeee: i'm still having to develop for IE6 [00:01] Mikeee: that's uh.. 9 years now [00:01] meatmanek_: that's not IE9's fault [00:01] meatmanek_: that's corporate IT's fault [00:02] Mikeee: I think the speed browsers progress can be judged by the popularity of plugins. [00:02] Mikeee: it'll be interesting if Unity3d ever takes off [00:02] Mikeee: now that webgl is in the works.. [00:03] evilhackerdude: whee :-) [00:03] evilhackerdude: love webgl! [00:03] Mikeee: Heh, love unity3d :P [00:03] evilhackerdude: Mikeee: i hope your browser game runs on webgl [00:03] meatmanek_: unlikely, unless someone huge develops an MMORPG for it [00:03] Mikeee: meh [00:03] Mikeee: are you all just trying to get me to make an mmorpg? [00:03] Mikeee: sigh.. [00:03] Mikeee: IF I MUST [00:04] meatmanek_: oh Mikeee, are you talking about iOS development? [00:04] meatmanek_: rather, portable mobile development [00:04] Mikeee: with unity? [00:04] meatmanek_: yeah [00:04] Mikeee: no, not really [00:04] Mikeee: iphone stuff is just a small part of unity. [00:05] Mikeee: Right, done. I've made you an mmorpg. [00:05] Mikeee: http://www.mikeefranklin.co.uk/Build/streamed.html [00:05] Mikeee: come play. [00:05] halfhalo: I hate async [00:05] zith_: more than you hate threaded programming? [00:05] halfhalo: yes [00:05] meatmanek_: false. [00:05] zith_: no one is forcing you to program in an asynchronous way :) [00:06] evilhackerdude: Mikeee: gross, a soldier just put a hand into my ass [00:06] Mikeee: Yeah that's me [00:06] Mikeee: hope you enjoyed it [00:06] evilhackerdude: let's jump the shark, shall we [00:06] zith_: Mikeee: seems like unity doesnt have a linux client [00:06] zith_: no dice for me :( [00:06] Mikeee: not yet :( [00:07] meatmanek_: they should make a webgl client [00:07] Mikeee: haha yeah [00:07] meatmanek_: then you can develop games for unity and play them in webgl on a browser in your operating system [00:07] Mikeee: the editor is actually a really nice environment [00:07] zith_: they use mono, right? [00:07] Mikeee: Yeah. [00:07] meatmanek_: Mikeee, have you used XNA? [00:07] Mikeee: Been trying to make a rtmp plugin for it, and get rtmp working on node.js [00:07] nroot7: Can some one explain to me how aync calls in node-redis works ? Say I do some cpu intensive operation with the data I get from node [00:07] Mikeee: so I can use node as the backend for it [00:08] nroot7: * redis [00:08] Mikeee: meatmanek_: yeah a while back [00:08] halfhalo: all I want to do is go get something from a mongo db and return it via express. Not complicated by any stretch. but I can't. because I fail at async stuff [00:08] khug has joined the channel [00:08] zith_: i've been thinking about making a node app for robust multiplayer on flash [00:08] nornagon: is node-compress the only way to do gzip? the original waveto branch seems broken, and the newer version from egorich throws an error on its demo code [00:08] meatmanek_: are unity pretty much like that? [00:08] zith_: falling back on sending traffic through the server if the clients can not establish a p2p connection [00:08] Mikeee: No, XNA is pure code, with just a framework to write on [00:08] Mikeee: unity is a full 3d editor [00:08] meatmanek_: ah nifty [00:09] Mikeee: zith_: I'm working on a bson protocol that'd work with flash [00:09] zith_: nice [00:09] Mikeee: it's only a very simple rpc thing, but could work for you [00:09] Mikeee: rtmp seems too hard for me to recreate - the spec is shit. [00:09] zith_: that sucks :/ [00:09] meatmanek_: Mikeee, your best bet is probably to get familiar with your packet sniffer [00:09] zith_: for now i'm stuck coding java sockets for school though [00:09] Mikeee: Managed to get past the handshake, but not much further. [00:10] Mikeee: meatmanek_: yea wireshark has been up constantly for days ;) [00:10] meatmanek_: also iirc there are a few open source rtmp clients? [00:10] Mikeee: but I eventually gave up. [00:10] halfhalo: ACTION is this || close to saying screw it and writing the viewer in php [00:10] Mikeee: Yeah - well it's the server im trying to recreate, not the client [00:10] Mikeee: and there's a few open source ones (red5, fluorine.etc.) [00:11] Mikeee: but still cant seem to get it. [00:11] Mikeee: ACTION isnt the sharpest of all sticks, y'see. [00:11] prettyrobots has joined the channel [00:11] khug has left the channel [00:11] ivong has joined the channel [00:12] Mikeee: Tim Whitlock has got about as far as me with his, and I can patch his up to work a bit better.. [00:12] Mikeee: http://github.com/timwhitlock/node-amf [00:12] Mikeee: but still no further [00:12] kjy112 has joined the channel [00:12] Mikeee: Would be lovely to get it working one day. Node would be perfect for a rtmp server. [00:16] isaacs has joined the channel [00:16] saikat: if my node server is randomly going to 100% CPU in production, is there a better way to debug this than just putting in a ton of log statements? [00:16] saikat: going to and staying at* [00:17] saikat: i already have some logs and am trying to check them to see if there are any patterns amongst the instances but nothing obvious is really jumping out [00:18] zith_: the eyes module made my node go to 100%, so logging could even make it worse ;) [00:18] saikat: yeah i know =/ [00:18] saikat: right now i'm not even sure if it is, in fact, my logging module causing this though i'm not sure [00:19] saikat: i'm tempted to blame gzip just because it's been the base of every other problem i couldn't figure out [00:20] zith_: heh [00:20] jashkenas has joined the channel [00:22] Athox has joined the channel [00:24] Mikeee: var Duck = AnimatedSprite.extend({ // this feels strange and wrong.. [00:26] _announcer: Twitter: "i'm starving, even though i've been devouring node.js, websockets, and the real-time web for the last hour." -- Matthew Kane Parker. http://twitter.com/moonmaster9000/status/24891433246 [00:27] pedrobelo has joined the channel [00:28] MikhX has joined the channel [00:32] wilmoore_ has joined the channel [00:33] prettyrobots: jashkenas: Was thinking about Coffee IDL just now. [00:33] prettyrobots: And thought about a Cakefile like format, a DSL. [00:34] meatmanek_: mmmm cake [00:34] prettyrobots: Oh, I'm in Node.js. [00:34] prettyrobots: Opps. [00:35] admc has joined the channel [00:35] zapnap has joined the channel [00:36] brianmario has joined the channel [00:37] quirkey has joined the channel [00:41] MikhX has joined the channel [00:43] nornagon: can a "Stream is not writable" error happen when the out buffer is full? [00:43] nornagon: or does that only happen when the stream gets closed? [00:45] devongovett has joined the channel [00:45] Kami_ has joined the channel [00:50] quirkey has joined the channel [00:50] gthb has joined the channel [00:52] NemesisD: how do i spawn a child process in a specific directory? [00:52] _announcer: Twitter: "is it possible to avoid the whole module thing and load scripts into the global scope, using nodejs?" -- Kenneth Kufluk. http://twitter.com/kennethkufluk/status/24893043667 [00:54] bradleymeck1 has joined the channel [00:55] bradleymeck1: and in conclusion we have found mysql to be and excelent database for our needs [00:55] evanpro has joined the channel [00:55] jameshome: heh [00:55] isaacs: bradleymeck1: but it's not web scale [00:56] isaacs: bradleymeck1: why didnt' you use mongodb? [00:56] [[zzz]] has joined the channel [00:56] _announcer: Twitter: "http://howtonode.org/how-to-install-nodejs" -- Drew LeSueur. http://twitter.com/drewlesueur/status/24893290037 [00:56] zith_: to be honest, i think the web has scaled pretty well on mysql so far ;) [00:56] evanpro: isaacs, +1 [00:56] jameshome: you should try /dev/null. it's totally web scale [00:56] jameshome: npm install devnull [00:56] isaacs: hahah [00:57] isaacs: "main" : "/dev/null" [00:57] meatmanek_: zith_, what's the largest website you know that runs on mysql? [00:57] jameshome: heh [00:57] zith_: meatmanek_: i really dont know [00:57] brianmario: meatmanek_: facebook? :P [00:57] meatmanek_: doesn't facebook use Cassandra? [00:58] brianmario: they probably do, but they're primarily mysql [00:58] isaacs: jameshome: does it support sharding? [00:58] brianmario: they have hundres (thousands?) of servers [00:58] meatmanek_: ah, so they do [00:58] jameshome: I suspect they use several storage components [00:58] meatmanek_: I think I knew that [00:58] Mikeee: not node related, but anyone good with canvas in javascript? [00:58] NemesisD: it appears that supplying stuff like "cd whatever && dostuff" doesn't work for spawn [00:59] bradleymeck1: isaacs if someone post in the thread about classes, just let it lie, trying to stop it [01:00] isaacs: bradleymeck1: i know, i know [01:00] isaacs: i fed the troll. but in this case, i think the trolls dont' think they're trolling. [01:00] ehaas has joined the channel [01:01] bradleymeck1: i know why im trolling but still i think classes are misleading for a term [01:01] isaacs: it's a fashionable thing to say,that sounds really insightful, but it's *exactly* like the stupid inuit words-for-snow bs [01:01] isaacs: we all refer to EventEmitter and Buffer and Stream as classes. [01:01] bradleymeck1: i dont but heh [01:01] isaacs: saying js doens't have classes is like saying it doesn't have regular expressions, but only has RegExps. [01:02] isaacs: i mean, it's just quibbling over syntax. [01:02] bradleymeck1: not exactly [01:02] isaacs: javascript doesn't have objects which are nothing BUT classes. [01:02] isaacs: c++ and java do. [01:02] isaacs: but who cares? [01:02] isaacs: i mean, it's like saying that it doesn't have functions, it only has function objects. [01:03] bradleymeck1: once again the argument against calling them classes is subjective and on a per language implementation [01:03] _announcer: Twitter: "@admc did you ever get zlib for nodejs working? I happen to need it :/" -- Jeremy Apthorp. http://twitter.com/nornagon/status/24893756954 [01:03] isaacs: i'd argue that, in every way that matters, Buffer is absolutely a class. [01:03] isaacs: javascript just adds run-time class mutation. [01:04] bradleymeck1: semantically we could argue this for hours [01:04] jesusabdullah: Semantics are hard. Let's go shopping! [01:04] isaacs: if you added a "class" keyword as syntax sugar, would that make javascript have classes? [01:04] bradleymeck1: it has a class keyword :) [01:04] bradleymeck1: and no [01:04] isaacs: jesusabdullah, bradleymeck1: no, we're not arguing semantics. we're arguing syntax. [01:04] isaacs: that's even stupider. [01:04] bradleymeck1: no im not arguing anything syntactical [01:04] [[zz]] has joined the channel [01:05] isaacs: bradleymeck1: i mean, if you added a class keyword that did something. [01:05] isaacs: class isn't a keyword in js, it's a reserved word. [01:05] bradleymeck1: im arguing the definition of class as interpreted by programmers [01:05] isaacs: bradleymeck1: which is? [01:05] jesusabdullah: MY SUGGESTION STILL STANDS [01:05] bradleymeck1: subjective and on a per language implementation [01:05] isaacs: jesusabdullah: we can go shopping lager. [01:05] isaacs: *later [01:05] JimBastard: you aint go no class [01:05] isaacs: ACTION must have beers on the mind [01:05] jesusabdullah: JimBastard: Does nexpect.spawn have the same listeners as child_process.spawn? [01:05] evilhackerdude: isaacs++ [01:05] v8bot: evilhackerdude has given a beer to isaacs. isaacs now has 1 beers. [01:05] evilhackerdude: here's your lager [01:05] jesusabdullah: I love lager! [01:05] isaacs: thanks! [01:05] JimBastard: jesusabdullah: i dont think so [01:05] jesusabdullah: :( [01:06] JimBastard: jesusabdullah: maybe? what are you trying to do? [01:06] isaacs: bradleymeck1: that's not a definition. [01:06] jesusabdullah: oh wait, spawn wouldn't [01:06] isaacs: bradleymeck1: that's a description. [01:06] jesusabdullah: it'd be what spawn returns [01:06] JimBastard: .expect() [01:06] jesusabdullah: I'm thinking spawned.stdout.on [01:06] bradleymeck1: isaacs im trying to say there is no clear definition [01:06] jesusabdullah: and stderr.on [01:06] isaacs: bradleymeck1: are you saying that javascript doesn't have "subject and on a per language implementation"? [01:06] isaacs: that makes no sense. [01:06] gsmcwhirter: where does the data for a PUT request get put for a node/express server? [01:06] bradleymeck1: its like describing what blue actually is without relating to colors [01:07] JimBastard: jesusabdullah: http://github.com/nodejitsu/nexpect/blob/master/lib/nexpect.js#L36 [01:07] isaacs: bradleymeck1: when you say "class", do you mean "something that has no meaning"? [01:07] bradleymeck1: im saying i have a subjective reasoning and it alters slightly per language [01:07] isaacs: bradleymeck1: i mean, you must have some idea of what kind of abstract programming concept "class" refers to. [01:07] meatmanek_: or significantly [01:07] isaacs: bradleymeck1: because it doesn't really vary that much by language. [01:07] NemesisD: should i be using exec instead? [01:07] bradleymeck1: i do, i have plenty of them. [01:07] jetienne has joined the channel [01:08] isaacs: bradleymeck1: a few specific implementation details vary per language, but the conceptual underpinnings of what makes a thing a "class" don't. [01:08] meatmanek_: isaacs, compare C++ classes to Objective-C classes to Javascript "classes" [01:08] zith_: isaacs: exec would probably work [01:08] bradleymeck1: java classes are different from C++ classes are different from D classes are different from Ruby are different from Python are different from ... [01:08] jesusabdullah: JimBastard: So, spawned.process.stdout.on? [01:08] JimBastard: jesusabdullah: what are you trying to do? [01:08] jesusabdullah: bradleymeck1: What do they have in common? [01:08] jesusabdullah: JimBastard: Nothing yet [01:08] isaacs: bradleymeck1, meatmanek: in all of the cases you just listed, what is the same? i'd say that THAT is what "class" means. [01:09] JimBastard: jesusabdullah: im not sure what you are asking. run the demo code, you'll see what it does [01:09] bradleymeck1: the same is that they have properties that map to data [01:09] JimBastard: nexpect isnt a replacement for spawn [01:09] isaacs: bradleymeck1: the similarity is that they are definitions that are used to create like instances. [01:09] JimBastard: its when dealing with interactive child apps that pipe data over terminal and you want to assert commands and responses [01:09] bradleymeck1: isaacs structs do that too [01:09] bradleymeck1: types do the same [01:09] isaacs: bradleymeck1: the specifics of how those definitions are expressed, how "alike" instances are, etc. are all a bit different. [01:09] JimBastard: SubStack: you alive? [01:10] isaacs: bradleymeck1: before C++, people were referring to structs as "classes" [01:10] jesusabdullah: I guess I'm asking if you can get to the underlying child_process.spawn object [01:10] quirkey has joined the channel [01:10] isaacs: and typedefs [01:10] jesusabdullah: JimBastard: He's about to drive cross-country, he'll be afk for a while [01:10] bradleymeck1: before c we used types [01:10] JimBastard: jesusabdullah: i dont think so, show me your use case and i'll let you know if we can patch it [01:10] JimBastard: ahhhh [01:10] JimBastard: dammit [01:10] jesusabdullah: A'ight [01:10] evilhackerdude: just use coffeescript, it has an actual class keyword and you can stop talking and have a beer [01:10] JimBastard: i guess i'll just release this new module then [01:10] zith_: before c :( [01:10] jesusabdullah: Which? [01:10] JimBastard: talk to him about dnode integration later [01:10] jesusabdullah: Ah [01:11] jesusabdullah: I know a little about dnode [01:11] JimBastard: ive got a project in the works that takes a commonjs module and turns it into a json-rpc webservice [01:11] jesusabdullah: orly? [01:11] jesusabdullah: ACTION is interested [01:11] muk_mb: which of these redis ORM's should I be using? I'm looking at nohm and rapid right now. [01:11] JimBastard: yeah, mad easy kinda [01:11] JimBastard: v0.1.0 has a few conventions to stick to, but its not too bad [01:11] jesusabdullah: Cool [01:11] JimBastard: im gonna get dinner and push demo [01:11] jashkenas: issacs: thanks for posting that. [01:11] JimBastard: bbl [01:12] quirkey has joined the channel [01:12] jacquesc has joined the channel [01:12] jashkenas: *isaacs (i know how to spell your name ;)) [01:12] isaacs: jashkenas: sure. [01:12] _announcer: Twitter: "I wonder if http://github.com/ry/node/wiki/Using-Eclipse-as-Node-Applications-Debugger will be useful for node.js services in webOS 2.0 ..." -- WebOS Internals. http://twitter.com/webosinternals/status/24894316493 [01:13] jesusabdullah: JimBastard: Thinking about adding dnode as a protocol? [01:13] JimBastard: i would think it should be part of dnode [01:13] jesusabdullah: Ah [01:13] JimBastard: so you can access methods via json-rpc [01:14] JimBastard: need to talk to mr subway sammiches though to get the full picture [01:14] JimBastard: i can build demo without dnode at all [01:14] jesusabdullah: I think the issue with that is that dnode has some added trickery for callbacks and stuff that precludes the use of json-rpc [01:14] jesusabdullah: I think he actually originally was gonna make it use json-rpc but he found it too limiting [01:15] JimBastard: yeah, we'll see [01:15] jesusabdullah: Yeah, def [01:16] meatmanek_: oh wow [01:16] meatmanek_: I really wish I had discovered chromedevtools this summer [01:16] rauchg_ has joined the channel [01:17] danielzilla has joined the channel [01:17] meatmanek_: several times I needed to debug client-side event handlers just to figure out what code was executing [01:17] rauchg_: hey [01:17] rauchg_: anyone at shdh ? [01:17] meatmanek_: unfortunately moving the mouse or pressing a key always triggered some sort of event [01:17] meatmanek_: so I'd get that event handler, rather than the one I wanted [01:20] devongovett has joined the channel [01:20] galaxywatcher has joined the channel [01:22] nornagon: i see node-compress does gzip and bzip2, but is there anything that does zlib? [01:22] saikat: gzip is zlib [01:22] saikat: or rather [01:23] saikat: node-compress uses zlib [01:23] saikat: zlib is the in-memory library that is used by gzip [01:23] saikat: node-compress doesn't spawn a separate gzip process [01:23] saikat: but be warned that it does have a pretty bad memory leak [01:23] nornagon: right [01:23] jesusabdullah: D: [01:23] nornagon: but i need raw zlib stream [01:23] nornagon: no gzip headers [01:24] saikat: ah i see [01:24] nornagon: just deflate, not gzdeflate :) [01:24] thejefflarson has joined the channel [01:25] Me1000 has joined the channel [01:26] jacobolus has joined the channel [01:26] nornagon: (also, the newest node-compress seems to explode on OSX 10.6) [01:27] nornagon: running demo.js gives: Assertion failed: (handle->InternalFieldCount() > 0), function Unwrap, file /usr/local/include/node/node_object_wrap.h, line 29. [01:28] saikat: nornagon: are you running against node master [01:28] saikat: or 0.2 [01:28] nornagon: # node -v [01:28] nornagon: v0.2.0 [01:28] nornagon: but i checked it out from git [01:28] bpadalino: is there a preferred method for gunzipping something in node? lets say i want to grab a .gz and inflate it into a buffer ? [01:29] nornagon: so i guess that would be master :) [01:29] paulwe has joined the channel [01:32] _announcer: Twitter: "[JavaScript] / Node.js testing framework for the Vows - 2010-09-18 - Diary http://htn.to/MwYuhy" [ja] -- チャゲ. http://twitter.com/tyage/status/24895596959 [01:33] khug has joined the channel [01:34] khug has left the channel [01:36] nodekars has joined the channel [01:38] kaichen has joined the channel [01:38] nodekars: Forgive me for I am a newb. I am trying to figure out the best way to handle form data with node. When a user hits submit, within a form, what should the action='' attr be? How would you access the POST or GET data? [01:38] steadicat has joined the channel [01:38] icey has joined the channel [01:38] rauchg_: hi steadicat [01:39] steadicat: hey [01:39] rauchg_: saikat: does your gzip leak too ? [01:39] saikat: rauchg_: no [01:39] saikat: though it's not entirely unlikely that it's the culprit for my CPU leak [01:39] saikat: or whatever - not leak [01:39] saikat: but CPU spike [01:40] saikat: how's shdh? are they doing anything special for the 40th? [01:40] rauchg_: it [01:40] rauchg_: it's a great event [01:40] rauchg_: great turnout [01:40] rauchg_: way more than others [01:40] rauchg_: and catering :D [01:41] saikat: ah nice [01:41] saikat: yeah i've been to a few in the past, i always really enjoy them [01:41] derferman has joined the channel [01:43] nornagon: saikat: do you think the newest node-compress will work on v0.2.0? [01:43] saikat: nornagon: it did for me a while back [01:43] saikat: i'm also on os x 10.6 [01:44] nroot7 has joined the channel [01:45] nornagon: hm [01:50] Mikeee: ACTION is proud that he's managed to crash his computer by making a duck walk in html canvas. [01:50] overra has left the channel [01:51] nodekars: can anyone help? [01:53] saikat: what is your question? [01:53] saikat: ah sorry [01:53] saikat: i missed it earlier [01:53] saikat: nodekars: Node itself is a very low-level framework. You may be more interested in something like Express, which implements some higher level things on top of Node [01:54] saikat: nodekars: http://expressjs.com/ [01:54] saikat: that is a widely used one - there are others as well on this page: [01:54] nodekars: saikat: much appreciated. thx. [01:54] saikat: http://github.com/ry/node/wiki/modules#web-frameworks [01:54] saikat: Geddy and Grasshopper are somewhat popular as well i think [01:55] kaichen has joined the channel [01:58] jacoblyles has joined the channel [02:03] bpadalino has joined the channel [02:19] fizx_ has joined the channel [02:20] smcq has joined the channel [02:24] prettyrobots_ has joined the channel [02:28] EyePulp has joined the channel [02:29] rudebwoy has joined the channel [02:30] matschaffer has joined the channel [02:33] hb_ has joined the channel [02:34] bpot has joined the channel [02:39] dilvie has joined the channel [02:40] iheartnodejs has joined the channel [02:40] iheartnodejs: :-D [02:41] sveimac has joined the channel [02:42] _announcer: Twitter: "The reason is webOS 2.0 support node.js" [zh-CN] -- aki. http://twitter.com/aki_xavier/status/24900284321 [02:42] evanpro has joined the channel [02:45] nroot7 has joined the channel [02:50] visnup has joined the channel [02:53] MikhX has joined the channel [02:58] benburkert has joined the channel [03:00] dipser_ has joined the channel [03:06] brianmario has joined the channel [03:08] asfw has joined the channel [03:12] ben_alman has joined the channel [03:16] prettyrobots has joined the channel [03:18] jimmybaker has joined the channel [03:22] kjy112 has joined the channel [03:28] malkomalko has joined the channel [03:29] necrodearia has joined the channel [03:29] necrodearia has joined the channel [03:29] necrodearia has joined the channel [03:31] necrodearia has joined the channel [03:32] jbenesch has joined the channel [03:36] necrodearia has joined the channel [03:39] sugardave has joined the channel [03:40] eisd has joined the channel [03:41] NemesisD has joined the channel [03:45] Yuffster has joined the channel [03:51] sahazel has joined the channel [03:52] sahazel: so I'm having some trouble getting npm going [03:52] sahazel: "npm install" works [03:52] sahazel: but requiring installed packages doesn't [03:53] sahazel: it says, e.g.: > vows = require('vows') [03:53] sahazel: Error: No such native module vows [03:53] sahazel: what's going wrong here? [03:57] sahazel: modules appear to be getting installed under /usr/local/Cellar/node/0.2.2/lib/node [03:57] sahazel: putting that in NODE_PATH doesn't help. using full paths to the modules in require doesn't help. [03:59] KungFuHamster has joined the channel [04:01] thejefflarson_ has joined the channel [04:08] admc has joined the channel [04:10] digitalsanctum has joined the channel [04:11] jbenesch has joined the channel [04:13] jacquesc: anyone seen a connect middleware that handles google chrome frame stuff? [04:14] jbenesch has joined the channel [04:16] sahazel: oh, apparently the repl only lets you require things that come with node? [04:16] sahazel: can't believe I hadn't run into that before [04:16] jbenesch has joined the channel [04:17] sirevanhaas has joined the channel [04:17] mikeal has joined the channel [04:18] _announcer: Twitter: "Socket.io. "The jquery of WebSocket." 4 of 7 node.js 48hr competition winners used it. #shdh" -- Alex Neth. http://twitter.com/aliix/status/24906823853 [04:19] mjr_: sahazel: I think require broke recently [04:24] muk_mb: Is the best way to go through something like redis an ORM? or just manually writing out your own thing? [04:25] mjr_: muk_mb: there are redis libraries for node [04:25] muk_mb: yeah for talking to redis [04:25] muk_mb: but handling objects->redis [04:25] mjr_: Personally, I think ORM is a trap that should almost always be avoided. [04:26] mjr_: Sticking JSON in redis works really well, and that's kind of ORM. [04:26] mjr_: Or CouchDB or whatever. [04:27] aaronblohowiak has joined the channel [04:29] jbenesch has joined the channel [04:29] evanpro has joined the channel [04:30] mjr_: muk_mb: if you are sticking stuff in redis from node, I'd appreciate any feedback on my redis lib: http://github.com/mranney/node_redis [04:31] HAITI: mjr_: im going to switch to your lib right away =) [04:32] smcq has joined the channel [04:32] jbenesch has joined the channel [04:35] aaronblohowiak: mjr_: no pub/sub.. non-starter for me, sorry!! [04:36] mjr_: aaronblohowiak: yeah, that's coming soon [04:36] aaronblohowiak: mjr_: you should add your test to your package.json's scripts [04:36] _announcer: Twitter: "node js is super cool. If you are thinking of writing an app... do it in node!" -- Paul Volpato. http://twitter.com/paulvolpato/status/24907965071 [04:36] mjr_: oh, I didn't know that was a thing you could do? [04:36] jacquesc has joined the channel [04:36] mjr_: npm will run the test after building it? [04:37] aaronblohowiak: mjr_: npm help [04:37] jacquesc has joined the channel [04:37] mjr_: cool, I didn't know about that. [04:37] mjr_: For some reason, I can't publish to npm right now. [04:38] aaronblohowiak: ACTION wishes there was a pure-js docco [04:39] gsmcwhirter: wierd... require just stopped working... [04:40] jbenesch has joined the channel [04:40] gsmcwhirter: and back to working again X_X [04:40] mrbrdo has joined the channel [04:41] malkomalko has joined the channel [04:41] muk_mb: mjr_: I might play with that. I'm using fictorial's (or however it's spelled) right now. [04:41] aaronblohowiak: does anyone know of something like gnu screen that supports vertical split? [04:42] mjr_: Yeah, his is much more mature. Sadly, it doesn't work with the newer versions of node. [04:42] _announcer: Twitter: "Anyone know of a good testing framework for #nodejs that runs tests in sequence / not parallel." -- Keith Pitt. http://twitter.com/keithpitt/status/24908314551 [04:42] mjr_: aaronblohowiak: tmux does [04:42] aaronblohowiak: mjr_: ftw! [04:42] mjr_: tmux is great [04:43] MikhX has joined the channel [04:44] diorahman has joined the channel [04:46] aaronblohowiak: mjr_: nice [04:48] aaronblohowiak: mjr_: tmux is kind of like awesomewm [04:48] mjr_: multi-way splits, cycle through the layouts. Yeah, it's great. [04:49] mjr_: Oh, and have a session open in two places but with different underlying window sizes on each. It figures it out. [04:49] aaronblohowiak: mjr_: is there a screen -x equiv? [04:49] aaronblohowiak: oooooooooh [04:49] aaronblohowiak: that's nut [04:49] aaronblohowiak: s [04:49] foca has joined the channel [04:49] mjr_: what does screen -x do? [04:49] aaronblohowiak: mjr_: multiple people attached to same session [04:50] aaronblohowiak: i asked riiiiight after you posted [04:50] mjr_: heh [04:50] _announcer: Twitter: "Adding Web Socket support to my Node.js apps hosted on @webfaction." -- Daniel Shaw. http://twitter.com/dshaw/status/24908813964 [04:50] mjr_: It draws little ascii window filler for the person with the larger window [04:51] jesusabdullah: tmux? Is that the screen-like thing from the BSDs [04:51] _announcer: Twitter: "Couch.js why CouchDB is clinging to that port for the node.js" [ja] -- Yohei Sasaki. http://twitter.com/yssk22/status/24908855009 [04:51] mjr_: jesusabdullah: I dunno, maybe. [04:51] mjr_: I heard about it because it was in homebrew long before screen was. [04:52] mjr_: Or there was something broken about the brew of screen. [04:52] aaronblohowiak: mjr_: doesnt osx come with screen by default? [04:52] nornagon: saikat: you were right, it works fine with v0.2.0 [04:52] aaronblohowiak: it is in my /usr/bin *shrug* [04:53] marshall_law has joined the channel [04:53] mjr_: Yeah, that's odd. I have it on this computer. I wonder why I bothered. [04:53] mjr_: Oh well, tmux is great. [04:56] _numbers has joined the channel [04:56] _numbers: is there an image library in node.js [04:57] _numbers: i want to fetch remote images, scale, crop, and save/cache locally [05:01] jesusabdullah: _numbers: Someone recently made imagemagick bindings! [05:01] jesusabdullah: There's also gd bindings I think [05:01] jesusabdullah: but I think the IM ones are what you want [05:02] muk_mb: mjr_: oh yeah? I might have to switch then [05:03] muk_mb: does your support all the set commands like srandommember? [05:03] mjr_: Mine doesn't do publish/subscribe and watch/unwatch [05:03] ehaas has joined the channel [05:03] mjr_: I think everything else works. [05:04] amuck has joined the channel [05:06] mikeal: hey [05:06] mikeal: has anyone used npm with homebrew? [05:06] mjr_: aaronblohowiak: even though you can't use it, I added the test to package.json so npm can test it now. :) [05:06] aaronblohowiak: :-) [05:06] mjr_: mikeal: last I heard that was a totally broken setup [05:06] mjr_: But I'd love for it to work. [05:07] mikeal: so, it's pretty simple [05:07] mikeal: node is build in /usr/local/Cellar and sym linked to /usr/local [05:07] mikeal: so npm ends up shoving bins in /usr/local/Cellar/node/0.2.22 [05:07] mikeal: and they aren't in $PATH [05:07] mjr_: Yeah, that sucks. [05:08] mjr_: Is that the only issue? I thought it was more complicated than that. [05:08] mikeal: that's the only one i see so far [05:08] mikeal: it needs to work tho [05:08] gthb has joined the channel [05:08] ehaas has joined the channel [05:08] vmthehut has joined the channel [05:09] _numbers: jesusabdullah: thx! [05:09] _announcer: Twitter: "Progressive enhancement using nothing but JS (Ajaxian's @codepo8 on @davglass's YUI 3/Node.js work): http://bit.ly/9yGyyn" -- YUI Library. http://twitter.com/yuilibrary/status/24909976154 [05:09] muk_mb: mjr_: cool [05:10] JimBastard has joined the channel [05:10] JimBastard: wow, this new module is, bad ass! [05:10] JimBastard: its working! [05:10] JimBastard: jesusabdullah: you feel like playing with this thing? [05:12] mikeal: hrm…. more fuckin issues [05:12] JimBastard: hey mikeal [05:12] JimBastard: hows it hanging [05:13] mikeal: cursing at homebrew + npm [05:13] JimBastard: ive been cursing at the pool all week :-p [05:13] JimBastard: its all full circle [05:13] mikeal: does the homebrew install of node not pull modules from ~/.node_libraries [05:13] mikeal: hehe [05:13] JimBastard: i just wrote this awesome like module [05:13] JimBastard: im about to release it tonight if i can document it well enough [05:13] aaronblohowiak: JimBastard: what does it doooo? [05:14] mikeal: what does it do? [05:14] JimBastard: turns commonjs modules into webservices [05:14] JimBastard: with one line [05:14] aaronblohowiak: JimBastard: !!! [05:14] JimBastard: its not a lot of code [05:15] JimBastard: :p [05:15] aaronblohowiak: JimBastard: what libs are you using? dnode? [05:15] JimBastard: i got it working with the fs module [05:15] JimBastard: i did a writeFile over http [05:15] JimBastard: in the browser [05:15] JimBastard: aaronblohowiak: no...just rolled a custom thing with journey [05:15] aaronblohowiak: cool [05:15] mikeal: where are the paths for module lookup in node stored? [05:15] JimBastard: i want to merge this with dnode maybe [05:15] mikeal: is there a .config file somewhere? [05:16] JimBastard: module.paths ? [05:16] mikeal: no, like in the filesystem, etc [05:16] JimBastard: no clue [05:17] aaronblohowiak: mikeal: in an environment variable [05:17] mikeal: that can't be it [05:17] mikeal: because that hasn't changed [05:17] mikeal: why would ~/.node_libraries not be included? [05:18] aaronblohowiak: mikeal: why not dump require.paths [05:19] mikeal: undefined :) [05:19] aaronblohowiak: thats not goooood [05:20] mikeal: 0.2.2 [05:20] mikeal: installed via homebrew [05:22] aaronblohowiak: mikeal: why use brew? [05:22] mikeal: because *everyone* on Mac uses brew [05:23] mikeal: so we need to make sure it's not fucked [05:23] muk_mb: ACTION used macports [05:23] aaronblohowiak: good point [05:23] aaronblohowiak: looks like it is fucked [05:23] mikeal: this is so fucked [05:24] jbenesch has joined the channel [05:24] mikeal: brew install npm is even worse [05:24] mikeal: look at this install message [05:24] mikeal: http://gist.github.com/586427 [05:24] mikeal: it basically says "brew installed npm is retarded" [05:24] mikeal: ok, i'm giving up for now, this is retarded [05:25] aaronblohowiak: =( [05:25] _announcer: Twitter: "node.js and npm installed with homebrew is all fucked up, someone needs to fix this" -- Mikeal. http://twitter.com/mikeal/status/24910879259 [05:28] jacoblyles has joined the channel [05:29] ehaas has joined the channel [05:30] amerine has joined the channel [05:32] ehaas has joined the channel [05:34] paulwe has joined the channel [05:37] JimBastard: mikeal: you have any ideas why the connection pool for the proxy stuff slowly increases and then dies [05:37] mikeal: what the hell [05:37] JimBastard: ^_^ [05:37] mikeal: i built out of the git tag and i've got the same issue [05:37] mikeal: grrr [05:37] jbenesch has joined the channel [05:38] mikeal: JimBastard: any errors? [05:38] JimBastard: yeah [05:38] JimBastard: Current pool count for blog.nodejitsu.com:8001 83, Busy: 81, Free: 2 [05:38] mikeal: they only get freed on the "end" event [05:38] MrTopf has joined the channel [05:38] JimBastard: that slowly increase with teh busy [05:38] mikeal: and those aren't like websocket clients [05:38] JimBastard: yeah? you think we have un-ended requests? [05:40] mikeal: JimBastard: try this [05:40] mikeal: http://github.com/mikeal/node-utils/blob/master/pool/main.js#L58 [05:40] mikeal: under that line [05:40] mikeal: add [05:40] mikeal: self.onFree(client); [05:40] JimBastard: mikeal: checking our codebase now [05:40] rwhitby has joined the channel [05:40] _announcer: Twitter: "@joyent Can I please have Node.js on my shared accelerator? My memory ceiling is too low to compile 0.2.2 myself" -- Eric Allen. http://twitter.com/ericpallen/status/24911746375 [05:41] mikeal: that'll work if the errors are emitting on the client [05:41] mikeal: there are still some exceptions in the parser that are happening that i can't track without eventsource [05:42] JimBastard: im pretty sure its all in the http-proxy code already [05:42] JimBastard: one sec [05:44] mikeal: there's something else i can do [05:44] JimBastard: hey mikeal is it this: http://github.com/nodejitsu/node-http-proxy/blob/master/lib/node-http-proxy.js#L127 [05:44] _announcer: Twitter: "@mikeal Though at this point, installing them yourself is super easy and reliable. #nodejs #npm" -- Daniel Shaw. http://twitter.com/dshaw/status/24911924507 [05:44] JimBastard: that looks like the fail ya? [05:44] mikeal: pool emits that event when there are client errors [05:45] JimBastard: does the client close? [05:45] JimBastard: are we not closing the client there? [05:45] jesusabdullah: Hey guise what are the haps [05:45] JimBastard: proxy pool [05:45] mikeal: actually [05:45] mikeal: best thing to do [05:45] mikeal: client.emit('end') [05:45] mikeal: that'll clean it up [05:45] mikeal: but i think there is a better way to handle this [05:45] JimBastard: where? [05:46] JimBastard: it would be nice to fix, ive got to restart server every few hours atm [05:46] JimBastard: i havent automated either because id like to actually fix [05:46] JimBastard: >.< [05:46] JimBastard: Current pool count for blog.nodejitsu.com:8011 3, Busy: 2, Free: 1 [05:46] JimBastard: seemed to reset [05:46] JimBastard: but i bet you the blog app just crashed [05:46] JimBastard: and it created a new pool [05:47] JimBastard: totally [05:47] JimBastard: yeah, the app crashed and restarted [05:47] JimBastard: bug in wheat i think [05:50] mikeal: http://gist.github.com/586448 [05:50] mikeal: apply that patch to pool [05:51] mikeal: whoops [05:51] mikeal: don't apply that [05:51] mikeal: updated http://gist.github.com/586448 [05:51] mikeal: JimBastard: ^^ [05:52] JimBastard: mikeal: peeping, let me fwrd to charlie [05:52] mikeal: i'll be able to test it as soon as my local node is unfucked [05:52] jbenesch has joined the channel [05:52] JimBastard: mikeal: but what about all the ones that are reporting "busy" ? [05:52] JimBastard: im seeing the busy count steadily increasing over time [05:53] indexzero has joined the channel [05:53] mikeal: dude, i'm just fucked here [05:53] mikeal: this is insane [05:53] JimBastard: me too [05:53] mikeal: i can't get node to require packages [05:54] JimBastard: clean install? [05:54] mikeal: yup [05:54] mjr_: mikeal: I noticed that today as well. Something really bad happened to require recently. [05:55] siculars has joined the channel [05:55] mikeal: 0.2.2 was doing this as well [05:56] eisd has left the channel [05:58] aaronblohowiak: ACTION is still on 0.2.0 and all is well [06:01] SamuraiJack has joined the channel [06:09] derferman_ has joined the channel [06:11] _numbers: how can i serve an image with node [06:11] aaronblohowiak: _numbers: where is the image's data stored? [06:11] thejefflarson has joined the channel [06:12] _numbers: local machine [06:12] _numbers: hdd [06:13] aaronblohowiak: _numbers: look into the connect middleware. it has a static file serving thing that works [06:14] _numbers: JSGI vs Connect for Node Middleware ? [06:14] jesusabdullah: I've only really heard of connect [06:14] jesusabdullah: Can't comment on jsgi but I think connect's more popular [06:14] _numbers: http://www.sitepen.com/blog/2010/06/11/jsgi-vs-connect-for-node-middleware/ [06:16] aaronblohowiak: _numbers: i use connect [06:16] jesusabdullah: Huh [06:17] JimBastard: i might have dove too deep into the metaprogramming lol [06:17] JimBastard: mm[m].apply(this, args); [06:17] JimBastard: mmmmm [06:17] jesusabdullah: Hah [06:17] jesusabdullah: Interesting :) [06:18] jesusabdullah: I actually didn't hear about jsgi until lately [06:18] jesusabdullah: I'd like to see the jsgi support for connect [06:18] jesusabdullah: that'd be interesting [06:21] jesusabdullah: this article isn't very objective [06:21] jesusabdullah: the guy obviously has a vested interest in jsgi [06:23] jesusabdullah: The speed and interface are definitely worthwhile, though [06:24] JimBastard: im very close to finishing 0.1.0 functionality [06:24] JimBastard: brb [06:25] jesusabdullah: woot [06:25] _numbers: aaronblohowiak: i can't tell for sure but it doesn't look like my framework, Picard, is using Connect middleware: http://github.com/dantebronto/picard/blob/master/picard/lib/picard.js [06:25] _announcer: Twitter: "creationix's step at master - GitHub - "A simple control-flow library for node.JS that makes parallel execution... http://ow.ly/194dek" -- Javascript News. http://twitter.com/del_javascript/status/24914093109 [06:28] aaronblohowiak: _numbers: http://github.com/dantebronto/picard/blob/master/picard/lib/picard/request_extensions.js#L89 [06:28] aaronblohowiak: looks like your framework can do it [06:29] _numbers: oh. thnx aaronblohowiak :) [06:29] aaronblohowiak: _numbers: dantebronto should document his work. [06:29] gsmcwhirter: anyone know why require seems to only work occasionally in 0.2.2? [06:29] JimBastard: BOOM [06:29] JimBastard: http://localhost:8080/fs/writeFile?filename=foobsar.txt&content=lol&enc=binary&fn=function(err,%20rsp){console.log('lol%20file%20created');} [06:29] JimBastard: that works [06:30] JimBastard: var e = 'var fn = ' + args[args.length-1] + ';'; eval(e); console.log(fn); if(typeof fn == 'function'){ args[args.length-1] = fn; } [06:30] JimBastard: bad curry [06:31] jesusabdullah: Dude you GOTTA go to the Asian market for that shit [06:31] jesusabdullah: HEB won't cut it! [06:32] JimBastard: for the demo im using fs and sys [06:33] JimBastard: i might as well use all the built in ones ya? [06:34] ivong has joined the channel [06:34] hdon has joined the channel [06:34] _announcer: Twitter: "@keithpitt what are you doing with #nodejs? I'm in love with #eventmachine" -- danieldraper. http://twitter.com/danieldraper/status/24914547281 [06:36] stagas has joined the channel [06:36] JimBastard: what would be a good module to expose as a webservice? [06:37] stagas: tcp :P [06:38] mjr_: node_pcap will expose TCP as... something. [06:38] JimBastard: stagas: ive already got all the core modules working [06:38] JimBastard: kinda... [06:38] JimBastard: want something a little more fun [06:38] JimBastard: fs module and http are fun [06:38] stagas: ok I have one [06:39] stagas: udp to websocket [06:39] meatmanek: mjr, there's a node_pcap? [06:39] stagas: proxy [06:39] mjr_: meatmanek: there is indeed. http://github.com/mranney/node_pcap [06:40] _announcer: Twitter: "It is said that in the pre-installed in the palm pre node.js, the performance advantage is obvious ..." [zh-CN] -- aki. http://twitter.com/aki_xavier/status/24914807263 [06:40] JimBastard: stagas: youd have to build a bit of a wrapper for that to make sense [06:40] JimBastard: looking for a 1:1 mapping for now [06:40] galaxywatcher has joined the channel [06:41] meatmanek: JimBastard, node-couchdb [06:41] JimBastard: link ? [06:41] _announcer: Twitter: "Let me guess when preparing pre-installed Mac OS node.js. .." [zh-CN] -- aki. http://twitter.com/aki_xavier/status/24914846810 [06:41] meatmanek: http://github.com/felixge/node-couchdb [06:41] JimBastard: wait, why not just use couch directly? [06:41] mjr_: couchdb already is a web service [06:41] meatmanek: exactly [06:41] mjr_: a joke [06:41] okuryu has joined the channel [06:41] mjr_: ? [06:41] meatmanek: 3 internets to mjr_ [06:41] JimBastard: how about mongo? [06:41] meatmanek: what's mongo's current API? [06:41] mjr_: you could also do redis [06:42] JimBastard: i wonder about nStore [06:42] jesusabdullah: Don't use nStore [06:42] JimBastard: http://github.com/creationix/nStore [06:42] jesusabdullah: it has serious corruption issues [06:42] JimBastard: jesusabdullah: why not? [06:42] JimBastard: lol [06:42] JimBastard: yeah, i just need to show an example of how webservice.js pwnts [06:43] JimBastard: nStore would make sense, since it doesnt has a rest-api yeah [06:43] JimBastard: but i could use a better example [06:43] jesusabdullah: Hmm [06:43] jesusabdullah: node-supermarket? [06:44] JimBastard: i really should have read dnode more [06:44] JimBastard: im sure im doing some of the same things here [06:44] stagas: JimBastard: http://github.com/TooTallNate/node-radio-stream [06:44] JimBastard: dnode should prob merge this in [06:44] stagas: expose that [06:45] JimBastard: stagas: how would that make a compelling demo? [06:45] JimBastard: could you do a screen cast showing it or something? [06:45] JimBastard: i dont get it [06:45] stagas: fetching meta data of radios [06:45] jesusabdullah: substack used a contrived "get temp. data" example [06:45] jesusabdullah: Time for me to go home [06:45] stagas: and then I could use them on my http://radioplz.com [06:45] stagas: :P [06:45] jesusabdullah: good luck wif dat [06:46] aaronblohowiak: stagas: this is pretty cool [06:47] stagas: aaronblohowiak: thanks! :) [06:48] JimBastard: im going to open in a sec [06:48] _numbers: is there an easy node module for executing bash similar to php/ruby backtick operator or shell_exec() [06:48] JimBastard: then ill update docs [06:49] JimBastard: _numbers: nexpect is kinda cool [06:49] cognominal has joined the channel [06:51] dnolen has joined the channel [06:51] saikat: ugh [06:52] _numbers: thx JimBastard [06:52] saikat: JimBastard: i forget what you said - did you also verify that node-compress was leaking? [06:52] saikat: when your server had trouble [06:52] JimBastard: saikat: no [06:52] JimBastard: not confirmed [06:56] mitkok has joined the channel [06:56] qFox has joined the channel [06:57] jbenesch has joined the channel [06:58] mr_daniel has joined the channel [06:59] ivong has joined the channel [07:00] mikeal has joined the channel [07:04] jesusabdullah: _numbers: node also comes with require('child_process').spawn [07:04] jesusabdullah: spawn('cowsay',['Yo dawg']) [07:05] jesusabdullah: for example [07:05] jesusabdullah: but pexpect has some nice stuff [07:06] megana has joined the channel [07:06] megana: <3 node.js [07:07] JimBastard: okay, getting close to 0.1.0 release [07:07] JimBastard: http://github.com/Marak/webservice.js [07:07] JimBastard: working now, just needs some clean up [07:07] _announcer: Twitter: "#NodeJS Conceptual real-time NodeJS MMO Pokemon: http://bit.ly/cbNuqG . Watch my video and github me." -- Jaime Bueza. http://twitter.com/jbueza/status/24916107900 [07:07] megana: hey Jimmy [07:08] JimBastard: hello [07:08] megana: You keeping it express? [07:08] jesusabdullah: dnode works with express now [07:08] jesusabdullah: Holy shit [07:08] jesusabdullah: that's really similar to dnode [07:09] megana: anybody else read this article? [07:09] megana: http://www.theinquirer.net/inquirer/news/1732956/security-researchers-destroy-microsoft-aspnet-security [07:09] jesusabdullah: except dnode gives you callbacks and a bunch of stuff [07:09] JimBastard: jesusabdullah: yeah [07:09] jesusabdullah: but doesn't use json either [07:09] jesusabdullah: or, jsonrpc I should say [07:09] JimBastard: jesusabdullah: what prototcol does dnode use? [07:09] jesusabdullah: cause it is in json [07:09] jesusabdullah: Custom [07:09] Nohryb has joined the channel [07:10] stagas: megana: wow [07:10] jesusabdullah: http://github.com/substack/dnode about 2/3 of the way down [07:10] megana: good stuff [07:10] megana: another reason to use nodejs ;P [07:10] megana: cause... JAva is just too painful [07:10] stagas: megana: let's steal online banks in asp :P [07:10] megana: okay 8) [07:11] megana: ..... I can't find one [07:11] jesusabdullah: JimBastard: I think it's mostly because jsonrpc doesn't really allow for bidirectional communication with callbacks to the original [07:11] JimBastard: jesusabdullah: you could just add a new property that specificies that [07:11] jesusabdullah: Yeah, that's my thinking [07:11] nroot7_ has joined the channel [07:11] jesusabdullah: If you could somehow make a method be like [07:12] JimBastard: it would be nice to have a common way to expose modules [07:12] JimBastard: as whatever [07:12] jesusabdullah: Yeah [07:12] JimBastard: ill push this a bit and send to list [07:12] JimBastard: i cant quite get async results to pipe to the screen, kinda annonying [07:12] jesusabdullah: Maybe hit up substack/dnode with an issue [07:12] JimBastard: requires something mind bending [07:12] jesusabdullah: *nod* [07:13] mau2 has joined the channel [07:14] muk_mb: Is there a decent module to handle user login/registration? or should I make one [07:14] MikhX has joined the channel [07:14] foobarfighter has joined the channel [07:15] JimBastard: make one [07:15] muk_mb: kk [07:15] sechrist: god damn [07:15] sechrist: I fucking love node [07:16] muk_mb: yeah it's pretty nifty [07:16] sechrist: high volume content aggregator processing like 85k records off of different feeds per minute [07:16] sechrist: 19mB memory usage [07:16] sechrist: has been running for 4 days [07:16] sechrist: ridiculous [07:17] _numbers: how can i decode a url with %20 in it [07:17] sechrist: _numbers: decodeURIComponent, unescape, etc [07:17] sechrist: _numbers: they do different things, so you're not specific enough [07:19] _announcer: Twitter: "http://boxysystems.com/index.php/step-by-step-instructions-to-install-nodejs-on-windows/" -- Drew LeSueur. http://twitter.com/drewlesueur/status/24916629637 [07:19] bpot has joined the channel [07:19] ph^ has joined the channel [07:31] jesusabdullah: I kinda wish there was a node bundle for windows that didn't require all of cygwin [07:31] jesusabdullah: oh well, whatayagonnado? [07:32] _announcer: Twitter: "redis node.js and install a Mac into their home and mongodb" [ja] -- のりお. http://twitter.com/norio/status/24917222580 [07:32] megana has left the channel [07:33] adambeynon has joined the channel [07:37] _announcer: Twitter: "Dream team. http://node.js + http://socket.io - JavaScript on the server gains ground" -- bishoph. http://twitter.com/bishoph/status/24917479250 [07:38] _numbers: wohoo! for my first app, i managed to build a node image proxy: fetches remote image, scale, crop, center, cache, serve [07:38] NemesisD has joined the channel [07:38] AAA_awright: How might I detect of a variable is a RegExp, or a function? [07:39] AAA_awright: _numbers: Most people just start out with "Hello, World" but cool :) [07:41] _announcer: Twitter: "node.js and mongoDB play should be very interesting." [zh-CN] -- James Chen. http://twitter.com/ashchan/status/24917646329 [07:42] _numbers: :) [07:43] saikat: _numbers: there are some frameworks that have sessions built in [07:43] saikat: though it's nothing too fancy of course [07:45] stagas has joined the channel [07:46] diorahman has joined the channel [07:48] AAA_awright: I can do that with instanceof, cool [07:54] stagas_ has joined the channel [07:56] _announcer: Twitter: "@ashchan This is powered by node.js -> http://smart.joyent.com/" -- Livid. http://twitter.com/livid/status/24918303631 [07:56] lachlanhardy has joined the channel [07:57] saikat: if my process is hanging in a function on the event loop [07:57] saikat: is it normal for the main node process to keep functioning as normal? [08:00] _announcer: Twitter: "@samwirah It was good. There's another in 6 weeks. I just touched the surface of node.js. It's gonna take a little longer than I thought :)." -- Jaisen Mathai. http://twitter.com/jmathai/status/24918492906 [08:00] _announcer: Twitter: "@livid quite a lot of services are now powered - if not totally - at least partly by node.js ;-)" -- James Chen. http://twitter.com/ashchan/status/24918501707 [08:02] _announcer: Twitter: "@jmathai node.js sounds epic. I have no ideas where I can use it though. Doh! I like playing with WebSockets (does a similar thing I think)" -- Sam Street. http://twitter.com/samwirah/status/24918583736 [08:05] mjr_: Almost have redis pub/sub working, but lack of sleep is claiming my brain. [08:11] stephank has joined the channel [08:13] dilvie has joined the channel [08:15] _announcer: Twitter: "#vim + #jslint + #nodejs = #awesome + #javascript + #hacking" -- John Ferlito. http://twitter.com/johnf/status/24919166163 [08:15] femtoo has joined the channel [08:16] JimBastard: hrmmm [08:16] JimBastard: this is kinda annonying [08:17] JimBastard: i have no way of hooking into the callback [08:17] prettyrobots has left the channel [08:18] JimBastard: http://localhost:8080/demoModule/asyncHello?fn=function(){return%20'hello';} [08:19] JimBastard: i can fire that method, but i want to respond to the browser with its result [08:20] _announcer: Twitter: "@livid actually smartplatform is not currently powered by node.js. Please check our blog at joyeur.com for more detail" -- konobi. http://twitter.com/konobi/status/24919384227 [08:22] V1 has joined the channel [08:22] dicon has joined the channel [08:23] stride: JimBastard: DNode has some socket.io stuff for rpc interoperability with the browser i think [08:23] JimBastard: stride: yeah for sure [08:23] JimBastard: i can do it, its just gonna be a bunch of code [08:23] JimBastard: im going to keep it fire and forget for now [08:23] stride: :) [08:24] _announcer: Twitter: "Hudson NodeJS Plugin http://bit.ly/bgWMtx" -- The Build Doctor. http://twitter.com/builddoctor/status/24919544404 [08:24] JimBastard: i got a little experiment going that does dnode type stuff [08:24] JimBastard: but not as full featured [08:24] stagas: can't you use a helper? like ?fn=function(){ write('hello') } [08:25] JimBastard: i dont think so [08:25] JimBastard: i have no idea what the callback is going to be [08:25] JimBastard: the way to do it is trap the request / response in a scope around the whole thing [08:25] _announcer: Twitter: "diving into node.js and websockets. Thanks to @alex_w for pushing me." -- Patrick Huesler. http://twitter.com/phuesler/status/24919620359 [08:25] _announcer: Twitter: "Back from #shdh. Did my part to pimp Node.js, node-inspector, @davglass and javascript in general. Met so many people! (Hello!)" -- Reid Burke. http://twitter.com/reid/status/24919626350 [08:26] JimBastard: its fine for now, ill fix in next version [08:27] stagas has joined the channel [08:30] freeall has joined the channel [08:31] MikhX has joined the channel [08:34] dicon has joined the channel [08:41] derferman has joined the channel [08:45] MrTopf has joined the channel [08:48] _announcer: Twitter: "If you install #nodejs with "git clone github/ry/node.git" and can't get the version nr correct, use "git checkout v0.2.2" after cloning" -- Andris Reinman. http://twitter.com/andris9/status/24920586748 [08:53] sechrist: Is assigning a function to a variable then using that variable inside the scope of the function orthodox? [08:54] sechrist: i'm doing it for retries on a service and I think I'm doing it pretty weird [08:54] sechrist: (seems to work just fine, but anyway) [08:56] _announcer: Twitter: "WIndows 7 and node.js http://blog.brev.name/2010/09/nodejs-on-windows-7-under-cygwin.html" -- Drew LeSueur. http://twitter.com/drewlesueur/status/24920929019 [08:56] paulwe has joined the channel [08:59] V1: wow double rainbow all the way [08:59] V1: o, wrong channel [08:59] V1: :$ [08:59] jameshome: WHAT DOES IT MEAN [08:59] stephank: heh [09:00] _announcer: Twitter: "Journal writing "Node.js Vows 2 testing framework for the" http://d.hatena.ne.jp/koichik/20100919 # nodejs_jp" [ja] -- koichik. http://twitter.com/koichik/status/24921115122 [09:06] a_meteorite has joined the channel [09:07] a_meteorite has joined the channel [09:09] aubergine has joined the channel [09:10] stagas: sechrist: it's ok but if the loop doesn't break somewhere you might overflow it [09:10] stiang has joined the channel [09:11] sechrist: I have a retries parameter that feeds back into itself [09:11] sechrist: for that purpose [09:11] stagas: usually you can try breaking out of the stack with a short or 0 setTimeout [09:11] _announcer: Twitter: "and it can also handle node.js MessagePack, V8 is looking good." [ja] -- FURUHASHI Sadayuki. http://twitter.com/frsyuki/status/24921590501 [09:12] sechrist: breaking out of the stack isn't exactly one of my concerns but that's something to consider [09:12] sechrist: a settimeout with a new function that has all of the variables needed to call that function inside of it's scope [09:12] matjas has joined the channel [09:12] sechrist: could be beneficial [09:12] matjas has joined the channel [09:14] _announcer: Twitter: "Is there anyone who does Nodejs compiled for osx? # # Dare ask good question # nodejs" [nl] -- JvdMeulen. http://twitter.com/JvdMeulen/status/24921686194 [09:19] admc has joined the channel [09:22] _announcer: Twitter: "@ JvdMeulen There are no pre-compiled "nodejs options for Mac OSX. You can compile it in command sudo. / Configure & & make & & make install" [nl] -- Arnout Kazemier. http://twitter.com/3rdEden/status/24922065467 [09:30] markwubben has joined the channel [09:32] Mikeee has joined the channel [09:33] mbrochh has joined the channel [09:33] mbrochh has joined the channel [09:34] Mikeee: Christ on a bike. I spent the whole night making a duck, and just realised he doesn't walk in chrome. :( [09:34] Mikeee: I have failed the duck. [09:45] caolanm has joined the channel [09:46] cloudhead has joined the channel [09:47] margle has joined the channel [09:48] scoates has joined the channel [09:53] stephank has joined the channel [09:53] Roelven_ has joined the channel [09:53] a_meteorite: Mikeee: Christ was on water silly duck [09:54] Pilate has joined the channel [09:54] mr_daniel has joined the channel [09:57] pdelgallego has joined the channel [10:14] matjas has joined the channel [10:17] Tim_Smart has joined the channel [10:17] _announcer: Twitter: "Palm's webOS2.0: Java VM with changed from Node.js - client-side scripting with Web Standards http://t.co/UlM05mg" [ja] -- Hokuto. http://twitter.com/tsubame959/status/24924393843 [10:17] rnewson has joined the channel [10:22] ooooPsss has joined the channel [10:26] devkorcvince has joined the channel [10:29] _announcer: Twitter: "#unittests #nodejs #expressjs #expresso and a cup of coffee. Looks like i will put in real data soon" -- Sebastian Schürmann. http://twitter.com/sschuermann/status/24924914446 [10:30] malkomalko has joined the channel [10:31] _announcer: Twitter: "@ 3rdEden do not manage to get them out here. Get a file and bin dir, but no nodejs" [nl] -- JvdMeulen. http://twitter.com/JvdMeulen/status/24924981592 [10:35] a_meteorite has joined the channel [10:36] a_meteorite has joined the channel [10:37] dilvie has joined the channel [10:42] MrTopf has joined the channel [10:46] TomsB has joined the channel [10:46] skampler has joined the channel [10:58] MattJ has joined the channel [10:59] _announcer: Twitter: "I finally moved node.js the chat rice samples (^ q ^)" [ja] -- あ た み. http://twitter.com/atomer/status/24926217639 [11:01] _announcer: Twitter: "var newAjax = html5 + css3 + (newJavaScript + nodeJs); //How can this JavaScript assignment be improved? #javascript" -- Ahamed Imran. http://twitter.com/immysl/status/24926308684 [11:03] V1 has joined the channel [11:04] derferman has joined the channel [11:05] qFxo has joined the channel [11:05] MrTopf has joined the channel [11:09] mikew3c has joined the channel [11:11] zorzar has joined the channel [11:26] _announcer: Twitter: "@mahemoff we're using a custom node.js based IP multiplexer across multiple directed radio uplinks. So it cannot break :)" -- Malte Ubl. http://twitter.com/cramforce/status/24927473672 [11:28] Akufen has joined the channel [11:28] Akufen has joined the channel [11:31] gthb has joined the channel [11:35] xla has joined the channel [11:39] lachlanhardy has joined the channel [11:40] makeusabrew has joined the channel [11:41] wakawaka has joined the channel [11:42] Mikeee: Bish bash bosh. [11:42] makeusabrew: hi [11:42] Mikeee: Hello makeusabrew! how are you? [11:42] makeusabrew: good ta. [11:43] makeusabrew: firebug console Vs chrome console. thoughts? [11:43] makeusabrew: been using chrome quite a bit last few days [11:43] Mikeee: firebug > chrome [11:43] makeusabrew: i think i agree [11:45] makeusabrew: chrome one isn't bad though [11:45] Mikeee: Aye it's alright [11:45] makeusabrew: the resources... etc is rubbish compared to firebug net tab [11:45] makeusabrew: but the console is pretty decent [11:47] mape: I prefer firebug since I can see the difference between console.log(1); console.log('1'); [11:48] mape: Or hmm, nm, guess they do hilight integers, but the fon't makes it harder to see [11:48] mape: *font [11:51] Mikeee: Anyone know what the pseudo 3d technique is called for making mario kart-esque racing games? [11:52] Mikeee: It has a name, I just can't put my finger on it.. [11:52] nwhite has joined the channel [11:52] mape: isometry? [11:52] Mikeee: nope.. [11:56] makeusabrew: http://en.wikipedia.org/wiki/Mode_7 any use? [11:56] Mikeee: That's the one [11:56] Mikeee: ta [11:59] makeusabrew: a multiplayer racing game? :) [12:00] Mikeee: Heh.. [12:00] Mikeee: well, figured: [12:00] Mikeee: http://www.nihilogic.dk/labs/mariokart/ [12:00] Mikeee: that'd be quite fun with node behind it :) [12:01] makeusabrew: that's awesome [12:01] Mikeee: not that i'll ever make it [12:01] makeusabrew: seen box2d has been ported to node? [12:01] Mikeee: there's a small chance I might spend an hour on it then give up [12:01] makeusabrew: now there's a recipe for awesome [12:01] Mikeee: ported to NODE? eh? [12:02] makeusabrew: well it's originally C++ innit [12:02] Mikeee: hrm [12:02] Mikeee: well i knew it'd be ported to javascript a while back.. [12:03] Mikeee: hmm [12:03] Mikeee: bet it'd be really slow with it not being native [12:03] cloudhead: I don't think it was 'ported', but rather converter [12:03] cloudhead: which sucks [12:03] cloudhead: converted* [12:04] Mikeee: ACTION cant really see why you'd run a full physics engine on the server :/ [12:05] Mikeee: uerghh. afaik, that's box2d -> box2dflash -> box2djavascript -> box2dnode [12:06] jetienne: http://github.com/madrobby/box2d-js makeusabrew [12:06] matjas has joined the channel [12:07] zith_: Mikeee: for multiplayer games i suppose [12:07] Mikeee: hrmm yeah [12:07] Mikeee: but still, running the full thing seems a bit overkill. most things could just be sense checked [12:09] makeusabrew has joined the channel [12:10] digitalspaghetti: i dunno, MMORPG's do most of the calcs on the server side [12:10] digitalspaghetti: i know from playing Eve Online this happens a lot, hence why the servers die in > 200 vs 200 battles [12:11] zith_: mmorpg rarely needs a physics engine like box2d, imho [12:12] digitalspaghetti: rarely but not never, i mean you'll certainly want to do bounding box checks [12:13] jetienne: http://www.nihilogic.dk/labs/mariokart/ how hard it is code stuff like this ? [12:14] digitalspaghetti: dunno, but this is my favoruite bit of his code: http://js1k.com/demo/797 [12:15] digitalspaghetti: i want to know how he did the background actually, with the stars and starcloud [12:15] digitalspaghetti: probably just a perlin noise generated image with opacity [12:16] jetienne: impressive for 1k [12:16] zith_: digitalspaghetti: full scale physics engines do oh so much more [12:16] Mikeee: ACTION deletes what he spent last night making [12:17] digitalspaghetti: zith_: oh yea, i agree but what i mean is with js there is especially some stuff you can't trust to the client side [12:18] digitalspaghetti: every machine's timing is going to be slightly different based on browser/os/clockspeed [12:19] _announcer: Twitter: "Just added a new LinkedIn page to my nodejs-powered homepage: http://tanepiper.com/linkedin, fed my DOM goodness" -- Tane Piper. http://twitter.com/tanepiper/status/24930258698 [12:22] makeusabrew: got disconnected, assume this ^^ convo related to box2d ;) [12:22] makeusabrew: erg, not that twitter status [12:22] Mikeee: aye [12:23] makeusabrew: point about box2d server side is you can have all your physics (awesome physics - check box2d out) coordinated server side then just fed out to clients [12:23] Mikeee: sure, but... [12:23] Mikeee: 1) you'd have to still have clietside physics, becuase you cant update fast enough [12:23] Mikeee: 2) it'd kill the server pretty quickly [12:23] d0k has joined the channel [12:23] Mikeee: unless it was a really simple game [12:24] digitalspaghetti: Mikeee: if stackless python can handle > 400 concurrent users on a physics heavy game like Eve online, node should easily be able to handle the same [12:25] makeusabrew: why 2) ? [12:26] Mikeee: it's a fuckload of calculations :/ [12:26] Mikeee: and it's not written as a native module, it's all js.. [12:26] digitalspaghetti: sss [12:26] makeusabrew: so what? all the ports run fine in their respective langs [12:26] Mikeee: hmmmm [12:26] Mikeee: well, make me a demo and prove it ;D [12:27] jacobolus has joined the channel [12:27] makeusabrew: heh, i will, soon asi can think of a good one [12:31] nsm has joined the channel [12:31] zith_: is eve online really physics heavy? [12:31] zith_: it certainly wasnt when i played it [12:32] apage43: nah [12:32] _announcer: Twitter: "Anyone got a good nodejs youcan-youcan't guide? Getting several compile issues which don't have a problem in a browser's JS env." -- Kenneth Kufluk. http://twitter.com/kennethkufluk/status/24930971078 [12:32] apage43: calculation heavy [12:32] apage43: but "physics" implies a heaviness that isn't there [12:33] zith_: makeusabrew: i know what you're saying, but i think writing a custom bounds-checking/constraints solver will win out on something as generic and flexible as box2d [12:34] nwhite has joined the channel [12:34] apage43: well [12:35] Mikeee: best way to log a full object out in node.js? [12:35] apage43: unless your game is realtime you should just sync the state of the box2d world on the client periodically [12:35] makeusabrew: console.log should do it mikee [12:35] Mikeee: ah. [12:35] Mikeee: annoyingly simple. [12:41] jelveh has joined the channel [12:42] jashkenas has joined the channel [12:43] makeusabrew: ooh. chrome console has autocomplete. +1 chrome [12:44] mif86 has joined the channel [12:45] Mikeee: I think I have successfully made the least efficient game in the entire world. [12:45] Mikeee: ACTION grins [12:45] Anti-X has joined the channel [12:47] Mikeee: oh, and crashed apache. [12:47] Anti-X: crapache [12:48] kaichen has joined the channel [12:51] Mikeee: http://www.mikeefranklin.co.uk/bson/bson.html [12:51] Mikeee: considering im only moving tiny sprites around [12:51] Mikeee: i'm almost killing the browser [12:51] Mikeee: and the server [12:51] Mikeee: time for a rethink :P [12:57] apage43: why BSON? [12:57] Mikeee: just been messing with it [12:57] Mikeee: + the native bson serializer seems pretty fast. [12:57] evanpro has joined the channel [12:57] apage43: probably would kill the browser less to use raw JSON ;P [12:57] Mikeee: Naa [12:57] Mikeee: not unless I eval'd it [12:58] apage43: browser JSON parsers are much faster than stuff written in JS [12:58] apage43: eval is slowww [12:58] apage43: use JSON.parse [12:59] digitalspaghetti: is the person who's doing the pokemon nodejs game here? [12:59] Mikeee: ACTION quacks [13:00] digitalspaghetti: although pokemon sucks, it looks quite good; http://jbueza.blogspot.com/2010/09/nodejs-hack-session-mmo-pokemon-with.html [13:01] digitalspaghetti: i've been looking to resurect a dead CCG game myself :) Never had time before now, but looks like this might give me a good start [13:02] apage43: dude [13:02] apage43: i would glove a generalized CCG/TCG table [13:04] digitalspaghetti: well the CCG i have is based on Eve online and I have the full card set to try and get working :) [13:10] ooooPsss has joined the channel [13:11] aliem has joined the channel [13:12] makeusabrew: mikee - how come you're killing the server with that? [13:13] Mikeee: because every pixel of movement is sent ;) [13:13] Mikeee: im not actually killing it [13:13] Mikeee: it just could be done a looot better. [13:14] Mikeee: might even change it so it only sends key events [13:15] makeusabrew: aye. would be nice to have a shared file or whatever which contained speeds and stuff so both client and server kne whow fast a keypress should mov etc [13:18] MrTopf has joined the channel [13:20] hellp has joined the channel [13:20] Egbert9e9 has joined the channel [13:21] Egbert9e9 has joined the channel [13:30] mape: hmm was express changed recently? [13:39] _announcer: Twitter: "View node.js time, event-in Web server for real-time applications yay JS" [de] -- Maggo. http://twitter.com/MaggoLive/status/24935142198 [13:39] trodrigues has joined the channel [13:40] _announcer: Twitter: "Looking forward to see "Rails-like" Geddy mature for #nodejs -> http://geddyjs.org/" -- Marc Harter. http://twitter.com/wavded/status/24935223604 [13:41] _announcer: Twitter: "node.js http://vowsjs.org/ framework" [ja] -- umi. http://twitter.com/umihara666/status/24935279253 [13:45] kriszyp has joined the channel [13:46] maushu has joined the channel [13:47] marshall_law has joined the channel [13:47] _announcer: Twitter: "http://www.debuggable.com/posts/node-js-dealing-with-uncaught-exceptions:4c933d54-1428-443c-928d-4e1ecbdd56cb" -- Marc Harter. http://twitter.com/wavded/status/24935697684 [13:57] _announcer: Twitter: "exceptions -> not a strong point in #nodejs but being worked on, here's a good article explaining issues -> http://is.gd/fi0ze" -- Marc Harter. http://twitter.com/wavded/status/24936430086 [14:00] ehaas has joined the channel [14:00] kjy112 has joined the channel [14:00] _announcer: Twitter: "btw, # # nodejs http://www.joyent.com/services/cloudhosting/ node.js" [fil] -- FuzzYspo0N. http://twitter.com/FuzzYspo0N/status/24936710623 [14:02] micheil has joined the channel [14:05] EyePulp has joined the channel [14:05] zapnap has joined the channel [14:13] ashb: i'm trying to port some commonjs code to node - but node doesn't have the test module - what should i use instead to run a test suite? [14:16] aubergine has joined the channel [14:19] ooooPsss: I know some of you guys work for Joyent. Why one should choose joyent and its big price over Heroku or other VPS? [14:20] Mikeee: ACTION thinks about making a tweet SOM [14:20] matjas has joined the channel [14:21] matschaffer has joined the channel [14:21] asfw: whoever did the postgres driver: thx.postgres rocks :-) [14:21] overra has joined the channel [14:22] Mikeee: Nick - you there? [14:22] jelveh has joined the channel [14:34] mies has joined the channel [14:35] _announcer: Twitter: "just looked up from installing express cms for node.js, and, afaict, every old man in this starbucks was staring at me. yarrrr." -- chris corwin. http://twitter.com/chris_corwin/status/24939363683 [14:40] ooooPsss: can you use websockets on heroku? I was checking their architecture and they use reverse proxying [14:40] ooooPsss: how can they manage to make websockets work? [14:41] allengeorge has joined the channel [14:41] allengeorge has joined the channel [14:42] _announcer: Twitter: "Testing framework for Node.js Vows - 2010-09-18 - Diary http://htn.to/3rgZQZ" [ja] -- lemur(れむーる). http://twitter.com/lemur314/status/24939965883 [14:43] steadicat has joined the channel [14:48] _announcer: Twitter: "Looks like ringojs beats node.js consistently in a hello-world HTTP benchmark with some amount of buffer allocation (30*1 kb/request)" -- Hannes Wallnöfer. http://twitter.com/hannesw/status/24940404776 [14:54] digitalspaghetti: "It looks like X beats node.js in a specifically tuned example" [14:54] digitalspaghetti: i remember this crap between jquery/moo/prototype [14:55] micheil: digitalsanctum: someone's always gotta feel superior, until the others say bugger it. [14:56] micheil: digitalsanctum: what was the great jquery solution? cache everything so that we win on multiple iterations [14:57] _announcer: Twitter: "@hannesw is the #ringojs vs. #nodejs hello world benchmark code available online?" -- Oleg Podsechin. http://twitter.com/olegpodsechin/status/24941110670 [14:57] programble has joined the channel [14:57] digitalspaghetti: poor digitalsanctum getting all my messages in here :) [14:57] digitalspaghetti: micheil: i can't remember, but sizzle kind of made it a moot point anyway, i think most libs use sizzle these days> [14:58] micheil: yeah [14:58] micheil: >_> [14:59] digitalspaghetti: did you see my new site btw micheil ? [14:59] micheil: yeah [15:00] digitalspaghetti: what do you think? :D It's all nodejs, express and YUI generated, pulling in from posterous, twitter and now linkedin [15:00] digitalspaghetti: i'm going to finish the github stuff tonight [15:01] zith_: digitalspaghetti: where is it? [15:01] digitalspaghetti: zith_: http://tanepiper.com/ [15:03] digitalspaghetti: i had a cool canvas animation at the top, but it was killing firefox :( [15:07] ph^ has joined the channel [15:17] _announcer: Twitter: "abandoned http://bit.ly/aE99FA Python! node.js + CouchDB running on." [ja] -- Yohei Sasaki. http://twitter.com/yssk22/status/24942769501 [15:22] _announcer: Twitter: "Meryl got its first contributions http://bit.ly/aTYfaX . Thanks @stagas very much, very kind of him. Meryl is now v0.2.0 #meryljs #nodejs" -- Kadir Pekel. http://twitter.com/kadirpekel/status/24943165123 [15:23] stride: digitalspaghetti: "502 Bad Gateway" [15:24] _announcer: Twitter: "@hannesw I'm getting about 4k #/s with #nodejs and 3.5k with #ringojs with ab -c 100 -n 10000" -- Oleg Podsechin. http://twitter.com/olegpodsechin/status/24943301463 [15:25] digitalspaghetti: stride: ugh [15:25] digitalspaghetti: it should autorestart :/ [15:25] digitalspaghetti: ugh my server restarted, and it doesn't autorestart thats why [15:27] digitalspaghetti: either that or webfaction keep killing my stuff :( [15:27] digitalspaghetti: as my djano sites have gone down too, must be going over memory :( [15:28] _announcer: Twitter: "Meryl has now function chaining with objective structure and verbose function name aliases. Check out http://bit.ly/a5z0SH #meryljs #nodejs" -- Kadir Pekel. http://twitter.com/kadirpekel/status/24943671563 [15:29] nsm has joined the channel [15:30] olegp has joined the channel [15:30] Yuffster has joined the channel [15:30] _announcer: Twitter: "HD video of @davglass's #yui + #nodejs talk from Thursday at Yahoo: http://bit.ly/aq3L87" -- Eric Miraglia. http://twitter.com/miraglia/status/24943857404 [15:31] mikeal has joined the channel [15:33] dnolen has joined the channel [15:37] digitalspaghetti: ugh i hate apache so much [15:37] digitalspaghetti: it's apache takes up a 100m alone [15:37] digitalspaghetti: *mb [15:39] davidwalsh has joined the channel [15:42] benburkert has joined the channel [15:47] marshall_law has joined the channel [15:47] rnewson has joined the channel [15:51] _numbers: best way to parse xml w/ node? jquery? [15:53] pwrfail has joined the channel [15:53] micheil: digitalspaghetti: why not front with nginx? [15:55] herbySk has joined the channel [15:57] zemanel has joined the channel [15:57] _announcer: Twitter: "Meryl is kinda awesome, it makes me want to dig into Node.js. Rewriting some of my tiny apis with Meryl http://bit.ly/a2YRmm #nodejs #meryl" -- Burcu Dogan. http://twitter.com/thejbf/status/24945936041 [16:03] _announcer: Twitter: "Seriously, if NodeJS/Ruby fibers seem neat to you, head over to http://bit.ly/dCqcnQ to get your mind blown." -- Randy. http://twitter.com/randy_lee89/status/24946422088 [16:05] digitalspaghetti: micheil: it's the way webfaction works [16:05] digitalspaghetti: they front with ngnix, but you also need a apache instance for running django for some reason [16:05] Me1000 has joined the channel [16:06] digitalspaghetti: i turned down the threads and child processes [16:06] digitalspaghetti: _numbers: user the YUI library [16:06] c4milo has joined the channel [16:06] digitalspaghetti: _numbers: http://github.com/tanepiper/tanepiper.com/blob/master/apps/twitter/index.js [16:06] SamuraiJack has joined the channel [16:08] _numbers: hmm i want xpaths [16:10] _numbers: how do the yui selectors work [16:12] digitalspaghetti: DOM selectors [16:13] stephank has joined the channel [16:13] ekidd has joined the channel [16:14] ekidd: Goofing off with Node.js, CoffeeScript, and the Faye comet library: http://gist.github.com/586347 [16:15] kjy112 has joined the channel [16:16] isaacs has joined the channel [16:19] mu-hannibal has joined the channel [16:19] gthb has joined the channel [16:27] Nohryb has joined the channel [16:28] vmthehut has joined the channel [16:28] _announcer: Twitter: "Tweetirc presentation at JSMiniconf, a Dojo/Node.js project http://post.ly/yW9p" -- zemanel. http://twitter.com/zemanel/status/24948280133 [16:29] allengeorge has joined the channel [16:30] allengeorge has joined the channel [16:34] _announcer: Twitter: "programming. I installed nodejs's npm and... coffeescript." -- Jean Hugues Robert. http://twitter.com/jhr/status/24948731167 [16:36] _announcer: Twitter: "love that @davglass is wearing a @netflix hat in his @yuilibrary node.js presentation http://bit.ly/aq3L87" -- Ryan Kennedy. http://twitter.com/rckenned/status/24948826352 [16:36] prettyrobots has joined the channel [16:36] niemeyer has joined the channel [16:36] prettyrobots: Is there a synchronous way to do path.exists() ? [16:37] _announcer: Twitter: "Just bought @peepcode new Node.js screencast :-) http://peepcode.com/products/nodejs-i" -- Fabio Akita. http://twitter.com/AkitaOnRails/status/24948898532 [16:39] Nietecht has joined the channel [16:41] prettyrobots has joined the channel [16:43] _announcer: Twitter: "Just watched my @yuilibrary talk on YUI3 & NodeJS. It's always freaky to watch myself on video." -- Dav Glass. http://twitter.com/davglass/status/24949333431 [16:43] sstephenson: prettyrobots: fs.statSync(path) will throw an exception if the path doesn't exist, or return a Stats instance otherwise [16:43] _announcer: Twitter: "@tobeytailor do you have more to share about #nodejs and #arduino ?" -- Felix Geisendörfer. http://twitter.com/felixge/status/24949387611 [16:43] prettyrobots: Ah. Okay. So, catch the exception. [16:43] prettyrobots: Thanks. [16:45] c4milo has joined the channel [16:45] sechrist: Is there a drizzle driver for nodejs yet? :D:D:D [16:45] sechrist: (or do standard libmysql clients work with drizzle?) [16:47] tobeytailor has joined the channel [16:49] stagas has joined the channel [16:50] vmthehut has joined the channel [16:52] V1 has joined the channel [16:54] hellp has joined the channel [16:55] halfhalo has joined the channel [16:59] _numbers: with jsdom jQuerify can i pass in a local jquery.js (e.g. read from disk) or does it have to be a hosted one [17:01] V1: you might need to add export.jQuery = jQuery at the bottom of the jQuery script [17:01] V1: So you can load jQuery as a module [17:02] _numbers: V1: jsdom does that supposedly [17:02] _numbers: http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs [17:02] V1: Well than you can just use a plain jQuery [17:03] _numbers: well im trying to parse an xml document but im not sure that is going to fly [17:04] silentrob has joined the channel [17:04] ajpiano has joined the channel [17:04] davidwalsh has joined the channel [17:07] V1: GL :) It should probably work fine as sizzle is also tested on xml documents [17:07] skampler: _numbers: i recommend node-expat for xml parsing [17:07] mikew3c_ has joined the channel [17:10] stagas: xml2js is cool too [17:13] _numbers: thx i will check those two out [17:13] _numbers: i wish npm would install to my project. similar to bundler [17:13] _numbers: ive been avoiding using npm so i can use git submodules [17:14] tobiassjosten has joined the channel [17:15] daglees has joined the channel [17:18] tahu has joined the channel [17:19] softdrink has joined the channel [17:20] tobeytailor has left the channel [17:23] stagas: _numbers: you can, with npm bundle [17:23] stagas: you need to have a package.json with dependencies for it to work, and you throw a folder and puts them all in there [17:25] sechrist: for(x in array) vs (for x=0;x --root ./vendor" [18:10] isaacs: _numbers: sure. [18:10] felixge has joined the channel [18:10] isaacs: _numbers: try this, maybe it'll work: npm install http://github.com/rsms/node-imagemagick/tarball/master --root ./vendor --binroot false --manroot false. [18:10] isaacs: (get rid of that last . there) [18:10] isaacs: _numbers: and then do "npm bundle ./vendor" [18:11] isaacs: jesusabdullah: yeah, once upon a time, you could ONLY install urls! [18:11] isaacs: jesusabdullah: turns out, people hate that shit. [18:11] isaacs: <-- people [18:11] isaacs: about the 10th time i misttyped a tarball url, i was like, "ok, we need a registry" [18:12] jesusabdullah: ahaha [18:12] _numbers: npm ERR! Failed unpacking the tarball. [18:12] jesusabdullah: Interesting [18:12] isaacs: _numbers: works for me. can you gist the whole log? [18:13] sechrist: when I'm passing references of objects inside of a loop where I grabbed it by array[key], does that mean anything (other than the loop itself?) like the actual object reference isn't reliant on that position in the array, right? [18:13] sechrist: I wouldn't think so, but just making sure [18:14] _numbers: https://gist.github.com/b10ddcd363c5f8493a63 [18:15] isaacs: _numbers: interesting. what's node -v say? [18:15] _numbers: v0.2.0 [18:15] isaacs: ok. you using the node from ry's git? [18:15] _numbers: ya [18:15] _numbers: is that bad? [18:16] isaacs: um, not necessarily. [18:16] isaacs: but it introduced a bug that i fixed on npm (i thought) 0.2.1 [18:17] _numbers: tried source install but also fails silently afaict https://gist.github.com/b10ddcd363c5f8493a63 [18:19] isaacs: _numbers: hm... it works for me on the latest node and npm [18:19] isaacs: _numbers: do you have permission to write to that folder? [18:19] voodootikigod__ has joined the channel [18:20] _numbers: which folder would it be writing to [18:20] _numbers: the --root? [18:20] _numbers: ya [18:20] _numbers: npm bundle ./vendor fails now: https://gist.github.com/b10ddcd363c5f8493a63 [18:20] isaacs: ok [18:20] Aria has joined the channel [18:20] isaacs: whoa [18:21] isaacs: ok, rm -r that folder. it's bogus. [18:21] _numbers: yep done. now it works again [18:21] _numbers: but no node-imagemagick [18:21] isaacs: _numbers: can you do this for me, please? grep O_ $(npm config get root)/.npm/npm/active/package/lib/utils/fetch.js [18:22] Nohryb has joined the channel [18:22] _numbers: isaacs: https://gist.github.com/b10ddcd363c5f8493a63 [18:22] pedrobelo has joined the channel [18:23] isaacs: ok, so you have the new code which is compatible with node on ry/master [18:23] isaacs: so that's good [18:23] _numbers: ya i just built both node and npm today [18:23] CIA-77: node: 03Ryan Dahl 07master * r4962702 10/ (src/node.js test/fixtures/a.js test/simple/test-repl.js): [18:23] CIA-77: node: Revert requireNative changes: 4e6b9b0, d429033, 6abbfa0, bcad540 [18:23] CIA-77: node: The REPL needs the full require(); add test for that behavior. - http://bit.ly/bAfKGU [18:23] isaacs: great [18:23] ryah: ^-- extremely painful revert [18:23] _numbers: isaacs: odd. so it works for u on latest? hmm [18:23] ryah: had to do it by hand [18:23] isaacs: ryah: yikes. [18:24] isaacs: ryah: thanks for that. [18:24] isaacs: ryah: it seems like there should've been a way forward rather than back, though, no? [18:24] _numbers: isaacs: oh! it works if i change --root hmm maybe it doesnt like relative paths [18:24] isaacs: _numbers: ahhh... yeah [18:24] matjas has joined the channel [18:24] isaacs: _numbers: derp. sorry. [18:25] quirkey has joined the channel [18:25] isaacs: _numbers: i added support for ~/path, and i'd meant to support ./path, but forgot, i guess [18:25] isaacs: yeah, totally not in the git log. [18:25] isaacs: whoops. [18:26] c4milo has joined the channel [18:26] ryah: isaacs: *shrug* got a test now [18:27] isaacs: k [18:27] _numbers: also isaacs if i specify --binroot false it silently fails [18:27] ryah: herby's hack to go forward was too hacky [18:27] isaacs: it's really a very minor enhancement anyway. makes the code more readable, but i mean, seriously, who wants that? [18:27] micheil: hmm.. [18:27] _numbers: what is --binroot false doing? [18:28] isaacs: _numbers: it's preventing it from trying to install any executables that'll be referencing this stupid ./vendor dir [18:28] isaacs: _numbers: basically, you don't want things in /usr/local/bin that are trying to look in some random dev folder. [18:28] _numbers: o right. i wonder why that would cause it to fail. im using an absolute path now. it works without that arg. [18:29] ryah: i liked herby's requireNative thing - but unfortunately not-breaking-shit is a requirement :) [18:29] micheil: what was that really simple http client wrapper? [18:30] ryah: micheil: http://github.com/mikeal/node-utils/tree/master/request/ ? [18:30] micheil: might've been [18:30] mikeal: ryah: btw, i'm adding those .get, .post, etc methdos [18:31] mikeal: also, require is broken in 0.2.2 for e [18:31] mikeal: er me [18:31] micheil: mikeal: does that auto parse data given content-type headers? [18:31] mikeal: micheil: nope [18:31] micheil: k [18:31] mikeal: it auto-buffers, it follows redirects [18:31] mikeal: handles basic auth [18:31] mikeal: i don't wanna get too fancy with parsing application/json [18:31] micheil: okay [18:32] mikeal: because some people return streams of JSON that are line by line and not a single object [18:32] ph^ has joined the channel [18:32] micheil: ACTION is needing to poll a url and parse the resulting json document every n seconds [18:32] mikeal: and that'll break in the parser [18:32] mikeal: right, you can pass my library a stream object [18:32] mikeal: and then you just handle the lines of json [18:32] mikeal: you can look at tweetstream to see an example [18:33] mikeal: http://github.com/mikeal/tweetstream/blob/master/lib/main.js#L48 [18:33] micheil: ryah: the git tag v0.2.2 was the latest stable, right? [18:33] micheil: yeah, this is github's json feeds [18:33] mikeal: http://github.com/mikeal/tweetstream/blob/master/lib/main.js#L89 [18:33] micheil: http://github.com/timeline.json [18:33] mikeal: in 0.2.2 require.paths is undefined [18:34] mikeal: which breaks importing any installed modules [18:34] micheil: :/ [18:34] micheil: so I should build 0.2.1? [18:34] mikeal: at least on Mac [18:34] mikeal: i built from source and homebrew and it was just way broken [18:34] mikeal: i rolled back to 0.2.0 [18:34] sechrist: herbySk: for my compactor, should I splice or filter and swap out the array? in the latter, would the references to the objects transfer over to the new array or would they be separate entities? [18:34] mikeal: cause that's the last one i knew for sure worked [18:34] micheil: mikeal: k [18:35] micheil: yeah, I'm just starting to do a bit of node development after some other stuff came up, so just trying to catch tails [18:35] mikeal: you going to berlin? [18:36] ekidd has joined the channel [18:36] ryah: micheil: yes [18:37] sechrist: my real name is michael [18:37] sechrist: lets make this a party [18:37] micheil: I'm not. [18:37] sechrist: micheil, mikeal, michael, now we need a michelle [18:37] ryah: mikeal: did you talk to felix? [18:43] digitalspaghetti: i haven't seen felix around in a few days [18:44] rnewson has joined the channel [18:44] rnewson has joined the channel [18:47] micheil: hmm.. [18:47] micheil: I wonder if there's a module for pretty printing stuff into columns [18:48] c4milo has joined the channel [18:48] digitalspaghetti has joined the channel [18:51] micheil: bloody hell does stuff happen on github fast. [18:53] stagas__ has joined the channel [18:56] ryah: micheil: if you have a minute, can you take a look at http://gist.github.com/587015 [18:56] micheil: sure. [18:57] micheil: I think the upgrade tests have to be some of the ugliest there. [18:58] micheil: ryah: I should be on HEAD to apply that patch, right? [18:59] mitkok has joined the channel [19:03] maushu has joined the channel [19:03] herbySk: sechrist: copy in place, no splice: for (i=0,j=0;j:P If I "got" it things wouldn't be so bad :) [20:22] jesusabdullah: Learning autotools might be a good idea for me [20:22] jesusabdullah: but *shrug* [20:24] micheil_mbp has joined the channel [20:25] margle: is there a channel for connect? [20:29] matjas has joined the channel [20:29] antares_ has joined the channel [20:29] marshall_law has joined the channel [20:32] tapwater has joined the channel [20:34] Validatorian has joined the channel [20:38] skohorn has joined the channel [20:38] everton has joined the channel [20:38] muk_mb has joined the channel [20:39] Validatorian: anyone have experience connecting to ec2 from PuTTy? [20:39] CIA-77: node: 03Ryan Dahl 07master * r124fbed 10/ (src/node.cc src/node.h wscript): [20:39] CIA-77: node: Add node::Start() [20:39] CIA-77: node: first step towards building a libnode.a - http://bit.ly/cd8Ajd [20:39] CIA-77: node: 03Ryan Dahl 07master * r1e63cd6 10/ TODO : Update TODO - http://bit.ly/bKWErP [20:39] CIA-77: node: 03Jorge Chamorro Bieling 07master * r8e246ac 10/ lib/sys.js : sys.js: sys.inspect: show function names - http://bit.ly/bvndfW [20:40] _mythz has joined the channel [20:41] mau2 has joined the channel [20:43] ceej has joined the channel [20:49] digitalspaghetti: Validatorian: yea, you need to open port 22 in the EC2 console [20:49] digitalspaghetti: i can't remember off the top of my head how you do it though, it's been a while [20:50] digitalspaghetti: but port 22 isn't opened by default [20:50] alexb_ has joined the channel [20:50] aubergine has joined the channel [20:51] jchris has joined the channel [20:51] muk_mb: is there a module for handling file uploads? [20:52] muk_mb: like Paperclip for rails [20:56] maushu has joined the channel [20:56] trotter has joined the channel [20:57] jbenesch has joined the channel [20:59] bradleymeck1 has joined the channel [21:00] NemesisD has joined the channel [21:03] silentrob has joined the channel [21:04] tobeytailor has joined the channel [21:07] NemesisD: any node-unit users in here? anyone have some good examples (github?) of how you organize your tests in terms of directories, runner scripts, etc [21:07] mau has joined the channel [21:08] sstephenson: I'm using nodeunit with CoffeeScript [21:09] sstephenson: sample Cakefile: http://gist.github.com/587118 [21:09] sstephenson: that'll run all files in test/ (but not in subdirectories of test/) [21:10] sstephenson: which leaves you free to use e.g. test/fixtures/ for fixture data [21:10] Yuffster has joined the channel [21:10] NemesisD: sstephenson: not familiar with a cakefile. is it applicable if i'm not using vanilla js? [21:11] sstephenson: yeah, just npm install coffee-script and you'll get a `cake` command [21:11] sstephenson: http://jashkenas.github.com/coffee-script/documentation/docs/cake.html [21:13] steadicat has joined the channel [21:15] NemesisD: sweet [21:16] muk_mb: should I be using 'cake' or 'jake'? [21:16] _numbers: how is jake related to node [21:17] muk_mb: according to that page there, jake and cake and rake and make are all similar [21:17] muk_mb: jake being the other one for javascript [21:19] altamic has joined the channel [21:23] gsmcwhirter: anyone know of a good library for handling date/time localizations (e.g. timezones), or, if it is built into js/node by default, a reference for how it works? [21:25] CIA-77: node: 03Ryan Dahl 07master * r27af64e 10/ src/node_main.cc : Forgot to include node_main.cc - http://bit.ly/a5qAJl [21:25] bmavity has joined the channel [21:26] NemesisD: sstephenson: do you have any public projects up that use this testing pattern? [21:29] gthb has joined the channel [21:31] SteveDekorte has joined the channel [21:33] jbaron has joined the channel [21:34] jbaron: after upgrading to latest node, I noticed some issues with native libs in combination with Buffers. Anyone else seen this? [21:34] prettyrobots has joined the channel [21:34] Validatorian has joined the channel [21:36] sveimac: Anti-X: ping [21:36] NemesisD: jbaron: probably unrelated but i've been unable to require local libs with versions 0.2.0 thru 0.2.2 [21:37] jbaron: I guess different case. I have some issues with the Unwrap and an assertion. [21:38] dipser has joined the channel [21:39] rtomayko has joined the channel [21:41] digitalspaghetti: gsmcwhirter: no, but there is Date.js - probably could be ported to nodejs [21:41] digitalspaghetti: i was going to give it a crack, but i haven't had time [21:42] noahcampbell has joined the channel [21:42] gsmcwhirter: digitalspaghetti, i've seen that before. I was looking for something that would take a timezone (e.g., America/Los_Angeles), and handle all the DST conversions etc automatically (where the name of the timezone would be stored in a db for instance) [21:43] jchris has joined the channel [21:43] saikat has joined the channel [21:44] cloudhead has joined the channel [21:44] konobi: gsmcwhirter: oh, another mcwhirter... how odd [21:45] gsmcwhirter: konobi, ... very... =) [21:45] konobi: `v when was dannycoates here? [21:45] v8bot: konobi: No such command. [21:45] konobi: bah [21:47] voodootikigod__ has joined the channel [21:47] matschaffer has joined the channel [21:48] gsmcwhirter: i suppose i could write something to parse the zoneinfo files for the machine... [21:50] digitalspaghetti: yea, that would be quite handy [21:51] digitalspaghetti: i only have one request [21:51] digitalspaghetti: make it handle dates much better than PHP ever did :p [21:52] micheil: hmm.. did someone implement a fast LRU cache for node? [21:53] gsmcwhirter: digitalspaghetti, i was having some luck w/ the php 5.3 date stuff before i switched over to node [21:54] digitalspaghetti: yea, i think recently there has been improvements, but for years it was just crap [21:55] mitkok has joined the channel [21:57] jbaron has left the channel [21:57] ekidd has joined the channel [21:57] bradleymeck1: anyone got a pretty large less file lying about (>20k), cloudhead? [22:00] dnolen has joined the channel [22:03] digitalspaghetti: that a lot of css! [22:04] bradleymeck1: yep [22:04] bradleymeck1: need it to run some benchmarks though, but i can make a false one [22:04] bradleymeck1: and its a lot of less, but not too much css for a large site (dry cries at the hands of css) [22:06] TobiasFar has joined the channel [22:06] mitkok has joined the channel [22:10] dipsio: whats the best key-value db for node.js ? [22:10] bradleymeck1: best is defined by your needs [22:10] dipsio: (consistent, fast, less-mem,...) [22:11] bradleymeck1: might look into redis then [22:13] pquerna: ACTION wants to make a berkeleydb binding just to say its the best [22:13] Nietecht: I'm getting an error on some libraries call to crypto: crypto.createHash('sha1'); Is it maybe using crypto in an outdated way or something? [22:14] pquerna: Nietecht: that should work fine; what error is happening? can you gist an example? [22:14] xer0x has joined the channel [22:15] Nietecht: Gist... point me in that direction (I'm green) [22:15] pquerna: Nietecht: http://gist.github.com/ [22:15] Nietecht: Cheers [22:15] cloudhead: dipsio: durable or not? [22:16] Nietecht: pquerna: this what you looking for? http://gist.github.com/587164 [22:16] dipsio: its node.js should be durable [22:16] dipsio: i like the syntax of mongod, but i have heared, its not save [22:16] pquerna: Nietecht: is it possible your node was compiled without OpenSSL suport? [22:17] Nietecht: pquerna: Oh, it was indeed... That's it then. Didn't realise the connection would happen over SSL [22:17] bradleymeck1: cloudhead since you are splitting up the less.js parse with chunks, do you think just doing a global regexp array might be faster while still avoiding large slice sizes? [22:17] eisd has joined the channel [22:17] Nietecht: As in: it wasn't compiled with openssl [22:18] pquerna: Nietecht: it won't, but all of the Crypto and hash functions are actually provided by OpenSSL (even if we are just using the hashes, not the SSL part) [22:18] bradleymeck1: openssl's cryto functs are whats used in crypto [22:18] NemesisD: anyone use the cjohansen fork of nodeunit [22:19] cloudhead: bradleymeck1: global regexp array? isn't that what it already is? [22:20] Nietecht: pquerna: Aha, ok, guess I'll just redo the install with OpenSSL [22:20] cloudhead: dipsio: how about couchdb? [22:20] bradleymeck1: cloudhead you are doing iteration of regexps on slices to avoid 2nd pass, but i think it might be more costly than a /.../g.match('cssText') [22:20] cloudhead: bradleymeck1: you mean not splitting the css? [22:21] dipsio: ok now we have all, right? :D redis, couch, mongo :) [22:21] bradleymeck1: didnt know if you ran tests on it, yea w/o splitting the text, let the regexp split it up into the lexable tokens [22:21] _numbers: which is better for server-side: jquery or yui [22:21] _numbers: im having a hard time finding up-to-date jquery server-side examples [22:21] cloudhead: bradleymeck1: yea it's much slower without the splitting [22:22] cloudhead: cause it has to match on huge strings [22:22] digitalspaghetti: _numbers: at the moment, the YUI server side stuff is quite good, although not optimised [22:22] _numbers: can YUI do xpaths at all? [22:22] digitalspaghetti: _numbers: http://github.com/tanepiper/tanepiper.com [22:22] cloudhead: dipsio: couch is the only solution if you want good durability [22:22] digitalspaghetti: _numbers: you can do pretty much anything YUI can do [22:22] ekidd has joined the channel [22:22] bradleymeck1: bleh, guess array construction costs get uggly, woulda thought otherwise [22:22] digitalspaghetti: including stuff like YQL [22:23] cloudhead: bradleymeck1: it just needs some help to know where to find the tokens [22:24] cloudhead: if you give it a 500K string, but all you really need to match is the first 30b, you lose a lot of perf [22:24] bradleymeck1: ah, true [22:24] cloudhead: the chunkifier has some overhead, but it makes all subsequent string matches 2-3x faster [22:25] bradleymeck1: still would need to check the whole 500k though [22:25] cloudhead: yes, but only once [22:25] cloudhead: and it's a tight loop [22:26] rne1223 has joined the channel [22:27] bradleymeck1: last q do you have a 500k less file to bench against [22:27] rne1223 has joined the channel [22:27] cloudhead: yea 1 sec [22:27] cloudhead: well actually [22:27] cloudhead: in the benchmark/ folder [22:27] rne1223 has left the channel [22:27] cloudhead: there's the file I use for benchmarking [22:27] cloudhead: you can just run `make benchmark` [22:27] cloudhead: to get the results [22:28] cloudhead: it's pretty much the worse case scenario too, which is good [22:28] cloudhead: ie tons of dynamic stuff, operations etc [22:28] cloudhead: parsing pure CSS is ~2x faster [22:28] bradleymeck1: k [22:29] _numbers: ahck [22:29] _numbers: so frustrated at how complicated to just read some xml data [22:29] _numbers: perhaps better to use php or ruby for that part [22:30] isaacs: _numbers: there's a few xml parsers [22:30] isaacs: _numbers: libxmljs, sax-js, etc. [22:30] isaacs: or there's jsdom if you need the big guns [22:30] cloudhead: gotta head out for a bit [22:30] _numbers: yes but they're super complicated. this is a very simple xml document. i just want to loop it with xpaths and it shouldnt be more than 3 lines [22:30] dipsio: ok thx cloudhead [22:31] isaacs: _numbers: wait a second... i'm pretty sure you just said "simple" and "xpath" in the same message, is that right? [22:31] isaacs: that can't be right. [22:31] isaacs: :P [22:32] _numbers: window.jQuery(body).find('/Users/OnlineUsers/OnlineUser/UserID').each(function() { [22:32] _numbers: echo "user_id: "+ window.jQuery(this).text(); }) [22:32] _numbers: it should be that simple [22:33] atourino has joined the channel [22:34] _numbers: i may have to get kludgy and use some regex in the interest of time [22:34] benburkert has joined the channel [22:36] digitalspaghetti: _numbers: https://gist.github.com/e5d6671a4d06e56810ab [22:36] digitalspaghetti: thats how you would do it with YUI [22:37] digitalspaghetti: you can explicitly put > between nodes in the (oh that should be .one instead of .all) [22:37] _numbers: o rly? im from jQuery. what is this YUI.all [22:38] digitalspaghetti: _numbers: same as jQuery('.foo') (gets all .foo) [22:38] digitalspaghetti: so then you can do this [22:38] _numbers: so that is a CSS selector you are using [22:39] digitalspaghetti: https://gist.github.com/e5d6671a4d06e56810ab [22:39] digitalspaghetti: no, it's a dom selector [22:39] digitalspaghetti: xml is just a DOM document [22:39] _numbers: why is the first line necessary in the gist [22:40] digitalspaghetti: I'd prefer jQuery too, but this YUI library seems pretty feature complete [22:40] digitalspaghetti: http://bit.ly/aq3L87 [22:40] digitalspaghetti: watch this video [22:40] digitalspaghetti: it explains it :) [22:41] digitalspaghetti: basically remotePage is a Y instance, which is similar to a jQuery instance [22:41] _numbers: will it also explain how i include yui as a module [22:41] _numbers: does this involve jsdom or is it using its own stuff or node's http module [22:41] digitalspaghetti: npm install yui3 [22:41] digitalspaghetti: it'll install the requirements [22:42] allengeorge has joined the channel [22:42] digitalspaghetti: http://github.com/davglass/yui-express is the example i built my site from [22:44] marek_z has joined the channel [22:45] jbenesch has joined the channel [22:46] digitalspaghetti: _numbers: if you look at my twitter and blog examples, i am just reading RSS feeds and parsing them to HTML output [22:48] tobeytailor has left the channel [22:51] antares_ has joined the channel [22:52] zomgbie has joined the channel [22:53] _numbers: info: (yui): Modules missing: node, 1 [22:55] _numbers: seems to be hanging on the HTTP GET [22:55] _numbers: thats the only err i can find [22:56] _numbers: nope it goes on to download that .js. seems like it downloads all the yui .js on every call [22:59] mephux has left the channel [23:00] CIA-77: node: 03Paul Querna 07master * r2d348bb 10/ wscript : Fatal error out if OpenSSL was not explicitly disabled, we just couldn't autodetect it. - http://bit.ly/adnMfV [23:04] AAA_awright: Can Nodejs accept HTTPS connections? [23:05] batasrki has joined the channel [23:06] SteveDekorte has joined the channel [23:07] isaacs: AAA_awright: yes. but there are bugs in ssl atm [23:07] AAA_awright: Ah cool [23:07] isaacs: AAA_awright: server.setSecure(credentials) [23:07] pquerna: setSecure can also take a context... just not documented well [23:07] mikew3c_ has joined the channel [23:08] c4milo has joined the channel [23:08] isaacs: pquerna: s/well/in the docs/ [23:09] matt_c has joined the channel [23:09] brodyberg has joined the channel [23:09] isaacs: just submitted my reddest patch ever to nodejs [23:09] bpadalino: commie [23:09] ryah: http://visual6502.org/docs/6502_in_action_14_web.pdf [23:10] ryah: this is the most awesome thing i have ever seen in my life [23:10] ryah: i wonder if intel has stuff like that already? [23:10] ryah: (probably) [23:10] lachlanhardy has joined the channel [23:10] bpadalino: when was the last time you programmed up a 6502 ? [23:11] JimBastard has joined the channel [23:11] evilhackerdude: ryah: realtime debugging for chips? [23:12] mjr_: I did plenty of 6502 on my c64 back in the day. [23:12] digitalspaghetti: ok, ot but *this* is mental: http://www.youtube.com/watch?v=fqi0M8X7KXw [23:12] EyePulp has joined the channel [23:12] evilhackerdude: the helmet is the awesomest part of it :D [23:12] digitalspaghetti: it's like electric daft punk [23:12] ryah: wow that's also awesome [23:12] ryah: yeah [23:13] ryah: who are the people who made that. i want to be friends with them. [23:13] JimBastard: thats pretty metal [23:13] JimBastard: might be the most metal thing ive ever seen lol [23:14] zith_: i think reversing chips through filing down the layers of the physical chips, taking pictures, identifying transistors, is more awesome [23:14] zum: wow, they did all that in only 3510 transistors? [23:15] matschaffer has joined the channel [23:15] Tim_Smart has joined the channel [23:15] digitalspaghetti: now the challenge it to port node to run on a 6502 :D [23:16] rtomayko_ has joined the channel [23:17] jakehow has joined the channel [23:17] evilhackerdude: anyone checked out that minecraft game? i'd like to build a node multiplayer server for that [23:17] bpadalino: pretty cool 6502 simulation .. very neat [23:17] blaines has joined the channel [23:17] evilhackerdude: if you havent, check it out. and build your own 6502 using red ore on stone floor [23:17] allengeorge has joined the channel [23:17] ryah: ACTION is imagining a debugger that allowed him to drop down and view the chip [23:17] [[zz]] has joined the channel [23:19] bpadalino: it's probably pretty insane just trying to follow the datapaths [23:19] blaines has joined the channel [23:19] hassox has joined the channel [23:19] bpadalino: i know i have a hard enough time in hardware simulations watching everything flow and keeping track of it all [23:20] mjr_: Is a 6502 emulated in JavaScript on a 3 year old computer faster than an actual 6502? [23:22] allengeorge has joined the channel [23:23] ryah: mjr_: with polygons [23:23] ryah: probably not :) [23:23] Nietecht: evilhackerdude: then make it work with redstone dust [23:23] Nietecht: evilhackerdude: agh, sorry, that's what you meant, read red brick, nvm [23:24] evilhackerdude: Nietecht: i havent tried the red stone/brick/dust stuff yet. and minepedia is down :( [23:25] Nietecht: evilhackerdude: Me neither tbh, still busy dying whenever I play, but the minepedia page on it is pretty long, wouldn't surprise it's actually possible (at least in theory) [23:25] Tim_Smart: mde: Geddy was 14x faster than Rails 3 apparently. [23:26] Tim_Smart: http://twitter.com/txustice/status/24841802774 [23:26] trotter has joined the channel [23:28] muk_mb: is Geddy the framework to use? [23:29] evilhackerdude: what is he benchmarking? hello world? [23:30] Tim_Smart: evilhackerdude: Got no idea. [23:30] evilhackerdude: yeah, couldnt find out from the tweet either [23:31] Cainus: hey all... what do people use for mysql client? [23:32] digitalspaghetti: muk_mb: geddy seems to kind of frozen just now [23:32] muk_mb: oh ok [23:33] digitalspaghetti: Cainus: there is node-mysql for lower level stuff, http://www.sequelizejs.com/ for more ORM level [23:33] Cainus: thanks [23:34] Yuffster has joined the channel [23:34] muk_mb: what's not-frozen to use? [23:35] digitalspaghetti: expressjs (+connect) is quite good, a kind of frameworks framework (i.e. a bit more low level than say django or rails) [23:35] digitalspaghetti: Meryl seems to be the new-kid-on-the-block, never used it myself [23:35] muk_mb: oh cool. I played with express [23:35] digitalspaghetti: personally i use express [23:36] ivong has joined the channel [23:40] evilhackerdude: Nietecht: http://bit.ly/dahX3A it's got all kinds of gates. awesome :) [23:41] digitalspaghetti: i'd love to see the dwarf fortress computer recreated in minecraft [23:41] Nietecht: evilhackerdude: indeed, only tricky part is a restriction on the length a signal will travel. There's a repeater gate to take care of that... I guess space might be an issue too :) [23:41] jesusabdullah: I wish I had the time and computer to play minecraft [23:41] jesusabdullah: netbook chokes on it :( [23:41] jacobolus has joined the channel [23:42] jesusabdullah: Nietecht: minecraft maps are infinitely sized, though [23:46] JimBastard: jesusabdullah: i tried downloading minecraft [23:46] JimBastard: i must be doing it wrong [23:46] JimBastard: i dug a hole and it got really dark [23:46] JimBastard: then i escaped [23:46] JimBastard: then i dug another hole and the game froze [23:46] JimBastard: also, i drowned [23:47] evilhackerdude: minecraft works in misterious ways [23:48] Nietecht: Anyone using mysql-native? [23:48] ryah: isaacs: okay. let's remove require.async [23:48] ryah: :) [23:48] ryah: patch looks good [23:49] isaacs: sweet :) [23:49] jacobolus has joined the channel [23:49] Tim_Smart: Watch out for crockford! [23:49] Tim_Smart: He will hunt you down. [23:50] Tim_Smart: :p [23:50] kriszyp_ has joined the channel [23:50] evilhackerdude: i think you're both coming to jsconf, so that is a real possibility [23:50] ryah: crockford has the privilege to not make pragmatic decisions [23:51] ryah: isaacs: you're breaking one test - but i fixed it [23:51] Tim_Smart: We should send him a node with only sync methods and watch him get furious. [23:52] voodootikigod__ has joined the channel [23:52] isaacs: ryah: oh? i thought i removed the test that it broke. [23:52] ryah: test/message/undefined_reference_in_new_context [23:52] isaacs: ryah: oh, sure. [23:52] isaacs: that [23:53] CIA-77: node: 03isaacs 07master * rbb08f0c 10/ (3 files in 3 dirs): [23:53] CIA-77: node: Remove require.async [23:53] CIA-77: node: This patch removes require.async from nodejs. [23:53] CIA-77: node: 1. It complicated the code unnecessarily. [23:53] CIA-77: node: 2. Everyone uses sync require anyway. [23:53] CIA-77: node: 3. It's got a lot of weird edge cases when mixed with sync require. [23:53] CIA-77: node: 4. It is many months behind the commonjs spec anyhow. - http://bit.ly/c7iJnM [23:53] isaacs: ryah: been thinking about the "throw on sync after t1" idea [23:53] isaacs: s/throw/warn/ whatever [23:53] _mythz has joined the channel [23:53] isaacs: i think if we do that, then crockford will be ok [23:53] ryah: 3 files changed, 28 insertions(+), 188 deletions(-) [23:54] ryah: ACTION gives isaac a star [23:54] isaacs: ACTION <3 red diffs [23:54] ryah: what was the other thing you wanted to do to the modules? [23:55] ryah: oh get rid of the coffeescript hook? [23:55] Tim_Smart: requireExtension? [23:55] ryah: Tim_Smart: yeah - you down with that? [23:55] Tim_Smart: Not sure, I use it a lot though. [23:55] ryah: you all can write a wrapper [23:55] isaacs: ryah: yeah, but if we're gonna do that, we need to make it easier to write that wrapper, imo [23:55] _mythz has left the channel [23:55] muk_mb: when I update node, should I go from master or from tag v0.2.0? [23:56] isaacs: ryah: that is, easier to reuse bits of the require("module") structure [23:56] mikew3c: ACTION wonders what the context is of the discussion about Crockford [23:56] muk_mb: http://pastie.org/1169069 <— this is what I get after compiling updated Node from git [23:56] mikew3c: Crockford asked for some change to be made? [23:56] ryah: we could make a hook to start a script without the src/node.js [23:56] isaacs: mikew3c: crockford's last talk, he mentioned how node is great, except for this sync require thing [23:56] ryah: and they can replace process.compile (or whatever) [23:57] isaacs: i guess that would be a low-level way to do it. [23:57] isaacs: but not as pretty. [23:57] ryah: we just name that function in src/node.js [23:57] ryah: the big annon one [23:57] muk_mb: oh ok, that's my redis_client breaking [23:57] ryah: then call it right after [23:58] mikew3c: isaacs: I see, thanks [23:58] isaacs: oh, i see the test breakage, cuz i renamed some functions and it asserts the stack trace string [23:58] isaacs: derp [23:58] isaacs: i figured that test was just broken or something