[00:00] eb4890 has joined the channel [00:01] tsesame: Hey is there a site to allow you to search the logs debuggable has collected? [00:01] ChrisPartridge: tsesame: http://nodejs.debuggable.com/ [00:02] tsesame: right but if I want to search, I have to download everything [00:02] ChrisPartridge: tsesame: and? avg file size is ~200kb [00:02] duncanbeevers: Whoo, big payload. [00:02] gm___ has joined the channel [00:02] Marak: tsesame: http://www.google.com/search?hl=en&biw=1728&bih=832&q=site%3Ahttp%3A%2F%2Fnodejs.debuggable.com%2F+tsesame&aq=f&aqi=&aql=&oq= [00:02] ryah: If anyone wants to call in let me know - we don't have the line open right now, but we can [00:02] duncanbeevers: I think you can do it with a little wget -R + xargs + grep [00:03] tsesame: not so much abou teh size than the convenience I guess, just thought there was a search form somewhere [00:03] tsesame: does Google crawl that? [00:03] sorens3n has joined the channel [00:04] ChrisPartridge: tsesame: make something with node that searches it :-) [00:04] tsesame: I just might :P [00:05] chapel: if only they had used a standard irc logging format [00:05] tsesame: ryah: Due to max number of people? [00:06] ChrisPartridge: chapel: looks easy enough to parse, no? [00:07] chapel: well, thats not the problem, its just its a non standard irc log format, so any existing tools for parsing logs are useless [00:07] chapel: then again, its not hard to parse [00:07] Marak: chapel: ChrisPartridge https://github.com/Marak/node-stats/blob/master/lib/irc/parser.js [00:07] Marak: we got code for doing all of that [00:07] Marak: pull it from debuggable [00:07] Marak: parsing [00:07] Marak: aggregating [00:08] Marak: its all in that repo [00:08] Marak: tsesame: too https://github.com/Marak/node-stats/blob/master/lib/irc/parser.js [00:08] Marak: lots of irc parsing code in there [00:08] Marak: :-) [00:08] captain_morgan has joined the channel [00:08] Marak: https://github.com/Marak/node-stats/blob/master/bin/irclogs [00:08] Marak: there we go, thats the bin [00:09] ryah: tsesame: no, the opposite. no one called in last week [00:09] boogyman has joined the channel [00:09] chapel: why would someone call in? just out of curiosity? [00:10] dgathright_ has joined the channel [00:10] jmoyers: because they dont live near joyents office? [00:10] tsesame: Hrm, the one week I didn't call to listen in [00:12] olalonde: Is it Ryan or Ryah? [00:12] liar has joined the channel [00:12] nexxy has joined the channel [00:12] nexxy has joined the channel [00:13] Bonuspunkt has joined the channel [00:13] arpegius has joined the channel [00:14] Tobsn: hey chjj, how would you fetch those external urls, parse them and apply a function to each feed to apply a specific standardized format (lets say i have two xml feeds both different structure but both same content) [00:14] ryah: ^-- okay people can call in nwo [00:14] ryah: olalonde: ryan [00:15] Marak: ACTION resists the urge to do prank call [00:15] Marak: :-) [00:15] maushu: "hello, i want a pizza with tons of anchovies and pepperoni." [00:15] olalonde: async delivery kthx [00:15] [[zzz]] has joined the channel [00:16] hermanjunge: Where are the other joyent offices? [00:16] SvenDowideit has joined the channel [00:17] dgathright_ has joined the channel [00:17] tsesame: http://www.joyent.com/about/contact/worldwide-locations/ [00:17] ryah: hermanjunge: vancouver [00:18] mattrobenolt has left the channel [00:18] hermanjunge: I see. No plans to expand to LatinAmerica? [00:19] ryah: not that i know of :) [00:19] hermanjunge: :) [00:19] aaronblohowiak: hermanjunge: where are you located? [00:19] hermanjunge: scl [00:19] systemfault: Where's joylent Montreal? :'( [00:20] systemfault: Joyent even :/ [00:21] [[zz]] has joined the channel [00:21] hermanjunge: I was a c#.net developer. One day I found about these fast nodejs apps and the semantic web, and became crazy :-) [00:21] tjgillies: if i have an event listener like .on('data, someCallback) is there a way to store the data without mutable a single variable? e.g. body += data [00:22] liar has joined the channel [00:22] tjgillies: mutating* [00:22] amid_hasan has joined the channel [00:22] aaronblohowiak: tjgillies: you could do some kind of cons sell list [00:22] aaronblohowiak: but why? [00:22] ryah: hermanjunge: win user? [00:23] tjgillies: aaronblohowiak: im trying to make all my vars immutable as an experiment [00:23] amid_hasan: ACTION says hello terrorists [00:23] hermanjunge: my machine runs win7, but the nodejs stuff I do in an Ubuntu Server [00:23] Bonuspunkt has joined the channel [00:23] hermanjunge: haven't tried the nodejs version in windows [00:24] tjgillies: aaronblohowiak: google isn't returning much for 'cons sell list' [00:25] aaronblohowiak: tjgillies: whoops. cons cell [00:25] aaronblohowiak: =) [00:25] aaronblohowiak: http://en.wikipedia.org/wiki/Cons [00:25] tjgillies: aaronblohowiak: thnx [00:25] aaronblohowiak: tjgillies: basically, you have a head item and a tail [00:25] aaronblohowiak: so if you want to add a new item, you just create a new cell with the new item as the "head" and the old list as the tail [00:26] amid_hasan has left the channel [00:26] aaronblohowiak: this way you can make an ever-growing list without every mutating any item [00:26] tjgillies: aaronblohowiak: awesome, thanks [00:26] aaronblohowiak: tjgillies: but the question is.. why do ou want immutability? [00:26] ExsysTech has joined the channel [00:26] tjgillies: aaronblohowiak: just too see what it looks/feels like doing it in JS [00:27] tjgillies: to* [00:32] hermanjunge has left the channel [00:33] Swimming_bird has joined the channel [00:34] bartmax has joined the channel [00:34] bartmax has joined the channel [00:36] jerrysv: marak: did you look up norton? [00:36] Marak: jerrysv: yeah, we are having a talk about him in the #Nodejitsu room, i need two dogs [00:36] jerrysv: marak: awesome. i drove by the cemetery he is buried in at one point when i was down there, but need to visit his grave [00:37] jerrysv: ACTION is a big discordian [00:37] ChrisPartridge: what the? [00:37] Remoun has joined the channel [00:38] philtor has joined the channel [00:39] jTNT: ACTION smiles [00:40] aaronblohowiak: RIP the protector of mexico [00:42] Tobsn: anyone know why client request would give me a "broken link"? [00:43] tonymilne has joined the channel [00:44] captain_morgan has joined the channel [00:45] AddZero has joined the channel [00:45] dcampano has joined the channel [00:48] pyrotechnick has left the channel [00:49] antoinevg has joined the channel [00:49] Mrfloyd has joined the channel [00:50] a|i has joined the channel [00:50] a|i has joined the channel [00:52] a|i: how do node people store a js object in redis? as a string with JSON.strigify, or as a real object? [00:52] CIA-90: node: 03Ryan Dahl 07master * r73ea01c 10/ (24 files in 4 dirs): [00:52] CIA-90: node: Revert "Upgrade libuv to 9c2dd6bea970b2376696aba070bdfc2873843cfb" [00:52] CIA-90: node: This reverts commit 4b60e87afec10e7e051e37cd5d00d0fbe3568a7d. [00:52] sorens3n has joined the channel [00:53] orospakr: Marak, holy crap, did you actually lose all those bitcoins? how many real dollars did that "project" actually spend? [00:54] benmonty has joined the channel [00:54] jerrysv: hahahahaha. this is going to be asked for weeks to come. [00:54] orospakr: that is, did *you* spend on that project. [00:54] orospakr: jerrysv, heh, indeed. [00:55] orospakr: what was the idea, anyway? [00:55] jerrysv: home time for me -- may log in later if i get my coding mojo going [00:55] mikey_p: wouldn't that have been around $90k to $100k USD worth of BTC? [00:56] aaronblohowiak: SubStack: my latest tweet is intended as a compliment =) [00:57] jTNT: huh? what project ...? [00:57] mcluskydodallas has joined the channel [00:57] SubStack: aaronblohowiak: cons? [00:57] aaronblohowiak: SubStack: http://en.wikipedia.org/wiki/Cons [00:57] SubStack: ah! [00:57] SubStack: a lispy thing [00:58] SubStack: never learned lisp actually [00:58] aaronblohowiak: that blows my mind [00:58] lupomontero has joined the channel [00:58] aaronblohowiak: your js seems to show that you "get" fp. is js your first language with first-class functions and closures ? [00:58] SubStack: my first language is javascript [00:59] aaronblohowiak: ACTION mind => blown [00:59] SubStack: also I dropped a lot of haskell in university [00:59] SubStack: that shit will warp your brain [00:59] aaronblohowiak: oh! [00:59] aaronblohowiak: well that explains a lot more =) [00:59] tjholowaychuk: SubStack haha yeah haskell [00:59] tjholowaychuk: is pretty... [00:59] SubStack: scroll down to the bottom of http://github.com/substack [00:59] tjholowaychuk: special [00:59] dguttman_ has joined the channel [01:00] a|i: haskel is bootifool. [01:00] mjr_: a|i: you need to use JSON.stringify in most cases, unless your objects are simple enough to directly map to a redis hash. [01:00] tjholowaychuk: erlang is pretty simple, would love it way more if BEAM was not so huge [01:00] mjr_: Is beam really that much larger than node+v8? [01:00] tjholowaychuk: oh yeah [01:00] tjholowaychuk: big time [01:00] aaronblohowiak: it also does a lot more. [01:00] tjholowaychuk: takes forever to compile [01:01] mjr_: Doesn't seem to use much more memory. [01:01] mjr_: But dear lord, what a lot of source code. [01:01] beriberikix__ has joined the channel [01:01] a|i: mjr_: even if the object is not simple enough, what's the overhead of json stringify/parse? [01:01] a|i: is it really really fast? [01:01] jTNT: ACTION likes lisp [01:01] mjr_: It's pretty good. [01:02] Tobsn: hmm if console.log shows me something as [Object] how can i find out whats in it?! [01:03] mjr_: V8 does a pretty good job at making JSON fast, but you probably won't notice it unless your objects are larger than a few KB as strings. [01:03] mjr_: Unless you do. [01:03] mjr_: I JSON in all directions, sizes, and shapes. [01:03] zivester has joined the channel [01:03] aaronblohowiak: mjr_: is there a faster serializer? [01:03] Tobsn: nevermind, got it :D [01:03] jmoyers: re: my question earlier about simulating socket.io clients in node for testing, it looks like guille is working on just that for 0.7 in case anyone's interested [01:04] jmoyers: https://github.com/LearnBoost/Socket.IO-node-client [01:04] mjr_: aaronblohowiak: Yeah, there is msgpack, or just doing your own simple format. [01:04] neoesque has joined the channel [01:04] a|i: mjr_: objects are very small, but there will be many many read/writes to redis. now json serializer/deserializer will be on top of it. [01:05] kersny: Tobsn: console.dir [01:05] Tobsn: ah [01:05] pyrony has joined the channel [01:06] mjr_: a|i: Really only one way to find out if it's fast enough. [01:06] dhasenan: When I install libraries with npm, do I need to do anything special to get them into NODE_PATH, or will they get there automatically? [01:06] a|i: is msgpack really 10x faster than json, or their benchmark has a catch? (http://msgpack.org/) [01:07] mjr_: The only time I've seen JSON be the bottleneck in node is when some objects accidentally grew to over 1MB in size. Then it gets expensive. [01:07] fakewaffle has joined the channel [01:07] pedrobelo has joined the channel [01:07] mjr_: You need to look at the node msgpack implementation. I seem to recall that it was like 5X faster than JSON for some things. [01:07] mscdex: yes! microsoft is going to release the source to vb6! [01:08] mjr_: But man, I'm glad I just use JSON everywhere. [01:08] a|i: mjr_: the front page indicates 10x: http://msgpack.org/ [01:08] mjr_: Worth the extra CPU for easier debugging and more compatbility. [01:08] mscdex: someone had a benchmark showing json was faster than msgpack [01:08] mscdex: for node 0.4.7 [01:08] mjr_: https://github.com/pgriess/node-msgpack [01:08] aaronblohowiak: https://github.com/aikar/wormhole/issues/3 [01:09] a|i: mscdex: msgpack is binary, binary doesn't need parsing? why should it be slower? [01:09] sechrist: is msgpack it's own thing or is it nice c-structs for node? [01:09] aaronblohowiak: that issue claims that node-msgpack is no longer faster than json as of a v8 ver bump [01:09] sechrist: because I want json-declared c-structs for network i/o [01:09] aaronblohowiak: sechrist: what you want are protocol buffers, than [01:09] sechrist: nope, those are it's own thing [01:09] mjr_: msgpack claims to be faster than pb as well. [01:09] mscdex: a|i: don't ask me, the results are on the mailing list somewhere though [01:09] sechrist: I mean for implementing random binary protocols in node [01:10] sechrist: for existing architectures [01:10] aaronblohowiak: sechrist: oh msgpack is its own thing, then. [01:10] sechrist: granted it's not hard in C, but a json syntax for rapid prototyping would just be baller [01:10] mjr_: Check the readme on that github repo for node-msgpack. For that particular object, which is very small, it is slightly faster in one direction, and LOTS faster in the other. [01:10] nexxy: mscdex, why are you excited for vb6? [01:10] sechrist: with the byte alignment being one of the properties, and endianness [01:11] mscdex: nexxy: i was kidding, but they are releasing the source though [01:11] nexxy: ya I saw it on hn [01:11] yokoaway has joined the channel [01:11] nexxy: vb6 is disgusting though [01:11] aaronblohowiak: sechrist: i think you want https://github.com/pgriess/node-jspack or https://github.com/substack/node-binary [01:11] mscdex: meh [01:11] captain_morgan has joined the channel [01:11] mscdex: the thing i hated when programming in vb6 was the headaches of interfacing with external libs [01:11] mscdex: like c/c++ dlls and such [01:11] tsesame: is MS abandoning vb like they are vml? [01:12] avalanche123 has joined the channel [01:12] nexxy: but oh man [01:12] nexxy: vbcrlf [01:12] nexxy: was an idea before its time [01:12] DTrejo: indexzero:you there? [01:12] indexzero: DTrejo: wassup [01:13] DTrejo: indexzero: that is easily the most annoying example ever to set up hehe [01:13] mscdex: a|i: here's one of the benchmarks: https://github.com/aikar/wormhole/issues/3 [01:13] aaronblohowiak: mjr_: yea, but that benchmark is old. on the issues i sent you, it looks like the msgpack benchmark is out of date [01:13] zivester: when is the oreilly nodejs book going to be published ? [01:13] DTrejo: indexzero: I have it working with a tcp server thanks to ry, but trying to get it to work with a tcp server is not going grreat [01:13] DTrejo: *http server not going great [01:14] aaronblohowiak: mjr_: oh wait, i re-read it. meh looks like unpacking is faster [01:14] abraxas has joined the channel [01:14] dhasenan: Is there a way to get node to look for a modules directory with a given name rather than 'node_modules'? [01:15] a|i: mscdex: strange, node-msgpack benchmak is also based on v8. [01:15] mjr_: aaronblohowiak: unless you are sure that JSON speed is a big issue, using other serializer options seems too risky. [01:15] puffpio has joined the channel [01:15] a|i: thw wormhole author didn't really investigate it, he just swtiched to json. [01:16] newy_ has joined the channel [01:18] baoist has joined the channel [01:19] zentoooo has joined the channel [01:20] iFire has joined the channel [01:21] devdazed has joined the channel [01:23] eyesUnclouded has joined the channel [01:25] bad_at_math has joined the channel [01:27] bronson has joined the channel [01:27] mikeal has joined the channel [01:29] devrim has joined the channel [01:30] UHMA has joined the channel [01:31] xandrews has joined the channel [01:31] markstory has joined the channel [01:31] tsesame: fs.readFile() loads the entire file into memory? [01:32] tsesame: Probably not a good option for huge files then [01:32] maushu: Yes, it does. [01:32] bartt has joined the channel [01:33] olalonde has joined the channel [01:35] Coin has joined the channel [01:37] UHMA: anyone here using Joyent? I'm having trouble installing hiredis and hashlib with npm [01:37] UHMA: tons of errors like.. Build failed: -> task failed (err #1): {task: cc md4c.c -> md4c_1.o} [01:38] mnutt has joined the channel [01:39] ansy has joined the channel [01:40] thalll has joined the channel [01:40] mscdex: tsesame: use fs.createReadStream() [01:40] SubStack: UHMA: looks like you're missing some c sources [01:40] UHMA: http://pastebin.com/SGLVKSBD [01:41] UHMA: gcc version 3.4.3 [01:41] mscdex: whoa [01:41] UHMA: SubStack: How can I update ? [01:42] mscdex: might need to upgrade gcc there :p [01:42] ditesh|cassini has joined the channel [01:42] kmiyashiro has joined the channel [01:42] UHMA: i installed this with pkgin... gcc44-4.4.4nb1 = GNU Compiler Collection 4.4 [01:42] UHMA: not sure how to use it though. my gcc -v still gives 3.4 [01:43] UHMA: i just fired up this smart machine today so things should be up to date [01:44] dnuke has joined the channel [01:44] materialdesigner has joined the channel [01:44] chrislorenz has joined the channel [01:45] tsesame: mscdex: How would that work with a file, do I listen for 'data' like with tcp/ip? [01:46] ChrisPartridge: tsesame: yep, it's just a Stream [01:47] CIA-90: node: 03David Trejo 07v0.4 * r8a0ac5b 10/ (doc/api/http.markdown test/simple/test-http-upgrade-agent.js): Add test for agent upgrade and example in docs - http://bit.ly/kXLE9F [01:47] DTrejo: woo [01:48] ChrisPartridge: hot streak [01:48] fljitovak: Is building a multiplayer tetris web app a feasible project for node.js? [01:49] Nexxy: yes [01:49] UHMA: fljitovak: for sure [01:49] mjr_: Being sued for making a popular tetris game is also possible with node.js [01:49] Nexxy: http://blockbattle.net/ [01:49] fljitovak: What would you guys suggest doing for the graphics portion of it? Just a js library? [01:49] Nexxy: they don't look sued [01:49] Nexxy: tetrinet was never sued afaik [01:50] fljitovak: I wasn't sure if node has some kind of graphics modules [01:50] ChrisPartridge: fljitovak: theres a few cool game frameworks out there already [01:50] Nexxy: just use css sprites! [01:50] olalonde: fljitovak: canvas will probably be enough [01:50] fljitovak: But I would still need to use express and what not, right? [01:51] tjholowaychuk: fljitovak not really no [01:51] tjholowaychuk: not for a game [01:51] olalonde: fljitovak: you probably won't do any graphics in node.js [01:51] mnutt: does anybody know how I can use arrays in prepared statements like so: pg.query("SELECT * FROM posts WHERE id IN ($1,$2, $3)", [1,2,3], ...) without having to actually write out $1, $2, $3, etc? [01:51] Charuru has joined the channel [01:51] mnutt: (er, this is in brianc's postgres module) [01:51] tjholowaychuk: fljitovak you might use express for the game's site / page or whatever but it wont have much to do with your game [01:52] fljitovak: tjholowaych: Gotchya. [01:52] tjholowaychuk: other than some json requests n whatnot most of a game woudl be socket.io though [01:52] tjholowaychuk: and canvas [01:54] cloudhea1_ has joined the channel [01:54] hdon has joined the channel [01:54] cloudhea1 has joined the channel [01:56] skiz has joined the channel [01:57] mnutt: reading through node-postgres, unless there's something special going on inside pg itself it looks like the answer is no, you have to roll your own $1,$2,$3,$4,... [01:58] mscdex: tsesame: yes, it returns a ReadableStream [01:59] ChrisPartridge: mnutt: Just use something like sprintf [02:00] mnutt: ChrisPartridge: with prepared statements, or without? [02:00] muddy_waters has joined the channel [02:02] ChrisPartridge: mnutt: pg.query(sprintf(query, [1,2,3])) ? [02:02] ChrisPartridge: https://github.com/maritz/node-sprintf [02:02] Yuffster has joined the channel [02:02] mnutt: ChrisPartridge: thanks, I'll check it out [02:07] carlodell has joined the channel [02:07] beseku has joined the channel [02:07] carlodell: Anyone here familiar with rowJS? [02:08] febits has joined the channel [02:08] carlodell: Sorry, I meant nowJS [02:09] carlodell: I can't get it installed, I'm new with nodeJS [02:09] aaronblohowiak has joined the channel [02:11] ChrisPartridge: carlodell: getting an erro? [02:11] ChrisPartridge: s/erro/error [02:11] carlodell: Yes, when I run require('now'), I get 'cannot find module' [02:13] ChrisPartridge: carlodell: using npm? [02:13] carlodell: yes [02:15] kmiyashiro has joined the channel [02:15] ChrisPartridge: carlodell: try npm link nowjs in your applications dir [02:15] ChrisPartridge: and then try run it [02:15] kriszyp has joined the channel [02:15] Xano has joined the channel [02:15] Marak_ has joined the channel [02:16] carlodell: hmm, not sure what you mean [02:16] yhahn has joined the channel [02:17] ChrisPartridge: carlodell: did you install nowjs with npm? if so what command did you run? [02:18] carlodell: npm install now [02:20] ChrisPartridge: carlodell: can you see a "node_modules" folder in your app dir? what version of npm? [02:20] AaronMT has joined the channel [02:20] amerine has joined the channel [02:21] zeedre has joined the channel [02:22] carlodell: Not sure what version, I just installed it though [02:22] carlodell: I don't see that folder in my app directory, but I do see it other places [02:24] darshanshankar has joined the channel [02:24] Marak has joined the channel [02:25] carlodell: Should I move the mode folder to my app dir? [02:25] carlodell: *node [02:26] carlodell: I also have an 'npm' folder in ~/ [02:26] zeedre: carlodell, we're at the same spot. thats funny. [02:26] zeedre: Where do you guys recommend to install node on a server? [02:27] Marak: bad internets [02:27] darshanshankar: where as in directory location or what server to install on? [02:27] carlodell: I'm just trying to run it locally for now [02:27] mikegerwitz: zeedre: I just install node in the home folder of the user it will ultimately run as [02:28] zeedre: mg :Hmm. I guess thats the easiest. [02:28] mikegerwitz: zeedre: Otherwise, the default installation dir is fine. [02:29] sourcode has joined the channel [02:29] zeedre: yup, I followed the tutorial on https://github.com/joyent/node/wiki/Installation and then realized I was logged in as teh wrong user. [02:29] indutny has joined the channel [02:29] mikegerwitz: zeedre: My reasons were simply so that nothing else on the box would have access to the executable. You may not have that requirement. [02:30] zeedre: I can't imagine its as easy as jst moving the install dir. Can I just delete it? [02:30] zeedre: and start over with the right user? [02:30] willwhite has joined the channel [02:30] mikegerwitz: zeedre: delete it or I think there's a `make uninstall`..last I checked [02:31] carlodell: How would I debug this? [02:31] joe_ingersoll has joined the channel [02:31] carlodell: Where does require() look in? [02:31] olalonde: ./node_modules/ [02:31] mikegerwitz: zeedre: http://nodejs.org/docs/v0.4.7/api/modules.html [02:32] mikegerwitz: carlodell* [02:32] mikegerwitz: sorry [02:32] mikegerwitz: carlodell: You can also do console.log( require.paths ) to see what you have set up [02:32] carlodell: inside my project folder? [02:32] carlodell: oh ok [02:32] mikegerwitz: carlodell: for node_modules, it will traverse downward until it finds it [02:33] zeedre: I don't think there is a make uninstall. I see makefile. [02:34] mikegerwitz: zeedre: there is :) just tried it [02:34] mikegerwitz: zeedre: you just type `make uninstall` in the root src dir [02:34] mikegerwitz: Where the makefile is [02:34] qrux has joined the channel [02:36] yhahn has joined the channel [02:36] zeedre: good link. hmm, sorry for some reason, I thought there'd be a folder or file called uninstall. [02:36] yhahn has left the channel [02:36] zeedre: ls [02:36] nexxy has joined the channel [02:36] nexxy has joined the channel [02:36] mikegerwitz: zeedre: Nope. `make` will look for ./Makefile and, based on the rules in that file, execute the specified target. In this case, uninstall [02:37] fayce has joined the channel [02:37] carlodell: I tried to go to the directory, but it's not there [02:37] carlodell: Should I make it? [02:37] zeedre: yup, I'm a bit of a noob with linux sysadmin. [02:37] zeedre: tks for the info mg. [02:38] mikegerwitz: zeedre: np [02:38] Me1000 has joined the channel [02:38] mikegerwitz: carlodell: What command did you run to install it? I'm not too familiar with npm, but I'll try to work through it [02:39] mikegerwitz: carlodell: (did you install with -g, or just 'npm install foo') [02:39] carlodell: mikegerwitz: just npm install now [02:40] mikegerwitz: carlodell: from what I've heard issacs say in here, it should install to ./node_modules. Check the directory you ran the command in. Does it exist there? [02:41] carlodell: The directory I installed node to? [02:41] mikegerwitz: carlodell: the directory you ran 'npm install' in [02:42] carlodell: no, let me try making it [02:42] mikegerwitz: carlodell: You won't want to make it manually :) it should do it for you. If not, we'll have to figure out why [02:43] mikegerwitz: carlodell: what version of npm are you using? [02:43] pyrony has joined the channel [02:44] carlodell: 1.0 [02:44] mikegerwitz: carlodell: With 1.0.6, I ran `npm install now` and it did put node_modules in my current dir [02:45] mikegerwitz: carlodell: try running it again, in your project's root dir [02:45] carlodell: Ok [02:45] Corren has joined the channel [02:48] carlodell: it works! [02:48] carlodell: thanks guys [02:48] mikegerwitz: carlodell: np [02:48] carlodell: Now off to making my poker game [02:49] jtsnow has joined the channel [02:52] zeedre: mg, I think I want node in /usr/local/bin/node. To get it there, following this make command, http://howtonode.org/how-to-install-nodejs, how would I specify it to target that spot? [02:52] sechrist has joined the channel [02:53] mikegerwitz: zeedre: I'm pretty sure that's the default. But to be explicit: ./configure --prefix=/usr/local/bin [02:53] mikegerwitz: /usr/local* no bin [02:54] Guest9038: hi, guys [02:54] zeedre: no * either right? [02:54] mikegerwitz: zeedre: yep. Just /usr/local [02:54] mikegerwitz: Guest9038: heya [02:55] Guest9038: what will u guys do if u want to use 'Hash' in javascript ?? [02:55] olalonde: you can use an object as an hash [02:55] olalonde: although keys can only be strings [02:56] olalonde: you mean an hash map right? [02:56] skm has joined the channel [02:56] Guest9038: I saw a library (_https://github.com/XianYeeXing/xHash), it provides a set of wrapper APIs, but I don't know whether it's good or not [02:57] Guest9038: javascript Array cannot handle push/pop for key/value pair ( only index-based can work ) [02:57] c4milo1 has joined the channel [02:58] bene has joined the channel [02:58] temp01 has joined the channel [02:58] Guest9038: there is another one, _https://github.com/ahoward/hashish [02:58] olalonde: Guest9038: not sure I'd use this, it extends a base class' prototype (Object) [02:58] Guest9038: but seems more complex ... [02:59] mikegerwitz: v8: var foo = { bar: 'baz' }; foo.bar2 = 'baz2'; foo [02:59] v8bot: mikegerwitz: {bar:"baz",bar2:"baz2"} [02:59] Guest9038: olalonde, yup. so it'not good ??? [02:59] Guest9038: i mean , to augment object is not good ? [03:00] jscheel has joined the channel [03:00] jscheel has joined the channel [03:01] Guest9038: so maybe hashish is a better choice ? i know javascript object can perform like a hash, but it lacks some methods to manupulate data [03:01] olalonde: Guest9038: from http://bonsaiden.github.com/JavaScript-Garden/#object.prototype: The only good reason for extending a built-in prototype is to backport the features of newer JavaScript engines; for example, Array.forEach. [03:02] Guest9038: thx !!!! let me check it ~ [03:02] olalonde: Guest9038: http://bonsaiden.github.com/JavaScript-Garden/#object.forinloop [03:04] jerrysv has joined the channel [03:04] olalonde: Guest9038: don't use an array for hashed, use an object. you can delete elements like this: delete obj.key; [03:04] qrux: Howdy—I'm new here. Is anyone working with Express who could answer a basic question? [03:04] Guest9038: ok' [03:05] nexxy: qrux, you'll never know until you ask! [03:06] qrux: LOL—I'm working through the examples on the Guide, and am trying to configure an app (obtained though: var app require('express').createServer() )... [03:06] jesusabdullah: Guest9038: Hashish is handy. It just wraps your object and gives you some handy dandy extras. [03:06] jesusabdullah: Guest9038: and you can get your resulting object back out the other side, so that's not really a concern [03:06] qrux: Later on, the guide talks about configuring the app (with app.configure(…) ), but references a variable 'express'... [03:06] olalonde: Guest9038: check this out: http://documentcloud.github.com/underscore/ [03:06] qrux: …Which doesn't seem to be in scope. [03:07] Guest9038: GOT IT [03:08] meso has joined the channel [03:08] xtianw: qrux: You usually require modules at the top of the file like var express = require('express'); [03:08] xtianw: That's the convention it's assuming [03:08] qrux: Right. Through 'var app = require('express').createServer();' [03:09] qrux: There's obviously something else required... [03:09] eyesUnclouded has joined the channel [03:09] xtianw: Right, but instead do var express = require('express'); var app = express.createServer(); [03:09] Corren has joined the channel [03:10] seivan has joined the channel [03:10] Guest9038: olalonde, how about modify xHash ( it's codes are just few lines XD ) to avoid extend object.prototype ? [03:10] olalonde: Guest9038: you could do that too. it's not a big deal either, but I don't see why you need a hash library anyways when you could just use native objects [03:10] hileon has joined the channel [03:11] JackeyChan has joined the channel [03:11] qrux: xtianw: Thanks. Are all node.JS modules built this way, i.e., with the convention of initializing a "module global" as the result of 'require'? [03:11] xtianw: Yep [03:11] yhahn1 has joined the channel [03:12] xtianw: Sometimes you have to initialize a constructor with 'new' or something [03:12] Guest9038: olalonde, mm, i want operate objects with key/value fashion and with some stack / pop features [03:12] Emmanuel__ has joined the channel [03:12] Guest9038: also, I want to have some handy method to manipulate data in objects [03:13] mikegerwitz: Guest9038: If you want a stack, use an array. If you want to simypl remove values from a hash, use delete. [03:13] Guest9038: but [03:13] Guest9038: array does has push/pop [03:13] mikegerwitz: Guest9038: pushing values onto a hash table doesn't really make sense, since a hash table is nothing like a stack. They're two separate data structures. [03:13] Guest9038: but only works when using number to index data [03:13] deedubs has joined the channel [03:14] Guest9038: yup, i know [03:14] gazumps has joined the channel [03:14] Guest9038: but i want to stack up incoming connections and index them with their ip [03:14] Emmanuel_ has joined the channel [03:15] Guest9038: also i need to schedule them in queue-like manner [03:16] Guest9038: if only use number as index, javascript Array can do that [03:16] mikegerwitz: Guest9038: But if you're treating it like a stack or a queue, you don't need to reference it like a hash. Because you'll always push/pop, shift/unshift() [03:16] Guest9038: yup [03:16] mikegerwitz: Guest9038: So I guess I'm confused [03:16] Guest9038: but i do need remove one of them as a hash by key [03:17] mikegerwitz: Guest9038: Generally one will use two structures for that. One will be the stack/queue, the other will be a map to the index. [03:17] qrux: Guest9038: You want the keys stored in a stack (though you haven't really explained why you need that). And the values can be stored in the hash. Just find something that expresses your set semantics, and store the keys (IP addrs) there. And then access the value (socket?) through the hash once you have the key you want... [03:19] mikegerwitz: Guest9038: If you want to encapsulate that functionalty, that's understandable and that makes more sense. In which case a library may be suitable. But that's no longer just a "hash". It's a wrapper around two separate data structures. [03:19] Guest9038: qrux, almost ( and the connection is actually a wrapper of nodeJS http request object ) [03:19] qrux: Array has the set semantics you want (though you'll want to be careful with stuff like delete—because it deletes the key/value, but leaves a hole) - http://www.w3schools.com/jsref/jsref_obj_array.asp. [03:19] Corren has joined the channel [03:19] carlodell: Ok, I am linking straight to my stylesheet and it's returning the html file I'm on.. [03:19] qrux: The *stack semantics. [03:20] Guest9038: qrux, mikegerwitz, thx ! [03:20] carlodell: I mean js file [03:20] eyesUnclouded has joined the channel [03:21] fakewaffle: i am app.send(--a link to a stylesheet--) and its not being interpreted as a stylesheet [03:22] fakewaffle: i am doing a fs.readFile( -- stylesheet -- ), then sending the data in the callback [03:22] jmar777 has joined the channel [03:22] nexxy: I thought app.send was for file attachments ;o [03:23] jmar777: anyone know if the 'android:back' event has any known issues with the 1.6.x sdk? (specifically, doesn't fire) [03:24] jmar777: ugh, wrong channel :\ [03:26] Viriix has joined the channel [03:26] darkkrai has joined the channel [03:26] darkkrai: hey [03:26] fakewaffle: how would you serve css and js files? [03:26] darkkrai: is there a guide to getting started with node.js? [03:27] darkkrai: I cant find one that looks good [03:27] xtianw: fakewaffle: Are you using connect/express? [03:27] fakewaffle: express [03:28] xtianw: app.use(express.static('path/to/static_files')); [03:28] deedubs has joined the channel [03:28] xtianw: I usually do __dirname + '/public' [03:28] fakewaffle: i tried that for about an hour, i dont think i can get it to work in my situation [03:29] xtianw: How so? [03:29] DTrejo has joined the channel [03:29] fakewaffle: i dont know the directory in advance, before the server is set to listen [03:29] xtianw: Ah [03:30] fakewaffle: should i just regex the file extension and set response.header('Content-Type', '****'); ? [03:30] xtianw: Seems reasonable [03:31] MikeMakesIt has joined the channel [03:32] jTNT: fw: that's app.use('urlpath', express.static(__dirname + 'path')); [03:32] fmeyer has joined the channel [03:33] devdazed has joined the channel [03:33] jTNT: fw: and you can do app.use after listen ... [03:33] jmoyers: ^ [03:33] fakewaffle: would this still work? server.get('/:site/public/*', ......) [03:35] aconbere has joined the channel [03:36] boehm has joined the channel [03:36] jTNT: fw: no, use express.static instead of .get [03:38] xtianw: Interesting. It never occurred to me that you could do app.use after starting to listen. [03:38] jerrysv has joined the channel [03:40] jTNT: fw: I think you should be using vhost for each :site [03:40] seivan has joined the channel [03:41] jTNT: xw: um, I mean to say: first you listen on the server, then you configure a new connection, then server.use(express.vhost ('domain', thatnewconnection) [03:42] ExsysTech has joined the channel [03:42] jTNT: er, sorry, ugly terminology: thatnewconnection is a new express.createServer [03:42] jTNT: ACTION clear [03:44] jTNT: listen on the server, set up a new s=express.createServer, then server.use(express.vhost ('domain.name', s)) [03:45] Me1000 has joined the channel [03:46] dfk has joined the channel [03:47] LukeGalea_ has joined the channel [03:47] LukeGalea_: hey. Any mongoose folks around? [03:49] jTNT: LG: I use it a little ... [03:51] indutny: http://www.helpingmarak.net/ [03:51] LukeGalea_: jTNT: I'm trying to get replicaset connections going [03:51] pyrony has joined the channel [03:52] LukeGalea_: jTNT: have you done that? [03:52] indutny: guys, you all... should definitely help him! http://www.helpingmarak.net/ [03:52] fmeyer has joined the channel [03:52] jTNT: no, sorry; it's not even on my list yet. [03:53] tonymilne: Is there anything better than setTimeout / setInterval if i wanted to repeatedly hit a database, and send data to the client periodically over a socket connection? [03:53] JackeyChan: hi, exports = module.exports = createServer; what's means of this code ?? [03:53] fakewaffle: fuck my switch statement -> https://github.com/bentomas/node-mime [03:54] DTrejo: Marak: dude, you should send me all your 165 remaining bitcoins! [03:54] Marak: DTrejo: since you are a friend, $100 a coin [03:54] eyesUnclouded has joined the channel [03:54] DTrejo: AMAZE DEAL! [03:54] Marak: also, i talk to friend [03:54] Marak: i think its illegal for me to sell bitcoins for cash [03:54] Marak: secret service apparently might not like that [03:55] Corren has joined the channel [03:55] boehm has joined the channel [03:55] xtianw: fakewaffle: You can't use vhost? [03:56] fakewaffle: i dunno [03:58] ryah has joined the channel [03:59] jTNT: fw: you should. [04:00] JackeyChan: exports = module.exports = createServer; what's means of this code ?? [04:00] olalonde: how hard would it be to harvest bitcoins using Javascript + website visitors' CPU [04:00] DTrejo has joined the channel [04:01] olalonde: to mine bitcoins* [04:01] olalonde: an high traffic website could possibly make money that way :) [04:01] xtianw: JackeyChan: Probably exports a server instance so it can be required as a module? [04:02] xtianw: If only there was a way to do GPU processing using WebWorkers [04:02] JackeyChan: I usually export instance like module.exports.createServer = function () {//}; [04:03] kriskowal has joined the channel [04:03] jTNT: JC: I think it's redundant. you can either do exports= or module.exports= to set properties on the object that's returned when you require a module. [04:03] olalonde: I wonder if some botnets are mining bitcoins right now [04:03] deedubs: stagas: https://github.com/rocketlabsdev/expanda/blob/master/spec/expanda_spec.coffee [04:04] darkkrai: is there a guide to getting started with node.js? [04:05] ChrisPartridge: darkkrai: http://nodeguide.com/ [04:05] darkkrai: thanks [04:05] tbranyen: is there a guide to your... butt? [04:05] darkkrai: dont think so [04:05] xtianw: My butt is poorly documented... [04:05] boehm has joined the channel [04:07] tbranyen: mine has lots of bugs [04:07] seivan has joined the channel [04:07] olalonde: so is Node [04:07] tbranyen: wrong [04:08] DTrejo: olalonde: you should help with docs [04:08] CiRlE has joined the channel [04:08] DTrejo: olalonde: we appreciate contributors :) [04:09] olalonde: DTrejo: I do, but not to the official docs :) http://syskall.com/how-to-write-your-own-native-nodejs-extension [04:09] vikstrous: i need a little help with coffeescript.. how do i force a variable to be limited in scope to a for loop rather than the outside scope? http://pastebay.com/123854 i need blocks to be a new set of blocks for every iteration of the loop [04:09] olalonde: I wasn't complaining :) [04:10] fakewaffle: is there a good guide on getting the WebKit Inspector working? [04:10] deedubs: vikstrous: #coffeescript [04:10] vikstrous: deedubs: but it's so dead usually :( [04:10] deedubs: I didn't see you ask your question [04:10] vikstrous: okay okay i'll ask there [04:11] DTrejo: olalonde: nice :) [04:12] DTrejo: I stopped liking HN [04:12] DTrejo: so sad [04:12] xtianw: It gets more reddit by the day [04:13] olalonde: my love is fading away here as well. just don't know of any alternative right now [04:13] xtianw: i.e. there is a list of 32 things on the front page [04:14] olalonde: I miss the points too -_- [04:14] DTrejo: olalonde: twitter is my new HN: I only follow node and js people, and it's great [04:14] olalonde: I think it was really a bad move to remove them [04:14] DTrejo: ARG [04:14] DTrejo: 32 [04:15] DTrejo: it sucks that the guidelines aren't even on the submission page [04:15] DTrejo: just sad [04:15] olalonde: DTrejo: that's an idea. I'd have to unfollow a couple of people though! [04:15] DTrejo: olalonde: yeah, just cut down to node and JS people [04:15] DTrejo: olalonde: and start some meetups / attend some in your area [04:15] DTrejo: olalonde: where are you from? [04:16] olalonde: DTrejo: I'm attending Nodemtl next week. Montreal ;) [04:16] DTrejo: nice [04:16] Me1000 has joined the channel [04:16] olalonde: following 35 people. that's not a bad idea at all. [04:17] DTrejo: olalonde: so sad that montral is not very near vancouver [04:17] DTrejo: that's how many I follow :) [04:17] DTrejo: gotta keep that ratio high heh [04:17] olalonde: Yea I was referring to your Twitter;) [04:18] DTrejo: yeah, unfollow all the noise ppl [04:18] TooTallNate has joined the channel [04:18] DTrejo: if their last 10ish tweets have too little JS, unfollow [04:19] olalonde: DTrejo: not too close, right :) [04:19] DTrejo: you could be hangin with brian leroux and tj and cloudhead (may have the location off for a few of those) [04:20] jerrysv has joined the channel [04:21] pradeepto has joined the channel [04:21] zitchie has joined the channel [04:22] beawesomeinstead has joined the channel [04:22] beawesomeinstead has joined the channel [04:22] wonginator1221 has joined the channel [04:22] mcantelon_ has joined the channel [04:23] olalonde: heard of tikibooth? [04:23] pradeepto: Hi, I am new to node.js. I am trying to install node-jshint on my local machine. After I did, npm install jshint as per the documentation, I noticed that there is a node_modules dir in my cwd. All good. But beyond that, how am I supposed to use this module? Doing what the documentation says doesn't work for me. [04:23] olalonde: in Vancouver [04:23] pradeepto: I followed the the following page - https://github.com/jshint/node-jshint [04:24] mcantelon_: pradeepto: Install with "-g" flag. Like "npm install -g jshint". [04:25] Corren has joined the channel [04:25] boehm has joined the channel [04:25] olalonde: pradeepto: looks like it was packaged for a previous version of npm [04:25] pradeepto: oh [04:25] pradeepto: what does -g do? I don't see any mention of that when I do npm -h install [04:26] olalonde: it install globally instead of only in the current folder [04:26] NuckingFuts has joined the channel [04:26] rpetrello has joined the channel [04:26] pradeepto: ah ok [04:27] pradeepto: yay! [04:27] pradeepto: thanks a lot mcantelon olalonde [04:27] pradeepto: that worked [04:27] rpetrello: hey folks [04:27] rpetrello: I'm working on fixing a node bug [04:27] rpetrello: I cloned the github repo [04:27] rpetrello: how would I go about running the tests? [04:27] rpetrello: specifically, the JS (lib) ones? [04:27] sechrist: hey do any of you guys know a good tutorial to throw somebody into to get the basics of unix theory/bash stuff? Like going from stdout/piping stuff into backticks into using awk/cut/uniq [04:27] olalonde: http://blog.nodejs.org/2011/03/23/npm-1-0-global-vs-local-installation/ [04:29] pradeepto: olalonde: thanks, will read up [04:30] olalonde: sechrist: depends how low level you want to get. if you want to go really low level, grab a book on operating system principles, if you just want to become good with the shell, try asking on #linux or check out http://www.commandlinefu.com/ [04:30] indutny has joined the channel [04:30] sechrist: it's not so much for me, it's so I can throw a team member of mine at it [04:31] sechrist: i'm overextended to look over his shoulder helping him awk so i'm looking for resources [04:31] sechrist: thanks for commandlinefu, this looks good [04:31] olalonde: commandlinefu.com is pretty cool then [04:31] olalonde: yep [04:33] sub_pop has joined the channel [04:37] langworthy has joined the channel [04:40] indutny has joined the channel [04:41] seivan has joined the channel [04:41] zmbmartin: how do I tell express not to escape some data. like html_safe in rails? [04:42] Viriix has left the channel [04:43] hermanjunge has joined the channel [04:43] jesusabdullah: What's working with redis like? Anybody want to comment? [04:43] jesusabdullah: I've read up on couch and I know a little about sql, but that's where my knowledge ends [04:43] jesusabdullah: but I've noticed a lot of redis fans up in this channel [04:44] skyloid has joined the channel [04:44] samsonjs_ has joined the channel [04:44] Bogh has joined the channel [04:44] mike5w3c has joined the channel [04:45] Bogh has left the channel [04:45] samsonjs_ has joined the channel [04:45] criswell has joined the channel [04:45] fmeyer has joined the channel [04:45] mscdex: how's node on arm these days? [04:46] mykul has joined the channel [04:47] catshirt has joined the channel [04:48] jmoyers: hmm [04:48] jmoyers: anyone know why jscoverage/expresso would not be outputting coverage for some files? [04:48] jmoyers: its picking up two of the files in the coverage directory, but not the third [04:49] gkatsev: http://bitp.it/ [04:49] themiddleman has joined the channel [04:50] jmoyers: i suppose it might be 100% covered.. [04:50] jmoyers: seems unlikely [04:52] yhahn1 has left the channel [04:52] brianc has joined the channel [04:52] brianc: bam [04:53] brianc: all quiet? [04:54] brianc: my postgres driver was #1 in google search for "node postgres" and now it's not even on the first 5 pages. But 3 forks of it are the first 3 results....wtf google? [04:54] hermanjunge: s**t happens [04:54] brianc: my life is ruined [04:54] hermanjunge: brianc: It deppends a lot on whose pages are linking to whose repository [04:55] tauren has joined the channel [04:55] JackeyChan has joined the channel [04:55] brianc: yea [04:56] fmeyer_ has joined the channel [04:56] fakewaffle: in a jade view, is there a way to print a json? [04:57] hermanjunge: printing it like text? [04:57] fakewaffle: yeah [04:57] hermanjunge: asignin' it first to a variable? [04:57] gf3 has joined the channel [04:57] fakewaffle: rather just just say [object object] [04:57] brianc: JSON.stringify(object) [04:58] wookiehangover has joined the channel [04:58] hermanjunge: sure, and wrap it into a
[04:58] matjas has joined the channel [04:59] fmeyer has joined the channel [04:59] jmoyers: presume [04:59] jmoyers: you mean
[04:59] hermanjunge: you're right
[05:01] fakewaffle: - JSON.stringify(Trail)
[05:01] fakewaffle: doesnt seem to work :/
[05:02] jmoyers: fooooooo
[05:02] jmoyers: damn you jscoverage
[05:02] jmoyers: fuuu, too.
[05:03] hermanjunge: I called it a day then :P First day in the forum, loved it :D
[05:04] hermanjunge has left the channel
[05:04] FredFred has joined the channel
[05:05] ryah has joined the channel
[05:07] JackeyChan has joined the channel
[05:07] mjr_: jesusabdullah: I like me some redis, but it's clearly not for everything.
[05:10] jesusabdullah: mjr_: What kind of stuff would you use redis for, over say couch or sql?
[05:11] mjr_: It's pretty handy for pub/sub, and for things where you need to share state between processes
[05:11] mjr_: Also if you have something that changes a lot, and you wouldn't mind losing the last few minutes of updates on a crash/power failure.
[05:11] meso_ has joined the channel
[05:11] mjr_: So like stats and counters and sessions and a cache.
[05:12] mjr_: Probably still want a real database somewhere else though.
[05:13] samsonjs has joined the channel
[05:13] mjr_: I also recommend a real database if you care about getting your data back.
[05:14] nsolsen has joined the channel
[05:19] zitchie has joined the channel
[05:19] brownies has joined the channel
[05:20] planetic has left the channel
[05:21] Murugaratham has joined the channel
[05:26] giby: is it difficult to include the closure library in nodejs?
[05:27] olalonde: http://forum.bitcoin.org/index.php?topic=9042.0
[05:27] olalonde: Embedable Javascript Bitcoin miner for your website
[05:27] context: its in npm. so im guessing its very simple.
[05:27] olalonde: who stole my idea :D ?
[05:28] giby: oh cool, any links on how to get started with it from npm? like perhaps its name? :)
[05:28] context: do people actually use that bitcoin stuff
[05:28] samsonjs has joined the channel
[05:28] giby: olalonde: the idea of disitbuted computing through the browser is really cool, but the economics of that bitcoin implementation are horrible
[05:28] context: uhh. it says the package name is "closure"
[05:28] context: similar to what you asked for
[05:28] context: http://search.npmjs.org/#/closure
[05:29] giby: thanks :)
[05:29] darshan-mobile has joined the channel
[05:30] olalonde: giby: yea, but technically it's cool :)
[05:30] giby: definitely
[05:31] TooTallNate has joined the channel
[05:31] giby: context: the market is pretty liquid for transactions under $5k/day, at about $6.85/bitcoin now
[05:31] giby: (and not very liquid for larger amounts)
[05:33] context: huh
[05:33] context: so.. you can make like real money with this bitcoin crap ?
[05:34] mjr_: So did Marak lose real money somehow? What's that whole controversy?
[05:34] mjr_: I assume it is some kind of gag of which I only get 25%
[05:35] Marak: mjr_: im selling my left over coins for $100 a piece
[05:35] Marak: mjr_: i blew all my internet money on fake fiats
[05:35] Marak: mjr_: WHO WILL PAY FOR BULLETS NOW
[05:35] Marak: ;-)
[05:35] deepthawtz has joined the channel
[05:35] mjr_: Revising my understanding estimate to 10%
[05:35] giby: yes, bitcoins have substantial real value
[05:35] halfhalo: I have a sale going on on bullets!
[05:36] johnnywengluu: how do i couple a spawned process stdout to stdin on my process
[05:36] giby: but the 'making money with it' part is not very rosy
[05:36] giby: it's mostly just a currency
[05:36] context: im so confused
[05:36] johnnywengluu: so whatever is printed out there is printed out to my console
[05:36] matjas has joined the channel
[05:36] johnnywengluu: var spawned_child_process = child_process.spawn(command, args);
[05:36] johnnywengluu: spawned_child_process.stdin.pipe(process.stdout);
[05:36] johnnywengluu: doesn't work
[05:36] secoif has joined the channel
[05:36] mjr_: An international decentralized currency is kind of cool.
[05:36] context: so... my cpu crunches hashes, and it poops out eCoins. then i buy stuff?
[05:36] Marak: mjr_: if there is no central authority, what stops someone from just stealing coins
[05:37] mjr_: Hey man, I just skim the title of hacker news, I have no idea how it actually works.
[05:37] giby: sort of. the computational power is really just a way to distribute the initial currency + provide some cryptographic integrity to the network
[05:37] context: they say its uncrackable... so its designed to only 'create' these jelly beans so frequently and slow down as time goes on or something
[05:37] giby: the rewards for doing the 'mining' is very marginal
[05:37] Marak: mjr_: :-p
[05:37] context: i still dont get it
[05:38] giby: it's a distributed network of transactions
[05:38] Guest9038: hello, guys
[05:38] giby: you can send someone bitcoins by broadcasting the transaction to the network and signing it with your private key
[05:38] mjr_: context: there's some value to people using their CPU time for things.
[05:38] giby: which the network verifies because it has the public key to the coins you are transfering
[05:38] mikey_p: Marak: the rest of the network keeps you from stealing coins, it checks for double spending and gives you confirmation for your transactions
[05:39] giby: a distributed database of transactions*
[05:39] Guest9038: olalonde, a u here ?
[05:39] Marak: mikey_p: i think you misunderstand
[05:39] Marak: mikey_p: i meant like, give me your bitcoins this is a stickup
[05:39] context: so people pay bitcoins to use my cpu?
[05:39] mikey_p: some thing that keeps people from stealing dollars?
[05:39] mikey_p: s/some/same/
[05:40] Guest9038: looks different, the hash library, anyone checked it ? _https://github.com/XianYeeXing/xHash
[05:40] Marak: if there are no game masters then the game is controlled by the players
[05:40] sherod has joined the channel
[05:40] giby: the cpu need is for signing blocks of transactions
[05:40] context: but certain people can take real money and turn it into bitcoins
[05:40] giby: your goal is to find a hash of the last n transactions such that the first x digits of the SHA256 hash are 0
[05:40] context: so it IS centralized.
[05:41] giby: they only turn it into bitcoins by trading with other users
[05:41] giby: not a centralized distributor
[05:41] Marak: Guest9038: dude hrmm?
[05:41] Marak: Guest9038: why use that library?
[05:42] olalonde: Guest9038: yep
[05:42] giby: marak: there will still be banks, just no central bank
[05:42] context: holy shit
[05:42] context: bitcoins have there own stock market
[05:42] Marak: context: you bet ya
[05:42] context: giby: still dont get it. :/
[05:43] giby: yea, for some definition of 'stock market'
[05:43] mikey_p: context: many many markets
[05:43] mikey_p: technically it's a commodity and not a stock
[05:43] mikey_p: http://bitcoincharts.com/markets/
[05:43] giby: mikey_p: I think he is talking about this http://glbse.com/
[05:43] giby: buying stocks in bitcoin based companies for bitcoins
[05:43] mikey_p: technically a currency, not commodity
[05:44] mikey_p: oh
[05:44] context: no i seen what mikey_p posted
[05:44] context: :x
[05:44] fayce has joined the channel
[05:44] giby: ah
[05:44] giby: in that case, yea, what he said :)
[05:44] sreeix has joined the channel
[05:44] context: still dont get. its just... weird !
[05:44] giby: what don't you get about it?
[05:44] johnnywengluu: anyone knows how i connect a spawned child process stdin to process stdout?
[05:44] johnnywengluu: or maybe its the other way around?
[05:45] fakewaffle: holy shit, i took an app i wrote in CakePHP and am now using it in PieJS, and just changed the syntax and it worked no problem
[05:45] johnnywengluu: to print out messages to console from that spawned child process
[05:45] olalonde: v8: var hash = {}; hash['key1'] = 'val1'; hash['key2'] = 'val2'; for(var key in hash) {console.log(hash[key]);}
[05:46] olalonde: to delete from the hash: delete hash['key1'];
[05:46] olalonde: Guest9038: let me know if you have any question
[05:46] jb_ has joined the channel
[05:46] context: giby: i dont know. its just weird
[05:47] giby: technically it's very cool, lots of information about it on the web to learn more
[05:48] giby: a disitrbuted currency with no central authority is a powerful idea, worth understanding imo :)
[05:48] coreb has joined the channel
[05:48] context: 'not connected' :(
[05:48] giby: ?
[05:48] context: im running bitcoin but its just sitting here
[05:49] bickie has joined the channel
[05:49] giby: maybe a port forwarding issue, or maybe just need to wait until it finds some peers
[05:49] bickie: Yo all
[05:49] giby: hey bickie
[05:50] tonymilne: Sup bickie
[05:50] Guest9038: sorry i just answered a phone call
[05:50] bickie: yo lads!
[05:50] bickie: got a quick question
[05:50] bickie: I have some node stuff that does very HTTP requests against an API
[05:50] bickie: obviously, sometimes they fail
[05:50] bickie: so you might get a 403 (rate limit exceeded)
[05:50] Guest9038: olalonde, thx, i am still digesting the materials u sent to me
[05:50] bickie: or a 500 (something very broken)
[05:51] bickie: ro whatever
[05:51] bickie: the error gets noticed and called, ie: callback(err)
[05:51] bickie: however
[05:51] bickie: in the calling code
[05:51] bickie: how do you tell the difference between the types of error?
[05:51] johnnywengluu: spawned_child_process.stdout.pipe(process.stdout);
[05:51] bickie: because by the time it gets up to that level, it's a JS Error object
[05:51] johnnywengluu: that was the answer
[05:52] bickie: which basically have no attributes other than err.message
[05:52] mscdex: bickie: error.code iirc
[05:52] mscdex: oh hmm
[05:52] bickie: err has no native err.code
[05:52] tonymilne: bickie: is response populated? Try: response.statusCode
[05:52] gibybo: response.statusCode
[05:52] gibybo: oh dang I was too slow :(
[05:52] bickie: yeah, so I have it in response.statusCode (in the lib)
[05:53] MikhX has joined the channel
[05:53] bickie: but it gets lost as soon as callback(err) is called
[05:53] mscdex: huh?
[05:53] bickie: so, say the behaviour is to return some different response to the user
[05:53] bickie: or delay further fetching
[05:53] bickie: or whatever
[05:54] mscdex: do you have a simple example you can gist?
[05:54] bickie: that's not going to much further up the chain
[05:54] bickie: yer
[05:54] bickie: that might help :)
[05:54] ivanfi has joined the channel
[05:54] Guest9038: Marak: because I want a 'object collection'', which can pop data out, push data in, shift data out, slice and splice data just like javascript Array does, but Array methods don't work on key/value pairs !
[05:55] bickie: Guest9038: what about an array of objects?
[05:55] Guest9038: Marak: Array object can has key/pair element , but Array methods desn't work on it.
[05:56] mscdex: afaik objects have no guaranteed ordering
[05:56] Guest9038: bickie, yup, but what if u want ti get object by key instead of iindex number
[05:56] mscdex: so you can't just use it like a stack
[05:57] tonymilne: underscore.js for the win... just makes arrays/object collections work. ;)
[05:57] bickie: JS doesn't have the concept of sorted K/V entity (ie: dict/hash)
[05:57] bickie: like python
[05:58] Guest9038: bickie, it dose not, like Ruby ^^
[05:58] bickie: yep
[05:58] bickie: but yeah, something like underscore may have some magic to help you
[05:58] Guest9038: so I got one utility: _https://github.com/XianYeeXing/xHash
[05:58] mscdex: Guest9038: why do you need this combined type of access?
[05:59] Guest9038: mscdex: for my boss's request XD
[05:59] Marak has joined the channel
[05:59] mscdex: that's vague
[05:59] Guest9038: bickie, yup, thx
[05:59] mscdex: :)
[05:59] Marak: ryah: any luck? im dying of suspense
[05:59] ryah: nope
[05:59] ryah: sux
[05:59] Marak: >>>>>>>><<<<<<<<<<
[06:00] Marak: 26 confirmations here
[06:00] Utkarsh has joined the channel
[06:00] mscdex: ?
[06:00] ryah: i'll leave it running all night
[06:00] ryah: mscdex: Marak sent me a coin
[06:00] mscdex: oh
[06:00] mscdex: bitcoins again
[06:00] mscdex: heh
[06:00] Marak: i hope i did
[06:00] Guest9038: mscdex, yup, but in reality, sometimes u needs some tricks to get thing down
[06:01] tonymilne: Is there any global way of listening to emitted events?
[06:01] Guest9038: mscdex, for instance, RESTful is cool, but there r some restricts, so Twitter uses semi-RESTful scheme, that's a compromise
[06:01] mscdex: Guest9038: i think the best you're going to be able to do is use an array of objects and just have a method that loops over it to find the object you want
[06:01] jesusabdullah has joined the channel
[06:02] pquerna has joined the channel
[06:02] rauchg has joined the channel
[06:02] mscdex: Guest9038: that is if you're searching for a particular value on the object
[06:02] Guest9038: mscdex, thx, and that the small tool dose: https://github.com/XianYeeXing/xHash
[06:02] mscdex: otherwise if you have a reference to the object you can just do array.indexOf(obj)
[06:02] maeldur has joined the channel
[06:02] Guest9038: it's simple and clear, i think it may help ( i hope so)
[06:02] Murugaratham: can node do soap?
[06:04] tonymilne: "Using Node for SOAP is sacrilege. The two are diametrically opposed in their philosophies, and SOAP will easily negate any performance gains you might have made from using an event-drive server." - mahmud, via http://news.ycombinator.com/item?id=1661024
[06:04] mscdex: Guest9038: just so you know, that module isn't doing anything magical
[06:04] dgathright has joined the channel
[06:04] mscdex: it's just wrappers around loops over the object
[06:04] tonymilne: LOL, dunno how truthful that is, but it is funny nonetheless.
[06:05] mscdex: and it's making bad assumptions about key ordering
[06:05] SubStack: node is turing computable so sure it can do soap
[06:05] SubStack: as unpleasant as soap can be
[06:05] MikeMakesIt has joined the channel
[06:05] mscdex: but whatever works for you i guess
[06:05] jmoyers: 2 modules
[06:05] jmoyers: npm search soap
[06:05] Marak: ryah: http://blockexplorer.com/address/1AJuMQpDeMmuJFYMpNGgKpUL8o1JssPaee
[06:05] jmoyers: who knows how complete they are
[06:05] jmoyers: since soap is a giant piece of shit
[06:06] bickie: mscdex / tonymilne: Very rough example of my error type issue: http://pastie.org/private/us7yo4dret5boen0wyse3a
[06:06] Guest9038: mscdex: yup, at least that's simple to modify ~XD
[06:06] bickie: (might be partially pseudo-code as I've been writing in coffeescript and just chucked something to together in JS) - but you ge tmy idea
[06:06] segaout has joined the channel
[06:07] ryah: Marak: it's so slow!
[06:07] Guest9038: mscdex, i want to download it and do some change, what's 'key ordering' ?
[06:07] mscdex: bickie: if you're talking about the error object emitted from the 'error' event, then it's going to be a connection or lower-level issue
[06:07] neorab has joined the channel
[06:07] tlrobinson: is "binary" not a valid encoding for readFileSync?
[06:08] mscdex: tlrobinson: you don't need it, it'll return a Buffer if you don't specify an encoding
[06:08] bickie: mscdex: Yeah, I know, but I want to know which :)
[06:08] tlrobinson: k thanks
[06:08] Marak: tlrobinson: im totally gonna get more internet money then you have real money, try to stop me http://www.helpingmarak.net/
[06:08] bickie: for example, I'm using it in parallel queue processing
[06:08] bickie: and I need to know whether it's a temporary failure
[06:08] bickie: or permanent
[06:08] bickie: so I can reschedule or mark as failed
[06:08] mscdex: bickie: could be several things i suppose, is there an errno property set?
[06:08] bickie: but in the queue processing code, it seems impossible to know what sort of error
[06:09] bickie: nope, no properties set
[06:09] mscdex: no properties?
[06:09] mscdex: util.inspect(err, true) ?
[06:09] bickie: (just message)
[06:09] tlrobinson: Marak: are you kidding me? you bought $50k in bitcoins then lost them?
[06:09] bickie: { stack: [Getter/Setter],
[06:09] bickie: arguments: undefined,
[06:09] bickie: message: 'hi, I am an error',
[06:09] bickie: type: undefined }
[06:09] bickie: same for generated errors
[06:10] mscdex: bickie: node does not have its own set of defined error numbers for 'error' event errors
[06:10] bickie: no
[06:10] tlrobinson: Marak: i just sent you 0.01 BTC to get you started
[06:10] bickie: also, JS has no error subclassing
[06:11] bickie: in other languages you'd have like: throw HTTPError(code=500, message="oh dear")
[06:11] bickie: etc
[06:11] Marak: Thanks tlrobinson :-)
[06:11] bickie: in JS it appears there's only Error(message)
[06:11] bickie: nothing else
[06:11] bickie: (well, ecmascript to be precise)
[06:11] bickie: what's the usual approach for handling this?
[06:11] tlrobinson: Marak: small transactions take awhile though i think so who knows when it will actually show up
[06:12] mscdex: bickie: right, and node does set errno and code properties in a lot of cases, but i'm not sure about 'error' event errors
[06:12] Marak: tlrobinson: i see it now actually, just takes a while to crunch as valid
[06:12] azeroth____ has joined the channel
[06:12] tlrobinson: oh ok
[06:12] bickie: aah, ok
[06:12] bickie: so errno and code are the convention?
[06:12] mscdex: errno is errno from C-land
[06:12] mscdex: i can't remember what the code property is from
[06:13] ryah: tlrobinson: yes, binary can be used with readFileSync
[06:14] mscdex: bickie: in js you can have a subclass if you inherit the prototype, such as with util.inherits
[06:14] bickie: yer
[06:14] aaronblohowiak: SubStack: base being an array doesn't seem to be working in package.json
[06:14] bickie: just trying to work out what the "node way" of doing things is
[06:14] bickie: just looked at node.io
[06:14] bickie: and they just return http error codes as integers for errors
[06:14] bickie: (skip the Error class entirely)
[06:14] bickie: which seems odd
[06:14] dominictarr has joined the channel
[06:15] jmoyers: is there a decent way to splice socket.io into express routes?
[06:15] tlrobinson: ryah: got it working if i leave out the encoding, but typeof require("fs").readFileSync(path, "binary") == "string"
[06:15] jmoyers: it would be nice to be able to use the same handlers
[06:15] jmoyers: and potentially parts of middleware
[06:15] ryah: tlrobinson: it's faster just get a buffer by leaving out the encoding
[06:15] briznad has joined the channel
[06:16] mscdex: bickie: so how does node.io handle 'error' events on the request then?
[06:16] dominictarr: is it possible to have npm 1 install dependencies locally, but as sym links to a cache (instead of recompiling, etc all deps?)
[06:16] bickie: mscdex: they kinda don't (they just pass up the error number)
[06:16] bickie: which means you lose any returned content too
[06:16] mscdex: what error number?
[06:17] ryankirkman has joined the channel
[06:17] bickie: or server generated error messages
[06:17] bickie: http error code
[06:17] bickie: they pass it up as an integer to the callback
[06:17] mscdex: you won't get that from the 'error' event though
[06:17] bickie: throw everything else out
[06:17] mscdex: that's an http error
[06:17] bickie: and do away with Error objects entirely
[06:17] bickie: yep
[06:17] jacobolus has joined the channel
[06:17] bickie: they just throw the whole lot out
[06:17] bickie: and call the callback with err populated as an integer
[06:17] bickie: seems very crude
[06:17] mscdex: 'error' event errors occur under the http layer
[06:18] bickie: aah, i see what you mean
[06:18] bickie: umm
[06:18] Guest9038: mscdex, how about this one:_https://github.com/substack/node-hashish
[06:18] mscdex: like if the remote end closed the connection unexpectedly
[06:18] mscdex: things like that
[06:19] mscdex: or some system error
[06:20] mscdex: Guest9038: that's just sugar on top of an object, no pushing or popping
[06:20] bickie: mscdex: https://github.com/chriso/node.io/blob/master/lib/node.io/request.js#L411
[06:20] bickie: handy
[06:20] bickie: so internal node errors
[06:20] Guest9038: yup, i see that ...woop ...-_-
[06:20] bickie: do have a errno attribute
[06:20] mscdex: bickie: pretty much yeah
[06:20] bickie: I wonder what else they have
[06:20] Adman65 has joined the channel
[06:20] superjudge has joined the channel
[06:21] mscdex: bickie: not much else, but errno will give you at least some idea what went wrong
[06:21] bickie: yeah, definitely seems to be the convention for internal errors
[06:22] bickie: http://nodejs.org/docs/v0.3.1/api/dns.html mentions it too
[06:22] bickie: (see under dns.resolve)
[06:22] mscdex: are you on node 0.3.1?
[06:22] mscdex: :S
[06:23] donaldpcook has joined the channel
[06:23] bickie: hehe
[06:23] bickie: nah, latest
[06:23] bickie: just the first docs that came up in google :)
[06:23] jacobolus has joined the channel
[06:23] MiiCode2 has joined the channel
[06:23] mscdex: ah ok cool :)
[06:24] tlrobinson: whats the difference between pipe and pump?
[06:24] materialdesigner has joined the channel
[06:24] jacobolu_ has joined the channel
[06:24] mscdex: tlrobinson: pipe is the one you want
[06:25] mscdex: pump was an early version of pipe
[06:25] temp01 has joined the channel
[06:25] tlrobinson: mscdex: k thanks.
[06:25] bickie: mscdex: thanks heaps for your help - I think I'm on track :)
[06:26] mscdex: bickie: cool, if you have any other questions don't hesistate to ask
[06:28] raphdg has joined the channel
[06:29] pradeepto: How does a node module like node-jshint work? Once installed globally, I can run jshint from commandline. Does it mean, it invokes node.js and then runs the jshint over the javascript file?
[06:29] hileon_ has joined the channel
[06:29] springify has joined the channel
[06:29] aaronblohowiak: pradeepto: https://github.com/jshint/node-jshint/blob/master/bin/hint
[06:30] aaronblohowiak: yep. it envokes node in the current path and then it requires its cli module and calls a method on that module with the current arguments
[06:30] raidfive has joined the channel
[06:30] aaronblohowiak: this is the real implementation of the cli module, but the file i linked to above is the actual "command"
[06:30] aaronblohowiak: https://github.com/jshint/node-jshint/blob/master/lib/cli.js
[06:31] indexzero: pradeepto: The package.json may be helpful for you as well: https://github.com/jshint/node-jshint/blob/master/package.json
[06:31] DTrejo has joined the channel
[06:32] indexzero: When you set the 'bin' property in the package.json and install it with `-g` then npm puts symlinks to that script in your bin dir, usually /usr/bin or /usr/local/bin
[06:33] Murugaratham has joined the channel
[06:33] indutny: those of you who care about node.js future - please upvote here: http://news.ycombinator.com/item?id=2566660
[06:34] tlrobinson: are there any simple examples of writing a readable and writable stream?
[06:34] harth has joined the channel
[06:35] indutny: tlrobinson: AFAIK, readable stream should just have `pause` and `resume` methods, writeable stream should have `writable` attribute
[06:35] mscdex: well, a WriteableStream will have writable set to true
[06:36] mscdex: if you are able to write to i
[06:36] mscdex: it
[06:36] Marak: indutny: lol
[06:36] Marak: :-D
[06:37] indutny: Marak: node.js depends on you
[06:37] aaronblohowiak: Marak: glad you still have a smile
[06:37] __tosh has joined the channel
[06:37] wonginator1221 has joined the channel
[06:38] Opaque has joined the channel
[06:39] matjas has joined the channel
[06:39] `3rdEden has joined the channel
[06:39] herbySk has joined the channel
[06:43] groom has joined the channel
[06:44] blueadept: Marak, is this bitcoin thing an epic troll?
[06:44] jacobolus has joined the channel
[06:45] blueadept: i swear one of the last things i saw before i took a nap was you on twitter talking abiout 40k worth of bit coins, and i just woke up and and i see a HN thread saying you lost everything?!
[06:45] anoop has joined the channel
[06:45] ChrisPartridge: Marak: surely you didn't convert your life savings to bitcoins... surely....
[06:46] blueadept: you bitcoin wallet is gone on your computer?
[06:46] blueadept: your*
[06:46] indutny: ChrisPartridge: bro, share our sorrow
[06:46] ajsie has joined the channel
[06:46] jmoyers: is there a way to set up a local npm module that depends on another local npm module?
[06:47] DTrejo: jmoyers: npm link
[06:47] DTrejo: I think
[06:47] Marak: I've got a few coins left, I think I can rebound
[06:47] jmoyers: i was under the impression that link puts it in the global space, no?
[06:47] jmoyers: which is also fine, i suppose
[06:48] DTrejo: not sure
[06:48] blueadept: so wait a minute, someone had to have rooted your machine and deleted the bitcoin wallet
[06:48] pradeepto: aaronblohowiak: indexzero - thanks.
[06:48] blueadept: if so, you can still recover the wallet by looking at your machine's freespace, no?
[06:48] ajsie: anyone good on child_process?
[06:49] ChrisPartridge: ajsie: whats the problem?
[06:49] ChrisPartridge: Marak: so, your being serious?
[06:49] Marak: ChrisPartridge: It's hard to tell at this point
[06:49] Marak: :p
[06:50] AvianFlu has joined the channel
[06:50] ajsie: var spawnedChildProcess = childProcess.spawn(command, args);
[06:50] ajsie: spawnedChildProcess.stdin.pipe(process.stdin);
[06:50] ajsie: spawnedChildProcess.stdout.pipe(process.stdout);
[06:50] ajsie: spawnedChildProcess.stderr.pipe(process.stderr);
[06:50] ajsie: spawnedChildProcess.on('exit', function (code) {});
[06:51] ajsie: after i have added those 3 middle lines the 'exit' event wont get fired .. but if i remove those 3 middle lines it will get fired.
[06:51] emattias has joined the channel
[06:51] ajsie: i want to do something after the spawned process has exited
[06:52] tlrobinson: who was the dude trying to get node running on jslinux?
[06:52] tlrobinson: and did he ever succeed
[06:52] tlrobinson: because i got the reverse working: https://gist.github.com/982468
[06:53] chapel: ajsie: you can assign the st channels to the process when you create it
[06:53] chapel: without piping
[06:53] ajsie: hmm
[06:53] ajsie: how?
[06:54] chapel: http://nodejs.org/docs/v0.4.7/api/child_processes.html#child_process.spawn
[06:54] chapel: With customFds it is possible to hook up the new process' [stdin, stout, stderr] to existing streams; -1 means that a new stream should be created.
[06:54] chapel: if you assign it to 1, it should hook it up to the current process
[06:55] `3rdEden: rauchg ping
[06:55] chapel: ajsie: https://github.com/aaronblohowiak/restartr/blob/master/restartr#L30 like that
[06:58] olalonde: tlrobinson: what about running Node inside jsLinux on Node?
[06:58] jaket_ has joined the channel
[06:58] tlrobinson: olalonde: thats the next step, of course
[06:58] tlrobinson: olalonde: node inception
[06:58] olalonde: eheh:)
[06:58] ChrisPartridge: haha
[06:58] mikeal has joined the channel
[07:00] jmoyers: http://inception.davepedu.com/
[07:00] nathan has joined the channel
[07:00] DTrejoAFKarchive: jmoyers++
[07:00] v8bot: DTrejoAFKarchive has given a beer to jmoyers. jmoyers now has 2 beers.
[07:01] jetienne has joined the channel
[07:02] LacKac has joined the channel
[07:02] jimt_ has joined the channel
[07:03] ChrisPartridge: jmoyers: oops, the whole office heard that
[07:03] jmoyers: all the better
[07:03] jmoyers: it just blew all their minds
[07:03] Marak_ has joined the channel
[07:04] jmoyers: i mean the button is RED after all
[07:04] tlrobinson: jmoyers: holy shit my speakers were turned up way too loud when i clicked that
[07:04] edude03 has joined the channel
[07:04] jmoyers: well
[07:04] jmoyers: the question is
[07:04] jmoyers: did it kick you out of the dream?
[07:05] ardcore1 has joined the channel
[07:07] aaronblohowiak: loves it
[07:07] tlrobinson: so close https://gist.github.com/982468#file_almost_node_inception
[07:08] sugardav1 has joined the channel
[07:09] olalonde: eheh nice try
[07:09] langworthy has joined the channel
[07:10] olalonde: how did you put node in there?
[07:10] aaronblohowiak: okay just added that sound to my make test script
[07:10] tlrobinson: olalonde: https://twitter.com/#!/jdub/status/70880877202255872
[07:11] tlrobinson: oh jdub is in here
[07:11] ParadoxQuine has joined the channel
[07:11] tlrobinson: jdub: did you ever get node on jslinux working?
[07:12] aaronblohowiak: how are you guys doing browser testing with node ?
[07:12] aaronblohowiak: for CI
[07:13] jmoyers: what kind?
[07:13] jmoyers: zombie.js is nice for headless testing
[07:14] aaronblohowiak: jmoyers: i am trying to test the full stack, like selenium but with less suck
[07:14] jmoyers: ^zombie.js
[07:14] jmoyers: i used to use selenium rc and some python bullshit to get that
[07:14] Opaque has joined the channel
[07:15] aaronblohowiak: jmoyers: oh it even runs the code in the browser
[07:15] aaronblohowiak: iiiiiiinteresting
[07:15] jmoyers: indeed
[07:15] aaronblohowiak: can you use socket.io with zombie.js ?
[07:15] jmoyers: ah
[07:15] jmoyers: good question
[07:16] jmoyers: https://github.com/assaf/zombie/blob/master/src/zombie/websocket.coffee
[07:17] aaronblohowiak: well, shit
[07:18] aaronblohowiak: =)
[07:21] truedat101 has joined the channel
[07:21] indutny has joined the channel
[07:22] ardcore1 has left the channel
[07:22] aaronblohowiak: jmoyers: oh my gosh
[07:22] aaronblohowiak: this is AMAZING
[07:23] jmoyers: i find it interesting that its written in coffeescript
[07:23] jmoyers: actually what got me to try it out...
[07:23] SeyZ has joined the channel
[07:24] hybsch has joined the channel
[07:25] superjudge has joined the channel
[07:26] Booom has joined the channel
[07:26] SamuraiJack has joined the channel
[07:27] boehm has joined the channel
[07:27] aaronblohowiak has joined the channel
[07:29] sherod has joined the channel
[07:29] dgathright has joined the channel
[07:30] stonebranch has joined the channel
[07:31] fmeyer has joined the channel
[07:35] christophsturm has joined the channel
[07:37] ajsie has joined the channel
[07:37] seivan has joined the channel
[07:38] Druide_ has joined the channel
[07:39] mehlah has joined the channel
[07:40] [AD]Turbo has joined the channel
[07:40] littke_ has joined the channel
[07:42] adambeynon has joined the channel
[07:43] djcoin has joined the channel
[07:45] temp01 has joined the channel
[07:48] msucan has joined the channel
[07:49] pdelgallego has joined the channel
[07:50] Booster2ooo: Hello
[07:52] Esteb has joined the channel
[07:52] Booster2ooo: How can I check/change the encoding of a string ? Because in the little webchat I'm writting, the accentuated characters (comming from IRC) are displayed like squares with a ? in them (in the console & web browser)
[07:53] aaronblohowiak: Booster2ooo: you should change the encoding of your web page =)
[07:53] aaronblohowiak: also, you should use a utf-8 compatible treminal
[07:53] aaronblohowiak: =)
[07:54] Booster2ooo: My browser detects utf-8 content
[07:54] Booster2ooo:
[07:54] nook has joined the channel
[07:55] jesusabdullah: Booster2ooo: aaronblohowiak is right! Sometimes it's a pain to get unicode working (sometimes) but making sure everything is utf-8 everywhere *should* take care of that problem!
[07:55] Booster2ooo: jesusabdullah > thx, I'm gonna double check all my encodings
[07:55] aaronblohowiak: Booster2ooo: oh that is weird. what is the server sending you?
[07:55] jesusabdullah: Also, if you're using an obscure font it may be missing characters.
[07:56] beawesomeinstead has joined the channel
[07:57] troessner has joined the channel
[07:57] aaronblohowiak: weird, irc has no encoding spec or negotiation
[07:59] mike5w3c has joined the channel
[07:59] dgathright_ has joined the channel
[07:59] Booster2ooo: jesusabdullah > It's a regular one, the not a font problem
[08:00] asabil has joined the channel
[08:00] Booster2ooo: it's*
[08:01] jesusabdullah: Yeah, I figured, but I wanted to make sure!
[08:01] jesusabdullah: I remember in the early 2000s my windows box couldn't display asian characters because those fonts were a separate package and windows XP was being too derpy to let me install them
[08:01] bene has joined the channel
[08:02] hwinkel has joined the channel
[08:05] float has joined the channel
[08:07] FireFly|n900 has joined the channel
[08:10] yozgrahame has joined the channel
[08:17] ajsie has left the channel
[08:17] TomY has joined the channel
[08:19] jetienne has joined the channel
[08:21] CoinOpeBoy has joined the channel
[08:24] SamuraiJack has joined the channel
[08:25] hellp has joined the channel
[08:25] jonathantaylor has joined the channel
[08:25] robhawkes has joined the channel
[08:26] frkout_ has joined the channel
[08:28] ewdafa has joined the channel
[08:29] slickplaid has joined the channel
[08:29] roidrage has joined the channel
[08:30] roidrage has joined the channel
[08:37] aabt has joined the channel
[08:42] seivan has joined the channel
[08:44] jayfresh has joined the channel
[08:44] seivan__ has joined the channel
[08:45] sreeix has joined the channel
[08:45] seivan___ has joined the channel
[08:46] seiva____ has joined the channel
[08:46] seiv_____ has joined the channel
[08:47] seivan has joined the channel
[08:47] q_no has joined the channel
[08:48] seivan_ has joined the channel
[08:48] jiggliemon has joined the channel
[08:49] seivan__ has joined the channel
[08:49] d0k has joined the channel
[08:50] seivan___ has joined the channel
[08:51] seiva____ has joined the channel
[08:52] Marak has joined the channel
[08:52] Marak: is anyone here using node-http-proxy?
[08:52] seiv_____ has joined the channel
[08:52] Marak: looking for projects / companies to list @ https://github.com/nodejitsu/node-http-proxy/wiki/node-http-proxy-in-production
[08:52] bzinger has joined the channel
[08:53] seivan has joined the channel
[08:53] bzinger has joined the channel
[08:53] seivan_ has joined the channel
[08:54] viz has joined the channel
[08:54] seivan__ has joined the channel
[08:55] seivan___ has joined the channel
[08:56] seiva____ has joined the channel
[08:57] seiv_____ has joined the channel
[08:57] Bogh has joined the channel
[08:57] Bogh has left the channel
[08:57] stagas: Marak: I use it here https://github.com/stagas/node-polla but it sucks it was a noob project though it works and I use it :P don't recommend it
[08:58] seivan has joined the channel
[08:58] pigmej has joined the channel
[08:58] pigmej has left the channel
[08:58] pigmej has joined the channel
[08:58] brownies has joined the channel
[08:58] pigmej: Hello
[08:59] seivan_ has joined the channel
[08:59] pigmej: I have a question about making a client request from node.js server
[08:59] Marak: hail pigmej
[08:59] pigmej: I wanted to use 'keep-alive' connection naturally
[08:59] pigmej: so I need some kind of poll of that requests..
[08:59] pigmej: any example ?
[08:59] pigmej: node-pool + request ?
[09:00] Marak: pigmej: i think that all is in core
[09:00] seivan__ has joined the channel
[09:00] Marak: pigmej: can you just specify keep-alive parameter?
[09:00] pigmej: to make request FROM a node.js server ?
[09:00] Marak: pigmej: yes, new httpAgent i think
[09:00] pigmej: hmm
[09:00] pigmej: ok but
[09:00] Marak: pigmej: http.request maybe, or http.createClient ?
[09:00] sh1mmer has joined the channel
[09:00] pigmej: I need to store somewhere the poll of active connections...
[09:00] seivan___ has joined the channel
[09:00] Marak: pooling got added to v0.4.0
[09:01] Marak: i think
[09:01] ryankirkman has joined the channel
[09:01] pigmej: Marak: are you sure?
[09:01] pigmej: I'm quite newbie in node.js
[09:01] seiva____ has joined the channel
[09:01] pigmej: google says nothing
[09:01] beawesomeinstead has joined the channel
[09:01] beawesomeinstead has joined the channel
[09:02] Marak: pigmej: not really
[09:02] seiv_____ has joined the channel
[09:02] Marak: pigmej: i think pooling for http.client is built into core now
[09:03] pigmej: hmm
[09:03] seivan has joined the channel
[09:03] pigmej: seems that you're right :)
[09:03] Marak: pigmej: im pretty sure we were using pool as a dep in http=proxy for a while, but now its just request module and raw http.client
[09:04] Marak: pigmej: you might want to look at that code
[09:04] pigmej: http://nodejs.org/docs/v0.3.6/api/http.html
[09:04] Marak: pigmej: https://github.com/nodejitsu/node-http-proxy
[09:04] seivan_ has joined the channel
[09:05] JackeyChan: var sockets = this.for(''); what's means of this code ?? create a loop that not returned ?
[09:05] seivan__ has joined the channel
[09:05] orls has joined the channel
[09:05] chapel: hey stagas hows it going?
[09:06] stagas: chapel: I'm bored you?
[09:06] seivan___ has joined the channel
[09:06] chapel: at work
[09:06] monteslu has left the channel
[09:06] chapel: you know, only boring people get bored
[09:06] seiva____ has joined the channel
[09:07] stagas: I'm boring
[09:07] stagas: and bored
[09:07] sei______ has joined the channel
[09:08] chapel: :(
[09:08] mikey_p: not strictly node.js question, but how do folks handle links to delete if you're using something like express-resource where it's a http request with DELETE method?
[09:08] dies_el has joined the channel
[09:08] chapel: work on something
[09:08] seivan has joined the channel
[09:08] stagas: chapel: I should
[09:08] mikey_p: i mean how do you protect links, or do you have a delete confirmation form?
[09:09] mehlah has joined the channel
[09:09] fangel has joined the channel
[09:09] seivan_ has joined the channel
[09:09] stagas: chapel: usually I get bursts of creativity for a few days and then huge downs
[09:10] chapel: yeah
[09:10] chapel: I know what you mean
[09:10] seivan__ has joined the channel
[09:10] chapel: though paid projects have been taking up most of my time
[09:10] chapel: not that I work too much
[09:10] chapel: just, cuts into my 'programming' time
[09:11] nook has joined the channel
[09:11] seivan___ has joined the channel
[09:12] stagas: chapel: pressure works for me I get things done when time is limited, but for my own stuff I need to get excited
[09:13] chapel: yeah
[09:13] chapel: I have multiple projects I need to work on
[09:13] chapel: my problem is if I am not in the mood, I would rather chat/surf, though I always work on my paid stuff
[09:14] augustl: if I write to a file in "a" mode faster than the disk can keep up, what will happen? Will the kernel handle it?
[09:14] augustl: the writes happens in bursts, with long delays (minutes) in between
[09:14] azeroth_ has joined the channel
[09:17] adambeynon has joined the channel
[09:17] ardcore has joined the channel
[09:17] pigmej: Marak: node-http-proxy
[09:17] pigmej: forces connection: close
[09:18] ardcore has left the channel
[09:19] pomodoro has joined the channel
[09:19] FireFly|n900 has joined the channel
[09:20] temp01 has joined the channel
[09:21] azeroth_ has joined the channel
[09:22] jacobolus has joined the channel
[09:22] ExsysHost has joined the channel
[09:23] MrTopf has joined the channel
[09:27] tokumine has joined the channel
[09:30] sjbreen has joined the channel
[09:30] hkjels has joined the channel
[09:31] MikeMakesIt has joined the channel
[09:32] markwubben has joined the channel
[09:33] hkjels: In stylus, how would I interpolate px onto a parameter?
[09:33] hkjels: margin-bottom (unit*1.5)
[09:33] JackeyChan has joined the channel
[09:33] saschagehlich has joined the channel
[09:34] hkjels: (unit*1.5)px, (unit*1.5)+'px', unit*1.5{px}, unit*1.5{'px'}
[09:34] hkjels: none of these work
[09:38] orls has joined the channel
[09:38] orls: hey folk...anyone got any advice on a mysql binding/lib?
[09:38] __tosh has joined the channel
[09:38] orls: are there prefereable / aviodable one?
[09:38] azeroth_ has joined the channel
[09:42] thalll has joined the channel
[09:44] okuryu has joined the channel
[09:45] Lorentz has joined the channel
[09:48] SamuraiJack has joined the channel
[09:49] pigmej: ok node-pool + http.client(or something) should work :)
[09:50] amaudy has joined the channel
[09:50] tobiassjosten has joined the channel
[09:51] sherod has joined the channel
[09:53] ewdafa has joined the channel
[09:56] mc_greeny has joined the channel
[09:56] jeremyselier has joined the channel
[09:56] azeroth_ has joined the channel
[09:57] pen has joined the channel
[10:00] tahu has joined the channel
[10:02] burg has joined the channel
[10:02] liar has joined the channel
[10:06] Xano has joined the channel
[10:08] sfoster has joined the channel
[10:10] jemeshsu: What happen to http://nodeblogs.com/? 502 error. Got the link from https://github.com/joyent/node/wiki/Community
[10:10] `3rdEden: its probably broken :D
[10:10] azeroth_ has joined the channel
[10:11] pigmej: ok I'm lost ;/ Anyone knows how to correctly do a client request pool?
[10:11] pigmej: with keep-alive naturally
[10:13] SamuraiJack_ has joined the channel
[10:18] qrux has joined the channel
[10:19] SamuraiJack_ has joined the channel
[10:20] jetienne has left the channel
[10:20] brownies has joined the channel
[10:23] mraleph has joined the channel
[10:24] SamuraiJack__ has joined the channel
[10:26] SamuraiJack has joined the channel
[10:31] MaSch: is there a socket.io channel or can i asked my question here ?
[10:32] zitchie has joined the channel
[10:37] JackeyChan has joined the channel
[10:38] `3rdEden: MaSch #socket.io ?
[10:39] `3rdEden: but you can just spam you question here as well ;p
[10:39] MaSch: `3rdEden: just to easy >.< thanks
[10:39] `3rdEden: as i'm the only one active int eh socket.io channel :p
[10:40] MaSch: i somewhere read about that socket.io is able to emit events "over the wire" so i call client.emit("costumevent") on the server and die client does a socket.on("costumevent", function...); .. do you unterstand what i try to say?
[10:41] `3rdEden: sure, you can build functionality like that, but it's not build in
[10:42] MaSch: okay, then it was just a dream :D thanks
[10:43] aliem has joined the channel
[10:44] MaSch: eventedsocket seems to implement this..
[10:44] `3rdEden: But there are projects that might build that functinoality
[10:45] `3rdEden: but you also have nowjs and dnode which allows your clientside library to call your server side functions
[10:46] [AD]Turbo: are there any problems in sending unicode strings over socket.io ?
[10:46] MaSch: `3rdEden: thanks for the tips, does nowjs work with socket.io?
[10:48] `3rdEden: [AD]Turbo socket.io just runs JSON.stringify over all your data, So i guess JSON will handle that for you.
[10:48] `3rdEden: MaSch nowjs uses Socket.IO under the hood
[10:48] MaSch: ahh great, thanks
[10:48] snearch has joined the channel
[10:52] fly-away has joined the channel
[10:59] igl has joined the channel
[11:00] gozala has joined the channel
[11:01] sechrist has joined the channel
[11:04] MaSch: ohh nose >.< jQTouch destroys my now object
[11:04] MaSch: why are they doing this >.<
[11:05] optixx: hello
[11:06] meso_ has joined the channel
[11:06] optixx: is there a prefered way to deloy a node.js app on a server, regarding the depencies installation
[11:06] fairwinds has joined the channel
[11:06] optixx: are there like recipe files for npm to ensure to install certain versions of packages
[11:07] optixx: like python's pip requirement.txt files
[11:07] royvandermeij has joined the channel
[11:08] Bj_o_rn has joined the channel
[11:08] `3rdEden: MaSch wtf?
[11:08] `3rdEden: spam their issue tracker!
[11:08] MaSch: its a bug, pull request is on the way :D
[11:11] MaSch: `3rdEden: see this: https://github.com/senchalabs/jQTouch/blob/master/jqtouch/jqtouch.js#L91
[11:12] `3rdEden: nice fail lol
[11:12] `3rdEden: they are flooding globals there
[11:13] kwk has joined the channel
[11:14] MaSch: `3rdEden: yes, added a "var" and send a pull request :D
[11:16] onno_ has joined the channel
[11:16] seivan has joined the channel
[11:17] onno_: Hello?
[11:18] deedubs has joined the channel
[11:22] forddg has joined the channel
[11:27] fayce has joined the channel
[11:27] mahna has joined the channel
[11:27] tsesame has joined the channel
[11:29] RushPL has joined the channel
[11:30] christophsturm has joined the channel
[11:31] littke_ has joined the channel
[11:32] MaSch: `3rdEden: i belive jQtouch only consists of bugs <.< scary
[11:32] MaSch: thanks for all your help anyway, nowjs is great
[11:34] tokumine has joined the channel
[11:35] saschagehlich has joined the channel
[11:36] `3rdEden: MaSch than just jQuery mobile instead?
[11:36] MaSch: `3rdEden: just found it, looks way better
[11:36] kwk: Hi to all! What is the best MySQL driver implementation/binding for node.JS? https://github.com/joyent/node/wiki/modules#database
[11:37] mahna has joined the channel
[11:37] saschagehlich: kwk: guess it's node-mysql bei felixge
[11:37] saschagehlich: *by
[11:38] UHMA: yeh. npm install mysql
[11:38] kwk: saschagehlich: german?
[11:38] saschagehlich: kwk: yup
[11:38] kwk: m2
[11:38] saschagehlich: :D
[11:38] jet18 has joined the channel
[11:39] UHMA: I like when the best modules have the best names, lol
[11:42] eee_c has joined the channel
[11:44] Fuu has joined the channel
[11:44] `3rdEden: Ich spreche ein bisschen Deutsch
[11:44] `3rdEden: ^_^
[11:45] kwk: `3rdEden: let's stick to English here
[11:45] [AD]Turbo has joined the channel
[11:45] kwk: byebye
[11:45] kwk has left the channel
[11:46] `3rdEden: tss
[11:46] broofa has joined the channel
[11:46] `3rdEden: Я в порядке с этим, но России это тоже хорошо kwk
[11:47] viz has joined the channel
[11:47] hellp has joined the channel
[11:48] naneau has joined the channel
[11:51] tiagoa has joined the channel
[11:53] tahu_ has joined the channel
[11:56] cincinnatus: using Socket.IO, what would, roughly, be a reliable way to pair up clients for one-on-one chats (as soon as there are two clients available)?
[11:56] epic has left the channel
[11:57] jbpros has joined the channel
[11:57] Poetro has joined the channel
[11:57] flippyhead has joined the channel
[11:58] hellp has joined the channel
[11:58] RushPL_ has joined the channel
[11:59] tsesame: There's modules available to make comms between clients easier than using socket.io
[12:00] cincinnatus: oh, well, what do you recommend?
[12:01] tsesame: Something like NowJS maybe
[12:01] tsesame: dnode looks good too
[12:02] tsesame: Those build on socket.io
[12:02] eee_c has joined the channel
[12:02] superjudge has joined the channel
[12:02] febits has joined the channel
[12:03] johnnywengluu: so with browserify my npm modules work on the browsers too?
[12:03] tahu has joined the channel
[12:03] guybrush: johnnywengluu: yes
[12:03] cincinnatus: tsesame, thanks, I'll look into those.
[12:03] johnnywengluu: is browserify production ready
[12:03] Remoun has joined the channel
[12:03] guybrush: they will get wrapped with some code, so you can `require` them on the client side
[12:03] johnnywengluu: do i have to have a nginx / caching in front of it?
[12:03] guybrush: johnnywengluu: yes i use it in production
[12:04] guybrush: browserify does cache all the code in memory
[12:04] jtsnow has joined the channel
[12:04] johnnywengluu: this is better than now.js?
[12:04] johnnywengluu: or is it for different needs
[12:04] guybrush: browserify and nowjs are 2 completely different things?!
[12:04] burningdog has joined the channel
[12:04] johnnywengluu: okay .. browserify works with npm modules
[12:05] johnnywengluu: now.js doesn't .. and it triggers code in server rather than fetching them to the client
[12:05] guybrush: did you read the README's of all those projects?
[12:05] johnnywengluu: yeah
[12:05] johnnywengluu: just wanted to make sure im correct
[12:05] johnnywengluu: well browserify it is then
[12:06] `3rdEden: tsesame and how do they make it easier to have clients communicate with each other?
[12:07] guybrush: johnnywengluu: browserify makes npm-modules REQUIRE-able on the client-side // nowjs makes functions CALL-able on the client-side
[12:07] tsesame: well you're not having to deal with serializing your data for the stream, they use objects to make remote method calls
[12:07] guybrush: maybe that is confusing?
[12:08] tsesame: NowJS has the everyone object to broadcast a method call to every client
[12:10] guybrush: johnnywengluu: also note that dnode comes with browserify
[12:10] `3rdEden: tsesame you can just send objects over socket.io as well.
[12:10] `3rdEden: tsesame socket.io has .broadcast as well..
[12:10] tsesame: sure, but then you have to somehow wait for them on the other side
[12:11] roidrage has joined the channel
[12:11] `3rdEden: errmm thats the same with dnode and nowjs?
[12:11] guybrush: `3rdEden: what is the purpose of underscore? why is "everyone" using it? --- i mean you can do it all with javascript
[12:11] `3rdEden: guybrush huh?
[12:11] tsesame: well, at least in the case of nowjs, you defined a method that would get called on the server when you call it on the client
[12:12] guybrush: `3rdEden: its the same with nowjs,dnode,.. everyone uses it --- even if you can do it yourself with socketio
[12:12] tsesame: it just simplifies things, that's all, less overhead to deal with
[12:13] guybrush: i mean, why do you even use socketio? you could write your own :p
[12:13] tsesame: as with anything, it's not necessarily the one solution to all -- in some cases you might want to roll your own RPC lib on top of socket.io
[12:13] `3rdEden: guybrush iknow but thats not the point here, tsesame stated that it easier to `connect` clients with other with nowjs and dnode. And I just want to know how it's easier than using socket.io
[12:14] `3rdEden: because you can just do client.on('message', function(data){ }socket[data.sessionid].send( data.message) | ) in socket.io and you have communication between 2 clients
[12:14] guybrush: `3rdEden: the dnode-slides from nodeconf explain that pretty well http://substack.net/doc/dnode_slides_nodeconf.pdf
[12:14] tsesame: Well I can't say I've written anything that uses socket.io directly, but I'd bet that it would take less LOC to write a basic chat server w/ NowJS than using socket.io alone
[12:15] guybrush: also note that there are dnode-protocol implementations in other languages too! so this becomes even more handy
[12:16] tsesame: `3rdEden: In your opinion, you don't think these libraries really add anything on top of socket.io?
[12:16] `3rdEden: guybrush iknow dnode works and how nowjs work.. but as i stated above, just because you can RPC it doesn't mean its `easier` to to have 2 users communicate with each other
[12:16] `3rdEden: tsesame thats not what I'm saying
[12:16] guybrush: `3rdEden: sorry maybe i dont get the point
[12:16] benmonty has joined the channel
[12:17] guybrush: i mean it is obviously why one would use wrapper-libs of socketio
[12:18] `3rdEden: Yes that is obviouse but it's not obviouse why you should do that if you just want to have 2 users communicate with other
[12:18] guybrush: right
[12:19] tsesame: We're talking about two clients communicating w/ each other via the server, right?
[12:19] `3rdEden: Yes, like personal messages
[12:20] hwinkel has joined the channel
[12:20] tsesame: So you're saying you can write the same functionality using just socket.io, in the same or less LOC?
[12:20] guybrush: `3rdEden: i use dnode because all my code is written to work with it :p
[12:20] mitko has joined the channel
[12:20] guybrush: and thats even rpc without socketio
[12:21] guybrush: plain tls-server/client communication wrapped with dnode
[12:21] tsesame: dnode doesn't use socket.io?
[12:21] tsesame: I had thought it did..
[12:21] guybrush: it does, to make server<->browser communication possible
[12:21] tsesame: oh gotcha
[12:21] guybrush: guys please read the README
[12:21] guybrush: its all there
[12:22] m00p has joined the channel
[12:22] fangel has joined the channel
[12:22] ExsysTech has joined the channel
[12:22] sonnym has joined the channel
[12:24] `3rdEden: tsesame is that a challange :D?
[12:24] guybrush: also note
[12:24] guybrush: there is capsule
[12:24] guybrush: wich is also built upon socketio (and backbone)
[12:24] guybrush: pretty interesting imho
[12:24] saschagehlich has joined the channel
[12:25] tsesame: `3rdEden: Lol, if you want it to be.. I swear that I'm curious because if so I would seriously consider using socket.io directly
[12:25] tsesame: Obviously I need to look at it more carefully
[12:25] burningdog_ has joined the channel
[12:26] tsesame: First off I didn't know you could push and received unserialized objects
[12:27] tsesame: guybrush: haven't heard of that one, will look
[12:29] fumanchu182 has joined the channel
[12:29] `3rdEden: tsesame socket.io already keeps a hash of all connect clients. They are stored as key (sessionid) > value (socket.io client obj)
[12:29] `3rdEden: So the only thing you would have to do, is send over a sessionid of the connected user, and a message
[12:31] tsesame: What happens if you're not supporting sessions?
[12:31] mrcorry has joined the channel
[12:32] sreeix_ has joined the channel
[12:32] mahna has joined the channel
[12:33] sreeix__ has joined the channel
[12:36] guybrush: tsesame: i have also written a very simple example to use backbone and dnode for rpc (https://github.com/guybrush/backbone-rpc-example -- http://guybrush.no.de)
[12:36] johnnywengluu: guybrush: good explanation!
[12:37] dnolen has joined the channel
[12:38] johnnywengluu: guybrush: DNode is an asynchronous object-oriented RPC system for node.js that lets you call remote functions.
[12:38] johnnywengluu: so dnode is comparable with now.js?
[12:38] guybrush: it is
[12:39] johnnywengluu: dnode comes with browserify you said. if i just want to require npm modules .. i dont have to care about dnode?
[12:39] guybrush: yes
[12:39] johnnywengluu: why does it comes with browserify?
[12:39] johnnywengluu: come
[12:39] guybrush: to give you more ways to implement it
[12:39] jano has joined the channel
[12:40] guybrush: so if you just want to use dnode, require it on the serverside and it will mount /dnode.js for you
[12:40] `3rdEden: tsesame sessions are required for polling connections such as long polling
[12:40] guybrush: if you want to use some other npm-libs on the client too, you CAN use browserify and include dnode
[12:41] johnnywengluu: okay
[12:41] johnnywengluu: im not sure im getting this .. let me start with browserify first =)
[12:41] neoesque has joined the channel
[12:41] `3rdEden: tsesame: this is a simple client 2 client communication in socket.io
[12:41] `3rdEden: https://gist.github.com/982814
[12:41] guybrush: :D just learn by doing, it is pretty straight forward - you will get it fast
[12:41] VovaZaycev has joined the channel
[12:41] johnnywengluu: can i use browserify to require from node.js server that isn't on the same ip as the javascript page?
[12:42] johnnywengluu: with other words : the browser file isn't served with node.js
[12:42] johnnywengluu: it still works?
[12:42] guybrush: johnnywengluu: hmm i think i dont quite get your question
[12:43] guybrush: xhr is not possible with browserify if thats what you mean
[12:43] johnnywengluu: the html/js is hosted on CDN
[12:43] johnnywengluu: and then i run a node.js server else where .. does it still work?
[12:43] guybrush: ok
[12:44] jesusabdullah: It doesn't do anything special in terms of loading the file on the client side, johnnywengluu. It just bundles everything for you on the server side.
[12:44] guybrush: you would have to fetch the js-code first, than bundle it with browserify
[12:44] johnnywengluu: okay
[12:44] johnnywengluu: seems to be a very popular way of require() npm modules
[12:44] johnnywengluu: a lot of users
[12:44] RC1140 has joined the channel
[12:45] johnnywengluu: kinda a good hack =)
[12:45] guybrush: i think, what you want to do is call browserify via dnode and bundle code from any CDN? :D
[12:46] johnnywengluu: hmm
[12:46] tsesame: `3rdEden: That makes sense now
[12:46] johnnywengluu: i have to idea what i want
[12:46] kriszyp has joined the channel
[12:46] guybrush: johnnywengluu: just try to implement some basic examples yourself, you will get how it works
[12:46] johnnywengluu: just wondered if it can fetch my npm packages from a node.js server that isn't serving the html file
[12:46] tsesame: I can see that using socket.io is simpler than I had thought
[12:46] tsesame: for some cases anyway
[12:47] johnnywengluu: the html file is served from a cdn
[12:47] johnnywengluu: okay
[12:47] vikstrous has joined the channel
[12:48] guybrush: johnnywengluu: i think you would have to put