[00:00] isaacs: !git context joyent/node lib/events.js 100
[00:00] jhbot: 099 EventEmitter.prototype.addListener = function(type, listener) {
[00:00] jhbot: 100 if ('function' !== typeof listener) {
[00:00] Astro: gmt is utc, right?
[00:00] jhbot: 101 throw new Error('addListener only takes instances of Function');
[00:00] aaroninfidel: isaacs: https://gist.github.com/1100717
[00:00] isaacs: Astro: effectively, yes, they are the same.
[00:01] Astro: "Registration is full" ;(
[00:01] isaacs: Astro: except that GMT is a timezone, whereas UTC is a "universal time code", which happens to be in GMT+0
[00:01] isaacs: aaroninfidel: curl http://npmjs.org/install.sh | sudo sh
[00:01] TheJH: aaroninfidel, try "curl http://npmjs.org/install.sh | sudo sh"
[00:01] isaacs: aaroninfidel: or, download and run as root
[00:03] isaacs: that's dumb that it says "It worked" when it clearly didn't worik
[00:03] Astro: there it is
[00:03] Astro: "Register a Team"
[00:03] isaacs: i should fix that
[00:04] aaroninfidel: isaacs: ok, that worked.
[00:04] patrickjst has joined the channel
[00:04] aaroninfidel: now what?
[00:05] Astro: somebody should automate team registration and sell the entries on ebay ;)
[00:05] TheJH: aaroninfidel, re-run "npm install express" in the folder with your script
[00:06] aaroninfidel: TheJH: woo! it works.
[00:10] rauchg has joined the channel
[00:10] unomi has joined the channel
[00:12] Nuck: ACTION is super-happy
[00:12] Nuck: deviantART is destroying themselves FOR ME.
[00:13] blkcat: eh wot?
[00:13] Hurreman1: mscdex: You awake?
[00:13] Nuck: I won't even hafta compete at this rate, my site will just instantly steal all the folks who realized the retardation too late.
[00:13] dgathright has joined the channel
[00:14] visudo has joined the channel
[00:14] hippich has joined the channel
[00:14] hippich has joined the channel
[00:15] shanebo: kasper node-dev is just what i was looking for, thanks!
[00:16] vikstrous has joined the channel
[00:18] lemon-tree has joined the channel
[00:18] blakmatrix has joined the channel
[00:19] Nuck has joined the channel
[00:20] Murvin: anyone knows in Mongoosejs, other than String, Number and Date, is there a Bool data type?
[00:20] TooTallNate: Murvin: Should be 'Boolean'
[00:20] guest_574 has joined the channel
[00:20] Nuck: ACTION spontaneously restructures his Fakooda API code
[00:21] necrodearia has joined the channel
[00:21] Murvin: TooTallNate: ok.. kinda hard to read their documentation..
[00:21] TooTallNate: Murvin: it's a regular JavaScript data type
[00:21] aaroninfidel: anyone know how to get express to run scss rather then sass?
[00:21] Tobsn has joined the channel
[00:21] andersonfreitas has left the channel
[00:21] Nuck: As it stands, Fakooda's API code has the database connection shit lodged in with the API itself
[00:22] Murvin: ok.
[00:22] Nuck: And I think I'm gonna change that :D
[00:22] Murvin: got it.
[00:22] Murvin: :)
[00:22] Nuck: ACTION loves when he picks up a new structuring trick in JS
[00:27] markstory has joined the channel
[00:27] edude03_ has joined the channel
[00:27] Nuck: `if (err) return toErrIsHuman(err, req, res);` is probably one of the best tricks I've figured out for Node.
[00:31] tjholowaychuk has joined the channel
[00:31] xerox: is there a tutorial for putting a node.js project on github and avoid to put things like dependencies on,?
[00:32] TheJH: xerox, do you know ".gitignore"?
[00:33] TheJH: xerox, you can put a ".gitignore" file in your project folder. everything you mention there won't be included in your repo. so just put "node_modules" in it
[00:33] xerox: and then when one pulls it
[00:33] xerox: what does he do to create node_modules out of package.json?
[00:33] TheJH: xerox, here's more about gitignore: http://help.github.com/ignore-files/
[00:34] TheJH: xerox, he just does "npm install" and npm does magic
[00:34] igl: npm install -d
[00:34] xerox: excellent
[00:34] TheJH: xerox, npm will then read the package.json and install all dependencies mentioned in there
[00:34] TheJH: igl, I don't think that you need "-d"
[00:34] xerox: should I create the .gitignore before doing anything git-related
[00:34] xerox: now I just have a folder
[00:35] TheJH: xerox, it's probably a good idea
[00:35] xerox: perfect
[00:35] TooTallNate: isaacs: does `npm install -d` install the devDependencies or is it verbose output?
[00:35] TheJH: xerox, also see the github help page I linked to for global gitignore
[00:35] xerox: thanks : )
[00:41] Xeon06_ has joined the channel
[00:41] dscape: guys any recomendation on libraries to parse dates?
[00:41] dscape: anyone ported datejs to npm?
[00:42] TooTallNate: dscape: ∞ ~ (master) $ npm search datejs
[00:42] TooTallNate: datejs datejs, wrapped up as an npm package =chrisdew
[00:42] TooTallNate: so yes
[00:42] dscape: awesome
[00:42] dscape: thanks TooTallNate
[00:42] TooTallNate: no prob
[00:42] dscape: google search failed :P
[00:43] TheJH: dscape, use http://search.npmjs.org for npm
[00:43] TooTallNate: try search.npmjs.org next time, or just `npm search` from the cli
[00:44] slifty has joined the channel
[00:44] dscape: danka TheJH
[00:47] mscdex: Hurreman: yep
[00:48] ceej has joined the channel
[00:48] Hurreman: mscdex: remember that node-mysql issue I was talking about yesterday? I've done some more investigating today and found pattern
[00:51] Hurreman: I first thought that the query results looked random, but after a closer look - they seem to be coming in 8-10 second intervals
[00:56] Xeon06_ has joined the channel
[00:56] bwinton has joined the channel
[00:58] opsdfposdfosdf has joined the channel
[00:59] opsdfposdfosdf: hi! https.request only works with some websites (bug!?) :( This example gives me unknown errors http://pastebin.com/46w1nWHN
[01:00] xerox: how do you use npm to add the dependencies to package.json ?
[01:00] xerox: (of a project of yours)
[01:00] TooTallNate: xerox: npm install --save
[01:01] Xeon06_ has joined the channel
[01:01] opsdfposdfosdf: edit: only affects windows builds
[01:01] xerox: TooTallNate: hmm that doesn't do it (also npm help install does not bring up anything with 'save'?)
[01:02] TooTallNate: hhmhmm, I thought that was it, i'm pretty sure it's something undocumented/new
[01:03] xerox: TooTallNate: I just did npm init, and then created my files and npm install the various deps
[01:03] beriberikix: I'm almost out of Cygwin hell! http://twitpic.com/5u9eap
[01:03] xerox: ah I see TooTallNate thanks
[01:03] TooTallNate: xerox: https://github.com/isaacs/npm/issues/1054
[01:03] xerox: you mean install the deps with the --save
[01:03] xerox: so they get added
[01:04] xerox: excellent : )
[01:04] TooTallNate: supposedly it's in there
[01:04] xerox: and it works
[01:04] xerox: what does one usually put in for engine? >=0.4.10 ?
[01:05] TooTallNate: xerox: haha it wasn't working for me, but then I realized I was on 1.0.13, updating to 1.0.18 made it start working
[01:05] xerox: woo
[01:06] TooTallNate: xerox: for engine I would put: "engines": { "node": "0.4.x || 0.5.x" }
[01:06] TooTallNate: maybe not 0.5.x
[01:06] smtlaissezfaire has joined the channel
[01:06] TooTallNate: but that's up to you
[01:06] xerox: all the packages I saw do support very "old" versions of node
[01:07] xerox: I'll keep >=0.4.10 so I know it works : )
[01:07] TooTallNate: but do *you* support old versions of node, for your module. that's the question
[01:07] Murvin: Friday!!!! finally..
[01:07] TooTallNate: don't say it's supported unless you're sure it is
[01:07] TooTallNate: :p
[01:07] xerox: yeah I don't
[01:07] xerox: so my choice makes sense doesn't it
[01:07] kasper1 has joined the channel
[01:08] TooTallNate: no, >= 0.4.10 means ANY version of node before or equal to 0.4.10
[01:08] TooTallNate: so even 0.0.1 of node
[01:08] TooTallNate: which the module probably won't work on :p
[01:08] TooTallNate: 0.4.x means any version of node in the 0.4 releases, so the API should be close to stable
[01:09] TooTallNate: oh, wait, other way around
[01:09] xerox: before?
[01:09] TooTallNate: so the module is saying that it works on node 0.5... and 0.6... and 0.7....
[01:09] xerox: >= should be after
[01:10] TooTallNate: right, i was backwards for a sec
[01:10] xerox: I see what you mean tho
[01:10] xerox: OK
[01:10] xerox: what is the tilde?
[01:10] TooTallNate: where?
[01:10] xerox: ~0.2.1
[01:10] xerox: it appears in all the dependencies saved with --save
[01:10] dannycoates has left the channel
[01:11] d0k has joined the channel
[01:11] TooTallNate: ~1.2.3 := >=1.2.3 <1.3.0
[01:11] vikstrous has joined the channel
[01:11] xerox: cool I'll do that for the engine as well
[01:11] kasper has joined the channel
[01:12] wookiehangover has joined the channel
[01:12] mapleman has joined the channel
[01:12] mikeal has joined the channel
[01:12] TooTallNate: that should work (might be a little *too* strict though)
[01:14] anaio has joined the channel
[01:17] rauchg has joined the channel
[01:21] patrickjst has joined the channel
[01:26] Xeon06_ has joined the channel
[01:27] bradleymeck has joined the channel
[01:30] guidocalvano has joined the channel
[01:31] pen_ has joined the channel
[01:31] Xeon06_ has joined the channel
[01:32] jshaw has joined the channel
[01:36] Xeon06_ has joined the channel
[01:36] edude03 has joined the channel
[01:36] jdiamond has joined the channel
[01:37] andrewfff has joined the channel
[01:39] chjj: hmm, writing a markdown parser was harder than i thought it would be
[01:39] chjj: getting the lists right was annoying
[01:40] tbranyen: chjj: yeah i'd imagine
[01:40] tbranyen: what flavor of markdown are you using as your baseline?
[01:40] tbranyen: github i'd hope
[01:43] xerox: the ones already in npm are not good enough?
[01:44] jshaw has joined the channel
[01:44] chjj: tbranyen: yeah ill be including GFM stuff
[01:45] tbranyen: xerox: people say the same thing about template engines, and yet none work the way i want so i wrote my own
[01:45] tbranyen: big deal
[01:45] Xano has joined the channel
[01:45] chjj: xerox: theres basically 3 that im aware of, showdown - unmaintained, messy, discount - nice, but you need a binding and have to compile it, and then markdown-js - i havent used it, all i know is my parser and lexer are about 1000 lines less right now
[01:45] patrickjst has joined the channel
[01:46] xerox: tbranyen: no sure I mean, if they do lack functionality I will know and when I need one I will know where to look for it
[01:46] chjj: and i really want to optimize the hell out of it
[01:47] slifty has joined the channel
[01:47] chjj: so you can easily compile a *huge* chunk of markdown without blocking for a small amount of time
[01:47] xerox: there seem also to be node-markdown and robotskirt (which also needs a c lib)
[01:48] TheJH: !npm search markdown
[01:48] xerox: what will yours be called?
[01:48] jhbot: packages: discount, doc.md, dox, escrito, github-flavored-markdown, m2pdb, markdoc, markdown, markdown-js, markdown-wiki, markdown2html, nmd, node-markdown, pagen, reed, robotskirt, ronn
[01:48] chjj: all the cool names are taken =/
[01:49] chjj: gfm is just showdown, discount is a binding to discount, pretty sure "markdown" is just showdown again
[01:49] guidocalvano has joined the channel
[01:50] chjj: dont know about the others
[01:50] xerox: if it's fast you could {ap,pre}pend 'fast' to it : )
[01:50] chjj: well, ill have to see if it ends up being fast
[01:50] mnaser has joined the channel
[01:50] TheJH: fastdown :)
[01:50] chjj: im afraid to benchmark it
[01:50] chjj: havent optimized yet
[01:50] kasper has joined the channel
[01:51] TheJH: fastdown as in elevator >:D
[01:51] chjj: still need to implement all the other little MD features, like the "footnote" links
[01:51] edude03 has joined the channel
[01:51] xerox: have fun
[01:51] Aria has joined the channel
[01:52] tbranyen: xerox: i'm a contributor to roboskirt
[01:52] xerox: !
[01:52] tbranyen: chjj: pure js solutions are neat, but compiling a binding usually isn't too much of a problem
[01:53] chjj: tbranyen: yeah i know, i was really tempted to use discount
[01:53] chjj: looks very well made
[01:53] ecin has joined the channel
[01:53] chjj: i just felt the need to write something i guess
[01:53] Nuck: a pure JS markdown parser seems like a simple enough task
[01:54] chjj: definitely simpler than writing one in C ;)
[01:54] Nuck: Though it was built to be easy to use, not to parse
[01:54] dreamdust has joined the channel
[01:55] tilgovi has joined the channel
[01:55] tilgovi has joined the channel
[01:55] tbranyen: chjj: isn't discount ruby?
[01:55] tbranyen: looking it up
[01:55] chjj: its written in C
[01:55] chjj: theres bindings for a lot of languages i believe
[01:55] chjj: including node
[01:55] tbranyen: ah okay
[01:55] chjj: tj wrote one for node
[01:55] Nuck: tj wrote everything useful :P
[01:55] __directory has joined the channel
[01:55] chjj: hehe
[01:56] chjj: https://github.com/Orc/discount
[01:56] zeade has joined the channel
[01:58] _jhs has joined the channel
[01:58] __directory has left the channel
[02:00] upstream has joined the channel
[02:01] shanebo: what is the recommended server for serving static files?
[02:01] Raynos has joined the channel
[02:01] Xeon06_ has joined the channel
[02:01] __directory has joined the channel
[02:01] TheJH: shanebo, I'm using lightnode, and it works
[02:02] TheJH: !npm search static file
[02:02] jhbot: packages: http-proxy-selective, lightnode, local-cdn, node-static, node-static-maccman, paperboy, serve, simple-server, sleight, stack.static, StaticServer
[02:02] tjholowaychuk: ^ and connect's static()
[02:02] tjholowaychuk: doesn't show up in there
[02:03] imanc has joined the channel
[02:04] imanc: hey anyone about ?
[02:04] shanebo: i've been trying to get node-static working and not sure what the problem is
[02:04] imanc: I'm buildling a long polling live help app using python's flask + gevent and I'm wondering if I can use socket.io on the client side?
[02:05] tjholowaychuk: shanebo try connect.static, one line to get it going: connect(connect.static('public')).listen(3000)
[02:05] slajax1 has joined the channel
[02:05] tjholowaychuk: cloudhead's example doesn't even make sense haha, on the "end" of a GET serve the file
[02:05] tjholowaychuk: wtf
[02:08] tayy has joined the channel
[02:10] shanebo: tjholowaychuk is connect.static the favored static server?
[02:10] Nuck: Fuck, I just use nginx
[02:11] ncb000gt: shanebo: he's biased
[02:11] ncb000gt: ...
[02:11] ncb000gt: :)
[02:11] tjholowaychuk: shanebo i dont think there's any way to tell that really
[02:11] tjholowaychuk: since it's part of the package
[02:11] Nuck: But Connect IS awesome.
[02:11] Xeon06_ has joined the channel
[02:11] tjholowaychuk: so I can't say how many people use it, but nearly everyone using connect or express uses it IF they serve files
[02:11] tjholowaychuk: frankly they are all nearly identical
[02:11] rauchg has joined the channel
[02:12] tjholowaychuk: and the reality is
[02:12] tjholowaychuk: node isn't that fast at serving files
[02:12] tjholowaychuk: so if that is your concern use nginx or varnish etc
[02:12] Nuck: tjholowaychuk: Hence why I use gninx X3
[02:12] tbranyen: tjholowaychuk: have you seen that in production?
[02:12] shanebo: does nginx bottle neck compared to using node as the static server?
[02:12] tjholowaychuk: tbranyen seen what?
[02:12] tbranyen: tjholowaychuk: node being noticably slow at serving static files
[02:12] tjholowaychuk: we serve our assets with a CDN
[02:12] tbranyen: ah
[02:12] Nuck: shanebo:L Nginx is evented.
[02:13] Nuck: IIRC
[02:13] Nuck: I know Nginx does not bottleneck like Apache
[02:13] Aria: Yes, it is.
[02:14] agnat has joined the channel
[02:14] captain_morgan has joined the channel
[02:15] raidfive has joined the channel
[02:15] shanebo: so I guess nginx it is :D
[02:16] TheJH: use gatling :)
[02:16] imanc: I'm not seeing any packages on this page - http://npm.mape.me/ is that normal?
[02:17] mnaser has joined the channel
[02:17] TheJH: shanebo, you can use http://www.fefe.de/gatling/ if you want performance
[02:17] shanebo: don't we all want performance?
[02:18] sub_pop has joined the channel
[02:18] TheJH: shanebo, it's written by a performance-addicted bloatware-hater and owner of an IT security company
[02:18] jasonh has joined the channel
[02:18] shanebo: awesome
[02:18] shanebo: that was my hesitation with connect
[02:19] shanebo: too much there for me to get my head around
[02:19] tjholowaychuk: shanebo why?
[02:19] shanebo: i'm sure it's all great and needed at some point, but I'd rather start extremely thin
[02:19] tjholowaychuk: the usage is less lines than the others
[02:19] tjholowaychuk: one line
[02:19] tjholowaychuk: is pretty easy :p
[02:19] tjholowaychuk: fs.createReadStream(path).pipe(res)
[02:19] tjholowaychuk: if you want thin
[02:20] shanebo: tjholowaychuk I'm talking about what's behind that line :P
[02:20] tjholowaychuk: ~40 lines of code?
[02:20] tjholowaychuk: for the dispatcher
[02:20] tjholowaychuk: it's really basic stuff
[02:20] caiges has joined the channel
[02:22] shanebo: I've got to design/build/deploy an app in about 2-3 weeks and tonight is the first time I've seriously played with node. So I better go with something like nginx…
[02:23] shanebo: but it does seem cleaner to use something in node. dang.
[02:24] dgathright has joined the channel
[02:24] tjholowaychuk: well i mean if you dont even have an app yet just use node
[02:24] tjholowaychuk: you dont even know that you have a bottleneck yet :p
[02:25] darshanshankar has joined the channel
[02:26] shanebo: +1 tjholowaychuk :) So is this what I'm looking for? http://senchalabs.github.com/connect/http.html
[02:26] _jhs has left the channel
[02:26] tjholowaychuk: yup
[02:26] Xano has joined the channel
[02:27] cjm has joined the channel
[02:31] willwhite has joined the channel
[02:31] wbw72 has joined the channel
[02:32] shanebo: tjholowaychuk, bing. it worked just like you said :)
[02:35] darshanshankar: anyone at the Mozilla WSOH?
[02:36] pNstK: it's possible to make a video streaming for HTML 5 video with node? someone is already working with that?
[02:37] Nuck: pNstK: Of course it's possible. Dunno if anyone has tried though.
[02:37] jerrysv has joined the channel
[02:37] pNstK: Nuck: hmm, i'll try it later ;x
[02:38] jtsnow has joined the channel
[02:38] Nuck: pNstK: Try search.npmjs.org
[02:38] pNstK: i've already search there
[02:38] imanc has left the channel
[02:39] mscdex: shouldn't be very difficult, all you're doing a streaming a video file/feed
[02:39] mscdex: and i know there are ffmpeg modules out there for node
[02:40] freewil: do you even need ffmpeg
[02:40] freewil: dont you just need to read the file and stream th bits?
[02:41] Nuck: It's not ffmpeg
[02:41] mscdex: freewil: it depends on the situation, i was just throwing that out there though
[02:41] Nuck: For HTML5 video
[02:41] Nuck: I suggest using the WebM format
[02:42] pNstK: hmm
[02:42] Nuck: That's based on Mastroska files IIRC
[02:42] Nuck: God my API code is shit
[02:42] mscdex: if you have video that isn't encoded with whatever browser you want to be compatible with, then you can transcode it through ffmpeg and stream that through node
[02:42] mscdex: er encoded with a codec supported by whatever browser
[02:42] kriszyp has joined the channel
[02:43] Nuck: I need to reorganize my DB layer to be separate from the API
[02:43] Nuck: otherwise shit's gonna get ugly
[02:44] dgathright has joined the channel
[02:44] Nuck: Ugh
[02:44] Nuck: Gotta figure out what shit will be on the signup form before I can design this :S
[02:44] Nuck: Uuuuunlessss... /me has an idea
[02:45] rex_fernando has joined the channel
[02:45] jordo has joined the channel
[02:45] jordo: Hey SubStack
[02:46] jordo: I'm curious if you ever figured out what the problem was with the update as traversing bug in burrito
[02:46] Nuck: eww bug in a burrito?
[02:47] Nuck: What is this, some sort of... MEXICAN FOOD?
[02:47] tayy has joined the channel
[02:49] jacobolus has joined the channel
[02:52] brettgoulder has joined the channel
[02:54] jacobolus has joined the channel
[02:54] McMAGIC--Copy has joined the channel
[02:55] mnaser has joined the channel
[02:56] dgathright has joined the channel
[02:56] jhbot has joined the channel
[02:57] collypops has joined the channel
[02:58] mnaser: what do you guys think of making an apache drop-in replacement in node.js?!
[02:58] jacobolus has joined the channel
[02:58] jesusabdullah: What do you mean by that?
[02:59] jhbot has joined the channel
[02:59] jesusabdullah: If you mean a 1:1 reimplementation of apache, that sounds like a terrible idea
[02:59] tilgovi has joined the channel
[02:59] tilgovi has joined the channel
[02:59] jesusabdullah: tbhirlimo
[02:59] mnaser: like, code an application that can parse the httpd.conf and host virtual hosts like it does
[02:59] mnaser: why does it sound like a terrible idea?
[02:59] jesusabdullah: because apache is huge, and optimized for what it does
[02:59] luke` has joined the channel
[03:00] jesusabdullah: Being to parse an httpd.conf and do some intelligent things with it might not be a terrible idea
[03:00] SubStack: mnaser: https://github.com/nodejitsu/node-http-proxy
[03:00] jesusabdullah: but if you did the whole shebang, what's the point? You might as well use apache
[03:00] jesusabdullah: since it's moar fasters anyway
[03:00] mnaser: because apache is really heavy on ram, we do virtual hosting (and all the shebang if you might say) and it has a huge memory footprint
[03:01] jesusabdullah: So you think node wouldn't?
[03:01] jesusabdullah: with all the same functionalit?
[03:01] jesusabdullah: functionality*
[03:01] jesusabdullah: What might be a good idea is taking an httpd.conf and mashing it together with node-http-proxy or some particular thing, in order to make migration easier
[03:01] mnaser: well that's the thing
[03:02] SubStack: just write a script that converts httpd.confs to json and another script that reads those jsons to fire up servers with node-http-proxy
[03:02] mnaser: i don't need a trillion features
[03:02] SubStack: gogogo
[03:02] mnaser: there's a huge overhead of running apache that just don't need/use
[03:02] jesusabdullah: In that case, you don't want to reimplement apache, you just want to be able to parse httpd.confs for the purposes of running an alternate solution
[03:02] jesusabdullah: and that's probably not a bad idea
[03:02] mnaser: yeah, that's what i want to do
[03:02] jesusabdullah: SubStack's suggestion is probably a good one---look into something that converts httpd.confs into, say, configs for haibu
[03:03] jesusabdullah: which are probably in json
[03:03] mnaser: the management software does virtual host management so it can be drop in, just reads the config file like apache does and runs an http server
[03:03] mnaser: then again there's somethings I'm not sure.. like we use suphp, so how that would work out
[03:03] mnaser: but i can see the potential for a lightweight server
[03:03] jesusabdullah: Why not try lighttpd or nginx?
[03:04] jesusabdullah: I mean, if a more traditional server but moar fasters and less bloated, is what you want
[03:04] Me1000 has joined the channel
[03:04] mnaser: hmm, one of the things that bothered me was .htaccess files with nginx
[03:04] mnaser: it wouldn't be that hard to reimplement .htaccess parsing with our basic functionality
[03:04] jesusabdullah: What about lighttpd?
[03:04] mnaser: versus making a whole module of nginx/etc
[03:04] mnaser: lighttpd doesn't support .htaccess me thinks?
[03:05] jesusabdullah: What's .htaccess, and why can't you use another solution to do the same?
[03:05] jesusabdullah: I'm not trying to grill you by the way
[03:05] mnaser: no problem, i understand
[03:05] jesusabdullah: I feel like it sounds that way
[03:05] mnaser: we do shared hosting -- people are standardized and are just used to using .htaccess files to make modfications
[03:05] mnaser: like for example, mod_rewrite
[03:05] eastender has joined the channel
[03:05] jesusabdullah: Well
[03:06] pHcF has joined the channel
[03:06] jhbot has joined the channel
[03:06] mnaser: which is like the rewrites in nginx, they can write it up in a .htaccess file and it's done .. being a very large company, we minimize support by making it compatible
[03:06] pHcF: hi, i have a telnet socket
[03:06] mnaser: if we have a huge infrastructure change, everyone and their uncle can't setup pretty urls in apache, and then we ht the pooper
[03:06] jesusabdullah: but what's a .htaccess file?
[03:06] pHcF: when the client sends Control + C, i can't write to the socket anymore. why is that?
[03:07] mnaser: jesusabdullah: think of it as an extension of the apache configuration that virtual host users can make
[03:07] Aria: It is.
[03:07] _jhs has joined the channel
[03:07] mnaser: for example, i want to make some rewrites, i don't have access to the httpd.conf because i'm just a virtual user
[03:07] jesusabdullah: That sounds like expected behavior to me, pHcF. I haven't really played with telnet, but that's a "stop doing things" command on the shell
[03:07] Aria: Limited in the directives it'll accept -- only those that make sense post path-translation -- but a piece of Apache config.
[03:07] rex_fernando has joined the channel
[03:07] mnaser: i stick those changes in my .htaccess file and i can override the default behaviour without having to change the main config
[03:07] pHcF: hmm.. ok
[03:08] Aria: pHcF: the question is, what's the user really sending? Is it an ascii \003? That's what control-C is in raw mode.
[03:08] isaacs has joined the channel
[03:08] jesusabdullah: Well, mnaser
[03:08] Aria: But lots of client software cooks that in various ways.
[03:08] pHcF: Aria: nope, it's not
[03:08] Aria: Hm. What's the client?
[03:09] jhbot has joined the channel
[03:09] darshanshankar has joined the channel
[03:09] bentkus: what web framework can you guys recommend?
[03:09] jesusabdullah: idk mnaser, I see why you want to replace apache and yet still support these things, but it just sounds like a *lot* of work for not a lot of gain
[03:09] pHcF: Aria: mac
[03:09] pHcF: Aria: i mean, mac's terminal telnet client
[03:10] Aria: Ah, okay, so classic unix telnet.
[03:10] mnaser: jesusabdullah: we do tons of in-house dev, i was just thinking of input on how it could work
[03:10] pHcF: 'i'm trying to socket.setEncoding('ascii'); but what's being sent doesn't change
[03:10] darshanshankar has joined the channel
[03:10] srid has joined the channel
[03:10] srid has joined the channel
[03:10] luke` has joined the channel
[03:10] mnaser: and we do tons of virtual hosting, aka, we can do 800 accounts a server right now
[03:10] Aria: socket.setEncoding won't affect what the client sends at all.
[03:10] mnaser: and they're very stable, but i know the servers got more potential
[03:10] jdiamond has left the channel
[03:10] pHcF: Aria: yep.. that makes sense
[03:10] SubStack: mnaser: is it just static content?
[03:10] Aria: bentkus: depends on what I'm doing, but express is awesome.
[03:11] SubStack: or is there icky phps and cgi scriptery
[03:11] jesusabdullah: bentkus: For framework-frameworks you might like express, or connect. Also check out dnode and browserify, though, and some of nodejitsu's libraries, if you're into anti-framework stuff
[03:11] mnaser: nope, static and php, but we use suphp so it wouldn't be hard to implement that
[03:11] mnaser: cgi as well is just an executable
[03:11] _jhs has left the channel
[03:11] Aria: pHcF: So why you can't write after a control-C is surprising. telnet goes to raw mode very quickly after connecting (it handles control-c locally until then though)
[03:11] Aria: So it /should/ send \003
[03:11] jesusabdullah: bentkus: In fact, you can use most of these things together.
[03:11] SubStack: mnaser: there's already a cgi module on npm you could use
[03:11] SubStack: cgi A stack/connect layer to invoke and serve CGI executables. =TooTallNate
[03:12] pHcF: Aria: weird.. in server I get characters like ����
[03:12] mnaser: i think suphp uses cgi-like behaviour
[03:12] mnaser: so there's a base there
[03:12] SubStack: could work then
[03:12] Aria: That makes sense. That's a unicode replacement for something unprintable. Control-C is definitely unprintable.
[03:12] cachemoney has joined the channel
[03:12] pHcF: yep
[03:12] mnaser: its a really interesting idea.. im really tempted to give it a shot
[03:12] jesusabdullah: That could actually be really cool mnaser, if you got something together that was really lightweight, could read apache config formats and gave you some cgi's
[03:13] jesusabdullah: If you do it, please2b eventually open source? :D
[03:13] jesusabdullah: Open sourcing things is pretty awesome!
[03:13] mnaser: i agree
[03:13] mnaser: i'm all with you
[03:13] mnaser: i
[03:13] jesusabdullah: \o/
[03:13] Aria: I'd be happy to help with a parser for htaccess files.
[03:13] pHcF: Aria: i need to stop a command started in telnet using the Control + C (like in a shell)
[03:13] SubStack: mnaser: call it geronimo
[03:13] mnaser: haha interseting name, why?
[03:13] davemo has joined the channel
[03:13] jesusabdullah: apache --> geronimo
[03:13] Aria: pHcF: "stop" in what sense? Shut down the socket, end the telnet session? Or stop doing something on the server in response to receiving that?
[03:13] mnaser: ahaha
[03:13] mnaser: omg
[03:13] mnaser: that is such a win name
[03:13] Aria: geronimo's taken.
[03:14] jesusabdullah: WHAT
[03:14] Aria: http://geronimo.apache.org/
[03:14] mnaser: j2ee project
[03:14] mnaser: aw MAN
[03:14] jesusabdullah: oh.
[03:14] mnaser: that was gold
[03:14] Aria: Hehe.
[03:14] Wa has joined the channel
[03:14] jesusabdullah: i'm sure you can come up with some other cowboys/indians type names
[03:14] isaacs: if you're not on npm 1.0.18, you should be. search is SOO FAST now
[03:15] mnaser: you know what guys
[03:15] tbranyen: npm has a search?
[03:15] mnaser: i'll get the ball rolling on this
[03:15] mnaser: i really think it'll be good.. even if i don't have all the node.js talent right now
[03:15] mnaser: i do tons of ruby/python/etc .. just started node.js but i always coded javascript.. but just working with the language is the hard part, js server side sounds aah
[03:15] SubStack: isaacs: HOW FAST IS IT?
[03:16] jesusabdullah: You'll get the hang of it mnaser if you can handle all those things
[03:16] jesusabdullah: as long as you get callbacks, and do your homework
[03:16] isaacs: SubStack: it's SO FAST, it's already done!
[03:16] mnaser: i'm doing callbacks now, my biggest issue is code style
[03:16] jesusabdullah: js is actually REALLY AWESOME on the backend imo
[03:16] mnaser: i think my code looks gross now.
[03:16] jesusabdullah: Yeah, you'll get it
[03:16] SubStack: WOW THAT IS FAST I AM GOING TO npm install npm RIGHT NOW
[03:16] pHcF: Aria: stop doing something in the server
[03:16] isaacs: haha
[03:16] isaacs: SubStack: throw a -g on that noise
[03:17] SubStack: yes sir
[03:17] jesusabdullah: Holy shit that's really fast
[03:17] jesusabdullah: It finished BEFORE the npm colorsplash actually hit the screen
[03:17] mnaser: but yeah, i'm doing a node.js application that is using xmlrpc to make a lightweight remote apii
[03:17] Aria: Wow, that's awesome, isaacs.
[03:17] Aria: Fun, mnaser! A good place to start, even if XML is gross, dude.
[03:17] jesusabdullah: mnaser: if it's between node instances check out dnode
[03:17] jesusabdullah: also, json 4 lyfe
[03:17] SubStack: isaacs: ruh roh https://gist.github.com/1100928
[03:18] dgathright has joined the channel
[03:18] tbranyen: xmlrpc... whyyyy
[03:18] materialdesigner has joined the channel
[03:18] mnaser: right now it's between a rails app and node.js -- but that's just because we wanna use the existing infrastructure
[03:18] jesusabdullah: SubStack: did you throw down some sudo?
[03:18] aaroninfidel: using express how can I pull json from twitter or some other resource and use it locally?
[03:18] Aria: You might try something json-based if you're not tied to XML
[03:18] Aria: It's so much easier to work with
[03:18] tbranyen: well especially in JS
[03:18] SubStack: jesusabdullah: pfft that's not how I roll
[03:18] jesusabdullah: i don't think your twittering is going to really be tied to express, aaroninfidel
[03:18] TheJH: isaacs, why is it faster now? are you using the local cache instead of the db?
[03:18] jesusabdullah: SubStack: gurl
[03:19] mnaser: but part of the rails app will be taken out to move onto a node.js app
[03:19] jesusabdullah: SubStack: if you want -g you gotsta be a supauser
[03:19] qbert_: wow busy in here at night
[03:19] tbranyen: i'm about to pass out
[03:19] tbranyen: from heat exhaustion
[03:19] jesusabdullah: aaroninfidel: hold on
[03:19] SubStack: jesusabdullah: nope, I'm sneaky like that
[03:19] SubStack: what with my ~/prefix
[03:19] Aria: Heh, me too, tbranyen.
[03:19] SubStack: likewise >_<
[03:19] TheJH: I'm having issues with mikeals request, my callback gets (null, null, data buffer), that's bad, right?
[03:19] qbert_: where are yall thats its so hot :S
[03:19] SubStack: it is so tea time
[03:19] jesusabdullah: hah
[03:20] eee_c1 has joined the channel
[03:20] jesusabdullah: Your FACE is tea time
[03:20] tbranyen: bawstawn
[03:20] jesusabdullah: Actually
[03:20] aaroninfidel: jesusabdullah: well, I don't know how to do something like that, in ruby I would just use open-uri and do open(url).read
[03:20] jesusabdullah: I'll have some too, that sounds like a capital idea
[03:20] mnaser: oh wow
[03:20] mnaser: s
[03:20] SubStack: FANCY THAT, TIME FOR TEA
[03:20] Aria: qbert_: Boston here. 102 and huuuumid.
[03:20] jesusabdullah: Oh, aaroninfidel, a module you should look into
[03:20] jesusabdullah: ntwitter
[03:20] pHcF: Aria: any idea?
[03:20] mnaser: SubStack: i just found dnode-ruby in your github
[03:20] mnaser: that might just make me get RPC out
[03:20] mnaser: :p
[03:20] aaroninfidel: jesusabdullah: I'm not interested in twitter, I was just using that as an example because they have a good API that uses JSON.
[03:21] SubStack: mnaser: that module could use some lovin' but it works at least
[03:21] jesusabdullah: aaroninfidel: Oh.
[03:21] SubStack: unlike dnode-python I might add!
[03:21] mnaser: SubStack: we'll leave it some love if we need anything ;)
[03:21] Aria: pHcF: Well, usually, with telnet proper, it goes through the kernel's tty interface, translating characters through the tty cooked mode. You'll have to emulate that. The short version? Watch for \003 and act on it.
[03:21] jesusabdullah: You shut your face python is hard alrite
[03:21] aaroninfidel: jesusabdullah: so, any other suggestions?
[03:21] jesusabdullah: aaroninfidel: thinking
[03:21] pHcF: Aria: ok, i'll try
[03:22] pHcF: hmm.. waiting for \003 didn't work
[03:22] SubStack: jesusabdullah: but it's just executable pseudocode!
[03:22] jeromegn has joined the channel
[03:22] jesusabdullah: Oh, okay, so with express, you would make a request, and in a middleware parse the payload. I've done some of this json parsing in the other direction before, I'll see if I can find the code
[03:22] jesusabdullah: SubStack: Have you ever seen anyone build anything useful out of pseudocode? No.
[03:22] aaroninfidel: jesusabdullah: ok thanks.
[03:22] jesusabdullah: Not without accidentally the python.
[03:22] rauchg has joined the channel
[03:23] mnaser: i had to do python
[03:23] mnaser: if you do ruby and start doing python
[03:23] mnaser: you will go crazy
[03:23] jesusabdullah: haha mnaser
[03:23] mnaser: especially when you start adding ":" at the end of if's
[03:23] jesusabdullah: Lucky for me, I started with python so I didn't know better
[03:24] SubStack: I can't write it... there's no lambdas on it
[03:24] jesusabdullah: the crazy thing for me is that it's len() not .length
[03:24] materialdesigner has joined the channel
[03:24] mnaser: it's very cryptic
[03:24] jesusabdullah: also now I recognize that python lambdas suck
[03:24] qbert_: ya ?
[03:24] jesusabdullah: oh, aaroninfidel, this might help: https://github.com/jesusabdullah/lulzbot/blob/master/gitwatch/github-webhook.js#L71-83
[03:24] Aria: pHcF: What's the codes of the characters you did get?
[03:24] jesusabdullah: aaroninfidel: I was having github push json towards a connect server, which should preeeeeetty much be like how you'd do it in express
[03:24] materialdesigner: Why can't you just createan http client for the API emailing?
[03:24] jesusabdullah: aaroninfidel: No guarantees, but you might find some hints there
[03:25] EyePulp has joined the channel
[03:25] JaKWaC_ has joined the channel
[03:25] Aria: pHcF: telnet can negotiate some other weirdness, too, like using the OOB flag on the TCP packets to signal a break.
[03:25] materialdesigner: Endpoint* not emailing
[03:25] jesusabdullah: Also, metaprogramming/self-introspection in python is really hard compared to js :(
[03:25] bwinton: jesusabdullah: Really?!? That's the first time I've heard that…
[03:26] jesusabdullah: Yes, really.
[03:26] jerrysv_ has joined the channel
[03:26] __directory: will node.js run on Microsoft Bob?
[03:26] jesusabdullah: also, types suck
[03:26] pHcF: Aria: 65533
[03:27] qbert_: __directory, dont call me bob
[03:27] mnaser: that's really good, i think i might go the dnode path to pave the way to have our entire internal api nodejs--ised
[03:28] dgathright has joined the channel
[03:28] qbert_: mnaser, I love dnode, I have a largish project that dnode has cut out swaths of boilerplate for me. In fact I'd have to say its the most attractive part of node for me
[03:28] Aria: pHcF: That's not right! Telnet's 7-bit!
[03:29] mnaser: we have our own private cloud infrastructure (think ec2 on steroids with persistency, better pricing and independently scalable specs
[03:29] pHcF: Aria: I'm using command.charCodeAt(0)
[03:29] mnaser: and we're re-engineering the internal apis to use node for server provisioning and volume/storage provisioning
[03:29] Aria: Ah, you're letting V8 turn it into strings.
[03:29] rex_fernando has joined the channel
[03:29] smtlaissezfaire has joined the channel
[03:30] Aria: I think the ASCII-to-UTF-16 conversion there might munge things
[03:30] qbert_: mnaser, haikorou ? or however its spelled
[03:30] loveshine has joined the channel
[03:30] mnaser: nono
[03:30] Aria: Since \003 isn't valid unicode.
[03:30] mnaser: we're not vendor specific
[03:30] mnaser: we do linux/window servers instantly cooked up
[03:30] mnaser: you do what you want in them
[03:30] Aria: You probably want to get the raw buffer then, pHcF
[03:30] mnaser: we have our own servers/network/datacenter/etc
[03:32] dgathright_ has joined the channel
[03:32] mnaser: I'm looking into this, if you were to use diode with a lot of different functions, what would be clean way to implement it
[03:33] tilgovi has joined the channel
[03:33] qbert_: diode ?
[03:33] jerrysv_ has joined the channel
[03:34] pHcF: Aria: how?
[03:34] __directory: hmm: hmm
[03:34] Aria: pHcF: Don't setEncoding.
[03:35] mnaser: dnode, freaking osx lion autocorrect
[03:35] pHcF: Aria: i'm not setting encoding anymore
[03:35] qbert_: mnaser, lol. Id like to see some statistics as to how many node users are mac users :S
[03:36] qbert_: mnaser, I'll PM you how I use it, I had to kind of play with it to get it clean-ish
[03:36] Xeon06_ has joined the channel
[03:37] jesusabdullah: I should poll my coworkers on platform
[03:37] jesusabdullah: I know our intern uses windows
[03:37] jesusabdullah: well, "our" intern
[03:37] Aria: pHcF: Hrm. Then your data events should give you a buffer.
[03:37] jesusabdullah: like he's mine
[03:37] jesusabdullah: He's been there longer than me
[03:37] jtsnow has joined the channel
[03:37] __directory: take his cigarettes
[03:38] jesusabdullah: I'm the one with the cigarettes
[03:38] jesusabdullah: Everyone just kinda rolls their eyes when I pull them out
[03:38] jesusabdullah: "Ugh, I should quit, I hate these things"
[03:38] jesusabdullah: Saadiq gives me a, "well, yeah, probably" sort of glance
[03:40] jacobolus has joined the channel
[03:40] pHcF: Aria: any idea about how to get the raw data of the buffer?
[03:40] igl: < 3rd day off cigarettes
[03:40] jesusabdullah: Oh, Aria, are you gonna be around later? I had an idea I wanted to chat with you about, nothing urgent or even well-formed
[03:41] jesusabdullah: ^5 igl
[03:41] __directory: I quit a year ago, regret it.
[03:41] __directory: really should probably go buy a pack
[03:41] __directory: smack the wife about the house
[03:41] jesusabdullah: Oh no you don't
[03:41] __directory: and ahve a beer
[03:41] jesusabdullah: Just have a beer
[03:41] TheJH: can anyone here help me with the github api? this fails: https://gist.github.com/c2c2ea6139ae41a1b2a6
[03:42] jesusabdullah: TheJH: I always used ajax.org's node-github module, works pretty well!
[03:42] TheJH: ah, already figured it out
[03:42] TheJH: wrong header name
[03:42] jesusabdullah: I see!
[03:43] TheJH: jesusabdullah, I'm using that module, too, but it has no gist support
[03:43] loveshine: so what's the best module to watch a file for changes to debug code?
[03:43] TheJH: loveshine, as in "automatically restart"?
[03:43] junkee[] has left the channel
[03:44] jesusabdullah: TheJH: I see! Maybe you should pull request it
[03:44] loveshine: TheJH: yes, like this https://github.com/remy/nodemon which is what ive been using
[03:44] TheJH: jesusabdullah, didn't implement it inside the module
[03:44] loveshine: but im wondering if there's better options?
[03:45] jhbot has joined the channel
[03:45] JaKWaC_ has joined the channel
[03:45] TheJH: !npm search github
[03:45] jhbot: packages (truncated): connect-gzip, coverage_testing, gist, gista, github, github-flavored-markdown, gitter, jinkies, ngist, nithub, node-nude, nodelint, npm-github-service, ntodo, nyam, pagen, pulley, redis-completer, sfml, thepusher
[03:46] jerrysv has joined the channel
[03:46] tilgovi has joined the channel
[03:46] tilgovi has joined the channel
[03:46] dgathright has joined the channel
[03:47] jesusabdullah: TheJH: MAYBE YOU SHOULD
[03:47] jesusabdullah: TheJH: It would be awesome...
[03:48] jhbot has joined the channel
[03:49] vikstrous has joined the channel
[03:49] jerrysv has joined the channel
[03:49] pHcF: i guess my control + c command is being interpreted locally :(
[03:50] zanes has joined the channel
[03:50] TheJH: jesusabdullah, it's not much code: https://gist.github.com/1100984
[03:50] ryanfitz has joined the channel
[03:55] __directory: I am stupid.
[03:55] Spion has joined the channel
[03:56] Xeon06_ has joined the channel
[03:56] JaKWaC_: Anyone at the Mozilla WSOH?
[03:57] jerrysv has joined the channel
[03:58] Peniar has joined the channel
[04:01] jesusabdullah: COFFEESCRIPT up bup bup bup bup
[04:01] jesusabdullah: __directory: Why?
[04:01] shanebo: TheJH, do you know if posix is deprecated, or what it is?
[04:01] mraleph has joined the channel
[04:01] rex_fernando has joined the channel
[04:01] seivan has joined the channel
[04:02] __directory: I'm trying to mimick something like Mongoose's model() function and can't work it out
[04:04] dgathright has joined the channel
[04:05] WarriorSl has joined the channel
[04:05] LowValueTarget has joined the channel
[04:07] d0k has joined the channel
[04:10] TheJH: jesusabdullah, you like coffee? or you don't like it? can't parse your statement
[04:10] boehm has joined the channel
[04:11] TheJH: shanebo, POSIX is a standard that UNIX and Linux implement
[04:11] TheJH: shanebo, ask wikipedia
[04:11] Xeon06_ has joined the channel
[04:11] shanebo: weird
[04:11] shanebo: saw a tutorial that require'd it
[04:12] digman543 has joined the channel
[04:12] unlink has joined the channel
[04:12] unlink has joined the channel
[04:13] kasper: POSIX deprecated? Hopefully not :)
[04:13] TheJH: jesusabdullah, if you want a js version of my gist, type !coffee compilegist https://gist.github.com/1100984
[04:13] isaiah_ has joined the channel
[04:13] TheJH: I'll get some sleep now, 06:13 here
[04:13] jerrysv has joined the channel
[04:15] tilgovi has joined the channel
[04:15] seivan has joined the channel
[04:20] msilverman2 has joined the channel
[04:22] kofno has joined the channel
[04:23] tayy has joined the channel
[04:24] mnaser: any nice howtos on getting coffee script with node.js?
[04:24] fangel has joined the channel
[04:24] akshatj has joined the channel
[04:25] igl: npm install coffeescript
[04:27] dgathright has joined the channel
[04:28] jesusabdullah: TheJH__: Naw, just giving you shit.
[04:29] mnaser: igl: i see, but do i run "coffee my-node.app.js" ?
[04:29] hasenj has joined the channel
[04:30] tilgovi has joined the channel
[04:31] eee_c has joined the channel
[04:32] smtlaissezfaire has joined the channel
[04:32] igl: mnaser: CS files end with .coffee
[04:32] mnaser: gotcha, I've done CS with rails but never with node.js
[04:32] mnaser: not yet, at least :p
[04:32] mnaser: "404 'coffeescript' is not in the npm registry." poop
[04:34] mnaser: coffee-script
[04:34] mnaser: im an idiot
[04:34] dexter_e has joined the channel
[04:34] sivy has joined the channel
[04:35] igl: nah, the - in the module name is stupid
[04:35] d0k: get more coffee
[04:36] igl: never got why even care to start with cs tbh
[04:36] igl: adds another abstraction layer
[04:36] jerrysv has joined the channel
[04:37] dgathright has joined the channel
[04:37] igl: co workers would kill me
[04:37] d0k: you can say the same thing about virtually any abstractions
[04:37] igl: blows up code
[04:37] igl: hmm
[04:37] igl: dont really get it
[04:37] mnaser: i find it cleaner personally
[04:38] d0k: why do you use C? just write assembly!
[04:39] rurufufuss has joined the channel
[04:39] dgathright_ has joined the channel
[04:39] jtsnow has joined the channel
[04:40] jesusabdullah: igl: I understand why people like C, but I don't understand why people gush about it and try to get everyone else to use CS too
[04:40] binarypie has joined the channel
[04:40] igl: i never said anything about C :S
[04:41] jesusabdullah: like, the legend of someone rewriting your module in coffeescript and sending a pull request
[04:41] jesusabdullah: FTFY! :V
[04:41] binarypie has joined the channel
[04:41] igl: d0k felt offended i think
[04:41] jesusabdullah: The point with c vs. assembly is just that c is an abstraction, right?
[04:41] d0k: igl: nope
[04:41] jesusabdullah: You could make the same argument, presumably, or a similar one
[04:41] d0k: I don't write coffescript
[04:41] jesusabdullah: It's an analogy
[04:42] jesusabdullah: CS is actually pretty cool, I think, aside from that
[04:42] d0k: to be honest, I haven't even used js in a while ;)
[04:42] igl: abstraction is wonderful if it makes things simpler
[04:42] igl: but CS adds more logic than needed
[04:42] jesusabdullah: Well
[04:42] jesusabdullah: CS makes *some* things simpler
[04:42] jesusabdullah: but the biggest thing is aesthetics
[04:43] igl: if i dont want curly bracket that bad
[04:43] igl: id use djago
[04:43] igl: :F
[04:43] igl: django
[04:43] jesusabdullah: except django is python, and coffeescript is still javascript in all the important ways
[04:45] jesusabdullah: Also, django is a framework, not a language. It'd be more comparable to, say express
[04:45] jesusabdullah: or getty or any of the other frameworks
[04:45] igl: thats beside the point
[04:47] JaKWaC_ has joined the channel
[04:47] igl: i think there is just a limit to how much pre molding you should do
[04:47] jesusabdullah: If you're going to be making an argument, you have to make the *right* argument. I may know what you're saying, but clear thinking is important.
[04:47] jesusabdullah: I don't mean this in a "WE'RE FIGHTING" way obviously
[04:47] jesusabdullah: What do you mean by pre-molding?
[04:50] ngs has joined the channel
[04:51] igl: anyone who ever touches the project now needs coffee script knowledge
[04:51] igl: ontop of js
[04:52] jesusabdullah: what project is this?
[04:53] jesusabdullah: a hypothetical project?
[04:53] jesusabdullah: rails?
[04:53] igl: hypothetical yeah
[04:54] jesusabdullah: Yeah, I admit that this turns me off a little bit from coffeescript projects
[04:54] jesusabdullah: but luckily, there isn't that much to learn
[04:54] jesusabdullah: It *looks* different but it's pretty much the same aside from different symbols
[04:54] jesusabdullah: Ask someone that knows whether I'm talking about semantics or syntax or what
[04:54] jesusabdullah: probably semantics
[04:54] jesusabdullah: "It's just semantics" right?
[04:55] jesusabdullah: That said, that's *still* a barrier, so for library development javascript is more attractive
[04:56] igl: yea i think it is healthy to remove barriers
[04:56] igl: haml like templating i get fully support, it removes the complexity
[04:56] jesusabdullah: For app dev, though, why not? If cs is what you like, it's what you like
[04:56] igl: but CS adds
[04:57] jesusabdullah: I gotta make sure my bird isn't harrassing SubStack too hard, brb
[04:57] rex_fernando has joined the channel
[04:57] igl: for small / personal projects
[04:58] igl: i wouldnt carry it to work
[04:58] deoxxa has joined the channel
[04:58] igl: well
[04:58] igl: < omlette
[04:58] captain_morgan has joined the channel
[04:58] _jgr has joined the channel
[04:59] wookiehangover has joined the channel
[05:00] chjj: wow, markdown compilers are all so inconsistent
[05:00] chjj: this is rough
[05:00] mnaser: https://github.com/jashkenas/coffee-script-tmbundle
[05:00] vikstrous has joined the channel
[05:00] jesusabdullah: yeah chjj, tell me about it :(
[05:00] chjj: john gruber shouldve made a test suite or something
[05:00] mnaser: does anyone know what text mate theme that is
[05:00] mnaser: it is really nice?
[05:00] jesusabdullah: Yeah, well
[05:00] deoxxa: chjj: that's because markdown has no real grammar
[05:00] isaacs: you know what's hilarious? I'm the second picture result on google for "unsafe perm"
[05:00] jesusabdullah: The guy had a good idea and everybody else followed through
[05:01] isaacs: the others are weird photos of hair products and stuff.
[05:01] jesusabdullah: I'd just as soon use that "markdown extra" project as a de facto standard
[05:01] jesusabdullah: that, or github-flavored
[05:01] isaacs: (and porn, of course)
[05:01] kasper: mnaser: i prefer the Twilight ones, but i prefer dark themes
[05:01] mnaser: that one looks really nice but i can't tell which one it is :p
[05:01] mnaser: it's not IR_black
[05:03] chjj: deoxxa: yeah, the original markdown is a mess of regexes as far as i know, the lexer i wrote uses regexes for lexemes, but it actually tokenizes instead of making love to a string of text
[05:03] kasper: mnaser: 2morrow Night is also great, you can see it here: http://wiki.macromates.com/Themes/UserSubmittedThemes
[05:03] deoxxa: yeah, that's the way to do it
[05:03] mnaser: yeah i was just on the page and it looks like thats it
[05:03] deoxxa: i write a lot of parsers etc for work, which often involves my boss going "look at this product and see if you can reuse any of the code"
[05:04] deoxxa: which involves me going "oh my, no, no no no. that is horrid."
[05:04] chjj: lol
[05:04] deoxxa: so i feel where you're coming from with the "this is rough" comment :P
[05:05] deoxxa: my favourites are the parsers that pretend to have a grammar, but don't
[05:05] deoxxa: case in point: silverstripe's template parser
[05:05] chjj: well, im writing a little markdown test suite, and then testing my parser vs other ones, like markdown.js, and showdown, but they both do things completely differently, and a lot of things they just do *wrong*
[05:05] deoxxa: ah, yeah
[05:06] chjj: ive never heard of that
[05:06] chjj: whats a silverstripe?
[05:06] deoxxa: ah, silverstripe is a stupid PHP CMS
[05:06] chjj: oh
[05:06] chjj: hehe
[05:06] dgathright has joined the channel
[05:07] deoxxa: basically their templates are so close to being properly parseable
[05:07] deoxxa: <% if Method_On_Controller %>Yes!<% else %>No!<% end_if %>
[05:08] deoxxa: they have that kind of construct implemented as a single regex
[05:08] deoxxa: makes me want to cry
[05:08] chjj: why is <% such a popular convention in templating languages, its so damn awkward to type
[05:08] mikeal has joined the channel
[05:08] deoxxa: then they have <% if Method_On_Controller(argument_1) %>
[05:08] chjj: a single regex? is it a recursive regex?
[05:08] deoxxa: and <% if Method_On_Controller(argument_1, argument_2) %>
[05:08] deoxxa: etc
[05:08] mikeal1 has joined the channel
[05:08] deoxxa: no, just one
[05:08] deoxxa: like
[05:09] chjj: as far as i know, php has recursive regexes
[05:09] chjj: you can do (?R..)
[05:09] chjj: and it will recurse the pattern
[05:09] deoxxa: m#<% if (.+?) %># // no arguments
[05:09] cpetzold has joined the channel
[05:09] deoxxa: m#<% if (.+?)\(([^\)]+)\) %># // 1 argument
[05:09] deoxxa: etc
[05:10] deoxxa: not even kidding
[05:10] sw8sw8 has joined the channel
[05:10] chjj: there has to be more do it than that, how does that templating language even work then?
[05:10] deoxxa: well, that's just part of it
[05:10] deoxxa: it "compiles" to PHP
[05:11] chjj: i dont get it, you said php?
[05:11] markdaws has joined the channel
[05:11] deoxxa: correct
[05:11] jimt has joined the channel
[05:11] deoxxa: refer to the part where i mentioned crying
[05:11] deoxxa: :(
[05:11] chjj: hmmm
[05:12] mnaser: can you guys run "npm install diode" -- it just stays there shtuck..
[05:13] chjj: i think im just going to make my own markdown spec, i have no idea how i should model this compiler with every md compiler going every which way
[05:13] chjj: on even the most essential things
[05:13] slifty_corsair has joined the channel
[05:13] chjj: like paragraphs in list items
[05:14] kasper: make your own spec? like all the other implementations? :)
[05:14] mnaser: nevamind
[05:14] mnaser: just installed
[05:14] chjj: better than rolling a die and picking one
[05:14] jerrysv has joined the channel
[05:14] chjj: both markdown.js and showdown dont even allow code blocks in list items for some reason, so thats the first thing ill deviate from
[05:16] visudo has joined the channel
[05:19] mnaser: chjj: why don't you code it and put in a pull request or so
[05:19] mnaser: i don't know the exact use case but why reimplmenet everything, fix what you need and help others too
[05:19] Nuck: I just realized something
[05:19] Nuck: There any great ways to send emails in Node?
[05:20] Nuck: Like, that you guys would recommend?
[05:20] mnaser: https://github.com/joyent/node/wiki/modules#wiki-smtp
[05:20] Spion_ has joined the channel
[05:20] Nuck: I can get a list
[05:20] Nuck: Easily
[05:20] medice: does socketio have some preferred way of grouping sockets in to 'rooms' for broadcasting events to subscribers
[05:20] Nuck: But I was wondering if there were any specific recomendations
[05:21] mnaser: then open the list, check the projects yourself with your needs, look how active it is, and make a decision ;)
[05:21] medice: or do i just do some collection and iterate over
[05:21] Nuck: medice: Use arrays?
[05:21] medice: alright
[05:21] mnaser: follower and how often it's maintained says a lot usually
[05:21] hij1nx has joined the channel
[05:27] brettgoulder has joined the channel
[05:27] mikeal has joined the channel
[05:28] smtlaissezfaire has joined the channel
[05:31] CIA-65: node: 03koichik 07master * r3eb2464 10/ (3 files in 2 dirs): Doc improvements - https://github.com/joyent/node/commit/3eb246485a5567f2362203b0d467ea7999031bc0
[05:32] jesusabdullah: medice: Look into nowjs and/or hook.io maybe
[05:34] sivy has joined the channel
[05:37] sridatta has joined the channel
[05:37] medice: hook might be it
[05:37] medice: thanks, i'll look into it
[05:38] jesusabdullah: medice: Word. hook.io is still being worked on a lot, but from what I've seen it will be frickin' awesome
[05:38] AAA_awright_ has joined the channel
[05:39] dgathright has joined the channel
[05:40] jesusabdullah: Hell, I've already seen some crazy stuff done with hook.io
[05:40] jesusabdullah: way cool stuff
[05:40] rchavik has joined the channel
[05:40] kasper: hooks remind me of drupal *shrugs*
[05:41] Xeon06_ has joined the channel
[05:41] te-brian: trying to get less working with express. When I enable the compiler, everytime I hit a URL the console output 'undefined' and thats it. any ideas?
[05:43] dexter_e has joined the channel
[05:43] aaroninfidel: anyone here know how to use jade templates?
[05:43] aaroninfidel: I need to add an image src dynamically, but idk how.
[05:43] vikstrous has joined the channel
[05:45] jimt has joined the channel
[05:45] confoocious has joined the channel
[05:45] confoocious has joined the channel
[05:47] captain_morgan has joined the channel
[05:50] hybsch has joined the channel
[05:50] eventual- has joined the channel
[05:50] rex_fernando_ has joined the channel
[05:50] dwasp has joined the channel
[05:50] vikstrous has joined the channel
[05:51] Xeon06_ has joined the channel
[05:54] havenn has joined the channel
[05:56] dexter_e has joined the channel
[06:01] broofa has joined the channel
[06:01] Xeon06_ has joined the channel
[06:05] vikstrous1 has joined the channel
[06:06] unomi has joined the channel
[06:06] Xeon06_ has joined the channel
[06:07] othiym23 has joined the channel
[06:07] AAA_awright_ has joined the channel
[06:08] mendel_ has joined the channel
[06:09] AAA_awright__ has joined the channel
[06:11] Xeon06_ has joined the channel
[06:11] seivan has joined the channel
[06:13] devaholic has joined the channel
[06:13] jerrysv: damn you xcode. damn you.
[06:15] gf3: NO U
[06:16] Xeon06_ has joined the channel
[06:21] versicolor has joined the channel
[06:21] catphive has joined the channel
[06:21] catphive has left the channel
[06:24] skm has joined the channel
[06:27] alexhq has joined the channel
[06:27] mikeal has joined the channel
[06:29] alexhq: This pull request needs your review https://github.com/joyent/node/pull/1375
[06:36] H4ns has joined the channel
[06:38] ircretary has joined the channel
[06:39] admc has joined the channel
[06:40] eazyi has joined the channel
[06:41] cpetzold has joined the channel
[06:46] captain_morgan has joined the channel
[06:47] jerrysv has joined the channel
[06:50] cha0s has joined the channel
[06:50] cha0s has joined the channel
[06:54] mraleph has joined the channel
[06:54] skm has joined the channel
[06:55] jhurliman has joined the channel
[06:56] SamuraiJack has joined the channel
[06:56] Xeon06_ has joined the channel
[06:56] zeade1 has joined the channel
[06:56] dshaw_ has joined the channel
[06:58] dexter_e has joined the channel
[06:58] dscape: anyone used node with resque?
[07:02] isaacs: alexhq: commented
[07:02] isaacs: alexhq: looks good, though
[07:05] alexhq: isaacs, thank you, replied.
[07:06] threecreepio has joined the channel
[07:06] hij1nx has joined the channel
[07:07] isaacs: alexhq: so, if you have a socket open for a really long time, let's say, and youer' sending movies over it, or some other big thing.
[07:08] isaacs: alexhq: at some point, the "socket.bytesRead" might be big enough that you lose count of them. that is, the number flips into float-mode, and then eventually, exceeds its mantissa length.
[07:08] isaacs: the first loss of precision starts at 2^32. the next at 2^51.
[07:08] isaacs: but that's a LOT of bytes.
[07:09] isaacs: at that point, being one or two off has gotta be ok.
[07:09] vikstrous has joined the channel
[07:10] sridatta has joined the channel
[07:12] DrPizza: As long as you maintain precision until you run out of VM space I would imagine you won't break anything too badly.
[07:12] DrPizza: Since it's not like someone can create a buffer that'll get its size wrong or anything like that
[07:12] zeade has joined the channel
[07:13] DrPizza: I mean, it sucks, but it's not like you can do anything about it, since htat's the way JavaScript works.
[07:13] saurabhverma has joined the channel
[07:14] ambris has joined the channel
[07:14] gf3: you could maintain a two-stage counter
[07:15] gf3: kilobytesSent + bytesSent
[07:15] gf3: bytesSent could rollover and ++ kilobytesSent
[07:15] clifton has joined the channel
[07:15] gf3: not sure if that's even useful
[07:15] ambris has left the channel
[07:16] DrPizza: well, it depends if someone can come up with any kind of meaningful programmatic thing to do with it
[07:16] DrPizza: If it's just informational to present to a user ("you have transfered XXX bytes this session") then it doesn't matter
[07:16] DrPizza: I doubt you can even hit 2^53 anyway
[07:16] DrPizza: 2^53 is a lot
[07:17] DrPizza: It's over 9000 (heh) terabytes.
[07:18] alexhq: gf3, nice catch, we can do that in application and set stats to zero from time to time
[07:18] DrPizza: I think that's what, 2 years non-stop at gigabit seeds?
[07:18] DrPizza: speeds*
[07:19] te-brian: I'm trying to use param pre-conditions in express... my param callback gets fired (and then dishes off to mongodb) but the main route callback does not wait for next().
[07:21] adambeynon has joined the channel
[07:22] jerrysv has joined the channel
[07:22] EyePulp has joined the channel
[07:23] mattcodes has joined the channel
[07:24] dexter_e: Anyone know if its possible to do default assignment in ejs ( myfieldname || "None")
[07:25] dexter_e: the same way you would do in javascript var a = something || "default stuff"
[07:25] dexter_e: or var a = s && "default-string"
[07:26] DrPizza: shouldn't do that.
[07:26] smolyn has joined the channel
[07:27] DrPizza: what if "something" is a false or false-like value?
[07:27] DrPizza: you'll then set 'a' to the default value
[07:27] DrPizza: even though the user specified it!
[07:28] amerine has joined the channel
[07:29] dexter_e: well that was just an example
[07:29] dexter_e: we can go with var a = s || "default";
[07:30] ezmobius has joined the channel
[07:30] DrPizza: so if the user specifies '' (empty string) you'll ignore them!
[07:30] DrPizza: same problem
[07:30] dexter_e: that will be ok.
[07:30] dexter_e: I just want to have semi-pleasant default results in the event of missing or unknown data.
[07:31] dexter_e: so if we run the render() method and the data going doesn't contain a field which the template requires it will still render , but with some missing data - instead of crashing
[07:32] dexter_e: is that possible ?
[07:32] DrPizza: the most common solution I've seen that avoids the falsey problem
[07:32] DrPizza: is to have both your defaults and your arguments in an object
[07:33] dexter_e: hmm
[07:33] DrPizza: and then produce a merged object
[07:33] DrPizza: that tests argumentObject.hasOwnProperty()
[07:33] DrPizza: and only uses the default when hasOwnProperty is false
[07:33] DrPizza: so you can detect the ones which are genuinely missing
[07:34] DrPizza: rather than merely false-like
[07:35] DrPizza: dexter_e: I think jQuery and many other libraries include similar functionality built-in
[07:35] DrPizza: I think node perhaps used to but does not any more
[07:35] isaacs has joined the channel
[07:35] dexter_e: I see. For this application I don't mind the possible sloppiness of falsy values, I just want the templates to render even if pure trash is passed into the render function
[07:36] dexter_e: Ideally the template would still render even if all the data was missing.
[07:36] dexter_e: is that possible somehow ?
[07:37] DrPizza: dexter_e: so something like function merge(defaults, arguments) { var result = {}; for(var name in defaults) { result[name] = arguments.hasOwnProperty(name) ? arguments[name] : defaults[name]; } return result; }
[07:37] DrPizza: (off the top of my head)
[07:38] mytrile has joined the channel
[07:38] fap2112 has joined the channel
[07:39] dexter_e: DrPizza: Thanks. That looks like it would do the job, but this would require that a Defaults object is manually created for every template.
[07:39] stephank has joined the channel
[07:39] dexter_e: I would like the templates to be self-describing and self-defaulting so that we wouldn't have to be aware of how to default them from the outside.
[07:40] dexter_e: We can just pass pure garbage into the render and still have it render
[07:40] DrPizza: the default would be part of the template surely
[07:40] dexter_e: oh yeah?
[07:40] dexter_e: how would that be possible?
[07:40] DrPizza: I have no idea
[07:40] dexter_e: :)
[07:40] dexter_e: oh ok
[07:41] dexter_e: Are you using ejs?
[07:41] DrPizza: If I were designing a parameterized templating engine, it would allow the setting of defaults somehow!
[07:41] DrPizza: no
[07:41] dexter_e: which one you like?
[07:42] DrPizza: I have no idea what's even on offerin the world of javasciprt
[07:43] DrPizza: and now, I sleep
[07:43] dexter_e: sweet, nighty night
[07:43] dexter_e: thanks for the input
[07:44] dexter_e: the merge solution would be awesome if you could just merge things right into templates.
[07:46] collypops has joined the channel
[07:47] dexter_e: Any EJS monsters in here?
[07:48] chjj: ejs monsters?
[07:48] chjj: are they scary?
[07:50] Druide_ has joined the channel
[07:50] dexter_e: hopefully they're scary
[07:51] dexter_e: I just want to do know how we can make the render method gracefully degrade instead of just crashing if one value is missing.
[07:54] `3rdEden has joined the channel
[07:56] Xeon06_ has joined the channel
[07:57] aaroninfidel has joined the channel
[07:58] CStumph has joined the channel
[07:58] robhawkes has joined the channel
[08:02] pastak has joined the channel
[08:02] DracoBlue has joined the channel
[08:04] cha0s has joined the channel
[08:04] cha0s has joined the channel
[08:08] stephank has joined the channel
[08:10] mattcodes has joined the channel
[08:11] dexter_e has joined the channel
[08:12] cachemoney has joined the channel
[08:12] seawise_ has joined the channel
[08:15] daleharvey: whats that thing that restarts node when you change a file
[08:15] daleharvey: I have it installed, just cant remember how to invoke it
[08:16] deoxxa: presumably you'd invoke it by changing a file
[08:16] igl: nodemon
[08:16] igl: lol :P
[08:16] Xeon06_ has joined the channel
[08:19] CStumph has joined the channel
[08:20] seawise has joined the channel
[08:20] daleharvey: thanks igl
[08:21] steffkes^ has joined the channel
[08:21] steffkes has joined the channel
[08:23] Nexxy has joined the channel
[08:23] CStumph has joined the channel
[08:25] JaKWaC_: Is there an easy way to do byte conversion in node?
[08:26] JaKWaC_: For example I have the bytes 20, 184, 169, 62 and I need to conver those into a float.
[08:28] vns has joined the channel
[08:28] svenlito has joined the channel
[08:31] Xeon06_ has joined the channel
[08:32] jbpros has joined the channel
[08:32] gozala has joined the channel
[08:32] aliem has joined the channel
[08:32] luismreis has joined the channel
[08:32] CStumph has joined the channel
[08:33] vns_ has joined the channel
[08:34] mapleman has joined the channel
[08:35] simenbrekken has joined the channel
[08:35] vns has joined the channel
[08:38] tilgovi has joined the channel
[08:38] tilgovi has joined the channel
[08:40] sridatta has joined the channel
[08:40] vns_ has joined the channel
[08:41] Xeon06_ has joined the channel
[08:41] vns__ has joined the channel
[08:49] luismreis has left the channel
[08:51] Xeon06_ has joined the channel
[08:54] fly-away has joined the channel
[08:55] deadman87 has joined the channel
[08:56] Xeon06_ has joined the channel
[08:56] deadman87: Good morning everyone :-)
[08:59] akshatj has joined the channel
[09:00] necrodearia has joined the channel
[09:02] dexter_e: goodmorning.
[09:02] dexter_e: Anyone using WELD.js ?
[09:04] jesusabdullah: dexter_e: I haven't, but you can probably catch hij1nx tomorrow morning and ask him about it
[09:04] dexter_e: whoa cool
[09:04] dexter_e: thanks!
[09:04] jesusabdullah: Yeah, np
[09:04] jesusabdullah: It's a little late in New York
[09:05] jesusabdullah: ;)
[09:05] dexter_e: gotcha
[09:05] dexter_e: any ideas how they ship the pure html templates to the browser?
[09:05] __tosh has joined the channel
[09:05] dexter_e: The appeal of weld is it doesn't require <%%> funny tags in your markup
[09:05] syst3mw0rm has joined the channel
[09:06] dexter_e: but I wonder how they ship the tempates.
[09:06] kasper has joined the channel
[09:06] Xeon06_ has joined the channel
[09:07] dgathright has joined the channel
[09:07] jbpros has joined the channel
[09:08] tiglionabbit has joined the channel
[09:08] tiglionabbit: nge
[09:08] tiglionabbit: hi
[09:08] tiglionabbit: is there an easy way to build a recent deb of node?
[09:08] tiglionabbit: or get one?
[09:08] tiglionabbit: I'm having a bit of trouble
[09:10] deoxxa: tiglionabbit: yes, it is easy enough, but i'm curious as to why you need it specifically
[09:10] deoxxa: it's equally simple to install from source, unless you need to deploy it to a hundred boxes or something
[09:10] tiglionabbit: deoxxa: I want to install it on ubuntu, but I don't want to use version 0.2
[09:10] tiglionabbit: but I'm sure it's better to package it than to just make install
[09:11] deoxxa: not really, as long as you install it to /usr/bin - that's where user-built applications are supposed to go
[09:11] tiglionabbit: I seem to have successfully installed a deb of the 'works' tag, but npm fails to install because 'graceful-fs' is missing
[09:12] tiglionabbit: gonna try again with 0.5.2
[09:14] pastak_ has joined the channel
[09:15] m0s has joined the channel
[09:23] pt_tr_ has joined the channel
[09:24] deadman87 has joined the channel
[09:25] DracoBlue has left the channel
[09:25] dgathright has joined the channel
[09:26] Xeon06_ has joined the channel
[09:27] sylvinus has joined the channel
[09:29] __doc__ has joined the channel
[09:30] seivan has joined the channel
[09:35] javaanse_jongens has joined the channel
[09:36] Xeon06_ has joined the channel
[09:37] jvduf has joined the channel
[09:38] wao: hm
[09:38] wao: Error: require.paths is removed. Use node_modules folders, or the NODE_PATH environment variable instead. npm 1.0.20 & node 0.5.2
[09:40] rchavik has joined the channel
[09:40] versicolor has joined the channel
[09:41] piscisaureus has joined the channel
[09:41] pisci_away has joined the channel
[09:42] threecreepio has joined the channel
[09:44] TheJH has joined the channel
[09:44] BKBoups has joined the channel
[09:46] Xeon06_ has joined the channel
[09:48] Xano has joined the channel
[09:50] benmonty has joined the channel
[09:51] esteth has joined the channel
[09:51] Xeon06_ has joined the channel
[09:52] fille has joined the channel
[09:52] fille: alloh
[09:55] TheJH: hello fille
[09:55] fille: hi :D
[09:56] mendel_: is there a easy way to get the parent directory of process.cwd()
[09:56] mendel_: of course I could split etc, but maybe there's something in the api that I'm missing
[09:58] TheJH has joined the channel
[10:00] igl: mendel_: require("path") does that for you
[10:00] igl: path.join("/home/foo/bar", "../") = /home/foo
[10:00] TheJH: mendel_, require('path').dirname('/etc/')
[10:00] mendel_: igi: I need to loop a directory (fs.readdir), but that dir is a subdir of the parent folder from the script it's running in
[10:01] TheJH: mendel_, just calling dirname is shorter and works, too
[10:01] boehm has joined the channel
[10:02] mendel_: so I need to loop /folder1/folder2 but my script is in /folder1/folder3
[10:02] mendel_: and I don't want to use the full path ;)
[10:02] igl: i usually use the "__dirname" global
[10:03] igl: and join/concat it with the path module how i want it
[10:03] TheJH: mendel_, then path.join is better for you, I think
[10:03] mendel_: TheJH: perfect, thnx
[10:03] mendel_: strange that I didn't see that one
[10:03] TheJH: mendel_, thank igl
[10:04] igl: :x
[10:04] mendel_: haha sorry igi
[10:05] mendel_: let met rephrase, igl you're the man
[10:05] igl: hehe alright enough enough
[10:08] TheJH has joined the channel
[10:11] sourcode has joined the channel
[10:15] delian66 has joined the channel
[10:17] FireFly has joined the channel
[10:18] loob2 has joined the channel
[10:21] Xeon06_ has joined the channel
[10:25] Yuffster_work has joined the channel
[10:25] m0s has joined the channel
[10:26] Xeon06_ has joined the channel
[10:31] Xeon06_ has joined the channel
[10:31] adrianmg has joined the channel
[10:33] Nuck: Can I put shit in exports.foo in a callback?
[10:35] llrcombs has joined the channel
[10:36] Xeon06_ has joined the channel
[10:36] javajunky has joined the channel
[10:36] javajunky: morning kids
[10:36] javajunky: Anyone having issues compiling on lion osx ?
[10:37] javajunky: (I'm beyond install the dev tools to get make incidentally..)
[10:38] gvz has joined the channel
[10:40] javajunky: mikeal: I can see from github you've had the same issue as me 'ARCH' not declared … did you manage to resolve it ?
[10:40] TheJH: Nuck, you can, but make sure that you don't try to access it in the other module before it's there
[10:43] javajunky: oops just needed to run configure … meh hopefully these logs'll help someone else :)
[10:43] TheJH: javajunky, there are no logs
[10:44] javajunky: I mean of the form: http://nodejs.debuggable.com/2011-07-15.txt
[10:44] TheJH: what???? freenode policy says that you have to say it when you log a channel!
[10:45] Nuck: Everybody knows there's logs here, they're public knowledge
[10:45] Nuck: they're also on hitlr.de IIRC
[10:46] TheJH: humm... actually, the guidelines say "If you're publishing logs on an ongoing basis, your channel topic should reflect that fact."
[10:47] TheJH: would probably be a good idea
[10:47] unlink has joined the channel
[10:47] unlink has joined the channel
[10:49] Peniar has joined the channel
[10:50] jhbot has joined the channel
[10:50] FireFly: Hi, how can I control environment variables for subprocesses spawned via the child_process module?
[10:50] dexter_e has joined the channel
[10:52] javajunky: hmm TheJH it did used to say that on entry, but I notice it didn't do that before.. the logs here are pretty useful generally.
[10:52] TheJH: FireFly, you could try to spawn a bash or so
[10:52] mikedeboer has joined the channel
[10:52] FireFly: Hrm, so it can't be done "directly"?
[10:52] TheJH: javajunky, it could still be in the topic :/
[10:54] TheJH: FireFly, dunno how child_process.exec works internally, but it seems to allow stuff like piping inside the command, maybe it already does bash magic or so: http://nodejs.org/docs/latest/api/child_processes.html#child_process.exec
[10:54] FireFly: Oh, I was using spawn, I'll try exec
[10:55] FireFly: Neat, works like a charm :D
[10:57] guidocalvano has joined the channel
[11:00] H4ns` has joined the channel
[11:03] skm has joined the channel
[11:04] japj has joined the channel
[11:05] Metal3d has joined the channel
[11:06] Xeon06_ has joined the channel
[11:07] dexter_e has joined the channel
[11:11] Xeon06_ has joined the channel
[11:13] javajunky: hmmm, on the 'new' npm do I have to do some magic to require 'global' modules now1? ?
[11:15] TheJH: javajunky, why do you want global modules?
[11:15] TheJH: javajunky, just "npm install" them
[11:17] javajunky: yes, indeed, I have done (npm install -g ) .. its ok, I suspect its because the version of npm I have isn't compatible (expects different behaviour) to the version of node.js I'm running.
[11:19] CStumph has joined the channel
[11:19] CIA-65: node: 03Daniel Pihlström 07master * r96bb97e 10/ (lib/fs.js test/simple/test-fs-write-file.js):
[11:19] CIA-65: node: convert nonbuffer data to string in fs.writeFile/Sync
[11:19] CIA-65: node: Fixes #657. - https://github.com/joyent/node/commit/96bb97e3da6a3e6c26400f62fa959c08bdaf703b
[11:20] TheJH: javajunky, why "-g"? install them locally!
[11:20] javajunky: TheJH: if I did that I might as well use git submodules (and would prefer to) .. why would I *not* do them globally ?
[11:21] TheJH: javajunky, because you might have to use different versions
[11:21] Xeon06_ has joined the channel
[11:21] TheJH: javajunky, but you can try "sudo npm link foo" to make a global module locally available, should work
[11:21] TheJH: (replace foo)
[11:23] javajunky: err, so you're saying your understanding is there's no way to access globally installed npm modules by default ? .. that would seem odd, it hasn't worked like that for the last year or so ?
[11:23] TheJH: javajunky, I'm not really sure, but I think so
[11:24] TheJH: javajunky, just try the sudo npm link thing
[11:28] javajunky: TheJH: you appear to be correct http://blog.nodejs.org/2011/04/06/npm-1-0-link/ … hmm I wonder how well this is gonna translate to windows .
[11:29] dexter_e: Anyone use weld.js ?
[11:30] topaxi has joined the channel
[11:32] fairwinds has joined the channel
[11:32] azeroth_ has joined the channel
[11:35] CStumph has joined the channel
[11:35] Country has joined the channel
[11:36] Xeon06_ has joined the channel
[11:37] fyskij has joined the channel
[11:47] temp01 has joined the channel
[11:51] Xeon06_ has joined the channel
[11:53] jcrls has joined the channel
[11:53] kriszyp has joined the channel
[11:55] agnat has joined the channel
[11:59] seivan has joined the channel
[12:00] simenbrekken has joined the channel
[12:04] Wizek has joined the channel
[12:04] maushu has joined the channel
[12:07] jcrls has joined the channel
[12:11] Xeon06_ has joined the channel
[12:14] boehm has joined the channel
[12:15] jstroem has joined the channel
[12:15] igl1 has joined the channel
[12:16] ts___ has joined the channel
[12:16] Xeon06_ has joined the channel
[12:17] CIA-65: node: 03Vicente Jimenez Aguilar 07v0.4 * rb8e9bf0 10/ ChangeLog :
[12:17] CIA-65: node: Typos in ChangeLog file.
[12:17] CIA-65: node: Fixes #968. - https://github.com/joyent/node/commit/b8e9bf0993ebf59d995bdea7d0d44fb8643b783d
[12:17] simenbrekken has joined the channel
[12:25] kakamba has joined the channel
[12:26] Xeon06_ has joined the channel
[12:27] tdegrunt has joined the channel
[12:29] whitman has joined the channel
[12:30] __doc__ has joined the channel
[12:30] unomi has joined the channel
[12:30] uyjco0 has joined the channel
[12:30] vikstrous has joined the channel
[12:30] uyjco0 has left the channel
[12:31] simenbrekken has joined the channel
[12:31] Xeon06_ has joined the channel
[12:31] cjm has joined the channel
[12:36] llrcombs has joined the channel
[12:37] Sorella has joined the channel
[12:39] delian66 has joined the channel
[12:43] sully_ has joined the channel
[12:46] __doc__ has joined the channel
[12:48] jhbot has joined the channel
[12:49] zemanel has joined the channel
[12:49] bnoordhuis has joined the channel
[12:53] micheil has joined the channel
[12:53] tayy has joined the channel
[12:55] rworth has joined the channel
[12:57] samBiotic has joined the channel
[12:57] CIA-65: node: 03SAWADA Tadashi 07v0.4 * re357acc 10/ (src/node_crypto.cc test/simple/test-crypto.js):
[12:57] CIA-65: node: Fix crypto encryption/decryption with Base64.
[12:57] CIA-65: node: Fixes #738.
[12:57] CIA-65: node: Fixes #1205. - https://github.com/joyent/node/commit/e357acc55b8126e1b8b78edcf4ac09dfa3217146
[13:00] clyfe has joined the channel
[13:01] Xeon06_ has joined the channel
[13:06] Lagnus has joined the channel
[13:06] Xeon06_ has joined the channel
[13:09] mrtrosen has joined the channel
[13:10] javajunky has joined the channel
[13:10] _mdp has joined the channel
[13:11] CrisO has joined the channel
[13:11] dexter_e has joined the channel
[13:11] javajunky: *sigh* … trying to bench my node app, since the osx lion upgrade, ab is intermittently failing with: apr_socket_recv: Connection reset by peer (54)
[13:11] javajunky: …. these appear to coincide with errors in the console logger of : kernel: nstat_lookup_entry failed: 2 .. I'm (now) back running the stable node.js release and still seeing this, anyone else ?
[13:11] javajunky:
[13:12] Dreamer3 has joined the channel
[13:12] svenlito has joined the channel
[13:13] humanerror_ has joined the channel
[13:14] jomoho has joined the channel
[13:15] kakamba has joined the channel
[13:16] mehlah has joined the channel
[13:17] mehtryx has joined the channel
[13:18] okuryu has joined the channel
[13:19] esteth has joined the channel
[13:22] cesutherland has joined the channel
[13:23] dexter_e: anyone in here rockin weld.js ?
[13:23] cjm has joined the channel
[13:26] Xeon06_ has joined the channel
[13:31] Xeon06_ has joined the channel
[13:32] aliem has joined the channel
[13:32] kakamba1 has joined the channel
[13:35] rworth has joined the channel
[13:40] mapleman has joined the channel
[13:41] Lagnus_ has joined the channel
[13:41] Xeon06_ has joined the channel
[13:42] hwinkel has joined the channel
[13:43] e6nian has joined the channel
[13:47] sivy has joined the channel
[13:47] skm has joined the channel
[13:51] Xeon06_ has joined the channel
[13:54] Swizec has joined the channel
[13:56] Xeon06_ has joined the channel
[13:56] kasper has joined the channel
[13:56] e6nian: So,How to get all the connect client ids in the server? socket.id just return single one of the connected clients.
[13:57] deoxxa: e6nian: what kind of server?
[13:57] deoxxa: http? tcp? udp? https? etc?
[13:57] e6nian: I'm asking a question of socket.io
[13:57] deoxxa: ah
[13:58] smtlaissezfaire has joined the channel
[13:58] e6nian: deoxxa: Sorry that confuses you.
[13:58] deoxxa: no problem :)
[14:00] hij1nx has joined the channel
[14:00] threecreepio has joined the channel
[14:00] jvduf has joined the channel
[14:02] Raynos has joined the channel
[14:02] Raynos: Anyone familiar with jsdom?
[14:03] reitzensteinm has joined the channel
[14:03] esteth has left the channel
[14:04] TheJH: e6nian, you might want to ask that in #socket.io
[14:04] kakamba has joined the channel
[14:04] rurufufuss has joined the channel
[14:04] e6nian: TheJH: Yeah,I've join that channel,and also refer to the source code
[14:05] e6nian: TheJH: Yesterday,that cross-domain requset is supported by socket.io,but just for the socked.io server,So I'm working for a chrome extension now.
[14:06] TheJH: e6nian, can't you just take the normal socket.io browser client code?
[14:07] e6nian: TheJH: And,maybe if I have time,I would like to extend the socked.io with cross-domain ajax request.
[14:07] e6nian: TheJH: Yes,I take that.
[14:07] tim__ has joined the channel
[14:08] tayy has joined the channel
[14:08] e6nian: TheJH: Do you have any advise about it? or I'm take the wrong way. Any other way to make ajax request with socket.io?
[14:08] Bwen has joined the channel
[14:10] TheJH: e6nian, socket.io can do cross-domain pjson requests (or whatever that JSON-in-scripttag-ajax is called) as far as I know, but in an extension, you should even be able to use websockets
[14:10] unlink has joined the channel
[14:10] davidwalsh has joined the channel
[14:10] TheJH: e6nian, same origin policy afaik doesn't apply to extensions
[14:11] traph has joined the channel
[14:12] e6nian: TheJH: To use extension, I can't do everything,and "permissions": [ "tabs", " a b will be interpreted as a b
a
b
[17:26] ringomanatee: kaww: what is the modern equivalent? [17:27] ringomanatee: Html is the Ebonics of XML [17:28] ^robertj: * A Schema-Aware XSD Thing - Schemas are an exercise in fetishistic masochism. [17:28] ^robertj: <-- bwahaha [17:28] mikedeboer has joined the channel [17:28] perezd has joined the channel [17:28] kaww: ringomanatee: i have a linode running ubuntuserver 10.10 and no issues. I think there is a newer release as well. But actually I knew the fix for your problem because the company i work at have a lot of old ubuntuservers that I am using that fix on [17:28] adrianmg has joined the channel [17:31] hippich has joined the channel [17:31] hippich has joined the channel [17:32] pHcF has joined the channel [17:33] carmony has joined the channel [17:34] alessioalex has joined the channel [17:36] Spion_ has joined the channel [17:38] azeroth_ has joined the channel [17:38] joshontheweb has joined the channel [17:41] creationix has joined the channel [17:41] kriszyp has joined the channel [17:41] creationix has left the channel [17:44] bwinton has joined the channel [17:46] anaio has joined the channel [17:48] isaacs: bnoordhuis: hey, how do you pronounce your name? (noordhuis, not ben) [17:48] AvianFlu has joined the channel [17:48] threecreepio has joined the channel [17:49] CIA-65: libuv: 03Igor Zinkovsky 07stdio * rac2812a 10/ (5 files in 3 dirs): uv_std_handle + uv_listen on stdin - https://github.com/joyent/libuv/commit/ac2812a1cfa91b81992a231d34e6b591aa5e34cc [17:51] tomtomaso has joined the channel [17:53] kill has joined the channel [17:55] kakamba1 has left the channel [17:56] Xeon06_ has joined the channel [17:57] Stythys has joined the channel [17:58] nail_: Is there any convenient/recommended wya to parse the mail body text fetched using node-imap? mailparser seems to expect a full message including the raw headers, not just the body [18:05] japj: isaacs: are you doing another podcast? [18:06] madsleejensen has joined the channel [18:06] japj: bnoordhuis: can you close https://github.com/joyent/node/issues/597 ? [18:07] cpetzold has joined the channel [18:08] kaww has joined the channel [18:09] isaacs: @japj some day, i'm sure [18:10] hellp has joined the channel [18:11] zabyl has joined the channel [18:11] isaacs: japj: just closed 597 [18:11] nerdfiles has joined the channel [18:12] bentkus: http://is.gd/N3vxt2 comment! [18:13] djcoin has joined the channel [18:14] shanebo has joined the channel [18:17] tayy has joined the channel [18:19] level09 has joined the channel [18:20] Anton_ has joined the channel [18:21] kakamba has joined the channel [18:21] shurane has joined the channel [18:23] Drake_ has joined the channel [18:24] perezd has joined the channel [18:25] tomtomaso has joined the channel [18:26] Xeon06_ has joined the channel [18:28] dimroc has joined the channel [18:31] cha0s has joined the channel [18:31] Xeon06_ has joined the channel [18:32] Ginlock has joined the channel [18:32] slifty_corsair has joined the channel [18:33] jcrls has joined the channel [18:35] mapleman1 has joined the channel [18:40] jcrls has left the channel [18:42] xeodox has joined the channel [18:42] mikeal has joined the channel [18:43] mscdex: nail_: you don't need to [18:44] mscdex: nail_: you can fetch a specific part [18:44] dshaw_ has joined the channel [18:45] levi501d has joined the channel [18:47] reitzensteinm has joined the channel [18:49] cjm has joined the channel [18:51] nail_: mscdex: yep but I'd like to retrieve the full mail at once and extract each parts individually... What I came up so far was concatening imap._state.requests[0]._headers that I grabbed in the msg 'end' handler when fetching the headers, with all the chunks retrieved when fetching the body [18:52] nail_: passing that to mailparser makes it able to correctly parse the message, but that looks ugly :) [18:56] mikeal has joined the channel [18:56] Xeon06_ has joined the channel [18:58] nail_: mscdex: that gives me something like https://gist.github.com/f99dbc4f6f0c852eaa4f , that works but I'm not sure how reliable it is :) [18:59] liquidproof has joined the channel [19:01] alessioalex has joined the channel [19:02] Corren has joined the channel [19:08] brianseeders has joined the channel [19:08] mapleman has joined the channel [19:08] arlolra has joined the channel [19:12] admc has joined the channel [19:12] cpetzold has joined the channel [19:15] springif` has joined the channel [19:16] tomtomaso has joined the channel [19:16] Xeon06_ has joined the channel [19:16] rileys has joined the channel [19:17] jhurliman has joined the channel [19:19] clyfe has joined the channel [19:20] clyfe: How do I publish my awesome project to NPM registry ? [19:20] clyfe: https://github.com/clyfe/meta_code [19:21] brainproxy: clyfe: the NPM docs will help you out [19:22] brainproxy: clyfe: see https://github.com/isaacs/npm/tree/master/doc [19:23] clyfe: brainproxy: thx [19:23] sooli has joined the channel [19:23] incon has joined the channel [19:23] brainproxy: clyfe: np .. especially see json.md [19:24] dexter_e has joined the channel [19:26] unomi has joined the channel [19:27] blueadept: with mongoose, do you have to define an array as a document with in a document? [19:27] blueadept: is it required? [19:28] dexter_e: anyone in here used weld.js ? [19:28] clyfe_ has joined the channel [19:29] dexter_e: know how to inject src and href or attributes? [19:29] jbpros has joined the channel [19:31] namelessjon has joined the channel [19:32] delian66 has joined the channel [19:32] xerox: can one reify the name of a variable in js [19:34] rhdoenges has joined the channel [19:35] amerine has joined the channel [19:35] saurabhverma has joined the channel [19:35] rileys has joined the channel [19:36] zeade has joined the channel [19:36] xeodox has joined the channel [19:38] jerrysv has joined the channel [19:39] delian66 has joined the channel [19:39] Dreamer3 has joined the channel [19:42] bradleymeck has joined the channel [19:44] patcito has joined the channel [19:45] adrianmg has joined the channel [19:45] xerox: how can I pass some data to a module when I require it? [19:46] geetarista has joined the channel [19:48] V1 has joined the channel [19:51] TheJH: xerox, in the module, do "module.exports = function(options) { ... return myExports; }" [19:52] TheJH: xerox, require it like "require('module')(options)" [19:52] adrianmg has joined the channel [19:53] jameson has joined the channel [19:53] xerox: right but then I have to move all of the module definition inside the function [19:53] booo has joined the channel [19:54] Corren has joined the channel [19:55] kmiyashiro has joined the channel [19:56] guidocalvano has joined the channel [19:56] MooGoo: what path does node generally keep it's native modules at? [19:56] kmiyashiro has joined the channel [19:58] mscdex: MooGoo: nowhere, they're compiled in [19:58] MooGoo: ah [19:58] mscdex: nail_: i think there may be a way to get the whole message + headers, i'd have to implement it though. shouldn't be too hard to add in [20:00] dans has joined the channel [20:01] blueadept: anyone know why this curl command won't retrieve this url? http://pastie.org/private/mglbvnbxi4jl6mmswdx6g [20:01] `3rdEden has joined the channel [20:01] blueadept: an image renders at that address, but curl is unable to retrieve that image [20:02] mikey_p has joined the channel [20:02] TheJH: blueadept, try curl -L "http://www.website.com/dir/ShowImage.aspx?size=full&id=48382" [20:02] blueadept: ahh [20:03] supster has joined the channel [20:04] skm has joined the channel [20:05] blueadept: hmm, still says "no id entered" [20:06] TheJH: blueadept, hmm, weird. maybe it checks referer or useragent or so [20:06] blueadept: wait [20:06] blueadept: no it did work [20:06] TheJH: ah, ok [20:07] blueadept: awesome, ty! [20:07] seivan has joined the channel [20:09] incon has joined the channel [20:09] rileys has joined the channel [20:11] rileys has joined the channel [20:12] rfay has joined the channel [20:13] fangel has joined the channel [20:15] seivan: Scss or stylus? [20:15] blueadept: Stylus? [20:16] mikey_p: Stylus! [20:16] blueadept: stylus works fine for me, haven't heard of Scss [20:16] mikey_p: it's the new syntax of SASS [20:16] blueadept: my css is so baller now [20:16] mikey_p: seivan: stylus lets you use which ever syntax you want, it's very flexible [20:17] seivan: scss is backwards compatible with css [20:17] seivan: stlus is not [20:17] seivan: stylus is not* [20:17] blueadept: oh i see [20:17] mikey_p: seivan: you can use SCSS syntax with stylus [20:17] blueadept: yeah i think you can actually [20:17] mikey_p: seivan: or SASS, or any combination there off [20:17] blueadept: haven't tried that [20:18] mikey_p: which SASS cannot do, you have to stick to a single syntax dictated by the file's extension [20:18] mikey_p: Stylus can mix and match in the same file [20:22] mikey_p: seivan, blueadept: https://gist.github.com/1101843 [20:23] sirdancealot has joined the channel [20:23] blueadept: i like have to type the least amount of characters [20:24] blueadept: less semicolons the better [20:24] blueadept: er colons [20:24] mikey_p: and stylus has a decompiler as well [20:26] shanebo: hey guys, what's the global way that I can create a new class instance via a string? [20:26] jameson has joined the channel [20:26] shanebo: on v8cgi I used to do this [20:27] shanebo: new global['Index'](args); [20:28] jstroem has joined the channel [20:28] eldios has joined the channel [20:29] digman543 has joined the channel [20:30] TheJH: shanebo, in node.js, it's standard to not use globals - use require() instead [20:31] mscdex: nail_: i've pushed a change to allow fetching of the entire message, headers and all [20:31] shanebo: TheJH so would I do something like: [20:31] shanebo: var controller = require('path/to/controller/'); [20:31] shanebo: new controller() [20:31] TheJH: shanebo, yes [20:33] hij1nx_ has joined the channel [20:33] shanebo: TheJH and in my controller file what do I return so that new controller() creates a new instance? [20:34] hij1nx__ has joined the channel [20:34] TheJH: shanebo, put the stuff that require() should return in module.exports [20:36] jomoho has joined the channel [20:37] shanebo: TheJH, I see, thanks! [20:38] TheJH: shanebo, maybe you should read the docs: http://nodejs.org/docs/latest/api/modules.html [20:38] NetRoY has joined the channel [20:38] stagas has joined the channel [20:39] srid has joined the channel [20:39] srid has joined the channel [20:40] rfay has joined the channel [20:40] shanebo: I have been, just didn't know what to look for in docs. There was no module paradigm in v8cgi. it was just exports.foo = 'bar'; [20:41] guydoingstuff1 has joined the channel [20:41] kysmith has joined the channel [20:42] V1 has joined the channel [20:48] ambroff has joined the channel [20:49] amerine has joined the channel [20:51] Aiden has joined the channel [20:52] amerine has joined the channel [20:54] guydoingstuff1: good tutorial on creating a simple database and randomly displaying strings from it? [20:54] Destos: does anyone know of any articles/middleware for express.js on how to handle static assets? ( loading particular js/css per request view ) [20:58] rknLA has joined the channel [20:58] TheJH: Destos, I think that express has some builtin stuff for static files [20:59] Destos: TheJH: yeah it does, what I'm looking for is something that lets you select what files are loaded into the html header. I'll probably just customize the view. [20:59] indexzero has joined the channel [21:00] yozgrahame has joined the channel [21:02] ceej has joined the channel [21:05] bradleymeck has joined the channel [21:06] loveshine: Destos: you can define dynamic view helpers that return an array of files depending on the page [21:07] dherman has joined the channel [21:09] rknLA has joined the channel [21:11] guydoingstuff1: redis questions: RANDOMKEY[string1, string2, string3] will return one of the strings? [21:14] Renegade001 has joined the channel [21:16] necrodearia has joined the channel [21:17] Cromulent has joined the channel [21:17] mnaser has joined the channel [21:17] seivan: mikey_p: hehe between you writing your answer and me reading it :D I got laid [21:18] dimroc has joined the channel [21:18] CIA-65: node: 03Ben Noordhuis 07master * raa0308d 10/ (src/node.cc src/node.js test/internet/test-dns.js): [21:18] CIA-65: node: process: add process.features, remove process.useUV [21:18] CIA-65: node: Partially fixes #1385. - https://github.com/joyent/node/commit/aa0308d6182b2f7a2508373770952eefd2fdb0ac [21:19] dimroc: anyone familiar with zappa? [21:20] xerox: anybody knows an app that uses unix sockets so I can steal its skeleton? :D [21:21] mnaser has joined the channel [21:22] bnoordhuis: dimroc: i have all his albums [21:23] bnoordhuis: xerox: in node it's as easy as server.listen('/path/to/socket') [21:24] xerox: bnoordhuis: and it creates the socket? the other guys then huh, fs.write to it? [21:24] b_erb has joined the channel [21:24] b_erb: what's the best way of converting a base64-based buffer to a binary buffer in terms of performance? [21:24] bnoordhuis: xerox: yes, it creates the socket for you [21:24] bnoordhuis: xerox: and no, you simply use the net.* api [21:25] bnoordhuis: xerox: it's just like talking to tcp sockets [21:25] bnoordhuis: b_erb: new Buffer(base64_encoded_content, 'base64') [21:26] seivan: dimroc: I looked it up [21:26] seivan: dimroc: it goes a far way from the way node works [21:27] dimroc: any opinion on it? seems sweet. sinatra on node [21:27] seivan: dimroc: express is sinatra on node [21:27] seivan: zappa is... sinatra on E [21:28] dimroc: with coffee script too though [21:29] dimroc: im just asking opinions on it [21:29] dimroc: i like the support for coffee-script, coffeekup and socket.io [21:29] dimroc: in one space [21:30] zackattack has joined the channel [21:30] dimroc: but i worry about hosting on heroku because im not sure i can configure the port number [21:30] dreamdust: http://www.benzinga.com/news/11/07/1789905/forget-anonymous-evidence-suggests-gop-hacked-stole-2004-election#ixzz1Ssy99Dmv [21:30] dreamdust: err sorry wrong channel [21:30] dreamdust: :/ [21:31] xerox: bnoordhuis: thanks :D [21:31] Nuck has joined the channel [21:31] CStumph has joined the channel [21:31] kjeldahl has joined the channel [21:33] bnoordhuis: b_erb: you mean buffer to buffer, right? that kinda sucks right now, you have to convert the input buffer to a string first [21:34] b_erb: bnoordhuis: hmm ok, that was the issue i was thinking of [21:34] versicolor has joined the channel [21:34] bnoordhuis: b_erb: it's one of those 'fix sometime in the future' things [21:35] mikeal has joined the channel [21:36] Xeon06_ has joined the channel [21:41] pHcF_ has joined the channel [21:41] xerox: bnoordhuis: do you know if one can use an higher level library like socket.io or similar over a unix socket? [21:41] bnoordhuis: xerox: no idea, sorry [21:41] xerox: sure [21:42] Ramosa has joined the channel [21:47] pHzb0x has joined the channel [21:50] euforic has joined the channel [21:53] CStumph has joined the channel [21:56] mikeycgto: xerox, it may be overkill but i would definitely recommend zeromq [21:57] mikeycgto: there are node.js bindings and i've had great success with it... it's basically sockets on steroids [21:57] mikeycgto: http://www.zeromq.org/ [21:57] xerox: mikeycgto: I am looking at diode now [21:57] xerox: err, dnode [21:57] xerox: but let me look at that too : ) [21:58] mikeycgto: certainly [22:03] jhbot has joined the channel [22:03] isaacs has joined the channel [22:04] chapel: xerox: what are you trying to do? [22:04] chapel: ACTION wasn't paying attention [22:05] brettgoulder has joined the channel [22:05] xerox: communication between two node.js processes [22:05] xerox: via a unix socket [22:05] chapel: dnode is good [22:05] xerox: it does indeed look like it [22:05] mnaser: I just started to use dnode [22:05] chapel: and it lets you do it with functions [22:05] mnaser: It's amazing. [22:06] mnaser: Also, dnode does listen on unix sockets. [22:06] TheJH: hey, guys, look: [22:06] TheJH: !npm search (newline|delimited)&(network|stream|tcp|parser) [22:06] jhbot: package directive: Parser for simple line delimited files [22:06] chapel: yeah, between processes, it uses sockets, otherwise for browser, it uses socket.io [22:07] zmbmartin has joined the channel [22:07] TheJH: !@TheJH mem npm-install [22:07] jhbot: TheJH, curl http://npmjs.org/install.sh | sudo sh [22:07] mnaser: fancy [22:07] mnaser: It needs a help menu? [22:07] mikeycgto: dnode does look pretty sweet [22:08] TheJH: for help, query the bot and say "help" [22:08] mnaser: It's as awesome as you think it is. Then you'll start to use it, and realize it's even more. I was seriously blown away by what it accomplishes transparently [22:10] mattcodes has joined the channel [22:11] piscisaureus has joined the channel [22:12] sylvinus has joined the channel [22:14] pgte has joined the channel [22:15] fdenbow has left the channel [22:15] nerdfiles has left the channel [22:15] fly-away has joined the channel [22:16] unmanbea- has joined the channel [22:16] othiym23 has joined the channel [22:19] mattp_ has joined the channel [22:19] bentkus: what classes are good for parsing binary formats? [22:19] tantek has joined the channel [22:20] CStumph has joined the channel [22:20] themiddleman has joined the channel [22:20] xerox: mnaser: exactly the reason I found it : ) [22:21] tmzt: bentkus: node-binary [22:21] Xeon06_ has joined the channel [22:21] othiym23 has joined the channel [22:22] fommes has joined the channel [22:22] AaronMT has joined the channel [22:22] willwhite has joined the channel [22:24] level09 has joined the channel [22:25] DrPizza: ugh, gross, C99 VLAs in C++ [22:27] mattp_ has joined the channel [22:28] TheFuzzb_ has joined the channel [22:28] augustl has joined the channel [22:29] tomtomaso has joined the channel [22:29] AvianFlu: xerox: yes. use dnode. [22:29] AvianFlu: or hook.io. [22:29] xerox: AvianFlu: is hook.io stable now? [22:30] AvianFlu: much more so [22:31] ceej has joined the channel [22:31] xerox: good [22:31] robinouu has joined the channel [22:31] robinouu: hi all [22:31] TheFuzzball has joined the channel [22:31] robinouu: I want to build node.js on windows using cygwin [22:32] robinouu: using https://github.com/joyent/node/wiki/Building-node.js-on-Cygwin-(Windows) [22:32] augustl: I expected npm-link to check for already installed stuff instead of going straight to the npm registry [22:32] robinouu: but I have the Build failed: -> task failed (err #2): {task: libv8.a SConstruct -> libv8.a} bug [22:32] TheJH has joined the channel [22:32] augustl: I have "buster-core" npm linked on my system, but when npm link-ing a project that depends on buster-core, it fails since buster-core is not in the npm registry (yet) [22:33] TheJH: augustl, "sudo npm link buster-core" fails? [22:34] manung has joined the channel [22:35] kdng-saleem3 has joined the channel [22:35] jhbot has joined the channel [22:36] robinouu: export SHELL didn't help , and I checked my version of gcc : 4.3.4 [22:36] robinouu: so I came here ^^ [22:36] augustl: TheJH: hmmm, why would sudo help? [22:37] chjj: robinouu, are you trying to build v0.5.x? [22:37] augustl: everything is in $HOME on my setup [22:37] raidfive has joined the channel [22:37] robinouu: yes [22:37] robinouu: v0.5.2 [22:37] TheJH: augustl, then you don't need sudo, correct [22:37] augustl: anyone here know what the behaviour is supposed to be like? [22:38] chjj: could be why, id recommend using v0.4.10 with cygwin [22:38] TheJH: augustl, could you gist the npm output? [22:38] robinouu: ok i will try. Do I need to remove the git directory ? Or can i juste checkout the tag ? [22:38] chjj: do git checkout v0.4.10 [22:38] augustl: TheJH: sure [22:38] augustl: offbyone ~/c/b/buster-promise ∴ npm link [22:38] augustl: npm ERR! 404 'buster-core' is not in the npm registry. [22:38] augustl: npm ERR! 404 You should bug the author to publish it. [22:38] augustl: npm ERR! 404 Note that you can also install from a tarball or folder. [22:38] augustl: npm ERR! [22:39] augustl: npm ERR! System Linux 2.6.39-ARCH [22:39] robinouu: ok thanks :D [22:39] augustl: npm ERR! command "node" "/home/augustl/local/node/bin/npm" "link" [22:39] chjj: np [22:39] augustl: npm ERR! cwd /home/augustl/code/buster/buster-promise [22:39] augustl: npm ERR! node -v v0.4.8 [22:39] augustl: npm ERR! npm -v 1.0.20 [22:39] augustl: npm ERR! [22:39] chjj: wow never copy and paste npm errors again please [22:39] augustl: npm ERR! Additional logging details can be found in: [22:39] augustl: npm ERR! /home/augustl/code/buster/buster-promise/npm-debug.log [22:39] augustl: npm not ok [22:39] augustl: ugh wtf [22:39] augustl: some times chrome doesn't copy... here we go http://pastie.org/2261128 [22:39] chjj: GIST [22:39] augustl: sorry about that [22:39] chjj: PASTEBIN [22:39] augustl: chjj: aware of that [22:39] augustl: chjj: already said I'm aware of the problem ;) [22:39] TheJH: augustl, hmmm... seems like a bug [22:40] augustl: yeah.. I'd say it makes sense to check what's already installed before checking the registry [22:40] augustl: I'll wait in the shadows and stab isaacs when he's around [22:40] Cromulent has joined the channel [22:41] raymorgan has joined the channel [22:41] raymorgan has left the channel [22:41] augustl: doh, user error [22:41] augustl: in the tab where I "npm link" I don't have NODE_PATH set... [22:42] Xano has joined the channel [22:42] augustl: hmm that didn't help though [22:43] augustl: here's everything: http://pastie.org/2261128 [22:45] isaacs: ACTION stabs augustl [22:45] isaacs: HAHA!! [22:45] augustl: oh noes [22:46] augustl: but I was tabbed out :( [22:47] augustl: isaacs: so, should npm link check for already installed/linked dependencies before checking the npm registry? [22:47] robinouu: chjj: sounds good, thanks. Do you know why it doesn't work on 0.5.x ? [22:48] isaacs: augustl: i gotta run. post an issue if it's doing what you don't like [22:49] augustl: isaacs: kk, tnx [22:49] tmzt: anybody know of a client for HandlerSocket in mysql for node? [22:49] adrianmg has joined the channel [22:51] adrianmg has left the channel [22:51] indexzero has joined the channel [22:56] hdon has joined the channel [22:56] brettgou_ has joined the channel [23:00] clockwize has joined the channel [23:00] clockwize: hey, i want to split a string, but remove empty items.. best way? [23:00] egeste has joined the channel [23:01] Akrasiac has joined the channel [23:02] systemfault: Not sure I get your "empty items" [23:02] egeste: Hello @ all. I'm a completely new user to node.js, it was recommended to me as a solution for using long polling as an event listener to a third party service. I notices that node.js spceifically advertises that it's for V8 javascript - I apologize if this question is ignorant, but, in terms of compatibility, deoes node.js function correctly across ff, ie, chrome, safari, etc? Is there a browser compatibility chart/matrix somewhere I can refere [23:03] geetarista has left the channel [23:03] blkcat: clockwize: you mean whitespace? [23:03] AvianFlu: egeste: server-side javascript [23:03] jhurliman: egeste, node.js was designed to run in a server environment. it does not run in a browser [23:03] AvianFlu: no browsers [23:03] TheJH: augustl, I just tried "npm link" in an unpublished package, works [23:03] egeste: thats what it looked like [23:04] TheJH: augustl, what does "npm -v" say? I have "1.0.10" [23:04] jhurliman: egeste, for your situation, it sounds like the recommendation was to use node.js as an intermediary between the clients (browsers) and the third party service [23:05] TheJH: augustl, mhm, you have a newer version [23:05] clockwize: systemfault/blkcat: i mean if you split("/2/1/3/") you get ["", "2", "1", "3", ""] [23:05] deoxxa: egeste: you might be interested in socket.io [23:06] systemfault: clockwize: You could use filter on it [23:06] systemfault: v8: "test"; [23:07] systemfault: Hmm do we still have a bot ? :/ [23:07] xerox: .. 'yes' [23:07] catb0t: 03'yes' [23:07] tuhoojabotti: .. 'no' [23:07] catb0t: 03'no' [23:07] tuhoojabotti: hihi [23:07] isaacs has joined the channel [23:07] tuhoojabotti: I'm your bot. [23:07] systemfault: .. "/2/1/3/".split("/").filter(function(str) { return !!str; }); [23:07] tuhoojabotti: Destoryer bot o.O [23:07] catb0t: [ 03'2', 03'1', 03'3' ] [23:07] tuhoojabotti: destroyer* [23:07] clockwize: ah, cool :) ta [23:08] TheJH: systemfault, there are even 2 bots, but jhbot does other stuff [23:08] systemfault: Ah ok, thanks :) [23:08] clockwize: for my next problem, i've just npm installed connect, but when i do connect = require 'connect', it can't find it? [23:08] TheJH: !@systemfault npm search foo [23:08] jhbot: systemfault, package foounit: Cross environment BDD test framework [23:08] systemfault: Cute. [23:08] tuhoojabotti: TheJH: It does queryspam? :O [23:08] tuhoojabotti: cool [23:09] tuhoojabotti: I can do that too. [23:09] tuhoojabotti: oh no [23:09] tuhoojabotti: not query [23:09] TheJH: tuhoojabotti, queryspam? huh? [23:09] tuhoojabotti: Well, I can spam channels too! [23:09] systemfault: Hmm [23:09] systemfault: .. "/2/1/3/".split("/").filter(Boolean); [23:09] catb0t: [ 03'2', 03'1', 03'3' ] [23:10] xerox: systemfault: :o [23:10] xerox: you sir a wizard [23:10] systemfault: I don't think so.. [23:14] corytheboyd has joined the channel [23:14] Me1000 has joined the channel [23:15] vikstrous has joined the channel [23:16] Anton_ has joined the channel [23:17] Me1000 has joined the channel [23:18] mehtryx has left the channel [23:18] [[zzz]] has joined the channel [23:22] Me1000 has joined the channel [23:27] Me1000 has joined the channel [23:30] sirdancealot has joined the channel [23:31] Akrasiac has joined the channel [23:31] ghost has joined the channel [23:34] Transformer has joined the channel [23:35] Transformer has left the channel [23:35] unomi has joined the channel [23:37] loveshine: wow i dindt know filter could work like that [23:38] Aria has joined the channel [23:39] CrisO has joined the channel [23:40] corytheboyd has left the channel [23:41] nail_: Speaking about filter, what's the best source to know what js features are available in node? ecma-262 5th edition reference? [23:41] tmzt: .. typeof Boolean [23:41] catb0t: 03'function' [23:41] tmzt: .. Boolean.toString() [23:41] catb0t: 03'function Boolean() { [native code] }' [23:41] tmzt: nail_: it's v8, usually a very recent version [23:42] tmzt: .. Boolean(null) [23:42] catb0t: 02false [23:42] tmzt: .. Boolean(1) [23:42] catb0t: 02true [23:42] tmzt: .. Boolean(0) [23:42] catb0t: 02false [23:42] tmzt: ah [23:42] tmzt: .. Boolean('0') [23:42] catb0t: 02true [23:43] samBiotic has joined the channel [23:44] nail_: ok, so it looks like that's this one [23:44] mnaser: Any suggestions on perhaps a library that executes commands (basically like system(..)) [23:44] xerox: http://nodejs.org/docs/v0.4.10/api/child_processes.html [23:45] mnaser: thats what I'm using but it really seems to be a pain when doing a bunch of them.. the cod looks scary [23:45] xerox: is it? [23:46] mscdex: nail_: https://github.com/joyent/node/wiki/ECMA-5-Mozilla-Features-Implemented-in-V8 [23:46] mnaser: It's what I've been using.. [23:46] xerox: I don't think it gets any better than that [23:46] xerox: but what do I know [23:46] Nuck: hmmm [23:46] nail_: thx mscdex [23:47] mscdex: child_processes rock! [23:47] Nuck: In mongo, I want to have my artworks numbered incrementally... [23:47] mnaser: mscdex: have you had to chain up a bunch that depend on the success of the former ones? [23:47] mnaser: it does get quite messy [23:47] Nuck: But I'm not sure if I should override _id [23:49] mnaser: and this might sound really stupid, but should everything really be a callback, it's almost impossible to chain a call and i seem to find myself in deep hardcore chaining. [23:49] AvianFlu: mnaser: make them all work off of events [23:49] Me1000 has joined the channel [23:49] AvianFlu: mnaser: name your callbacks [23:49] mscdex: mnaser: if you have a linear set of commands to execute, store them in an array and reuse a function that does the actually child process execution, one at a time [23:49] Nuck: mnaserL You get used to it [23:49] mscdex: there's multiple ways to go about it [23:50] mnaser: work off events, any info on that? also naming my callbacks, I'm getting around doing that [23:50] Nuck: I don't see anything wrong with callbacks. I did at one time, but I don'y any more. [23:50] mnaser: that makes sense, mscdex.. sounds clean too [23:50] AvianFlu: mnaser: the child processes have events that they emit when things happen [23:51] mnaser: ah, the .on and so on, i see [23:51] Nuck: If those Events don't work for you, you can always use your own EventEmitters. [23:51] AvianFlu: do child.on('exit', function (code) {console.log('process exited with status code %d.', code) }); [23:51] galaxywatcher has joined the channel [23:52] plainas has joined the channel [23:53] Xano has joined the channel [23:55] brolin has joined the channel [23:55] damienbrz has joined the channel [23:57] stephank has joined the channel