[00:00] slickplaid: i used to use screen and maximize, but i got tired of ^a-c all the time switching then alt-left/right [00:01] slickplaid: plus ctrl+alt+left/right to move screens [00:01] chjj: i just use alt+1,2,3,etc [00:01] chjj: alt left right bugs me [00:01] CrisO has joined the channel [00:01] slickplaid: well, i'm on 12 servers and about 22 channels [00:01] Nican has joined the channel [00:02] chjj: haha [00:02] sonnym has joined the channel [00:02] chjj: wow [00:02] chjj: im in like 3 channels [00:02] chjj: guess its easier for me [00:02] chjj: i hate the split windows though [00:02] jesusabdullah: I used to do that [00:02] jesusabdullah: I try to keep it under 10 [00:02] slickplaid: last month i broke it down to about 12 [00:02] jesusabdullah: gj XD [00:02] slickplaid: but then i always get autojoined when ircop'ing up [00:02] jimt_ has joined the channel [00:03] chjj: what theme do you use? [00:03] MonsieurLu has left the channel [00:03] slickplaid: default [00:03] chjj: i wrote my own theme, i should upload it to github [00:03] sub_pop has joined the channel [00:03] chjj: every other theme was made for a black terminal background [00:03] slickplaid: i jump computers so often i stopped caring [00:03] fds_ has joined the channel [00:03] chjj: ah [00:04] Wa has joined the channel [00:04] slickplaid: only thing i really care about is vim's settings and for that i `curl http://mybox/myscript.sh | sh` and be done with it :D [00:05] chjj: why am i not a vim hacker? [00:05] chjj: dammit [00:05] xeodox has joined the channel [00:05] chjj: damn me and my gui editors [00:05] MooGoo: it's never too late [00:05] MooGoo: you could even ease into it with gvim [00:05] xeodox: How do I use functions inside EJS template system? <% if(hasAdmin(miser)){ %> Hello admin!< % } %> [00:05] chjj: i have the basics down in the vim, i can work it, im just not a pro [00:06] MooGoo: no one really is [00:06] tjholowaychuk: xeodox pass locals to them [00:06] tjholowaychuk: or if you're using express define them with app.locals() / res.locals() etc [00:06] ekryski has joined the channel [00:07] xeodox: tjholowaychuk: Yes, i'm using express. I want every template to have that function. Where do I put the app.locals()? [00:07] namelessjon has joined the channel [00:07] xeodox: oh I see [00:09] xeodox: thanks! [00:09] slickplaid: okay [00:10] cccaldas has joined the channel [00:11] jarek_ has joined the channel [00:11] FireFly|n900 has joined the channel [00:12] dibber has joined the channel [00:13] CIA-65: libuv: 03Ryan Dahl 07gyp * r0fa2dac 10/ build/all.gyp : gyp: Add configurations (+6 more commits...) - http://bit.ly/pwi532 [00:14] zackattack has joined the channel [00:14] CIA-65: node: 03Ryan Dahl 07gyp * r7a61e43 10/ (4 files in 4 dirs): gyp: fix test runner - http://bit.ly/nGSNdK [00:14] CIA-65: node: 03Ryan Dahl 07gyp * r7377929 10/ (3 files in 3 dirs): Upgrade libuv for gyp reasons - http://bit.ly/q1Bjsw [00:15] espacia has joined the channel [00:16] webben has joined the channel [00:19] broofa has joined the channel [00:19] pspeter3 has joined the channel [00:19] pspeter3: Has anyone got date.js working with node v0.4.10? [00:20] storrgie has joined the channel [00:20] saikat has joined the channel [00:21] Cromulent has joined the channel [00:21] jbrokc has joined the channel [00:22] rchavik has joined the channel [00:22] sub_pop has joined the channel [00:25] craigcondon has joined the channel [00:26] thalll has joined the channel [00:31] davidbanham has joined the channel [00:31] gg777 has joined the channel [00:31] guillermo has joined the channel [00:33] CIA-65: node: 03Ryan Dahl 07gyp * r9343f56 10/ (.gitignore build/gyp_node): add build/gyp_node build script - http://bit.ly/q0sWG8 [00:34] ericmuyser has joined the channel [00:34] vengeancex32 has joined the channel [00:36] yhahn has left the channel [00:38] shoe` has joined the channel [00:40] cafesofie has joined the channel [00:41] CIA-65: node: 03Ryan Dahl 07gyp * r795b460 10/ (5 files in 3 dirs): gyp: Fix build - http://bit.ly/oS0W3l [00:41] nicoreed has joined the channel [00:41] d0k has joined the channel [00:42] ericmuyser has joined the channel [00:42] stalled has joined the channel [00:45] jasong_at_apache has joined the channel [00:46] cpetzold has joined the channel [00:49] matomesc has joined the channel [00:51] BillyBreen has joined the channel [00:53] perezd: rauchg around? [00:54] heavysixer has joined the channel [00:54] losing has joined the channel [00:55] cpetzold: doesn't look like he's in the channel [00:55] sivy has joined the channel [00:56] jakehow has joined the channel [00:57] Aria has joined the channel [00:58] k1ttty has joined the channel [00:59] luke` has joined the channel [01:01] saikat has joined the channel [01:01] Laurent4 has joined the channel [01:03] jvdev has joined the channel [01:04] ericmuyser has joined the channel [01:05] booo has joined the channel [01:06] jacobolus has joined the channel [01:06] ericmuyser has joined the channel [01:07] sechrist has joined the channel [01:07] ericmuyser has joined the channel [01:07] seivan has joined the channel [01:10] dguttman has joined the channel [01:12] xandrews has joined the channel [01:12] arlolra has joined the channel [01:13] scott_gonzalez has joined the channel [01:14] brianseeders has joined the channel [01:15] rickharrison has joined the channel [01:15] abjorn has joined the channel [01:17] abjorn: Does the 0.5 branch of Node require Python >2.4.x? My VPS is running 2.4.3 and I get a syntax error in ./configure. [01:17] migimunz has joined the channel [01:17] MarkMenard has joined the channel [01:18] tomilaine has joined the channel [01:18] jakeskik has joined the channel [01:18] bnoordhuis: abjorn: yes, you need python >= 2.5.2 [01:18] matomesc has joined the channel [01:18] abjorn: word, thanks [01:19] abjorn: now I just gotta figure out why 2.4.3 is the latest version in my VPS's yum repos :) [01:20] michaelhartau has joined the channel [01:23] galaxywatcher has joined the channel [01:24] jacobolus has joined the channel [01:24] bnoordhuis: abjorn: centos 5, i presume? [01:24] abjorn: YEP [01:24] CIA-65: libuv: 03Peter Bright 07master * rd84b249 10/ (4 files in 3 dirs): [01:24] CIA-65: libuv: Support for unescaped arguments, suitable for use with cmd /c. [01:24] CIA-65: libuv: Robust argument escaping that hopefully matches Windows' algorithm for unescaping. - http://bit.ly/ozINMA [01:25] abjorn: lol [01:25] tophatmike has joined the channel [01:25] abjorn: everyones favorite server distro! [01:26] c4milo1 has joined the channel [01:27] ditesh|cassini has joined the channel [01:28] escii has joined the channel [01:29] tophatmike: this is really embarrassing but I'm on Mac OS and I installed node and npm, but when I do npm install anything it just hangs [01:29] tophatmike: same with npm update [01:29] tophatmike: is there some common obvious cause of this? [01:30] tophatmike: no cpu usage, no output, just hangs [01:30] Aria: Not being able to access DNS servers, possibly. [01:30] abjorn: When you say npm anything, do you mean even something like npm -h or npm faq hangs? [01:30] tophatmike: that could totally be it! [01:31] tophatmike: nope, just npm install * or npm update [01:31] abjorn: or just the ones that have the phone home? :p [01:31] abjorn: ah [01:31] abjorn: yeah some network shit [01:31] tophatmike: I think the DNS idea makes sense! I do have custom DNS servers specified [01:32] htoothrot has joined the channel [01:32] pixel13 has joined the channel [01:32] pixel13 has left the channel [01:33] galaxywatcher has joined the channel [01:35] tophatmike_ has joined the channel [01:35] xerox: tophatmike_: try changing the loglevel [01:35] monokrome: tophatmike: dig registry.npmjs.org [01:35] xerox: npm config set loglevel info [01:36] tophatmike_: ok I cleaned out my DNS and let it sit on defaults [01:36] tophatmike_: still nothing [01:36] tophatmike_: changed the log level [01:36] tophatmike_: when I do npm update it hangs on info addNamed [ 'socket.io', '*' ] [01:36] ifandelse has joined the channel [01:37] tophatmike_: npm info it worked if it ends with ok npm info using npm@1.0.17 npm info using node@v0.4.10 npm info addNamed [ 'socket.io', '*' ] [01:37] tophatmike_: then nothing [01:39] tophatmike_: could it be some broken modules? [01:40] tophatmike_: aside from npm -v is there a way to validate that my npm install is ok? [01:41] mcluskydodallas has joined the channel [01:42] cpetzold: tjholowaychuk: is there a way to make express.param(':blah') not read until '/'? [01:42] tjholowaychuk: cpetzold until '/'? [01:42] tjholowaychuk: not sure what you mean [01:43] cpetzold: if i wanted :blah to match both 'foo' and 'foo/bar'? [01:44] tjholowaychuk: app.get('/user/:id/:operation?', ...) that sort of thing? [01:44] ngs has joined the channel [01:44] cpetzold: yeah, essentially i'm using namespace in conjunction with param().. so i'm doing [01:44] gxdssoft has joined the channel [01:44] cpetzold: server.namespace(':story', …) [01:45] tjholowaychuk: gotcha [01:45] abjorn has left the channel [01:45] konobi: tjholowaychuk: no of anyone who's doing chained routes? [01:45] cpetzold: and i want everything under the 'story' namespace to match both the id, and the namespaced value (which can have /'s [01:45] aconbere has joined the channel [01:46] tristanseifert has joined the channel [01:46] tjholowaychuk: konobi: app.get('/user', fn).get('/pets', fn) for /user/pets ? is that what you mean? [01:46] jMerliN has joined the channel [01:46] lmorchard has joined the channel [01:46] konobi: tjholowaychuk: kinda [01:47] tjholowaychuk: cpetzold hmm well * can span across /'s [01:47] tjholowaychuk: /file/* to match GET /file/javascript/jquery.js etc [01:47] cjm has joined the channel [01:48] base698 has joined the channel [01:48] konobi: tjholowaychuk: it's not just about the paths... but also internal functions [01:49] matomesc has joined the channel [01:49] harth has joined the channel [01:51] tjholowaychuk: konobi internal functions? [01:51] konobi: tjholowaychuk: https://metacpan.org/module/Catalyst::Manual::Tutorial::04_BasicCRUD#CONVERT-TO-A-CHAINED-ACTION [01:51] konobi: that's all i can think of right now [01:52] pixel13 has joined the channel [01:52] pixel13 has left the channel [01:53] dannycoates has joined the channel [01:53] tjholowaychuk: not sure i get it [01:53] Drakonite has joined the channel [01:54] konobi: where it has Chained('/') means , chain these routes to / [01:54] coreb has left the channel [01:54] konobi: however, you can also Chained('some_other_chain') [01:55] konobi: for example... Chained('authorized_only') [01:55] tjholowaychuk: oh just namespacing but with a chaining syntax? [01:56] konobi: ah... http://www.catalystframework.org/calendar/2006/10 [01:57] tjholowaychuk: ah ok that explains it better [01:57] perezd has joined the channel [01:57] tjholowaychuk: haven't seen anyone try that yet [01:58] tjholowaychuk: could be cool, should be easy to implement ontop of the existing stuff [01:59] odie5533: What type is data when using socket.write(data)? [01:59] tjholowaychuk: string/Buffer [01:59] ekryski has joined the channel [01:59] odie5533: Is string UTF8, ascii, or either? [02:00] tjholowaychuk: you can pass the encoding to write() as the second arg [02:00] neoesque has joined the channel [02:00] cpetzold: tjholowaychuk: i know * spans across /'s, but there would be no way to make a param() call span /'s? [02:00] dominucco has joined the channel [02:00] Borgoluzzuo has joined the channel [02:00] konobi: tjholowaychuk: yeah, takes a while to wrap ones head around, but it's pretty useful from a DRY point of view [02:01] tjholowaychuk: cpetzold: not positive right now, :name(*) should work as an app.param() [02:01] tjholowaychuk: good question [02:01] tjholowaychuk: let me double check [02:01] tjholowaychuk: konobi yeah. im fine with stuff like that as third-party extensions. it's just a massive PITA when you dont have access to the lower level stuff like express provides [02:01] tjholowaychuk: but easy to build upon [02:02] odie5533: I am having trouble working with string encodings. I have a Buffer of integers (chars) and I want to escape some of the characters to be multibyte (5 bytes actually) representations of the int/chars. What data type should I use to accomplish this? [02:02] Borgoluzzuo: Anyone have any idea on a quick fix for this guy right here? https://github.com/isaacs/npm/issues/1231 [02:03] arlolra: tj: is it bad to attach custom events to app? [02:03] odie5533: Borgoluzzuo: I think we'd need to see the JSON response he is receiving. [02:04] tjholowaychuk: arlolra nah should be fine, express doesn't emit anything custom so you only have to worry about collisions with node's regular events [02:04] tjholowaychuk: or you could have app.stats = new EventEmitter; or something [02:04] tk has joined the channel [02:04] tjholowaychuk: whatever it's for [02:04] arlolra: i will name space them [02:05] Borgoluzzuo: odie5533: Hm, let me see if I can find it out. [02:05] arlolra: how would one emit those from inside a route? [02:05] speialstephen has joined the channel [02:05] tjholowaychuk: if the app isnt in scope you can do req.app.emit() [02:05] ekryski has joined the channel [02:05] tjholowaychuk: not really public but it's there so settings can be referenced inside req/res method etc [02:05] arlolra: ahh [02:05] arlolra: ty ty [02:05] speialstephen: try [02:06] Acolyte has joined the channel [02:06] tophatmike_: if anyone cares is was a DNS issue... [02:06] tophatmike_: my resolve.conf file was messed up [02:08] luke` has joined the channel [02:09] Nican_ has joined the channel [02:09] jerrysv has joined the channel [02:10] matomesc has joined the channel [02:11] arlolra: tj: similarly, would there be app.req.db? [02:11] CIA-65: libuv: 03Ben Noordhuis 07master * r041d60e 10/ src/uv-unix.c : (log message trimmed) [02:11] CIA-65: libuv: uv-unix: avoid exec-after-fork race in uv_spawn() [02:11] CIA-65: libuv: The race condition in a nutshell: [02:11] CIA-65: libuv: if ((pid = fork()) > 0) { [02:11] CIA-65: libuv: kill(pid, SIGTERM); [02:11] CIA-65: libuv: } [02:11] CIA-65: libuv: else if (pid == 0) { [02:11] halfhalo-work has joined the channel [02:11] arlolra: woops, req.app.db [02:11] tjholowaychuk: arlolra: yeah if you had a .db property on the app initially [02:12] amiller has joined the channel [02:12] arlolra: thanks [02:12] arlolra: is that not public as well? [02:13] arlolra: horrible english arlo [02:13] tjholowaychuk: express doesn't have any database stuff so that was probably added by someone else [02:13] cpetzold: tjholowaychuk: param() doesn't seem to like :story* [02:14] cpetzold: :name(*) * [02:14] Nican_ has joined the channel [02:14] emmanuel_ has joined the channel [02:14] arlolra: ahh, right. thanks for all the help [02:14] tjholowaychuk: np [02:14] CrabDude has joined the channel [02:14] cpetzold: only other way i can think to do the same with namespace is using some middleware on the namespace [02:14] arlolra: when are we doing node-victoria? [02:14] tjholowaychuk: cpetzold https://gist.github.com/1126794 [02:15] tjholowaychuk: arlolra haha no clue [02:15] tjholowaychuk: there's how many of us? 3? [02:15] Nican_ has joined the channel [02:15] arlolra: party [02:15] arlolra: you ever in fernwood? [02:16] cpetzold: tjholowaychuk: aha! brilliant :) [02:16] sechrist has joined the channel [02:20] Marak_ has joined the channel [02:20] Marak_: reporting in from HP HQ in sunnyvale [02:20] Marak_: node.js party [02:20] Marak_: doing dnode and hook.io talks [02:21] tjholowaychuk: grab me a palm! [02:21] sechrist: I opened this tab to ask if there was a WebOS based chromebook competitor [02:21] sechrist: give us the low-down bro [02:22] tjholowaychuk: i love antirsi [02:22] tjholowaychuk: it really doesnt leave you alone [02:22] sechrist: tjholowaychuk: does it actually help? [02:22] tjholowaychuk: kinda [02:23] brianloveswords_ has joined the channel [02:23] tjholowaychuk: it works for a few days then i just kill it [02:23] tjholowaychuk: trying to get in the habit again [02:23] Lorentz: What is this antirsi and what does it do [02:24] tjholowaychuk: repetitive strain injury [02:24] broofa has joined the channel [02:24] tjholowaychuk: it's this annoying thing [02:24] tjholowaychuk: that pops up and tells you to get off your ass [02:24] arlolra: sounds horrible [02:24] tjholowaychuk: hahaha [02:24] sechrist: Is it hive-mind aware? [02:24] tjholowaychuk: yeah it kinda is [02:24] Lorentz: Ah, one of those screen locking things with timers on it. [02:24] sechrist: what if I want to break with coworkers/ [02:24] tjholowaychuk: 8 minute break time [02:24] tjholowaychuk: haha [02:24] sechrist: when I worked at hostgator we had a break queue webapp thing, was kind of interesting [02:25] tjholowaychuk: ACTION postpones [02:25] tjholowaychuk: computers need to be powered by a bike or something so you have no choice [02:26] sechrist: I would wire in a battery because I would get tired of biking [02:26] loveshine has joined the channel [02:28] admc has joined the channel [02:29] halfhalo-work has joined the channel [02:30] odie5533: Can I use default parameters for creating functions in node? [02:31] tjholowaychuk: odie5533 js doesn't have default argument values [02:31] sivy has joined the channel [02:31] ericmuyser has joined the channel [02:31] odie5533: I saw something like typeof param == 'undefined' [02:31] tjholowaychuk: you'll see stuff like function foo(str) { str = str || 'foo' [02:32] CIA-65: node: 03Ben Noordhuis 07master * r30d20cf 10/ (2 files in 2 dirs): Revert commits 12c8b27 and 88f416a, fixed properly in 2fe4558. - http://bit.ly/qHYjLM [02:32] CIA-65: node: 03Ben Noordhuis 07master * r2fe4558 10/ deps/uv/src/uv-unix.c : [02:32] CIA-65: node: uv: cherry-pick libuv commit 041d60e into node [02:32] CIA-65: node: Fixes execve-after-fork race in uv_spawn(). - http://bit.ly/mPi27O [02:33] kawaz has joined the channel [02:33] ringomanatee has joined the channel [02:38] yuroyoro has joined the channel [02:38] clifton: anyone know which vim colorscheme ryah uses? [02:41] gg777 has joined the channel [02:41] tmpvar has joined the channel [02:42] odie5533: I am using Lazy(this.socket).lines.forEach within my object, and I seem to have lost scope of my object when it emits the event (the /this/ keyword no longer works). How do I keep scope of my object in this callback? [02:43] tjholowaychuk: odie5533 js functions are unbound [02:43] tjholowaychuk: so "this" is just whatever the receiver is [02:44] tjholowaychuk: foo.bar() this == foo ; baz.bar = foo.bar; baz.bar() this == baz [02:44] tjholowaychuk: same function [02:44] odie5533: I am so bad at JS. So how do I access variables of an object from the receiver? [02:44] samBiotic has joined the channel [02:45] tjholowaychuk: you can do stuff like server.on('something', myobj.something.bind(myobj)) [02:45] tjholowaychuk: the bind method does some closure hackery to use the given object as the receiver [02:45] cpetzold: tjholowaychuk: another question about namespace/param.. can i force next() within param() to break out of a namespace? https://gist.github.com/256331a5da03f1809bf5 [02:47] odie5533: tjholowaychuk: is .bind a prototype function of all objects? [02:48] tjholowaychuk: odie5533 Function.prototype [02:48] markbao has joined the channel [02:48] odie5533: tjholowaychuk: Is it from Node.JS? [02:48] tjholowaychuk: nope [02:48] tjholowaychuk: v8 [02:48] v8bot_: tjholowaychuk: undefined [02:49] tjholowaychuk: hahaha [02:49] jerrysv: v8bot_++ [02:50] catb0t: v8bot_ now has 1 beer [02:50] v8bot_: jerrysv has given a beer to v8bot_. v8bot_ now has 1 beers. [02:50] soapy_illusions has joined the channel [02:50] maru_cc_ has joined the channel [02:51] soapy_illusions: hey, does anyone know a way to get the line number of the calling function (arguments.callee.caller) [02:52] ale has joined the channel [02:53] ale: Hello, when I have var news = io.of('/news'){... what is /news? is for example localhost/news ? [02:53] ale: decime [02:54] ale: anyone? [02:56] pixel131 has joined the channel [02:57] pixel131 has left the channel [02:59] xerox: ale: what's io ? [02:59] balaa has joined the channel [02:59] ale: socket.io [02:59] odie5533: tjholowaychuk: Should I avoid using the .bind function, or is it okay to use to continue using the this keyword to acccess my object's variables? [02:59] qcom has joined the channel [03:00] tjholowaychuk: odie5533 it's fine [03:00] qcom: is it possible to set an element's id attribute via interpolation in jade? [03:00] tjholowaychuk: qcom just do mytag(id=whatever) [03:01] tjholowaychuk: looks better than interpolation anyway [03:01] qcom: indeed it does, thanks [03:01] odie5533: tjholowaychuk: Is there a better method to look out for? Or is this the best way to access class variables from an event receiving function? [03:01] tjholowaychuk: odie5533 well or you just do function(){ obj.foo() } [03:01] tjholowaychuk: depends on how much work you are doing [03:01] tjholowaychuk: that vs obj.foo.bind(obj) [03:01] tjholowaychuk: but if you're doing other stuff do the closure [03:01] swaj has joined the channel [03:01] swaj has joined the channel [03:02] xerox: ale: do you mean 'on' not 'of' ? [03:02] galaxywatcher has joined the channel [03:02] xerox: ale: ha no, you mean of, it's a namespace. [03:02] ale: yess [03:03] xerox: and yes, that maps exactly to what you described [03:03] xerox: to use on the client side [03:03] ale: xerox: I want io or node, to get a random url, let's say localhost/test/juE2 [03:03] ale: how can I get that last "juE2"? [03:05] xerox: what you mean by 'get' [03:05] DTrejo has joined the channel [03:07] bradleymeck has joined the channel [03:07] aoberoi has joined the channel [03:09] ale: xerox: I mean make node recognize that last random id [03:09] ale: xerox: let's say I want a multi-room chat [03:09] chrislorenz has joined the channel [03:11] tjholowaychuk: lol [03:11] tjholowaychuk: var isArray = (Array.isArray(headers)); [03:11] tjholowaychuk: people are weird sometimes [03:11] chjj: too many parantheses [03:12] chjj: i mean [03:12] chjj: parentheses ;) [03:12] tjholowaychuk: i've seen all kinds of funky stuff [03:12] tjholowaychuk: (new(Foo())) [03:12] chjj: i used to overdo it like that in my early days [03:13] chjj: i used to do, `foo1 = !!(foo2 === 1);` [03:13] nickradford has joined the channel [03:13] chjj: now i just do `foo1 = foo2 === 1;` [03:13] materialdesigner: LOL [03:13] nickradford: Anyone having issues building node on osx lion? [03:13] chjj: hehe [03:14] nickradford has joined the channel [03:14] chjj: what is an osx lion? does it eat people? [03:14] nickradford: chjj: I mean, really? [03:14] chjj: ;p [03:15] nickradford: Here's a gist: https://gist.github.com/1126853 [03:16] clifton: are you building node off of HEAD [03:17] nickradford: clifton: master, if that's the same as HEAD [03:17] chjj: hm, no idea, are you trying to build 0.5.4pre? [03:17] clifton: yeah latest [03:17] chjj: go with 0.4.10 if you want something stable [03:17] clifton: yeah or just go latest unstable release [03:18] clifton: there's been some patches to libuv tonight that may have broken the node compilation [03:18] ryanj has joined the channel [03:18] ale: Guys, what do you think about creating a multi-room chat? [03:18] nickradford: Thanks you guys, do you think 0.5.3 will build? [03:19] chjj: yeah, try 0.5.3, its probably more stable than head [03:19] clifton: yeah use the 0.5.3 tag though [03:19] yhahn has joined the channel [03:20] chjj: but go for v0.4.10 if you want a better feeling of security i guess [03:20] jasong_at_apache: anyone use no.de? [03:20] adrianmg has joined the channel [03:22] cccaldas has joined the channel [03:24] nickradford: chjj: clifton: It looks like 0.5.3 is working, thanks for the help :) [03:27] mcluskydodallas has joined the channel [03:30] mcluskyd_ has joined the channel [03:31] sub_pop has joined the channel [03:31] Nexxy has joined the channel [03:31] Nexxy has joined the channel [03:31] devongovett has joined the channel [03:33] yhahn has left the channel [03:34] slifty_corsair has joined the channel [03:37] CrankyMonkey has joined the channel [03:38] ale: How can I use the url module from node? [03:38] slifty_corsair has joined the channel [03:38] chjj: require('url') [03:38] materialdesigner: var url = require('url'); [03:39] ale: yes [03:39] ale: but how do I use it afterwards? [03:39] materialdesigner: url.whateverYouWant() [03:39] chjj: url.parse if you want to parse url's [03:39] CrankyMonkey: ale: http://nodejs.org/docs/v0.4.10/api/url.html [03:39] ale: I'm in there [03:39] ale: thanks [03:40] CrankyMonkey: ok [03:40] ale: but for example [03:40] ale: url.protocol ?? [03:40] zackattack has joined the channel [03:41] ale: should show the protocol? [03:41] joshthecoder: url.parse(http://nodejs.org/docs/v0.4.10/api/url.html).protocol == 'http' [03:41] CrankyMonkey: it will be somethign like "http", "https", '"ftp", etc... [03:41] ale: but if I don't how what's the url? [03:41] ale: what should I write? [03:42] joshthecoder: what are you trying to do exactly? [03:42] ale: a multi-room chat with specific room id which will be found in the url [03:42] airportyh has joined the channel [03:43] CrankyMonkey: are you trying to figure out what the REQUEST_URI is? [03:43] blueadept has joined the channel [03:43] blueadept has joined the channel [03:43] ale: kind of, let's say that I have my.page/blabla/j28S [03:43] ale: then j28S will be the ID, I want to get that [03:44] CrankyMonkey: Are you using a framework like Express or Connect or just a plain Node.js server like the examples? [03:44] ale: I am using Node.js and Socket.IO but have no problem on using any of those that you said [03:45] e6nian has joined the channel [03:45] zer0- has joined the channel [03:45] CrankyMonkey: You can do a regex on the request.url [03:46] CrankyMonkey: it might be easier if you posted a Gist so we could see the code [03:46] skm has joined the channel [03:46] ale: CrankyMonkey: Anyway, afterwards I want to make like a private chat rooms, so messages will be keep in each room id [03:47] ale: CrankyMonkey: There's no code to show, I didn't write anything of the url [03:48] ale: CrankyMonkey: However: http://pastebin.com/nQSfbhzU [03:49] Laurent3 has joined the channel [03:49] ale: CrankyMonkey: Are you there? [03:49] CrankyMonkey: yeah [03:49] jhurliman has joined the channel [03:50] CrankyMonkey: in "http://localhost:81/socket.io/socket.io.js" you trying to capture the path basically? [03:50] ale: Yes [03:50] ale: But that's not the problem [03:51] ale: I've read something like io.sockets.join, for the private rooms [03:51] ale: but I can't get the id!! [03:52] smtlaissezfaire has joined the channel [03:52] zk has joined the channel [03:57] aoberoi has joined the channel [03:57] towski has joined the channel [04:00] wookiehangover has joined the channel [04:02] jvdev has joined the channel [04:02] srid has joined the channel [04:02] srid has joined the channel [04:03] meso_ has joined the channel [04:04] CrankyMonkey: what's the API for the client [04:04] CrankyMonkey: or socket [04:04] CrankyMonkey: I think https://github.com/LearnBoost/socket.io-spec [04:05] frewsxcv has left the channel [04:06] CrankyMonkey: so in your example you should beable to get that information from the client argument in the callback for on('connection'...) [04:07] soapy_illusions has joined the channel [04:07] spcshpopr8r has joined the channel [04:07] boehm has joined the channel [04:08] CrankyMonkey: what does console.log(client) give you? [04:08] soapy_illusions has left the channel [04:08] ale: CrankyMonkey: Pardon me? I didn't get you [04:09] ale: Can't I make io and express to listen on the same port?? [04:09] odie5533: How can I specify like substring(0,-2)? is that not possible? [04:10] dexter_e has joined the channel [04:10] CrankyMonkey: in server.js [04:11] CrankyMonkey: comment out console.log( 'Someone connected from ' + url.parseprotocol); and replace with console.log(client) [04:11] loveshine_ has joined the channel [04:11] CrankyMonkey: then put that in a pastebin [04:11] rurufufuss has joined the channel [04:12] pylon__ has joined the channel [04:13] ale: ok 1 sec [04:13] CrankyMonkey: here is the socket.io spec [04:13] CrankyMonkey: https://github.com/LearnBoost/socket.io-spec [04:14] jvdev has joined the channel [04:15] ale: CrankyMonkey: WOW! http://pastebin.com/N6MtqquH [04:15] ale: What's all of that? [04:17] CrankyMonkey: looks like client.namespace.manager.name is the endpoint [04:18] bartt has joined the channel [04:18] ale: CrankyMonkey: So if I have /testnode/123 [04:18] ale: how do I get that 123? [04:18] jslatts has joined the channel [04:18] ale: I have that on the url! [04:18] CrankyMonkey: so if you change the end point from http://localhost:81/testnode/1 then client.namespace.manager.name should be /testnode/1 [04:19] ale: Oh but I won't know that! [04:19] materialdesigner: ... [04:19] ale: I mean, it can be 1 as 1920380 [04:19] materialdesigner: that's not the point [04:19] ale: What do you mean? [04:20] jesusabdullah: You people and your linters [04:21] dexter_e has joined the channel [04:22] McMAGIC--Copy has joined the channel [04:22] mjijackson has joined the channel [04:25] willwhite has joined the channel [04:25] fmeyer has joined the channel [04:26] lupomontero has joined the channel [04:26] mjijackson: Good evening #node.js [04:26] chjj: good evening sir [04:26] jtsnow has joined the channel [04:29] mjijackson: did anybody here make it to the node meetup? [04:29] mjijackson: don't know how i missed it. i work right downtown in sf! [04:29] jesusabdullah: holy shit, I just realized I had somehow scrolled up to yesterday afternoon [04:30] jesusabdullah: mjijackson: Which one? [04:30] jesusabdullah: mjijackson: there was a shindig in sunnyvale I hear [04:30] mjijackson: jesusabdullah: http://nodejs.org/meetup/ [04:31] jesusabdullah: Ah! I wasn't actually aware of that one [04:32] fangel has joined the channel [04:32] AAA_awright: That's almost 7 hours away from me! [04:32] AAA_awright: Node.js needs more local users groups [04:33] AAA_awright: Hmm, anyone else in Arizona? [04:36] dherman has joined the channel [04:36] jesusabdullah: You're in AZ? Oh man [04:37] CrankyMonkey: I'm in AZ [04:37] CrankyMonkey: Gilbert [04:39] PatrickC has joined the channel [04:39] PatrickC: can I use node.js to write a script? [04:39] PatrickC: like something to generate a few files/folders [04:40] Nexxy: you can use node.js to do anything your heart desires [04:40] odie5533: Is most of node.js coded in C? Like is the TLS stuff coded in C? [04:40] Nexxy: as long as you have love in your heart! [04:40] PatrickC: Nexxy: so its possible? cool [04:40] willwhite has joined the channel [04:40] Nexxy: PatrickC, not only is it possible, but it's also well documented! http://nodejs.org/docs/v0.4.10/api/fs.html [04:41] Nexxy: (oh, and you have to smile too) [04:41] Nexxy: :) [04:41] PatrickC: thanks! [04:41] Nexxy: ^-^ [04:42] PatrickC: this will make it a lot easier for me then trying to write a bash script! :) [04:42] Nexxy: mhmm! [04:42] PatrickC: ACTION <3's JS! [04:42] Nexxy: ACTION concurs [04:43] PatrickC: thanks [04:43] PatrickC: I'll be back if I need more help :% [04:43] PatrickC: :) * [04:43] Nexxy: good luck out there! :) [04:44] androoid has joined the channel [04:44] unlink has joined the channel [04:44] Lorentz: Hmm, needs nodejs gui binding [04:44] PatrickC: thanks Nexxy!! [04:44] PatrickC has left the channel [04:44] Lorentz: Maybe to the extent of having a DE/WM configurable in js [04:47] Swizec has joined the channel [04:47] jesusabdullah: oh man it looks like I missed something [04:48] jesusabdullah: PatrickCcccc :( [04:48] jesusabdullah: I was gonna tell him that node.js cli scripts are my favoritest thing [04:49] Nexxy: he'll be back [04:51] jesusabdullah: I will be ready >:| [04:52] jesusabdullah: "Hey man I have a question" "Writing cli stuff in node is my favoritest thing." "oh okay but can I have help--" "NOPE" [04:52] zeade has joined the channel [04:53] nsm has joined the channel [04:57] kenperkins has joined the channel [04:57] zackattack has joined the channel [04:58] halfhalo: oh, oh god. I am so sorry you guys had to deal with PatrickC. [04:59] dodger has joined the channel [05:00] Nuck: halfhalo: He didn't seem too bad :P [05:00] Nuck: Just normal bad. [05:01] halfhalo: no, he is on a level all his own. 15 years old and homeschool. its so bad it went through the funny stage and is painful [05:01] Nuck: D: [05:01] Nuck: That is pretty bad [05:01] Nuck: I may be 17, but at least I went to public schools. [05:02] Nuck: in socket.io, is it possible to remove all event bindings in one fell swoop? [05:03] halfhalo: ACTION saw the hookio and dnode stuff tonight and was pretty impressed [05:03] Nuck: I wanna see if I can make my chat server capable of restarting without disconnecting any clients. [05:03] Nuck: ACTION sees nothing but text [05:03] odie5533: Nexxy: Thanks for the fs link. Are all the fs functions implemented on Windows? [05:03] Nexxy: odie5533, I have no clue when it comes to windows ;< [05:04] cjm has joined the channel [05:04] Nuck: I just use Cygwin [05:04] odie5533: I heard someone say child processes and some other things don't work yet. [05:04] Nuck: I don't like Windows' fs. [05:04] Nuck: Pretty sure they're actively working on making child_process work on Windows right now [05:04] Nuck: I think that's the current project [05:05] odie5533: hmm, guess I'll have to try some fs functions and find out! [05:05] Nuck: I imagine the FS functions wortk [05:05] Nuck: I just want mah NPM on windows! [05:05] Nuck: Until then, I'm using Cygwin [05:06] odie5533: How does, for instance, Expresso or any other web framework read in template files? [05:06] Nuck: hell, I may still use Cygwin even after that [05:06] Nuck: Expresso? [05:06] Nuck: As in [05:06] Nuck: ... [05:06] odie5533: *express [05:06] odie5533: sorry hah [05:06] Nuck: Made me think of CoffeeScript [05:06] Nuck: I was just thinking "Ah fuck, not another CS template engine" [05:06] odie5533: Do they read in using fs functions, then use JS functions to for parsing? [05:07] Nuck: yup [05:07] Nuck: How else? [05:07] fairwinds has joined the channel [05:07] aoberoi has joined the channel [05:07] Nuck: Did you think they just magically teleport data from the hard drive to their program? [05:07] Nuck: tj may be good, but he isn't *that* good. [05:07] kenperkins: o/ [05:07] odie5533: I need to do some file hashing. So I figure I should do all the magic in C. [05:08] Nuck: odie5533: Eh? Express is 100% JavaScript, just FYI [05:08] Nuck: It seemed like you might not have realized this. [05:08] odie5533: I did not realize that. [05:08] Nuck: Yeah, Node provides Filesystem functions. [05:09] Nuck: Async FS calls. [05:09] odie5533: A lot of the modules I looked at use C for some things. [05:09] Nuck: Many do. [05:09] Nuck: For intensive tasks on binary data, C will generally be faster. [05:09] mjijackson has joined the channel [05:09] Nuck: But for simple things like loading data from plaintext files? Node is better. [05:10] loveshine_ has joined the channel [05:11] jesusabdullah: halfhalo: Word re: seeing dnode and hook.io. I would've gone if it wasn't so far away :( [05:11] jesusabdullah: Also I see those two guys pretty often [05:11] Nuck: jesusabdullahWho? [05:11] jesusabdullah: SubStack and Marak [05:12] Nuck: ahhhh [05:12] dominictarr: odie5533: there is a crypto module which has a hash futction [05:14] saikat has joined the channel [05:15] abraxas has joined the channel [05:16] seivan has joined the channel [05:17] cying has joined the channel [05:17] broofa has joined the channel [05:19] odie5533: Are the hash functions performed in C? [05:19] jesusabdullah: wouldn't it be c++ *anyway* ? [05:19] Nuck: jesusabdullah: Valid point lol [05:19] jesusabdullah: but yeah, I actually don't know [05:19] Nuck: It is C++ [05:20] jesusabdullah: That said, if you're asking in the interest of performance reasons [05:20] odie5533: I am. I need to hash many GB of data. [05:20] jesusabdullah: v8 is optimised really well but has a pretty big overhead for invoking ffi action [05:20] jesusabdullah: SO, in a lot of cases it's a wash, or even a win for js [05:20] jesusabdullah: idk about yours [05:20] odie5533: probably > 1 TB of files I need to hash. [05:20] davidascher has joined the channel [05:21] jesusabdullah: I bet it's in c++ but I wouldn't know [05:21] dgathright has joined the channel [05:21] Nuck: crypto is c++ [05:21] Nuck: It's hooks to OpenSSH IIRC [05:21] Nuck: err [05:21] Nuck: OpenSSL [05:21] jesusabdullah: odie5533: I was talking to mikeal once about doing linear algebra in c++ with node.js and he said that even in that case it would probably be a bad idea to go into c++ for perf. reasons [05:22] jesusabdullah: and, I mean, that's usually a case where you *really* want to be on the metal, y'know? [05:22] ekryski has joined the channel [05:22] cj_ has joined the channel [05:22] Nuck: odie5533: Is it lots of small files or few big files? [05:22] jesusabdullah: if that's the case, it must be a pretty huge overhead! :( [05:22] odie5533: Nuck: mix [05:22] Nuck: a few big files, probably go to C++ and call it per file in JS [05:22] odie5533: jesusabdullah: well, hashing files involves both I/O and CPU [05:22] Nuck: If it's a lot of small files, go with JS for most of it [05:23] Nuck: holy fuck [05:23] Nuck: deviantART [05:23] Nuck: Has over 1000 CSS errors [05:23] jesusabdullah: odie5533: as does linear algebra? Most of what supercomputers are doign these days is linear algebra from what I understand [05:23] jesusabdullah: Holy balls, Nuck [05:23] Nuck: and over 450 HTML errors [05:24] Nuck: D: [05:24] Nuck: jesusabdullah: Inorit [05:24] jesusabdullah: How do you get enough css to even amass that many errors? [05:24] jesusabdullah: or html for that matter [05:24] odie5533: Nuck: Artists can not be containted, not even by the W3C. [05:24] Nuck: jesusabdullah: Bundling and shitty code [05:24] jesusabdullah: yessch [05:24] jesusabdullah: lol, artists <3 [05:24] Nuck: Their menu bar uses [05:24] Nuck: .... [05:24] Nuck: TABLES [05:24] jesusabdullah: Wes, artists suck at css, I say this as an amateur artist [05:24] odie5533: The menu bar I wrote uses tables too.... back in 1999. [05:24] jesusabdullah: s/css/html/ [05:24] jesusabdullah: I only use tables for like [05:24] jesusabdullah: tables [05:25] jesusabdullah: nowadays [05:25] Nuck: odie5533: This is in v7, released... A year ago? Maybe 2 years? [05:25] jesusabdullah: though in the early 2000s I would break out tables for layout still [05:25] mape: doesn't vendor prefixes count towards those "errors"? [05:25] dnjaramba has joined the channel [05:25] Nuck: mape: Possibly, but they barely touch CSS3 [05:25] jesusabdullah: yeah, like, fall 2004 was the last time I used tables for layout [05:25] jesusabdullah: vendor prefixes? What are those? [05:26] Nuck: They use 3 tags at the top and bottom of boxes to make rounding [05:26] audreyr has joined the channel [05:26] jesusabdullah: ...I'm REALLY not in touch with client-side you guys :( [05:26] Nuck: And use images for gradients [05:26] mape: jesusabdullah: -webkit-transition: all 1s linear; [05:26] jesusabdullah: oh that kinda stuff okay [05:26] Nuck: jesusabdullah: What's worse, they had used DIVs when they first released v7 [05:26] mape: -ms -moz -o etc etc [05:26] Nuck: Then, for some retarded reason, they devided to switch to tables. [05:26] jesusabdullah: Nuck: Maybe they did it in a last ditch effort to support ie6? [05:26] Nuck: jesusabdullah: lol [05:26] jesusabdullah: They were doing it live i bet [05:27] jesusabdullah: oh geez, it occurs to me that there is an exact parallel in software to doing it live [05:27] Nuck: But still [05:27] jesusabdullah: pushing to production [05:27] jesusabdullah: D: [05:27] jesusabdullah: new goal: Do it live, don't fuck up [05:27] Nuck: 1100 errors in the CSS on their main page alone? [05:27] Nuck: That's what we got when we sent it through Unicorn. [05:28] vns has joined the channel [05:28] odie5533: crypto on windows doesn't even support crc32.. [05:28] jesusabdullah: node on windows is still beta yo [05:28] Nuck: Does it support MD5? [05:28] odie5533: yes [05:28] jesusabdullah: I wouldn't even mess until v0.6 [05:29] odie5533: jesusabdullah: I am on windows. what would you propose? [05:29] jesusabdullah: throw some linux on dat bitch clearly [05:29] jesusabdullah: alternately, vm it up [05:29] jesusabdullah: or cygwin [05:29] Nuck: http://validator.w3.org/unicorn/check?ucn_uri=deviantart.com%2F&ucn_task=full-css&warning=no&usermedium=all [05:29] Nuck: Yup [05:29] Nuck: 1176 errors [05:29] Nuck: So almost 1200 [05:29] jesusabdullah: that was what peeps did before 0.5 [05:29] odie5533: I didn't even know css had errors. [05:29] materialdesigner: Nuck: I've seen the use of for rounding, etc [05:29] Nuck: Level 3: 1020 [05:30] materialdesigner: when they want to add hooks "without adding semantics" [05:30] samba_ has joined the channel [05:30] Nuck: odie5533: Apprently dA doesn't either. [05:30] materialdesigner: since i and b are the smallest tags [05:30] jesusabdullah: Well, every language has a sense of errors [05:30] Nuck: materialdesigner: IT's sorta understandable, but that's not adding to the CSS errors. [05:30] samba_: can we compile node x86_64? [05:30] jesusabdullah: Why would work for rounding? [05:30] jesusabdullah: I don't understand :/ [05:30] jesusabdullah: samba_: afaik yes [05:30] davidbanham: odie5533: Grab an AWS free tier server as a development environment. [05:30] materialdesigner: the doesn't make it rounded, but it gives you something to hook your CSS to [05:30] jesusabdullah: ah [05:30] materialdesigner: so you can do i { // do shit here to round it } [05:30] jesusabdullah: ballsy [05:31] jesusabdullah: I'd just use a span :/ [05:31] jesusabdullah: Does that make me weird? [05:31] materialdesigner: yeah, a span is the appropriate semanticless element [05:31] Nuck: jesusabdullah: They do three rows of tags, position them on the top and bottom of the element, then resize them to make a pixelly rounding. [05:31] materialdesigner: but people think i's don't have meaning, and they are 3 chars shorter than span [05:31] Nuck: They also put another set of i tags in the i tags. [05:31] jesusabdullah: isn't i for italic? [05:31] jesusabdullah: italics are important! [05:31] materialdesigner: which is presentational, and not semantic [05:31] Nuck: jesusabdullah: It's :P [05:31] Nuck: lol [05:31] jesusabdullah: wat [05:31] jesusabdullah: are you sure? [05:31] Nuck: and [05:31] jesusabdullah: wth is then? [05:32] odie5533: davidascher: I have a VPS to test my program on linux. But I want to develop on Windows. [05:32] materialdesigner: it used to mean italics [05:32] jesusabdullah: I know emboldens [05:32] Nuck: is the OLD tag [05:32] jesusabdullah: oh [05:32] Nuck: is ALSO an old tag [05:32] jesusabdullah: whaat [05:32] odie5533: davidbanham** [05:32] jesusabdullah: why did they deprecate that shit [05:32] Nuck: Both are deprecated in HTML5 [05:32] jesusabdullah: what a crock :C [05:32] Nuck: jesusabdullah: They provide styles in HTML [05:32] materialdesigner: they aren't deprecated, Nuck [05:32] Nuck: Which is bad [05:32] slajax has joined the channel [05:32] materialdesigner: they have been rebranded [05:32] Nuck: emphasis and strong are vague [05:32] catshirt has joined the channel [05:32] jesusabdullah: oh [05:32] jesusabdullah: well [05:32] materialdesigner: i now means "alternative voice" [05:32] jesusabdullah: it's silly anyway! [05:32] Nuck: materialdesigner: They *were going to be* deprecated. [05:33] materialdesigner: and b means something like "semantically offset" or some other nonsense [05:33] jesusabdullah: I'm going to call tim berners-lee right now [05:33] jesusabdullah: and tell him that whatwg is stupid [05:33] jesusabdullah: and he'll be like, "dude I thought html1 was where it was at you don't have to tell me" [05:33] materialdesigner: lol [05:33] Nuck: jesusabdullah: Meh, I mostly use spans with classes anyways :P [05:33] jesusabdullah: fuckin' [05:34] Nuck: I rarely need to emphasize text (since I do the layouts and not the content) [05:34] jesusabdullah: This is why I do latex [05:34] jesusabdullah: obtw I heard you can use javascript in pdf's [05:34] Nuck: Fuck LaTeX, use MArkdown. [05:34] jesusabdullah: tssch [05:34] jesusabdullah: I rock both motherfucker [05:34] jesusabdullah: Markdown is lightweight, but it's also lightweight. [05:34] jesusabdullah: Dig? [05:34] Nuck: *word* --> word [05:34] Nuck: And **word** --> word [05:34] Nuck: Or in newer implementations, and [05:34] jesusabdullah: hah [05:35] jesusabdullah: I love markdown, but for typesetting and equations latex can't be beat atm [05:35] Nuck: (because i and b are still frowned-upon from when they were slated to be removed in HTML5) [05:35] materialdesigner: I wish we used latex more often [05:35] jesusabdullah: I wrote https://github.com/jesusabdullah/anisotropy using latex [05:35] Nuck: jesusabdullah: Markdown for math would be AWFUL D: [05:35] jesusabdullah: and as you can see it looks awesome [05:35] themiddleman has joined the channel [05:35] descipher_ has joined the channel [05:36] jesusabdullah: Nuck: ? [05:36] materialdesigner: except