<   October 2012   >
Su Mo Tu We Th Fr Sa  
    1  2  3  4  5  6  
 7  8  9 10 11 12 13  
14 15 16 17 18 19 20  
21 22 23 24 25 26 27  
28 29 30 31
00:00 <sinclairzx> mdedetrich: i expect that there will be optimizations in future
00:00 <Zak> mdedetrich: ummm
00:00 <mdedetrich> and for client side you always have googles closure compiler, or ulglifyjs or something
00:00 <Zak> did you even look at the source and the output?
00:00 <mdedetrich> Zak: yes?
00:00 <Zak> because the source is double-spaced.........
00:00 <Zak> i think sinclair is really getting paid :P
00:00 <sinclairzx> Zak: you wouldn't end up writing something like this anyway?
00:01 <Zak> that wasn't my point
00:01 <mdedetrich> oh woops
00:01 <mdedetrich> my bad
00:01 <mdedetrich> but
00:01 <Zak> it was mdedetrich who was comparing source and taget :P
00:01 <mdedetrich> I don't see how you can write
00:01 <mdedetrich> more dense
00:01 <mdedetrich> javascript
00:01 <mdedetrich> that does the same thing
00:01 <mdedetrich> (unless you do something stupid like put all the stuff on a single line or rename all the variables to single characters)
00:01 <Zak> mdedetrich: thats the point. you wouldn't want to in the first place :P
00:01 <Zak> at least, i wouldn't want to
00:02 <kennethkoontz> Is event emitter the right tool to perform several http requests async? Or would the promise lib be a better choice?
00:02 <Zak> again, there are reasons to do it
00:02 <mdedetrich> Zak: wouldn't want to what?
00:02 <Zak> i just don't need it
00:02 <mdedetrich> if you need to do proper classes, thats how you have to represent them
00:02 <mdedetrich> in javascript
00:02 <Zak> "write javascript ... that does the same thing" (as typescript)
00:02 <mdedetrich> Zak: what point are you making
00:02 <Zak> dw
00:03 <Zak> i don't want to start another 2 hour argument
00:03 <mdedetrich> also mind you, code generated from both TS and CS
00:03 <mdedetrich> is longer because its designed to work with crap like IE
00:03 <mdedetrich> (IE doesn't support foreach, which would save like 3 lines on every loop iteration)
00:03 defunctz_ joined
00:03 <mdedetrich> IE6 iirc
00:04 <mdedetrich> IE6 also doesn't do prototype inheritance properly
00:04 jergason joined
00:04 <sinclairzx> guys, see the generated handler code?
00:04 <mdedetrich> among other things
00:04 <sinclairzx> that's kinda yuck
00:04 <mdedetrich> why
00:05 <Zak> sinclairzx: can you try something
00:05 <Zak> call one of your function arguments "_this"
00:05 <Zak> and recompile
00:05 <sinclairzx> what line?
00:05 <Zak> ummm
00:05 <Zak> i'll give you a line number.. hold on
00:05 IrishGringo joined
00:06 <Zak> line 79
00:06 <Zak> change "request" to "_this"
00:06 choo joined
00:06 <sinclairzx> that would just resolve to _this._this tho
00:07 <sinclairzx> can try, hang on
00:08 duc1199 joined
00:09 <sinclairzx> Zak: you dun broke it :D
00:09 <Zak> did it end up conflicting with the _this outside of the function?
00:09 <sinclairzx> yeah
00:09 cushman joined
00:09 <Zak> i'm surprised it did that
00:10 <Zak> time to submit a bug :P
00:10 <sinclairzx> nice trick mate
00:10 <Zak> it shouldn't do that
00:10 dgathright joined
00:10 <Zak> somebody obviously missed it
00:10 <Zak> although...
00:10 <Zak> maybe you can't tell
00:10 <Zak> nfi
00:10 <sinclairzx> im not exactly sure what it "should" do tho
00:10 <sinclairzx> require _this to be ______this?
00:11 <Zak> well, it should know what other variable names aren't valid because they introduced them
00:11 blup joined
00:11 <sinclairzx> its locally scoped, so rewriting might be ok?
00:11 <sinclairzx> either that, or reserve _this
00:11 <Zak> yeah, that's not a good idea
00:11 <Zak> reserving words like that, is the touch of death
00:11 <ChrisPartridge> should it not just fail to compile with typescript and warn you?
00:11 <sinclairzx> Zak: join #typescript
00:12 <astropirate> Hello friends!
00:12 <sinclairzx> Zak: there are a few issues and quirks ive notice with TS
00:12 <mdedetrich> well I don't think that you should name your classes/functions as _this
00:12 <sinclairzx> (one which prevents me from writing node code in modules)
00:13 <sinclairzx> or have a import statement inside a module
00:13 andrehjr joined
00:13 <Zak> mdedetrich: the point is, that stuff should be clearly documented, or should fail compilation
00:14 brooss joined
00:14 <mdedetrich> true, I would argue though if you are doing such a thing
00:14 <Zak> the whole argument of using typescript is that it should hit errors sooner and shouldn't have these "silent" bugs
00:14 <mdedetrich> you are an idiot
00:14 <Zak> given that a few days ago we said most developers are idiots
00:14 <Zak> and typescript are for C# developers
00:14 <Zak> they need to fix the bug :P
00:14 <mdedetrich> completely catering for idiots is quite hard
00:14 <Zak> it should be a compilation error
00:14 <mdedetrich> naming your function as _this
00:15 <mdedetrich> in js
00:15 <Zak> pretty simple fix
00:15 <mdedetrich> is idiotic
00:15 <Zak> its not a function though
00:15 <Zak> its a variable
00:15 <Zak> parameter/variable
00:15 <Zak> and its not that idiotic
00:15 <Zak> anyway, it shouldn't be some time-bomb waiting to go off later
00:15 <ChrisPartridge> Zak: does typescript use _this internally?
00:15 <Zak> esp if you can catch it during compilation
00:16 <Zak> ChrisPartridge: yes
00:16 <Zak> thats exactly why i asked sinclairzx to try it
00:16 <Oddman> <mdedetrich> naming your function as _this
00:16 <Oddman> rofl
00:16 <Oddman> I have never seen that, thank god
00:16 <Zak> its not a function
00:16 andrewffff joined
00:16 <Zak> it was a variable (at least in typescript)
00:16 <astropirate> You have failed me for the last time
00:16 <Oddman> O.o
00:16 <Zak> as in... we changed it to that name, to see what would happen
00:17 AlbireoX joined
00:17 <ChrisPartridge> Yeah, gotcha
00:17 <Zak> but its plausible that it could happen in real code
00:17 <Zak> although, i don't like variable names with underscore in them
00:17 <Zak> people like to use them to indicate private function/variables
00:18 <mdedetrich> I guess to put more light on my opinion
00:18 <mdedetrich> I consider naming either functions or variables as _this idioitic
00:18 <mdedetrich> in a language like TS/CS
00:18 <mdedetrich> because if you look at the generated code
00:18 <mdedetrich> they use that stuff internally
00:19 disnet joined
00:19 <Zak> last time I wrote C, i didn't look at the generated ASM to check whether something was reserved
00:19 jpdery joined
00:19 <Zak> (not that its even possible to reserve shit in ASM)
00:19 <Zak> point is, compiler should pick up that crap
00:19 <mdedetrich> I would argue that TS/CS is more similar to a translator than a compiler
00:20 <mdedetrich> although thats quite a semantical seperation
00:20 rampr joined
00:20 <Zak> it is
00:20 <Zak> and if i can't write typescript without checking the javascript every time, it defies the entire point
00:20 <Zak> (same for CS
00:20 <ChrisPartridge> yeah, that's what irks me about CS
00:20 <mdedetrich> I don't really check the JS for CS anymore
00:21 <Zak> you shouldn't have to
00:21 <mdedetrich> I haven't had any issues
00:21 Demux joined
00:21 <Zak> its okay for TS atm
00:21 <Zak> its new
00:21 <Zak> but if i had to do it in 6 months, i'm not going near it
00:21 <mdedetrich> well I did when I started, but thats for different reasons (was interested in how it did something)
00:21 <Zak> yeah sure
00:21 <Zak> i like the idea of coffeescript
00:21 <Zak> but i still prefer to write in javascript
00:21 Circlepuller joined
00:22 joshontheweb joined
00:22 <mdedetrich> cs is really nice when you its completely transparent to the coder
00:22 <mdedetrich> i.e. the web framework treats .coffee in the exact same was as .js
00:22 <mdedetrich> SS does that, and its quite nice
00:23 <mdedetrich> the biggest problem with CS is frameworks doing the complication in a non transparent and retarded way
00:23 derpops joined
00:23 Sam-T joined
00:23 <sinclairzx> http://garann.github.com/template-chooser/
00:23 <sadtaco> It seems like a ddos attack is targetting my node/socket.io and making it use 100% of my servers cpu.
00:24 Fwny joined
00:24 <larryapplegate> I am using the Apple sample code SimpleURLConnections to try and upload test images to node-formidable, using upload.js in the example folder. I get this response - Error: parser error, 0 of 22900 bytes parsed. The header is 158 bytes, the file is 22570 bytes, and the trailer 172 bytes, adding up to 22900. I can watch the IOS app send the correct file data. So I am guessing that the header is wrong. Any suggestions?
00:25 <Zak> that website seems to promote dot.js :P
00:25 AlbireoX`Laptop joined
00:26 <mdedetrich> oh I meant compilation before, not complication
00:26 <mdedetrich> man I hate auto spelling correct in mac
00:26 <larryapplegate> me too
00:27 seich- joined
00:27 jdeibele joined
00:27 <ChrisPartridge> sadtaco: ouch
00:28 <larryapplegate> can't type couch and db
00:28 dguttman joined
00:28 <sadtaco> I'm not too sure what I should do to prevent it
00:28 <larryapplegate> couchdb
00:28 <larryapplegate> oh, proved myself wrong. it sometimes comes out couched
00:29 AlbireoX joined
00:29 bartt joined
00:29 <ChrisPartridge> sadtaco: you need to report it upstream to your provider, otherwise you could get your app to report the offending sources and block them via iptables (to prevent CPU usage, and keep your app up). Still won't stop the data coming the edge of the server though
00:29 <sinclairzx> anyone here used Razor ?
00:30 <pyrotechnick> i have alot yeah what's up
00:30 <sinclairzx> curious if there is a JS template engine as good as Razor
00:30 <pyrotechnick> wait what
00:30 <pyrotechnick> eww no
00:30 <pyrotechnick> soz
00:31 <sinclairzx> pyrotechnick: don't like Razor either aye?
00:32 <zyzzyva> mdedetrich: as you didnt give a definition, we play by what is a perfectly acceptable definition of map: http://pastebin.com/W0P296yS
00:32 draginx joined
00:32 draginx joined
00:32 macae joined
00:34 <zyzzyva> as for scala, I'm not aware but if scala is an untyped lambda calculus on java id expect you could construct a type that would break it
00:34 <zyzzyva> so we'll leave it at "neither scala nor java conform to your definition of map, and therefore there's no gain in expressivity"
00:35 <zyzzyva> im guessing you probably blocked me mdedetrich, which is ok
00:35 <Zak> < zyzzyva> mdedetrich: as you didnt give a definition, we play by what is a perfectly acceptable definition of map: http://pastebin.com/W0P296yS
00:35 <Zak> i'm passing that along
00:36 <Zak> because it looks like it took more than a few minutes to do that
00:36 thanpolas joined
00:36 <Zak> and he deserves a response, regardless of whether you ignored him or not
00:36 <zyzzyva> i didnt ignore him
00:36 <zyzzyva> i thought he might have ignored me
00:36 <Zak> yeah
00:36 <Zak> i was talking to mdedetrich
00:36 <zyzzyva> regardless, he got a conformant response
00:36 <zyzzyva> and if he wants, i can break scala's map
00:36 <zyzzyva> :)
00:37 khrome joined
00:37 <zyzzyva> so we'll leave it at scala is in fact no more expressive than java
00:37 <jesusabdullah> guys
00:37 <jesusabdullah> chillax
00:38 onats joined
00:38 <onats> whoa! 800
00:38 <sinclairzx> zyzzyva: scala is more expressive than java tho
00:38 <jesusabdullah> "expressive" is like
00:39 <jesusabdullah> platitudes for software
00:39 mattgifford joined
00:40 kaspertidemann joined
00:40 tahu joined
00:41 <mdedetrich> your mmap is not accepting higher order functions
00:41 <mdedetrich> I mean sorry, your mmap is not a higher order function
00:41 <sinclairzx> here's a thought, it is not a good idea to expose objects to client script when using TS
00:42 <mdedetrich> try again
00:43 defunctzombie joined
00:43 jmar777 joined
00:43 ImBcmDth joined
00:44 rickibalboa joined
00:45 c4milo joined
00:45 dgathright joined
00:46 rtjure joined
00:47 mxweas joined
00:48 <cainus> hey all.. anyone know what happened to hook.io?
00:48 <cainus> seems deleted
00:48 rcrowley joined
00:49 Hebo joined
00:49 thl0 joined
00:50 jmoyers joined
00:50 mxweas joined
00:50 <astropirate> Yup, i never bet on anything tha ends in .io
00:50 <astropirate> HAHA
00:50 <ChrisPartridge> cainus: marak "quit" node
00:51 <cainus> so he deleted it?
00:51 <ChrisPartridge> I guess so
00:51 <gkatsev> something like that
00:51 <ChrisPartridge> cainus: perhaps look for a fork and work from there
00:51 <cainus> yeah or npm install and start a new one
00:52 <cainus> alright thanks
00:53 Benvie joined
00:54 pretty_function joined
00:54 st_luke_ joined
00:55 tjmehta joined
00:55 kishoreyekkanti joined
00:55 st_luke_ joined
00:55 eugeneware joined
00:56 sreeix joined
00:57 dshaw_ joined
00:58 langworthy joined
00:59 jpdery joined
00:59 ttt joined
01:00 pig joined
01:00 timeturn joined
01:00 ashnur joined
01:03 pboos joined
01:06 zcopley joined
01:07 shaggy167 joined
01:08 Senji joined
01:09 [[zz]] joined
01:09 gmci joined
01:12 munichlinux joined
01:12 Hebo joined
01:14 thirdknife joined
01:16 <mdedetrich> damn
01:16 <mdedetrich> he went away
01:16 <mdedetrich> oh well
01:16 maletor joined
01:17 SamuraiJack joined
01:17 <Raynos> https://github.com/Raynos/doc-test#example
01:18 harrison_ joined
01:19 mapppum joined
01:21 <Raynos> Anyone have any API suggestions on doc test?
01:26 <TehShrike|Work> I don't
01:26 <TehShrike|Work> I mean, I could probably come up with some
01:26 <TehShrike|Work> But they would be horribly uninformed, and pulled out of my ass
01:26 <TehShrike|Work> So no, not really
01:28 mattgifford joined
01:29 LeMike joined
01:29 <ChrisPartridge> Raynos: I'm not really "getting it"
01:29 <harrison_> Raynos: is this something similar to Python's doctest?
01:29 choo joined
01:30 <Raynos> yes its similar to doctest
01:30 <TehShrike|Work> And see, here come the people asking reasonable questions
01:30 <Raynos> ChrisPartridge: It's basically a small compiler that takes my examples an makes them executable tests
01:30 <TehShrike|Work> Thank goodness for them
01:30 <TehShrike|Work> Otherwise I'd just be standing here, looking like an idiot
01:30 <harrisonm> (Full disclaimer, I've never used doctest, just found it on a quick duckduckgo search)
01:31 <harrisonm> So, any suggestions for API from me would also be uninformed
01:31 <Raynos> ChrisPatridge: I guess I'm not showing the case where if your logs don't match it fails hard.
01:31 <harrisonm> Looks like a cool project, though
01:32 <ChrisPartridge> Raynos: whats the advantage over writing actual tests with mocha? You get more concise usage of the code?
01:32 <ChrisPartridge> (mocha/other testing framework)
01:32 <Raynos> the main advantages is that your not writing tests. Screw writing tests. Just write executable examples.
01:32 <Raynos> Recently I've only been writing examples and have been too lazy for actual tests
01:32 onats joined
01:33 <harrisonm> But at that point you're having to write an example for every case you want to test
01:33 <harrisonm> I can see the fantastic use of this for documentation testing, but I'm a little dubious of it as a TDD tool
01:34 <harrisonm> This doesn't really help you with your API question, though
01:34 <Raynos> harrisonm: It's not for TDD, or it could be but would need a lot of polish
01:34 <ChrisPartridge> Raynos: is there any reason you put "function" in the comment below? could that not be a third argument to log?
01:34 saikat joined
01:35 <Raynos> ChrisPartridge: then you might as well replace it with assert.equal
01:35 vahnpaper joined
01:35 <ChrisPartridge> Well yeah
01:38 <TehShrike|Work> Man, someone awesome should really hire me
01:38 choo joined
01:39 <ChrisPartridge> TehShrike|Work: jobs.nodejs.org ?
01:39 techthumb joined
01:39 jpdery joined
01:39 <nathan7> The heck?
01:39 <nathan7> It's US-only?
01:40 <nathan7> Which city did you mean? ["Amsterdam, MO","Amsterdam, NY","Amsterdam, OH","Amsterdam, MT"]
01:40 <TehShrike|Work> ChrisPartridge: no way to search for telecommute jobs :-(
01:42 <astropirate> TehShrike|Work, you and me buddy
01:42 Frippe joined
01:42 Frippe joined
01:43 ddollar joined
01:43 AlbireoX joined
01:43 choo joined
01:45 <larryapplegate> I'm not awesome but I've hired telecommuters for various things
01:45 <larryapplegate> people i've never met in person
01:47 Zoney joined
01:48 nicesukhi joined
01:48 idefine1 joined
01:49 stisti joined
01:50 tmpvar joined
01:50 tlync joined
01:51 ewalker joined
01:52 dshaw_ joined
01:52 graeme_f joined
01:53 jergason joined
01:55 tahu joined
01:57 pvankouteren joined
01:58 choo joined
01:59 tmpvar joined
01:59 <harrisonm> nothing showing up for Dallas area :/
02:00 harthur joined
02:00 <jmoyers> move.
02:01 <jmoyers> also, go to http://www.meetup.com/DallasNode/
02:02 gruwl joined
02:02 gruwl left
02:03 dpino joined
02:03 harth joined
02:03 joshontheweb joined
02:04 Circlepuller joined
02:04 ecthiender joined
02:05 <harrisonm> Hah. And already knew about that, but I have class Thursday nights
02:05 <jmoyers> priorities.
02:07 <harrisonm> If it helps, I'm writing my project for that class in node :P
02:07 <harrisonm> Also, I'm a research assistant
02:08 barneybook_work joined
02:08 <harrisonm> so failing class means losing job/scholarship
02:08 duc1199 joined
02:08 <jmoyers> fair enough ;-)
02:09 <harrisonm> I'm also writing almost everything for my assistantship in node
02:09 <harrisonm> so it works out
02:11 <jmoyers> more than i get to write
02:12 <harrisonm> Yeah, it's really nice. My original plan was to go full-time at a gig I'd had for a while that was mainly .NET. Pretty glad that didn't pan out now
02:12 <Oddman> muahaha
02:13 <harrisonm> Still doing stuff on the side for them, and I've gone from web forms to .NET MVC
02:13 <hemanth> Dot not
02:13 <harrisonm> which is significantly better
02:13 <harrisonm> but it's still .NET
02:13 rcrowley joined
02:13 okcoker joined
02:13 <hemanth> MVC is not dead yet?
02:13 <harrisonm> No, they're coming out with .NET MVC 4 soon
02:13 sorenso joined
02:13 <hemanth> M$ $tuff hmm
02:13 <Oddman> lol
02:15 nicesukhi joined
02:15 <harrisonm> again, if you're going to be coding Microsoft web stuff, MVC's the way to go; it's not half bad. But I'd rather not be using Microsoft Server at all
02:15 rampr joined
02:18 <Raynos> Anyone know of a good way to run an arbitary JS file in a repl?
02:18 <jmoyers> … require?
02:19 <Raynos> That won't work
02:19 <niggler> what are you trying to do?
02:19 <Raynos> I want the local variables in my REPL scope
02:19 <Raynos> so I need a way to inject the code into the REPL
02:19 <niggler> do you have control over the js code?
02:19 <jmoyers> and copy paste isn't an option?
02:19 <Raynos> i tried copy and paste
02:19 <Raynos> repl input pukes at new lines
02:20 socketio\test\07 joined
02:20 armetiz joined
02:20 jpdery joined
02:20 <Raynos> niggler: I can read and modify the source code to make it REPL safe
02:20 <jmoyers> eval(fs.readFileSync)
02:20 <jmoyers> maybe?
02:20 <ChrisPartridge> Raynos: possibly vm.runInThisContext ?
02:20 <Raynos> that might work
02:20 <Raynos> runInThisContext can't mutate local variables
02:21 <Raynos> which may not be a problem tbh
02:21 alucardX joined
02:21 <alucardX> hi
02:21 <ljharb> Raynos: why do you want to do that?
02:21 <niggler> why not just wrap it in a function and call it with the repl scope?
02:21 markwubben joined
02:21 <jmoyers> not a bad idea
02:21 <jmoyers> .call(this)
02:21 <jmoyers> or whatever
02:22 teerapapc joined
02:22 <Raynos> ljharb: because it's fun
02:22 <Raynos> the next problem is making file local require's work with this repl
02:25 Pitel_IPEX joined
02:25 <nathan7> Raynos: .load
02:25 <Raynos> load?
02:25 <nathan7> > .load blah.js
02:25 Swaagie joined
02:25 <nathan7> it'll execute blah.js
02:25 <nathan7> there's also .save
02:25 <Raynos> really
02:25 <nathan7> see .help
02:25 <Raynos> thats crazy
02:25 <nathan7> really
02:25 <nathan7> I discovered it while reading the REPL docs
02:26 <Raynos> it doesnt really work
02:26 <Raynos> it expects cleanly formatted stuff
02:26 <nathan7> works here
02:26 <Raynos> try arbitary files
02:26 <mdedetrich> ill execute your blah.js
02:27 poolshark joined
02:27 <nathan7> Raynos: works
02:27 <nathan7> Raynos: plain JS files work for me fine
02:27 <Raynos> nathan7: load this file https://github.com/Raynos/doc-test/blob/master/test/readySignal.js it wont work
02:28 <Raynos> use comma first. It wont work :P
02:28 ashnur joined
02:28 <nathan7> Comma first?
02:28 <olasd> use javascript. It won't work
02:28 <nathan7> ah
02:28 <* olasd> hides
02:28 <* nathan7> beats olasd up
02:28 <* olasd> purrs
02:28 <* purr> rrrrrr
02:28 <nathan7> ..the heck is wrong with you, man
02:29 <nathan7> Raynos: I just do var
02:29 victor2812 joined
02:29 choo joined
02:29 <nathan7> Raynos: I like my individual variable declarations to be independent
02:29 <jmoyers> each like a unique snowflake
02:30 rcrowley joined
02:30 <nathan7> you are not a unique, beautiful snowflake
02:30 <nathan7> Oh cool
02:30 <nathan7> my pants are caffeinated
02:31 <nathan7> I left caffeine tablets in my pocket and they kinda dissolved
02:31 <Oddman> if that was lsd you'd be hiiiiiiiiiiiiiiiiiiiigh
02:31 <hemanth> Caffine
02:31 <Zak> lucky your pants aren't high, otherwise your balls would be showing
02:32 <niggler> so can you invoke node as if using the repl but piping commands in?
02:32 <niggler> the point being, if you had a file you wanted to load
02:32 <niggler> its not equivalent to require
02:32 <harrisonm> I pulled irssi back up at a really weird place in this conversation
02:32 V1 joined
02:33 <nathan7> Oddman: Nah, the heat in the washing machine would've destroyed most of it.
02:33 <niggler> so if you wanted to replay exactly what happened, node the interpreter would need to process .load and .save
02:33 nicholasf joined
02:33 bubbles10101 joined
02:33 <Oddman> nathan7, haha true :D
02:33 <nathan7> Sensitive lil' molecule
02:33 <Oddman> LOL!
02:34 <nathan7> ..why do I keep reading 'mongo-lite' as 'mongolite'
02:34 <ChrisPartridge> maybe you cant see dashes?
02:34 sreeix joined
02:34 <nathan7> on a side note, yesterday a classmate opened the jQuery source
02:34 Morkel joined
02:34 <nathan7> and Chrome offered to translate it
02:34 <nathan7> thus, jQuery in Dutch. http://pastebin.com/Ywzz1h49
02:34 <Oddman> LOL
02:34 Kn|t3 joined
02:35 <Oddman> oh man, cracking me up
02:35 <Zak> lol
02:35 <nathan7> One day an archeologist is gonna find my IRC logs
02:35 <nathan7> and he'll try to reconstruct my train of thought
02:35 <nathan7> and his brain will explode.
02:36 <onats> whats up hackers!
02:36 <nathan7> Chinchillas.
02:36 totallymike joined
02:37 <Zak> nathan7: Reminded me of this: http://bigeyedeer.files.wordpress.com/2012/03/greeting490.jpg
02:37 Ralt joined
02:38 mauritslamers_ joined
02:39 <nathan7> Zak: heh
02:39 Frippe joined
02:39 Frippe joined
02:39 fangel joined
02:40 djcoin joined
02:41 saikat joined
02:41 <niallo> i'm sure i'm doing something stupid, but i have a long-lived daemon process using node + zmq, and it exits after a number of seconds with no error. how do i prevent this happening?
02:42 <larryapplegate> yes, but you must know what to feed it
02:42 stagas joined
02:42 <larryapplegate> oops, wrong thread
02:43 <niallo> it registers a handler for messages on a zmq pull socket and is supposed to stay alive forever processing those as they arrive. however it always exits after a number of seconds. processes messages just fine while it's alive.
02:43 robmorrissey joined
02:43 <ChrisPartridge> niallo: code?
02:44 __pr0t0__ joined
02:44 <jmoyers> niallo listening for .on('error')?
02:46 mattgifford joined
02:46 <niallo> jmoyers: on the zmq socket? no
02:46 <niallo> ChrisPartridge: i can't share the whole file but here is the gist: https://gist.github.com/15b07bb033aa88dddc77
02:47 rendar joined
02:47 choo joined
02:47 lpin joined
02:48 <jmoyers> niallo https://github.com/JustinTulloss/zeromq.node/issues/145
02:49 Piotras joined
02:49 ashnur joined
02:49 <niallo> jmoyers: i'm actually not using bind, also this looks like a dupe of https://github.com/JustinTulloss/zeromq.node/issues/131 and i have the fix for that in my zmq version
02:50 adrianlang joined
02:50 Ralt joined
02:51 braoru joined
02:51 <niallo> jmoyers: just tried the process.on hack suggested in #145 and it doesn't work for me.
02:53 jxson joined
02:53 groom joined
02:53 FontPeg joined
02:54 thirdknife joined
02:55 _pid joined
02:55 stisti joined
02:55 balboah joined
02:56 No9 joined
02:56 D4RK-PH0ENiX joined
02:57 huskyr joined
02:59 imarcusthis joined
02:59 rcrowley joined
03:00 jpdery joined
03:01 thatguydan joined
03:01 marek_trunkat joined
03:02 shuaib joined
03:02 jammsen joined
03:03 <Raynos> https://github.com/Raynos/doc-test/blob/master/bin/doc-test.js#L19
03:03 <Raynos> Managed to get that REPL to work hackishly
03:03 <sinclairzx> heya, what do you guys use for html templating?
03:03 <Raynos> Anyone have any better / less silly suggestions?
03:03 <Raynos> sinclairzx: html
03:04 obazoud joined
03:04 <sinclairzx> Raynos: ?
03:04 devsharpen joined
03:04 <sinclairzx> Raynos: you template html using just html?
03:04 <Raynos> No
03:04 mxweas joined
03:04 <Raynos> I actually use jade
03:05 <sinclairzx> works good on node?
03:05 <jmoyers> sinclairzx http://handlebarsjs.com/ or ejs, typically.
03:05 jpe joined
03:05 <jmoyers> heh, jade is from node
03:05 <sinclairzx> jmoyers: thanks :)
03:05 <Oddman> jade is horrible
03:05 hakunin joined
03:05 <jmoyers> jade and stylus are a combo
03:05 <Oddman> god no
03:05 Emmanuel` joined
03:05 <Oddman> whitespace screwing with view logic... no thanks
03:06 cushman joined
03:06 <Oddman> and jade is/was inspired by haml, which is just as bad
03:06 <jmoyers> plenty of people subscribe to it
03:06 <jmoyers> not my aesthetic, but whatever.
03:06 <Oddman> yeah, those people either haven't gotten to a point where whitespace has caused them problems, or don't care about the issue
03:07 <Oddman> it's a very attractive option until you delve deeper
03:07 <Raynos> oh I hate significant whitespace
03:07 <* sinclairzx> doesn't like haml at all
03:07 <Raynos> but jade is feature rich and well maintained
03:07 <jmoyers> heh
03:07 <jmoyers> whatever you say
03:08 <Oddman> Raynos, yup, agree on the latter
03:08 <jmoyers> i kind of feel like a module with 790 some odd pull requests
03:08 <Oddman> but the first point screws it
03:08 <jmoyers> deserves a bit of respect.
03:08 <Oddman> jmoyers, last I heard - having concerns about how something is implemented/works doesn't affect your respect for a project
03:09 <jmoyers> no, but an opening statement of "jade is horrible" does
03:09 <Oddman> I gave my reasoning
03:09 <stagas> Oddman: what's the issue with whitespace
03:09 <Oddman> as I said "very attractive option until you delve deeper"
03:09 <Oddman> stagas, say you need a conditional as to whether to output a tag or not, or one tag or another
03:10 <Oddman> in jade/haml that's very hard because the whitespace is significant for the creation of closing tags
03:10 margle joined
03:10 wockan joined
03:11 <ljharb> it's just like coffeescript, or less, or sass, or whatever. it's another moving part between you and the browser, for minimal benefit.
03:11 <ljharb> just writing JS, CSS, and HTML is not that hard.
03:11 <Oddman> ljharb, although i agree with you, that's not really a concern for me for whether I not I'd use it
03:11 <ljharb> well, on top of that, i think jade and haml are ugly as sin
03:11 <Oddman> hahaha
03:11 <Oddman> tbh I think the syntax is rather nice
03:11 <ljharb> but i have a real reason besides aesthetics
03:11 <Oddman> it just has inherent problems
03:11 <jmoyers> yeah, let me fucking write -webkit- -moz -filter seven million times
03:12 <Oddman> which tbh, I don't think the authors realized when they started
03:12 <jmoyers> and have no variables in my css
03:12 <jmoyers> that sounds fucking great
03:12 <jmoyers> superset css languages and literally the shit
03:12 <ljharb> jmoyers: i appreciate how variables and mixins can help, but do you really use those features that often?
03:12 <jmoyers> they are the best things ever.
03:12 <Oddman> LESS is okay, Sass is a pain
03:12 <jmoyers> indeed, yes i do
03:12 <Oddman> and tbh, if you write good CSS - variable use/mixins is hardly necessary
03:12 <ljharb> Oddman++
03:12 <Oddman> because that's what classes are for
03:13 <ljharb> less and sass lead to the generated css being huge, and overly nested, which sucks for performance.
03:13 <jmoyers> my god
03:13 <jmoyers> how big are the apps you guys are writing?
03:13 <ljharb> heck, in less, @import by default does multiple import
03:13 <ljharb> jmoyers: how big are the apps youre writing that you need millions of occurrences of css3 properties?
03:13 toonketels joined
03:13 <jmoyers> its not millions, brother
03:13 <ljharb> jmoyers: if the app is small, just write -webkit, -moz, and standard :-p
03:14 <ljharb> you said seven million above :-)
03:14 <sinclairzx> jmoyers: does handlebars compile the template?
03:14 <jmoyers> its boring garbage that after the fiftieth time i've written
03:14 <jmoyers> I'm done with it
03:14 <Oddman> jmoyers, shows you have no respect for good CSS ;)
03:14 emattias joined
03:14 <jmoyers> listen, if you aren't minifying and contacting already (compile step), i guess i don't know what to say
03:14 <Oddman> SASS/LESS actually encourage bad CSS practises
03:14 <ljharb> jmoyers: minification doesn't change how you write code
03:14 <ljharb> and concatenation honestly isn't necessary for most sites.
03:15 <Oddman> yes, they're useful, yes - if you know what you're doing, they're handy, but they don't really provide that much benefit if you know what the hell you're doing int he firs tplace
03:15 <jmoyers> no, but it introduces a compile step
03:15 <ljharb> but either way, it doesn't change how you write code.
03:15 <sinclairzx> jmoyers: have you used the Razor Engine templates?
03:15 <jmoyers> no idea what that is
03:15 <ljharb> jmoyers: a compile step that doesn't change the code. it works both uncompiled and compiled, natively in the browser.
03:15 <jmoyers> i get so tired of hearing constant minimalist garbage in this channel
03:15 <jmoyers> stop trolling and let people make decisions based on whats out there
03:15 blevs joined
03:15 <ljharb> our opinions are whats out there too.
03:16 <jmoyers> yeah, but it gets toxic over time
03:16 <ljharb> stop calling them garbage when they're valid options also.
03:16 <jmoyers> i can understand people shitting all over coffeescript etc
03:16 <ljharb> nobodys forcing you to listen to it. i find the encouraging of all these techniques far more toxic.
03:16 ewalker joined
03:16 <sinclairzx> jmoyers: the RazorEngine allows you to compile a template into code. then, when passing data to the template, its quicker
03:16 <jmoyers> but trying to tell me that i have no respect for good css because i use a toolchain
03:16 <sinclairzx> quicker to render (no compile step)
03:16 <jmoyers> is fucking retarded
03:16 <jmoyers> i understand templatizer like modules.
03:17 <Oddman> that's not why I said that, jmoyers
03:17 <ljharb> i didn't say that
03:17 <Oddman> so perhaps you syhould follow the conversation a little better
03:17 LeMike joined
03:17 <jmoyers> ....
03:17 <Oddman> "its boring garbage that after the fiftieth time i've written"
03:17 <jmoyers> "jmoyers, shows you have no respect for good CSS ;)"
03:17 <Oddman> that's what I was responding to
03:17 <* sinclairzx> thinks the problem with this channel, is endless flame wars spured on by the myriad of open source projects out there, mixed with personal preference
03:17 emattias_ joined
03:17 <Oddman> good CSS isn't boring garbage - in fact I can gaurantee you the stuff SASS/LESS is spouting, unless you really know your CSS well - is an absolute mess.
03:18 <Gottox> sinclairzx: I missed the good old flamewars.
03:18 <Oddman> missed a great one today
03:18 <Oddman> java vs scala and map function. haha
03:18 <ljharb> "i'm not 100% happy with what's out there. i know! i'll make a new language or framework or tool!" now you have n + 1 problems.
03:18 <sinclairzx> Oddman: read that as it happend
03:18 <Oddman> haha
03:18 <Oddman> was gold
03:19 macae joined
03:19 <sinclairzx> i was siding with Scala mind you
03:19 <Gottox> the only thing i'm missing in JS is type safety.
03:20 <Gottox> and that's a solved problem with closure compiler or microsofts typescript.
03:20 <sinclairzx> *cough* TS *cough
03:20 <ljharb> oh, i wouldn't say i'm *missing* it, bob.
03:20 <* Oddman> shudders
03:20 <Oddman> sorry did someone mention microsoft?
03:20 <Gottox> :D
03:21 <sinclairzx> people who don't code using MS technology and languages, really are missing out :(
03:21 <Gottox> Developers, Developers, Developers, Developers, Developers
03:21 <ljharb> sinclairzx: read this about typescript. http://t.co/xJfNnAGG
03:21 jlord joined
03:21 <ljharb> sinclairzx: that's the best, most reasoned analysis of it i've seen.
03:22 <Gottox> oh man...
03:22 <Oddman> sinclairzx, I'm sorry when I talk to MS "web" devs who don't know the first thing about REST or long polling, I die a little inside.
03:22 Hebo joined
03:22 <Gottox> this guy thinks coffeescript "solves" js issues?!
03:22 <sinclairzx> ljharb: already read it (and a thousand other articles on it)
03:22 <ljharb> sinclairzx: it concludes you shouldn't use it. :-)
03:23 Motest031 joined
03:23 josh-k joined
03:23 <Oddman> still a better approach than dart. rofl
03:23 <sinclairzx> Oddman: that's changing, im a MS guy who knows about long polling, web sockets, and the other means of doing things. I've known about these things since i can't remember when
03:23 <Oddman> sinclairzx, agreed, it is
03:24 <Oddman> but I really don't think I'm missing out by sticking to open source software
03:24 <Oddman> tbh, I'd argue it's you who is missing out :P
03:24 <sinclairzx> Oddman: not to bring up ASP.NET MVC, but, it was exactly what the ASP/NET stack was missing
03:24 <Oddman> oh no doubt
03:24 <Oddman> and I've heard a lot of people say that
03:24 dobber joined
03:24 <sinclairzx> Oddman: its "crazy
03:24 <sinclairzx> good
03:25 <Oddman> I can't really comment as I haven't used it or touched it
03:25 <Oddman> but have worked with at least 5 various server-side MVC frameworks, and 3 on the client-side, as well as dabbled in meteor
03:25 <Oddman> I don't know if it would surprise me
03:25 <Oddman> meteor is imho, going to change web dev in a few years, and other platforms like it
03:25 <sinclairzx> Oddman: its really really good, and has top notch components that you would need to hunt for in the open source landscape (which is maybe why MS developers stay in the MS bubble)
03:26 <sinclairzx> Oddman: there is a reason they stay :)
03:26 <Oddman> is it open source though?
03:26 <ljharb> meteor, ugh. direct client-side DB access?
03:26 <sinclairzx> it is now, yeah
03:26 <ljharb> fails utterly without JS?
03:26 <Oddman> ljharb, way to take an example literally ;)
03:26 <ljharb> you picked a poor one :-p
03:26 <Oddman> you should read the bible :P
03:26 <Oddman> it's an example of server interaction
03:27 <Oddman> not exactly a recommendation on how it should be done
03:27 <jmoyers> i like how less than 10 minutes ago
03:27 <jmoyers> you were talking about how you should minimally stick to js html css
03:27 <sinclairzx> Oddman: ASP.NET MVC has evolved with the languages, the async await stuff means C# can do the everything async approach of node, and MVC has followed suite
03:27 <jmoyers> now you're talking about meteor as a godsend
03:27 nicholasf joined
03:28 <__pr0t0__> I'm surprised the MS license allows use of irc
03:28 <Oddman> I didn't argue that at all jmoyers, and I'm also not claiming meteor to be a godsend :)
03:28 <jmoyers> "meteor is imho, going to change web dev in a few years, and other platforms like it"
03:28 <sinclairzx> Oddman: but sometimes, its nice to do things without throwing in the async
03:28 <Oddman> sinclairzx, agreed
03:28 <Oddman> jmoyers, because of how technologies like that change how we deal with client->server and client->client on the web
03:28 <sinclairzx> Oddman: C# gives you the ability to do both, easily :)
03:29 <Oddman> :)
03:29 <jmoyers> don't argue minimalism and then throw a monolithic framework in the ring.
03:29 <jmoyers> thats just silly
03:29 <Oddman> rofl
03:29 <sinclairzx> Oddman: you know, the talk of the town seems to be suggesting MS are losing interest in C#
03:29 litenull joined
03:30 <sinclairzx> jmoyers: MVC 4.0 is not monolithic anymore
03:30 <jmoyers> oh i don't give a shit about asp
03:30 <jmoyers> i'm talking about meteor
03:30 <jmoyers> a framework that bundles HOSTING in, lol
03:30 <sinclairzx> oh ok
03:30 <Oddman> jmoyers, is still butt hurt about me disagreeing with him about less/sass
03:30 <ChrisPartridge> lol
03:30 <Oddman> apparently people aren't allowed to disagree
03:31 <jmoyers> any documentation that has more words than code
03:31 <jmoyers> has a big fat smell, thats all I'm saying.
03:31 <* sinclairzx> thinks responsive design is a dumb idea
03:31 Usse joined
03:31 <rendar> sinclairzx: why?
03:32 meso_ joined
03:32 <jmoyers> sorry guy
03:32 <jmoyers> I'm just tired of people laying into tj's modules
03:32 <sinclairzx> rendar: its hard enough getting a design out and templated, let alone trying to squish the design into a different form factor
03:32 <jmoyers> when the guy is fucking prolific. if it doesn't fit your style, move on
03:33 boltR joined
03:33 <sinclairzx> jmoyers: i don't really like TJ either im afraid
03:33 <jmoyers> he's dedicated to maintaining all these badass node modules for the community, and all i hear is hipsters hating on express
03:33 <rendar> i see
03:33 <stagas> sinclairzx: that's what responsive layouts solve, no?
03:33 vguerra joined
03:33 torm3nt joined
03:33 <_Oddman> silly interwebs
03:33 <jmoyers> sinclairzx and what have you done lately?
03:33 <sinclairzx> jmoyers: a lot of things? why?
03:34 <jmoyers> besides talk about typescript and asp.net
03:34 <jmoyers> okay, github?
03:34 <jmoyers> pull request or gtfo
03:34 <sinclairzx> jmoyers: well, there is all that work ive been doing "not dressing like a emo and proclaiming my one sided thoughts about technology to the sheep"
03:35 <jmoyers> i.. i dont even
03:35 <sinclairzx> jmoyers: i don't use github either
03:35 <sinclairzx> jmoyers: not that i have an issue with it
03:35 <astropirate> sinclairzx, fan of codeplex?
03:36 <astropirate> :D
03:36 <sinclairzx> nope, i've been using google code for years
03:36 <ChrisPartridge> oh dear, here we go.. again
03:36 ifarkas joined
03:36 torm3nt joined
03:36 <ljharb> googlecode? good god.
03:37 <astropirate> cant stop listening to this so much epicness https://www.youtube.com/watch?v=ZjjqOFOVTK4
03:37 <* sinclairzx> is old school, and happens to like subversion
03:37 Wizek|2 joined
03:37 <Oddman> yikes
03:37 <Oddman> have you actually played with git?
03:37 <ChrisPartridge> no wonder you love microsoft so much
03:37 JumpLink1 joined
03:37 qos joined
03:37 <ljharb> subversion?!?
03:37 hnan joined
03:37 <astropirate> I like CVS
03:37 <ljharb> sinclairzx, you're fast making your opinions irrelevant
03:37 shaggy167 joined
03:37 <ljharb> CVS is god-awful.
03:38 <astropirate> ljharb, get on my level
03:38 <ljharb> still using subversion in 2012 is almost as bad as not having version control at all
03:38 <sinclairzx> Oddman: yes, ill be switching over eventually to take advantage of git publishing on Azure
03:38 <ChrisPartridge> Did anyone ever use VSS?
03:38 <ljharb> ChrisPartridge: of course, 12 years ago
03:38 r0tha joined
03:38 <ChrisPartridge> We still have a project in VSS
03:38 <sinclairzx> ljharb: CVS is not subversion. http://www.pushok.com/software/svn-vscvs.html
03:38 <astropirate> HAHAAH
03:38 <ChrisPartridge> it's my excuse to never touch it
03:39 <sinclairzx> ChrisPartridge: hated VSS, also hate Team Foundation
03:39 <sinclairzx> microsoft doesn't do version control all that well imo
03:39 <astropirate> sinclairzx, do you work for microsoft?
03:39 <ljharb> sinclairzx: CVS is all centralized version control, and it's all atrocious.
03:39 hkjels joined
03:39 <Oddman> they're both bad
03:39 <Oddman> SVN is slightly better than CVS
03:39 <ljharb> and CVS is worse than subversion. and that link is from 2005. don't post links that old.
03:40 pig joined
03:40 <sinclairzx> Oddman: SVN works for small teams, and as i work on a lot of my personal projects alone, it suites me fine
03:40 <ljharb> sinclairzx: the fact that you think that shows you know nothing of git.
03:40 <sinclairzx> astropirate: no, i don't work for Microsoft
03:41 <ljharb> centralized version control doesn't work for any size team.
03:41 <Oddman> sinclairzx, until you want to branch properly
03:41 <Oddman> or pull a feature from someone else without it being on the main repos
03:41 <ljharb> or work offline
03:41 <Oddman> :)
03:41 <Oddman> I don't know how I survived without git
03:41 <ljharb> or join the developer world of 2009
03:41 <Oddman> it made dev soooo lovely
03:41 <sinclairzx> ljharb: what the hell are you talking about, i don't have any issues with github at all, i just currently don't use it (but will when i start moving stuff onto Azure)
03:42 <ljharb> sinclairzx: i'm not talking about github, altho thats awesome. i'm talking about git.
03:42 <Oddman> git != github
03:42 <sinclairzx> Oddman: im aware
03:42 jpdery joined
03:42 <astropirate> I'm a hipster I use http://gitorious.org/ for git hosting
03:42 <Oddman> need to stick to the terms then dude, cos that was confusing :)
03:43 <Oddman> seeing as noone menitoned github. heh
03:43 <sinclairzx> Oddman: i figured i was being flamed because i currently use google code
03:43 <astropirate> Oddman, how dare you inject logic into this discussion!
03:43 <ljharb> sinclairzx: you're being flamed because google code means you use svn. altho google code is awful too.
03:43 <astropirate> sinclairzx, nahh.. google code now also supports git
03:43 <sinclairzx> astropirate: haven't checked lately
03:44 <sinclairzx> ljharb: stfu, who cares what version control system i use?
03:44 <ChrisPartridge> Gee, gitorious is looking pretty slick these days
03:44 <Oddman> astropirate, sorry :'(
03:44 <astropirate> ChrisPartridge, I want to use them but.. they dont have issue manager and wiki :(
03:45 <__pr0t0__> Somebody should tell the FreeBSD guys that git is the only way to go
03:45 <astropirate> I had an account there btu had to give it up becuase of issue manager that was available on github
03:45 <ljharb> sinclairzx: certainly you don't care if you're not using git :-)
03:45 <__pr0t0__> They haven't gotten the message and are still winning
03:45 <ChrisPartridge> astropirate: Yeah, we are using mercurial+fogbugz+kiln here - works quite well
03:45 <astropirate> wining what??
03:45 <__pr0t0__> Well, they have an OS and you don't. That's pretty winning to me.
03:45 <Oddman> "They haven't gotten the message and are still winning"
03:45 <Oddman> LOL
03:45 <Oddman> winning how?
03:45 JumpLink3 joined
03:45 <sinclairzx> ljharb: correct, i don't care, it offers me nothing over what i currently use
03:45 <astropirate> __pr0t0__, actually.... no. I have written an OS or two :p please check your facts
03:46 <Oddman> sinclairzx, that's not true :)
03:46 <astropirate> very incredibly simple, but an OS non the less
03:46 <Oddman> it offers quite a bit that you'd find very useful both personally and as part of your team
03:46 <sinclairzx> ljharb: i will care slightly more when i decide to hook up git publishing on azure
03:46 <ljharb> sinclairzx: that's 1000% not true.
03:46 <__pr0t0__> astropirate: I mean an OS that works and people use. I'm sure yours was great, but it's not powering some ATM somewhere I'm sure :)
03:46 <ljharb> sinclairzx: git offers more than svn - you just don't realize what yet.
03:46 tahu joined
03:46 <sinclairzx> ljharb: guess what, im done, talking about git
03:46 <astropirate> __pr0t0__, why you go on tanget? what are they wining???????????????
03:47 <astropirate> is there a prize?
03:47 [AD]Turbo joined
03:47 <astropirate> competetion i dont know about?
03:47 <Oddman> correct
03:47 <ljharb> sinclairzx: you can be done talking about it, but i'm not done, because you are stuck in the stone ages if you're using centralized version control.
03:47 <Oddman> FreeBSD won the best cake award for 2012
03:47 <ljharb> that's like trying to defend still using a dialup modem.
03:47 ktstowell joined
03:47 <__pr0t0__> astropirate: Yes. The prize is cake.
03:47 <astropirate> Oddman, damn!
03:47 <[AD]Turbo> hi there
03:47 <__pr0t0__> Oddman beat me.
03:47 <astropirate> yes
03:47 <Oddman> hehe
03:47 <astropirate> you did not win!
03:47 <astropirate> :p
03:48 <Oddman> __pr0t0__, is proto.
03:48 <__pr0t0__> I lost as usual :<
03:48 <sinclairzx> ljharb: im aware of all the benefits of git, my view is this ... "oh, that's nice, i should move all my projects over to it one day". and that's it
03:48 <ljharb> fair enough. except that "one day" was 2 or 3 years ago, so you should get on it.
03:48 <astropirate> lol
03:48 ttt joined
03:48 <astropirate> ljharb, dont give him a hard time
03:49 <ljharb> sinclairzx: http://jonmaddox.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/ will get you migrated in seconds (plus however long you have to wait if your svn server is slow)
03:49 <ljharb> astropirate: i push because i love. i push because i love.
03:49 <Oddman> I push because I'm pregnant.
03:49 stephank joined
03:49 <astropirate> i push only when I know there is a cliff behind them
03:49 <astropirate> :O
03:49 <Oddman> haha
03:50 <Oddman> you scoundrel you
03:50 <sinclairzx> ljharb: actually, i was thinking about pushing all my code out to a paid for TFS repo
03:51 pig joined
03:51 <ljharb> oh you can store the git server anywhere. you can make one on any server and just push to it with ssh.
03:51 <ljharb> for freeeee
03:51 <ljharb> altho github is awesome and you should use that.
03:51 <sinclairzx> ljharb: you get what you pay for in other words?
03:51 <Oddman> no, this isn't microsoft sinclairzx
03:51 <sinclairzx> ljharb: like PHP, that's free too
03:51 <ljharb> yup. basic stuff is free, github awesomeness is paid for. unless youre doing open source, and then github gives it to you for free
03:51 <Oddman> where every 2nd windows release is fail
03:52 <ljharb> sinclairzx: we're talking about service. that's the only place where you get what you pay for.
03:52 aslant joined
03:52 <astropirate> sinclairzx, node.js is also free
03:52 <astropirate> it must be crap
03:52 <Oddman> :P
03:52 <astropirate> you shouldnt useit
03:52 <Oddman> noooooooooooo
03:52 <astropirate> javascript is also free
03:52 <sinclairzx> astropirate: exactly
03:52 <astropirate> so is typescript
03:52 <astropirate> dump it all
03:52 <astropirate> set it on fire!!!
03:52 mattgifford joined
03:52 <ljharb> software should be free. nothing else has to be.
03:52 <astropirate> air
03:52 <astropirate> Anyway
03:52 aleitaly joined
03:53 <astropirate> Anyone interested in forming a team?
03:53 <astropirate> doing node.js projects
03:53 <Oddman> depends
03:53 <Sven_vB> will jade's feature-richness end up in being slow for even simple templates?
03:53 <Oddman> does it involve cake?
03:53 hackband joined
03:53 extrawurst joined
03:53 <astropirate> most consulting gigs really require a team. And I am only 1 guy
03:53 <SomeoneWeird> wats cake
03:53 <ljharb> Sven_vB: yes, i'm sure it will be slower - but, you should not worry about performance until youve built it, and its measurably slow.
03:53 stisti joined
03:54 <astropirate> this is cake: https://www.youtube.com/watch?v=0UJkiMrI6ZI SomeoneWeird
03:54 <Oddman> cakephp? :P
03:54 <SomeoneWeird> THATS A LIE
03:54 <hemanth> anyone pawing at cluster? trying to get a soild use case to support it ....
03:54 <Oddman> link?
03:54 <sinclairzx> ljharb: you know, i could proclaim all the benefits of using .NET over JS because you don't know what your missing out on, but i won't
03:54 <Oddman> sinclairzx, you could TRY :P
03:55 <astropirate> Pm me if anyone is intersted in teaming up :)
03:55 <ljharb> .net and JS aren't comparable
03:55 <sinclairzx> hemanth: ive been looking into cluster actually
03:55 <SomeoneWeird> o look facebooks down
03:55 pancake left
03:55 <hemanth> sinclairzx, nice, what more than the examples?
03:55 margle joined
03:55 <sinclairzx> hemanth: not at this stage :) but i have been thinking about it alot
03:56 graeme_f joined
03:56 <hemanth> sinclairzx, say, some data crunching?
03:56 <astropirate> hemanth, use cluster to use all of the cores in your CPU
03:56 <sinclairzx> hemanth: not in that context no
03:56 <astropirate> if y ou have say... 8 cores. 1 node process will only use 1 core
03:56 <Sven_vB> astropirate, which country to team up in?
03:56 <hemanth> astropirate, right, aware of that. But where is it most useful and very strong use case is what i'm looking for
03:57 <sinclairzx> hemanth: more in lines of modularizing contextual code into the same app, and running them over multiple threads, on the SAME port
03:57 <astropirate> Sven_vB, anywhere, remote is fine by me
03:57 <astropirate> hemanth, that is the use case for it
03:57 mscdex_ joined
03:57 <sinclairzx> hemanth: something along the lines of having both a web app, and a socket.io app running on the same port
03:57 <astropirate> that is the only use case fo rit
03:58 <sriley> well since node js is single threaded if you only have 1 process running on 1 core and you get 2 requests at the same time the second request will have to wait till the first one is finished
03:58 <ChrisPartridge> not really
03:58 <__pr0t0__> async doesn't quite work like that
03:58 <ChrisPartridge> if request 1 has to hit io, and request 2 doesnt, request 2 might get out first
03:58 <hemanth> sinclairzx, socket and web and irc and so on, on the same port astropirate
03:59 victor2812 joined
03:59 <sriley> yes its not quite like that, but in its simplest form its easy to describe like that
03:59 SpX joined
03:59 <astropirate> hemanth, good catch. my bad I didnt think of that
03:59 <Jygga> its just all sorts of wrong to descibe it like that but sure :)
03:59 <sinclairzx> hemanth: ?
04:00 <sinclairzx> hemanth: im pretty sure there isn't any other way to do it
04:00 smellynoser joined
04:01 pyrotechnick joined
04:02 derpops joined
04:02 sunilthaha joined
04:02 romainneutron joined
04:02 shaggy167 joined
04:02 <hemanth> sinclairzx, blank!
04:02 Druide_ joined
04:03 <sinclairzx> ...?
04:03 krisu joined
04:06 fastest963 joined
04:06 <hemanth> sinclairzx, trying to make one such
04:06 <sinclairzx> hemanth: dude, i can't understand you
04:07 <hemanth> sinclairzx, trying to use cluster module to make an app with many workers doing different tasks over the same port
04:08 <sinclairzx> hemanth: oohh
04:08 <sinclairzx> hemanth: yeah, i think it is also a sensible way to structure an application
04:08 <hemanth> yup
04:08 maletor joined
04:08 <sinclairzx> with the idea being that a disparate node app today, can be hosted in a cluster tomorrow
04:08 rio{ joined
04:09 <hemanth> sinclairzx, heh heh :)
04:09 <sinclairzx> hemanth: i need something like this for Azure
04:09 odyniec joined
04:09 <hemanth> sinclairzx, PM?
04:09 Tobsn joined
04:10 <sinclairzx> in channel would be better, clusters are a relevant topic
04:10 templaedhel joined
04:11 mxweas joined
04:11 stafamus joined
04:12 hipsterslapfight joined
04:13 mikedeboer joined
04:13 Nasga joined
04:13 _kud joined
04:13 <hemanth> okies, will be back, need some food!
04:14 mattgifford joined
04:14 Lukewh joined
04:15 jamesd joined
04:16 <sinclairzx> its pretty neat that nodejs can keep a setInterval looping in the background all the while serving requests
04:16 pokoli joined
04:16 <sinclairzx> nodejs +1
04:17 emattias joined
04:19 <mmalecki> sinclairzx: event loops rock :)
04:20 <sinclairzx> mmalecki: gotta say, that's quite a nice feature, although the setInterval 'interval' parameter is not accurate
04:20 Yuffster_fun joined
04:20 felixge joined
04:20 felixge joined
04:22 <mmalecki> sinclairzx: yeah, that happens because you end up blocking sometimes
04:23 <sinclairzx> mmalecki: do you run node on IIS at all?
04:23 <mmalecki> it shouldn't be that inaccurate tho
04:23 <mmalecki> no, I try to stay away from IIS as far as I can
04:23 <sinclairzx> mmalecki: its ultra inaccurate
04:23 jpdery joined
04:24 <mmalecki> sinclairzx: how many miliseconds are we talking about?
04:24 <sinclairzx> about 1000
04:24 <mmalecki> WAT.
04:24 <sinclairzx> i set interval to 1
04:24 <mmalecki> I mean, damn man.
04:25 <mmalecki> get rid of IIS, set up some proxy in front of node if you care enough
04:25 mauritslamers_ joined
04:25 <sinclairzx> mmalecki: like?
04:25 mox601 joined
04:25 pneftali_ joined
04:26 <sinclairzx> don't say nginx
04:26 <mmalecki> sinclairzx: node-http-proxy
04:26 jetienne joined
04:26 <mmalecki> running in front of over 4k machines at nodejitsu, definitely production-ready :)
04:26 mox601 joined
04:26 <mmalecki> (multiple instances, obviously)
04:26 ts33kr joined
04:27 <pixie79> morning all - i am looking to try and simplfy my drbd read module so that i can then use it other for more than one script, I think i am lost in the how to put functions in modules correctly and then have them read a file and return
04:27 <pixie79> so far i have: http://pastebin.com/RzdtnqCy
04:27 <pixie79> which just prints 'FUNCTION'
04:28 <sinclairzx> mmalecki: does it offer me process management, scalability on multi core servers, auto-update, access to logs over http, does it run side by side with .NET applications, and a integrated management experience ?
04:28 <pixie79> ignore me - i found how to get it to give me the results, now just to see if i can assign that to a var
04:28 <mmalecki> sinclairzx: nope, it wasn't built for it
04:29 <sinclairzx> mmalecki: IIS is built for that
04:29 <mmalecki> for process management I'd recommend forever
04:29 <mmalecki> cool
04:29 TomY joined
04:29 <sinclairzx> IIS FTW !
04:29 shaggy167 joined
04:30 extrawurst left
04:30 <pixie79> hm - ok may be not, if i dump inside the function it prints, but i need to return contents of the read file
04:30 <mmalecki> heh, whatever you prefer
04:30 uiureo joined
04:30 <sinclairzx> mmalecki: looking at deploying to Azure
04:31 Aartsie joined
04:33 <rendar> mmalecki: you are at nodejitsu? :)
04:33 <sinclairzx> mmalecki: handlebars looks like a good template engine
04:34 <mmalecki> rendar: yup, devops engineer
04:34 <rendar> mmalecki: cool!
04:34 <mmalecki> indeed it is :)
04:34 Guest36894 joined
04:34 <jesusabdullah> the mustache family isn't terrible
04:34 <jesusabdullah> at least, as non-terrible as templating can really be
04:35 <rendar> mmalecki: they have 4000 machines? wow, i didn't thought that
04:35 <mmalecki> rendar: hey, those apps have to go somewhere, right? :)
04:35 dch joined
04:36 <rendar> eheheh
04:36 <rendar> mmalecki: so basically, you write your server with node.js, and you just submit it to nodejitsu and they run it, in few clicks..
04:36 <sinclairzx> mmalecki: do you use handlebars to precompile your templates, or do you have your application compile them on the fly?
04:37 r0tha_ joined
04:37 <jesusabdullah> sinclairzx: you mean like, caching?
04:37 <mmalecki> rendar: one command line, to be precise :)
04:37 <rendar> mmalecki: lol :P
04:38 <mmalecki> sinclairzx: I don't use handlebars
04:38 jonandersson joined
04:38 <mmalecki> I rarely do stuff on frontend these days
04:38 <sinclairzx> jesusabdullah: nope, not exactly
04:38 <mmalecki> if I do, I use plates
04:38 <NodeX> anyone here use socket.io?
04:38 <jesusabdullah> sinclairzx: wouldn't it really be a matter of whether you need to update values or not?
04:38 kennethkoontz joined
04:38 <jesusabdullah> NodeX: yes, everyone and their dog uses socket.io ;)
04:38 <sinclairzx> jesusabdullah: but everyone should cache, it's what what im refering to
04:38 <NodeX> in production on large scale sites?
04:38 <jesusabdullah> yes
04:39 <sinclairzx> jesusabdullah: values are typically passed into a compiled template
04:39 <NodeX> what sort of performance do you get out of it
04:39 ashnur joined
04:39 <jesusabdullah> oh I see
04:39 <NodeX> say 50k connected users pushing a message to all?
04:39 <jesusabdullah> I mean, that saves some computation up-front, I'd think
04:39 <jesusabdullah> yes
04:39 <jesusabdullah> if websockets are going
04:39 <mmalecki> NodeX: you'd need around 10 GBs of total RAM to do that I think
04:40 <Nexxy> ugh.
04:40 <NodeX> but it would handle it fine yes?
04:40 Guest36894 joined
04:40 eldios joined
04:40 <mmalecki> 256 MB machine can handle around 500 concurrent users with a simple hello world app
04:40 imjsilva joined
04:41 <sinclairzx> is it considered blasphemy to use Microsoft SQL Server to house my nodejs applications data?
04:41 <NodeX> that's pretty cool
04:41 <rendar> mmalecki: how they at ninjutsu manage security? i mean, what about if i deploy a malicious node.js script? are they sandboxed or what?
04:41 EweR joined
04:41 cosmincx joined
04:41 mattpodwysocki joined
04:41 <TehShrike> wat
04:41 <mmalecki> rendar: yeah, we do heavy sandboxing
04:41 <rendar> mmalecki: i see
04:41 sha0coder joined
04:42 perezd joined
04:42 <rendar> mmalecki: but you use a your own sandbox, or the one with node.js(? does it have one) or googlev8?
04:42 <sinclairzx> mmalecki: do you work at nodejitsu ?
04:42 <NodeX> is there a general accepted method of scaling socket.io or is it accepted to scale horizinatly by adding more servers
04:42 <mmalecki> sinclairzx: yes
04:42 <sinclairzx> oh nice
04:42 <sinclairzx> kudos
04:43 <mmalecki> rendar: various operating system-level techniques
04:43 <Nexxy> that depends on what you call "work"
04:43 <rendar> mmalecki: i see, linux i guess
04:43 <mmalecki> rendar: smartos
04:43 <sinclairzx> hello Nexxy
04:43 slaskis joined
04:43 <Nexxy> hi sinclairzx
04:43 <mmalecki> but those do apply to unix in general
04:44 <rendar> mmalecki: i see
04:44 Wizek joined
04:44 stisti joined
04:44 <mmalecki> Nexxy: I'm a responsible employee!
04:44 fangel joined
04:44 ptdorf joined
04:46 Wizek|2 joined
04:46 ewalker1 joined
04:46 DaMorpheuS joined
04:46 <eldios> sinclairzx, it's considered blasmpehy to use MSSQL :P
04:46 <eldios> Nexxy, \o/
04:47 r0tha joined
04:47 <mmalecki> it's considered blasphemy to use MS*
04:47 <eldios> o/
04:47 <Spion_> except for typescript
04:47 <mmalecki> well, no, that too ;)
04:48 <Nexxy> mmalecki, uh huh ;P
04:48 <Nexxy> eldios, hai \o/
04:48 <eldios> ^^
04:48 perezd joined
04:48 jimmyff joined
04:50 robmorrissey joined
04:50 Emmanuel` joined
04:50 <mmalecki> Nexxy: btw, when are you arriving to Dublin?
04:50 <mmalecki> I'm getting in on 15th
04:51 <eldios> oh.. are you going to the nodejsconf in dublin?
04:51 <mmalecki> hell yeah I am
04:51 <eldios> =)
04:51 <mmalecki> hit me up for drinks
04:51 <mmalecki> where I'll be representing as a responsible nodejitsu employee.
04:51 <eldios> well if you pass near Pisa, I will sure do
04:52 imjsilva joined
04:52 <mmalecki> eldios: I'll be in Brescia
04:52 <eldios> oh
04:52 <mmalecki> for nodejsconf.it
04:52 perezd joined
04:52 <eldios> I'll be there too
04:52 <mmalecki> hit me up for drinks!
04:52 <eldios> let's definitely meet there
04:52 <mmalecki> I'm getting in on 6th, leaving on 19th
04:52 <eldios> wow
04:53 <eldios> visiting the area?
04:53 <mmalecki> definitely
04:53 <eldios> well.. be sure to come in Tuscany
04:53 <eldios> we'll drink twice :P
04:54 perezd joined
04:54 darthdeus joined
04:54 <mmalecki> at least.
04:54 <eldios> XD
04:54 <mmalecki> brb, gotta buy some milk, my fridge is full of beer
04:54 <mmalecki> with no food
04:55 imjsilva_ joined
04:55 imjsilva_ left
04:56 rampr joined
04:56 perezd joined
04:57 <pixie79> how do i return an array to the calling function, when the contents of the array are the result of a file read?
04:58 imjsilva joined
04:58 <astropirate> pixie79, you dont
04:58 timkuijsten joined
04:58 ewalker joined
04:58 timkuijsten joined
04:58 <pixie79> currently i have the following ?http://pastebin.com/jEbnxJg0
04:58 <astropirate> have the callign function provide a callback function
04:58 kkszysiu_work joined
04:58 <astropirate> which takes the array as a parameter
04:59 aliem joined
04:59 perezd_ joined
05:00 <pixie79> astropirate: i get the first part - not sure how i assign the array as a parameter to a callback though
05:01 <astropirate> callback(myArray);
05:01 <hemanth> sinclairzx, still around?
05:01 <sinclairzx> yus
05:02 thatguydan joined
05:02 <hemanth> so how about a Torrent cluster client?
05:02 <sinclairzx> hemanth: maybe?
05:02 <Nexxy> mmalecki, not till the 16th I believe
05:02 mxweas joined
05:02 <pixie79> ok i will try
05:02 <hemanth> astropirate, what say? ^^
05:02 <Nexxy> mmalecki, I *just* got to Berlin an hour ago
05:02 <sinclairzx> hemanth: tbh, i haven't built a torrent client before
05:03 <astropirate> hemanth, what? o_O
05:03 <hemanth> sinclairzx, Torrent cluster client?
05:03 <hemanth> sinclairzx, we can use required modules and each worker will work on given set of links. astropirate
05:04 <sinclairzx> hemanth: where are you from ?
05:04 <hemanth> hemanth, Bangalore
05:04 <astropirate> hemanth, what would be the point of that?
05:04 <hemanth> astropirate, just to get an app with cluster ;) #fun?
05:05 <* astropirate> slaps hemanth
05:05 <astropirate> no fun allowed
05:05 frankblizzard joined
05:05 <* hemanth> hides behing Nexxy and sinclairzx to avoid angry astropirate
05:05 huskyr joined
05:05 jpdery joined
05:05 woeye joined
05:06 omair joined
05:06 Frippe joined
05:06 Frippe joined
05:06 simenbrekken joined
05:08 <pixie79> astropirate: that just gave me function callback is not defined: -> exports.read = function (callback) {
05:08 <astropirate> sec lemme look at your code
05:09 h4nnibal joined
05:10 andrewffff joined
05:10 jonandersson joined
05:11 <astropirate> pixie79, http://pastie.org/4913797
05:11 templaedhel joined
05:11 woeye joined
05:11 woeye left
05:11 woeye joined
05:12 thirdknife joined
05:12 <pixie79> astropirate: thanks
05:13 sreeix joined
05:13 sgupta joined
05:14 SamuraiJack joined
05:15 foxbunny joined
05:16 perezd_ joined
05:17 perezd_ joined
05:18 tjmehta joined
05:21 notmatt joined
05:22 mikedeboer joined
05:22 <pixie79> astropirate: much appreciated - i now have that data where i need it in an array ready to be used - just need to chop it in to json ideally next
05:23 mikeal joined
05:24 Aartsie joined
05:27 manuelbieh joined
05:27 timkuijsten joined
05:27 timkuijsten joined
05:29 dannyamey joined
05:29 jcoglan joined
05:30 shaggy167 joined
05:32 mynameis joined
05:34 _Renegade joined
05:34 mynameis joined
05:37 <mmalecki> Nexxy: awesome. drinks on 16th
05:38 davidcoallier joined
05:38 <pyrotechnick> this is huge: http://news.sky.com/story/993180/milky-way-black-holes-found-by-astronomers
05:38 <pyrotechnick> predatory universe
05:39 darthdeus joined
05:40 jarr0dsz joined
05:43 defunctzombie joined
05:43 <astropirate> pixie79, sorry was AFK
05:43 <astropirate> to do that just do JSON.encode()
05:43 <astropirate> sorry i mean
05:43 <astropirate> JSON.stringify
05:43 <BennyLava> > JSON.encode
05:45 PhysX joined
05:46 fg3 joined
05:48 jpdery joined
05:48 margle joined
05:49 mon joined
05:50 dannyamey joined
05:51 <Nexxy> mmalecki haha oki
05:51 jibay joined
05:51 <mmalecki> Nexxy: AvianFlu is getting in on 16th too!
05:52 felixge joined
05:52 felixge joined
05:53 <mon> any info about node.js based Tent server yet?:)
05:53 <Nexxy> sweet!
05:54 tgriesser joined
05:55 ins0mnia joined
05:55 <mmalecki> Nexxy: yes!
06:01 andrehjr joined
06:02 ts33kr joined
06:05 thirdknife joined
06:05 nmjesus joined
06:05 sfoster joined
06:07 lucabox joined
06:07 mikedeboer joined
06:08 spion joined
06:08 gavri joined
06:10 <gavri> I'm using express. I'd like to functional test my application without having to start up a server. is there a way to get my requests routed and my request handlers executed without having to start up an http server?
06:11 stagas_ joined
06:11 <astropirate> I would like to know this too
06:11 templaedhel joined
06:12 sreeix joined
06:13 _pid1 joined
06:13 vahnpaper joined
06:13 ewalker joined
06:17 MrNko joined
06:18 tgriesser joined
06:18 MrNko joined
06:18 TomY joined
06:19 krisu joined
06:19 thirdknife joined
06:20 Aartsie joined
06:20 felixge joined
06:20 felixge joined
06:22 andrewffff joined
06:23 piscisaureus_ joined
06:23 <hemanth> Rails to node.js 20X time faster! :)
06:24 <Gottox> <random your-mother response>
06:24 <* astropirate> smacks Gottox
06:25 <astropirate> hemanth, that is good but as many have said: we just dont know why that is
06:25 <astropirate> is that becaue node is just retardedly faster
06:25 <jcoglan> fwiw, I have plenty of tests that boot a server and make requests, for integration tests
06:25 margle joined
06:25 <astropirate> or because their old code just sucked massively
06:25 <jcoglan> booting a server is plenty fast enough for this
06:26 andrewffff joined
06:26 <jcoglan> if you don't want to do that, just invoke the request handler function with fake request and response objects
06:26 <jcoglan> check that the response receives writeHead(), write(), end() et
06:26 <jcoglan> s/et/etc/
06:27 pickels joined
06:27 aleitaly1 joined
06:27 <gavri> jcoglan: I'd like the functional test to include the actual url that is matched and routed
06:27 MrNko joined
06:27 FIQ joined
06:28 <jcoglan> so either boot a server and use http to call it, or call the request-handler function with a fake request
06:28 <jcoglan> e.g. {url: '/the/url/being/tested'}
06:28 rampr joined
06:28 aleitaly1 left
06:29 <gavri> if I call the request handler function directly, I'm bypassing the actual routing which I don't want to unit test separately
06:29 <jcoglan> you'll obviously need more to make it a real-looking request object, but it's fairly easy to add the properties a typical request handler uses
06:29 SunilT joined
06:29 <jcoglan> I don't mean call the individual route handler, I mean call the top-level handler that processes all incoming requests
06:29 shaggy167 joined
06:29 <gavri> oh
06:30 <gavri> that's cool
06:30 <jcoglan> (I don't know exactly where that is in express, or if it's exposed)
06:30 jpdery joined
06:30 <gavri> jcoglan: thanks. I'll see if I can pursue that
06:30 <jcoglan> but I'd try going the full-stack route w/ booting a server first, it's surprisingly fast
06:30 <astropirate> http://ikaisays.com/2012/10/04/clearing-up-some-things-about-linkedin-mobiles-move-from-rails-to-node-js/
06:31 <jcoglan> I do this in a bunch of my tests, e.g. https://github.com/jcoglan/restore/tree/master/spec/restore
06:31 <jcoglan> they're really fast
06:32 uiureo joined
06:32 <gavri> it's not about the speed. I just don't know how to get it to work. for example, all my functional tests need this and I could choose to run an individual test, or a subdirectory of tests or all the tests
06:32 piscisaureus_ joined
06:32 simong joined
06:32 <gavri> and in all these cases, I'd like for a server to start up
06:32 <gavri> but only once
06:32 <gavri> I use vows
06:32 <gavri> which takes in one or more list of test files
06:33 Tobsn joined
06:34 <txdv_> he is asian
06:34 stisti joined
06:34 <jcoglan> to start the server, you could use
06:35 <hemanth> astropirate, :)
06:35 <jcoglan> topic: function() { server.listen(4567, this.callback) }
06:35 <jcoglan> (possible, I don't know vows)
06:35 <jcoglan> but you'd need an 'after' hook to shut down the server after each test, which I don't know if vows has such a thing
06:36 <gavri> see that's the thing. I don't want to have to type "topic: function() { server.listen(4567, this.callback) }" for each batch of vows
06:36 <gavri> maybe I'm just spoilt with rails tests
06:36 wolframkriesing joined
06:37 TomY joined
06:38 <pyrotechnick> txdv_: http://en.wikipedia.org/wiki/Race_and_intelligence
06:39 krisu joined
06:41 <pyrotechnick> read it and weep
06:41 nicholasf joined
06:42 <gavri> a way I could work around this is if I use an alternate router (which lets the route handlers be directly invoked) https://npmjs.org/package/router for express
06:42 <gavri> does express allow the router to be replaced?
06:42 <astropirate> no
06:43 <jcoglan> how hard would it be to use a test framework with before-all/after-all hooks that let you start/top the server?
06:45 dax_roc joined
06:45 TomY joined
06:45 <txdv_> everytime i see this vertx i am like
06:45 <txdv_> awesome, fast, must be an awesome thing
06:45 <txdv_> but then i remember that i would have to use freaking java
06:45 _pid joined
06:46 gabrieluk joined
06:48 mvanek joined
06:50 bren2010 joined
06:51 <h4nnibal> how is java freaking?
06:51 PhysX joined
06:51 thirdknife joined
06:52 <shinaku_> Anyone developed nodejs on an android tablet?
06:52 <txdv_> h4nnibal: no lambdas
06:55 fg3 joined
06:56 vguerra joined
06:57 kishoreyekkanti joined
06:58 rickibalboa joined
06:58 <kranius> txdv_: wrong
06:59 andrewffff joined
06:59 rampr joined
06:59 <txdv_> i guess tsince i am always playing with bleeding edge
06:59 <txdv_> it wouldn't bother me
07:01 ProblemEmitter joined
07:01 Electron joined
07:04 axos411 joined
07:05 Shrink joined
07:06 <gavri> ;
07:08 dch|away joined
07:08 markwubben joined
07:08 aslant joined
07:09 zonetti joined
07:09 andrewffff_ joined
07:12 huskyr joined
07:12 templaedhel joined
07:12 jpdery joined
07:14 joshfinnie joined
07:16 Couto joined
07:17 YoY joined
07:18 nariyal joined
07:19 yawn joined
07:20 syskk joined
07:20 <syskk> any reason why require('repl'); breaks Express app?
07:21 <syskk> require('repl').start('REPL> ') actually breaks my app
07:21 _Renegade joined
07:23 <jcoglan> something to do with stdout.setRawMode(true) ?
07:23 poolshark joined
07:23 brooss joined
07:23 <jcoglan> I've had repl break the password module and other CLI stuff, never a web app
07:23 shaggy167 joined
07:23 <syskk> probably. anyways fixed the problem by forcing the repl to start only after express server is started
07:24 <jcoglan> s/stdout/stdin/
07:26 <syskk> is it possible that stdout is going to the repl's input?
07:26 fly-away joined
07:27 axos411 joined
07:27 tgriesser joined
07:28 _pid joined
07:28 toonketels joined
07:28 <gavri> I have a question about environment handling in node.js (development, test and production). I'm using nconf and sequelize and both of them seem to assume that there is only one enviroment. for example, sequelize's migrations read from config/config.json (this file path is hard coded in sequelize) and it completely ignores NODE_ENV. what am I missing here? what should be my approach to make sure that when tests run they don't muck around with development data?
07:28 <sinclairzx> anyone here fond of OData?
07:29 athenot joined
07:29 mon joined
07:30 c4milo joined
07:32 Lukewh joined
07:32 FontPeg joined
07:33 joshfinnie joined
07:34 Kn|t3 joined
07:35 tutley joined
07:35 leonardo joined
07:37 bnoordhuis joined
07:38 cache joined
07:39 overra joined
07:39 overra joined
07:40 jxie_ joined
07:40 Kn|t3 joined
07:42 <mscdex_> gavri: send sequelize a pull request? :-)
07:43 <pixie79> is there an easy way to delete the first line of text from a string (or first two lines actually)
07:43 <gavri> mscdex_: but what's the general approach towards environments in node.js world though?
07:43 broofa joined
07:43 <astropirate> pixie79, yes open it up in a text editor and delete the first line or two
07:44 <nkuttler> pixie79: regex, match newlines, remove whatever you don't want
07:44 <litenull> +1
07:44 <pixie79> nkuttler: ok - off to hunt regex then
07:44 <mscdex_> gavri: not sure there is a single approach used, express which is pretty popular, uses NODE_ENV and the like
07:45 <nkuttler> !mdn string replace @ pixie79
07:45 <nkuttler> hrm, isn't that bot here as well?
07:45 <mscdex_> nkuttler: coffee break ;-)
07:45 <gavri> so I really can't submit a pull request for sequelize, I guess. I don't know what the author would find acceptable. there's too much leeway here
07:46 <nkuttler> mscdex_: ok
07:46 <nkuttler> gavri: isn't he in #sequelizejs ?
07:46 pandeiro joined
07:46 <gavri> okay, I didn't know that channel existed. thanks
07:47 <pixie79> nkuttler: thanks
07:47 <nkuttler> pixie79: yw
07:47 mdedetrich joined
07:47 nmjesus joined
07:47 <gavri> how soon are the npmjs.org versions typically updated after a pull request on github?
07:47 huskyr joined
07:49 TheSheep joined
07:50 JumpLink3 left
07:53 stisti joined
07:54 jpdery joined
07:54 thl0 joined
07:55 <mscdex_> gavri: depends on the module author
07:56 <mscdex_> and whenever they're ready to bump the version
07:56 Lukewh joined
07:57 <eldios> guys if there's anyone (who knows someone) in a need for a remote devOps/sysEng please query me in private =)
07:59 aslant joined
08:00 <syskk> mmm how hard would it be to connect the REPL to Chrome's webkit inspector or something? I'm sure something like this already exists
08:01 spion__ joined
08:02 varmose joined
08:04 josh_k joined
08:06 colinclark joined
08:07 andrewffff joined
08:07 <pixie79> nkuttler: i have this - data = data.replace(/(^.*$)[0]/gm," "); - but it does not seem to be switching the firstline for a space
08:08 <TheSheep> pixie79: I don't think [0] does what you think it does
08:08 <nkuttler> isn't .* greedy in js?
08:08 <TheSheep> it is, not just in js
08:08 jmar777 joined
08:09 <TheSheep> but . doesn't match \n by default
08:09 therealkoopa joined
08:09 nariyal joined
08:09 <pixie79> may be - i did it without the [0] and it took the whole string not just the first line
08:09 <TheSheep> pixie79: right, now do it without /gm
08:09 <TheSheep> pixie79: just /^.*$/
08:10 <pixie79> TheSheep: data = data.replace(/^.*$/); - make no differance
08:11 <TheSheep> pixie79: and without ^ and $
08:11 <TheSheep> they are spurious
08:11 _pid1 joined
08:11 <TheSheep> > 'abcd\ndef'.replace(/.*/, ' ');
08:11 <TheSheep> ' \ndef'
08:12 templaedhel joined
08:12 <nathan7> syskk: the webkit console is a REPL >_>
08:13 <pixie79> TheSheep: thanks - that matches the first line ok - now i need to hit the second - i will play
08:13 <mscdex_> syskk: i think that's what node-inspector does, or one of those
08:14 piscisaureus_ joined
08:14 syskk_ joined
08:14 <TheSheep> pixie79: 'abcd\ndef'.split('\n');
08:14 whitman joined
08:15 erichynds joined
08:15 thirdknife joined
08:16 scanf joined
08:17 scanf left
08:17 notmatt joined
08:19 <mscdex> pixie79: /(?:.*?\n){2}([\s\S]*)/.exec("foo\nbar\nbaz\n\n")
08:19 gmci joined
08:19 <mscdex> that removes the two first lines
08:20 <mscdex> well, it captures all but the first two lines
08:20 <nkuttler> hrm
08:21 <nkuttler> >> 'foo\nbar\nbaz\n'.replace(/(.+\n){1,2}/, '');
08:21 <purr> nkuttler: (string) 'baz\n'
08:22 RLa joined
08:22 Kullt joined
08:22 <pixie79> nkuttler: thanks - that is the one i needed,
08:22 <pixie79> mscdex: i think i have a different need for your regex as well so thank you for that
08:24 mjr84 joined
08:24 <nkuttler> pixie79: but do some more reading and there's also #regex .+ vs .* etc..
08:26 dnolen joined
08:26 knirhs joined
08:26 <syskk> mscdex_: yes i know node-inspector but that's not exactly what im looking for
08:28 <pixie79> nkuttler: ok - will do
08:29 simong joined
08:29 jpdery joined
08:31 sgupta joined
08:32 bradgignac joined
08:34 obazoud joined
08:34 TomY joined
08:35 <pixie79> i have just done the following split - var dataA = data.split(/\d+:\scs:/); - which gives me the data split where i need it, however i also need the contents of the match to also be in the split and not cut out - any ideas ?
08:36 spion joined
08:36 ashnur joined
08:37 Guest53682 joined
08:37 lucabox joined
08:37 jonandersson joined
08:38 dominiques joined
08:38 kill-9_ joined
08:38 TomY joined
08:39 gmci joined
08:40 margle joined
08:41 Aartsie joined
08:42 jpdery joined
08:42 <nkuttler> !mdn string split @ pixie79
08:42 <nkuttler> meh
08:43 <nkuttler> pixie79: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/split#Example.3A_Capturing_parentheses
08:43 boutell joined
08:43 <nkuttler> if in doubt, rtfm
08:44 shac joined
08:45 vahnpaper left
08:46 mon left
08:48 Shrink joined
08:48 jwulf_ joined
08:48 knirhs joined
08:49 TomY joined
08:50 carlyle joined
08:50 <sinclairzx> is it time for another TS talk?
08:50 vervain joined
08:50 <sinclairzx> is anyone else trying to mix node and TS?
08:50 <sinclairzx> would be good to have a chat
08:53 rwaldron joined
08:54 sgupta joined
08:55 therealkoopa joined
08:55 <RLa> ts?
08:55 <sinclairzx> RLa: typescript
08:55 <RLa> oh
08:55 postwait joined
08:56 pig joined
08:56 Shrink joined
08:56 Shrink joined
08:56 artusrocha joined
08:57 bradgignac joined
08:57 <sinclairzx> i seems im the only one using it
08:58 hellopat joined
08:58 <sinclairzx> https://c9.io/site/blog/2012/10/typescript-support-in-cloud9/
09:00 <RLa> will webstorm support it too?
09:03 zenista joined
09:03 Lukewh joined
09:03 Shrink joined
09:04 poolshark joined
09:05 pretty_function joined
09:06 joemccann joined
09:06 tutley joined
09:06 mynameis joined
09:07 danielfilho|w joined
09:07 Kn|t3 joined
09:07 sorenso joined
09:08 chrisjaure joined
09:08 manuelbieh joined
09:09 <gavri> ;
09:10 stisti joined
09:10 <sinclairzx> i dont know
09:10 dyer joined
09:11 Franz__ joined
09:11 gerard0 joined
09:13 templaedhel joined
09:13 danielfilho|w joined
09:14 Taar779_w joined
09:14 allanm joined
09:15 Shrink joined
09:18 <RLa> typescript is certanly overhyped at this point
09:18 rworth joined
09:18 knirhs joined
09:19 Guest53682 joined
09:19 AvianFlu joined
09:20 estebistec joined
09:20 aslant joined
09:22 bwinton joined
09:22 halfhalo joined
09:23 Senji joined
09:23 thomblake joined
09:24 oxi joined
09:25 yhpark joined
09:25 sh0ne joined
09:26 josh-k joined
09:26 tgriesser joined
09:27 hillct joined
09:27 homunq joined
09:27 thatguydan joined
09:28 davidsklar joined
09:28 codycraven joined
09:28 AaronMT joined
09:29 thirdknife joined
09:29 spion joined
09:30 timmywil joined
09:30 boutell joined
09:30 PhysX joined
09:30 drudge_ joined
09:30 ts33kr joined
09:31 lazyshot joined
09:32 thatguydan joined
09:34 aslant joined
09:34 Mimo joined
09:35 pig joined
09:35 aandy joined
09:36 <Guest12336> hi! How do i get all the events in for an addListener; like request.addListener("data", <- how do you what kind of listerners there are
09:36 <Guest12336> ?
09:37 <RLa> see docs?
09:37 aandy joined
09:37 aandy joined
09:37 <SomeoneWeird> console.log(request)
09:37 <SomeoneWeird> should be under _events or something like that
09:37 <Guest12336> thx
09:37 frasnyc joined
09:38 ddollar joined
09:38 cgfuh joined
09:39 kevinswiber joined
09:39 redir_ joined
09:40 pig joined
09:41 Me1000 joined
09:41 foldedcat joined
09:43 thirdknife joined
09:45 zorzar joined
09:45 TheHippo1 joined
09:47 ansolas joined
09:47 <ansolas> hello,, is there a better way to upload big files ?
09:47 <ansolas> http://net.tutsplus.com/tutorials/javascript-ajax/how-to-create-a-resumable-video-uploade-in-node-js/
09:47 kazupon joined
09:47 <ansolas> this solution seams to be quite slow
09:48 derpops joined
09:51 bradgignac joined
09:51 Kn|t3 joined
09:52 draginx joined
09:52 draginx joined
09:52 igl1 joined
09:52 pritambaral joined
09:52 robmorrissey joined
09:52 shiawuen joined
09:53 tomshreds joined
09:54 huskyr joined
09:54 uiureo joined
09:57 fdmanana joined
09:57 fdmanana joined
09:58 rcrowley joined
09:58 C0deMaver1ck joined
09:58 C0deMaver1ck joined
09:58 thl0 joined
09:58 Industrial joined
09:58 bradleymeck joined
09:59 timmywil joined
10:00 cache joined
10:00 dguttman joined
10:00 generalissimo joined
10:02 thatguydan joined
10:04 toonketels joined
10:04 daffl joined
10:04 <superjoe> ansolas, does it have to be resumable?
10:05 <Industrial> substack: I'm setting up fleet on my hosting which is just one box/IP right now, so I have 1 drone. I'm not sure from where to call fleet spawn. If I call spawn for a few repos, and then do a deploy of one, will it re-spawn the affected/new build of the one repo? or do I manage the updates myself?
10:05 <ansolas> would be nice
10:05 <ansolas> but would be not resumeable be fasyter ?
10:05 <ansolas> faster
10:05 <ansolas> ?
10:06 <superjoe> ansolas, you might be better off with a multipart xhr
10:06 <superjoe> if you're willing to give up IE9 support
10:06 fangel joined
10:06 <ansolas> aha cool
10:06 sirkitree joined
10:06 <ansolas> where can i read about this
10:06 <ansolas> ...i dont care about ie
10:07 <Industrial> Also, right now I'm using forever to run my node servers and keep them up. Fleet doesn't do anything about failing spawns, right?
10:07 jetienne joined
10:07 <superjoe> ansolas, http://www.html5rocks.com/en/tutorials/file/xhr2/
10:07 <superjoe> ansolas, that'll give you progress callbacks too
10:07 pritambaral left
10:07 <ansolas> very nice
10:08 francisl joined
10:08 <ansolas> and how to hande this on teh server side ?
10:08 <ansolas> thank you
10:08 pritambaral joined
10:08 <superjoe> ansolas, use formidable or connect or express
10:08 <ansolas> ok i use express
10:09 c4milo joined
10:09 mandric joined
10:09 <superjoe> use the bodyParser middleware - the upload will be available as a temp file
10:09 <ansolas> ok i do research on teh bodyparser
10:09 brad-work joined
10:10 <superjoe> ansolas, read the express guide. then you'll know the 1 line it takes to plug that sucker in.
10:10 _n_ joined
10:10 <ansolas> yeh i saw that , but have no clue yet how to put all pieces together :)
10:10 brad-work joined
10:11 brad-work joined
10:11 <ansolas> app.use(express.bodyParser());
10:11 voti joined
10:11 imjsilva_ joined
10:11 pig joined
10:12 gnujach joined
10:12 jmanoto joined
10:12 <ansolas> ok great
10:12 francisl_ joined
10:13 templaedhel joined
10:13 jmanoto left
10:13 yawn joined
10:14 mappum joined
10:14 rampr joined
10:14 devsharpen joined
10:15 cushman joined
10:16 jamund joined
10:17 mon joined
10:17 <* jetienne> trying to take off mocha
10:19 matthewborn joined
10:19 <jetienne> how mocha find the files to which contains the test ?
10:19 dzajdband joined
10:19 [Arne] joined
10:22 devdazed joined
10:22 JonnyFunFun[Zzz] joined
10:22 dKc joined
10:22 pig joined
10:23 TomY joined
10:23 mdedetrich joined
10:24 Destos joined
10:25 Lukewh joined
10:25 ryanfitz joined
10:27 philips_ joined
10:28 shiawuen joined
10:29 thurmda joined
10:29 billy joined
10:29 spectre256 joined
10:29 rcrowley joined
10:29 templaedhel joined
10:29 lohkey joined
10:29 artusrocha joined
10:30 euoia joined
10:30 <Industrial> substack: Can I get fleet spawn to clone submodules?
10:30 <Industrial> deploy, rather.
10:31 matthewborn joined
10:31 mandric joined
10:32 thunderstrike joined
10:32 Aartsie joined
10:33 kevinswiber joined
10:33 lpin joined
10:35 <draginx> Anyone know if EMCAScript specifices to use camelCase or snake_case?
10:35 Kn|t3 joined
10:35 Circlepuller_ joined
10:35 francisl joined
10:35 <Industrial> draginx: if either runs, then no.
10:36 <draginx> what>>
10:36 rwaldron joined
10:36 pokoli joined
10:36 <Industrial> draginx: No it doesn't. The NodeJS community however uses camelCase.
10:36 <BennyLava> [citation needed]
10:36 <draginx> ok thanks
10:36 <BennyLava> wtf
10:36 <Industrial> mostly.
10:36 <draginx> BennyLava: ivew heard of it too nodejs style guide
10:37 <BennyLava> "mostly". In other words, personal preference.
10:37 <Industrial> that's what I'm saying, yes.
10:37 <* BennyLava> rolls his eyes
10:37 knirhs joined
10:39 voti left
10:39 dobber joined
10:39 <draginx> BennyLava: why do u hate nodejs so much? :P
10:39 <BennyLava> draginx: "u"?
10:40 <draginx> yeah
10:40 <draginx> i actually have a job
10:40 <BennyLava> draginx: and do I? What the hell?
10:40 ypcs joined
10:40 <draginx> so i cant spend to much time in here ;)
10:40 <BennyLava> Yeah, so do I?
10:40 <pixie79> hi there a test i can do to see if something is valid json? I have written a string which i believe is valid and when i output it to console.log it validates ok in online json checkers
10:40 <BennyLava> Wha tthe fuck is your point?
10:40 <pixie79> ideally i would now like to be able to call the json parts of the string within the rest of my script
10:40 <BennyLava> What the*
10:40 MikeyV27 joined
10:40 sgupta joined
10:40 dzajdband joined
10:40 <BennyLava> draginx: you see, quite a lot of people with tech job can spend time on IRC at work.
10:41 <BennyLava> jobs*
10:41 <draginx> w/e man, you win the internet
10:41 <BennyLava> draginx: thank you. You, on the other hand, only win at failing.
10:41 <BennyLava> Thanks for playing!
10:42 <deoxxa> arguably i spend more time at work on irc than i do working
10:42 Circlepuller joined
10:42 <BennyLava> Me too!
10:42 <BennyLava> I'm just that good.
10:42 epiloque joined
10:42 <BennyLava> Well, fast anyway.
10:42 <deoxxa> also arguably that turns out to be productive
10:42 <deoxxa> most of my work is done by my subconscious, i find
10:43 <deoxxa> if i have a hard problem, i just stop paying attention to it for a while
10:43 <deoxxa> then it fixes itself in my head
10:43 <deoxxa> and wheeeee
10:43 <BennyLava> right
10:43 <deoxxa> thanks, brain!
10:44 <medice> you should go out drinking while your brain works out the problems
10:44 sbook joined
10:45 Kn|t3 joined
10:45 pyrotechnick left
10:46 duc1199 joined
10:46 Venom_X joined
10:48 urlwolf joined
10:48 coolnalu joined
10:49 blazes816 joined
10:50 <mon> deoxxa: so you're better when not thinking :)
10:51 <deoxxa> heh, i guess
10:51 Ineentho joined
10:51 <mon> ... in solving problems
10:51 tdowg1 joined
10:52 kazupon joined
10:53 [Arne] joined
10:53 soapyillusions joined
10:54 ding_ joined
10:55 audreyr joined
10:55 templaedhel joined
10:56 colinclark joined
10:57 nd__ joined
10:57 C0deMaver1ck joined
10:58 samstefan joined
10:58 No9 joined
10:59 estebistec joined
10:59 Youdaman joined
11:00 gregmoreno joined
11:00 thl0_ joined
11:00 stisti joined
11:00 marek_trunkat joined
11:00 jdeibele joined
11:00 briancray joined
11:01 kuryaki joined
11:03 thatguydan joined
11:04 templaedhel joined
11:04 john__ joined
11:05 Youdaman joined
11:06 LeMike1 joined
11:07 LeMike joined
11:07 notmatt joined
11:09 <superjoe> is there any documentation on what streams 2 is hoping to achieve?
11:09 eckoit joined
11:09 Senji joined
11:09 thatguydan joined
11:10 leoncamel joined
11:10 markwubben joined
11:12 MarkMenard joined
11:12 holzp joined
11:12 harrison_ joined
11:13 <holzp> express3 and jade, for some reason my template blocks are not using pretty : true
11:13 <holzp> resulting in no whitespace
11:13 alek_b joined
11:13 <holzp> hence ugly
11:13 <holzp> anyone else have this prob?
11:13 <holzp> i set pretty in app.locals
11:17 ecthiender joined
11:20 _Renegade joined
11:21 euoia joined
11:21 rcrowley joined
11:22 eblume joined
11:22 tomshreds joined
11:22 maletor joined
11:22 pvankouteren_ joined
11:22 davemo joined
11:23 <eblume> Hey all. I'm trying to have a devDepenency on "mocha" and "chai", but when I run "npm install --dev" it tries to pull in at least 30 packages, maybe more, and errors start popping up all over the place.
11:23 bwinton joined
11:24 <eblume> When I try "npm install -g mocha" and "npm install -g chai" the installs finish very quickly without the extra package nightmare (although with a FEW packages pulled in), BUT they then fail to get included when I require() them
11:24 <eblume> Does anyone know what might be happening?
11:25 ppcano joined
11:26 huskyr joined
11:26 LeMike joined
11:27 dshaw_ joined
11:27 stagas joined
11:27 LeMike1 joined
11:27 manuelbieh_ joined
11:28 zenista joined
11:28 bindr joined
11:28 <holzp> so wierd, the whitespace in my jade blocks is being handled completely different than the whitespace in the layout
11:28 hakunin joined
11:28 <holzp> and pretty doesnt seem to carry over to the blocks
11:28 dcamp joined
11:28 tphummel joined
11:29 eckoit joined
11:29 jergason joined
11:29 ding_ joined
11:30 sashman joined
11:30 TomY joined
11:31 <ansolas> https://github.com/23/resumable.js#readme
11:31 <ansolas> cool stuff
11:31 templaedhe joined
11:31 enr joined
11:31 EyePulp joined
11:32 TomY joined
11:33 <isaacs> o/
11:33 mykul joined
11:33 <nathan7> \o
11:33 tutley joined
11:34 <isaacs> eblume: -g installs are not for require()
11:34 <isaacs> eblume: you need to either a) install the package directly in your project (so it goes into ./node_modules/whatever)
11:34 <eblume> isaacs: fair enough - any idea about why the --dev install is pulling in half the tree?
11:34 <holzp> :( frameworks, when they are good they are time-savers when they arent they are time-wasters
11:34 <isaacs> eblume: or b) use `npm link` to link the global version into the local space.
11:34 <nathan7> eblume: it pulls in devDependencies recursively afaik
11:34 <eblume> Ah, I see.
11:34 <isaacs> eblume: --dev is almost never necessary
11:34 <isaacs> eblume: devDeps will be installed at your top level anywa
11:35 <isaacs> eblume: so you get YOUR devDependencies, but not everyone else's, when you do `npm install`
11:35 <isaacs> eblume: because, presumably, you are developing :)
11:35 <eblume> Er - so what's the idiomatic way to have your project use mocha & chai for testing?
11:35 obazoud joined
11:35 mattgifford joined
11:35 <eblume> Oh wait I think maybe I see now - 'npm install' does MY devDeps
11:35 <isaacs> eblume: list mocha and chai as devDependencies
11:35 <isaacs> eblume: then do `npm install`
11:36 <eblume> Ok. Thanks isaacs!
11:36 <isaacs> eblume: neat trick! `npm install mocha -D` <-- installs mocha, and saves it as a devDependency
11:36 Circlepuller_ joined
11:36 <eblume> Oh that IS a neat trick. It modifies package.json?
11:36 <context> yes
11:36 <isaacs> eblume: then if you wanna get extra fancy, put a `"scripts":{"test":"whatever command makes mocha go"}` in package.json, as well
11:36 <context> its just like magic
11:36 <isaacs> eblume: then run `npm test`
11:37 Circlepuller_ joined
11:37 <eblume> Cool. Thanks guys!
11:37 <context> isaacs: wha! now i think you are just smokin the kool-aid
11:37 <davemo> -D === --save-dev ?
11:37 <isaacs> davemo: yeah
11:37 <davemo> cool, TIL
11:37 eckoit joined
11:37 <* isaacs> cba to type more than one-character flags.
11:37 ppcano_ joined
11:37 aerozeppelin joined
11:37 <davemo> cba?
11:37 <isaacs> -SB is like --save but also adds to bundleDependencies
11:38 <isaacs> that's the "StrongBad operator"
11:38 <davemo> haha
11:38 <isaacs> aka --save --save-bundle
11:38 <eblume> davemo: Can't Be Asked (well, usually not 'Asked', but I don't know the MPAA rating of this channel)
11:38 <isaacs> davemo: can't be assed
11:39 cushman joined
11:39 <davemo> gotcha
11:39 <eblume> Well that one too. ;)
11:39 eblume left
11:39 <holzp> can't be arsed sounds much more sophisticated
11:39 tj joined
11:39 leoncame` joined
11:40 <nathan7> holzp: cannot be anused
11:40 gorsti joined
11:40 rauchg joined
11:40 templaedhel joined
11:40 <holzp> everythign sounds more sophisticated british
11:40 <holzp> loo > can
11:41 <nathan7> hakunin: Indeed C=
11:41 Frippe joined
11:41 Frippe joined
11:41 halfhalo joined
11:42 elsifaka joined
11:42 <davemo> i should really read the NPM documentation, I just kind of learn the pieces i need to in order to get what i want done :P
11:42 pifantastic joined
11:42 <superjoe> isaacs, is there any documentation on what streams 2 is hoping to achieve?
11:43 <superjoe> just curious
11:43 tphummel joined
11:43 holzp joined
11:44 ramitos joined
11:44 jmar777 joined
11:44 icebox joined
11:44 rmichnik joined
11:45 gabrieluk joined
11:45 gabrieluk joined
11:46 mykul_ joined
11:46 holzp joined
11:46 sdudenhofer joined
11:46 harthur joined
11:47 Morkel joined
11:47 holzp joined
11:47 <isaacs> superjoe: https://github.com/isaacs/readable-stream
11:48 octane--_ joined
11:48 josh_k joined
11:49 mynameis joined
11:50 hillct joined
11:51 mykul joined
11:51 ppcano joined
11:52 Morkel joined
11:55 TheJH joined
11:56 <superjoe> thanks
11:56 _n_ joined
11:56 kevwil joined
11:56 jmar777 joined
11:56 <Nasga> hello, i want to setup a tcp thread to read logs, send some comands in nodejs, do you know a module witch do that ?
11:57 larryapplegate joined
11:57 jocafa joined
11:58 <Nasga> or in web with express, why not :)
11:58 JumpLink joined
11:59 slloyd joined
11:59 JumpLink left
11:59 <superjoe> excellent writeup. looking forward to this new API
11:59 broofa joined
12:00 Ico_ joined
12:00 bradgignac joined
12:02 arnedebree joined
12:02 isao joined
12:03 smellynoser joined
12:03 thealphanerd joined
12:04 springmeyer joined
12:05 Zoney joined
12:05 <jetienne> q. is dtrace available on linux ?
12:05 <isao> a. no
12:06 jimmyff joined
12:06 <jetienne> isao: thanks
12:07 bradleymeck joined
12:07 <isao> np
12:07 stisti joined
12:09 <s5fs> Nasga: check out 'net', maybe?
12:10 <s5fs> Nasga: also log.js
12:10 <Nasga> s5fs: will see
12:11 joshontheweb joined
12:11 Topcat joined
12:11 <superjoe> isaacs, at https://github.com/isaacs/readable-stream/blob/master/examples/CAPSLOCKTYPER.JS#L11 where you call String(chunk), how can you be sure that chunk doesn't start in the middle of a multibyte utf8 character?
12:11 ppcano_ joined
12:11 fly-away joined
12:12 <Nasga> s5fs: thx a lot for logjs :) i will try this way with express / socketio for clients
12:12 <isaacs> superjoe: meh. can't.
12:12 <isaacs> superjoe: capslock is anglocentric.
12:12 <s5fs> Nasga: best of luck!
12:12 <isaacs> superjoe: i could do setEncoding('utf8') to be sure, though
12:13 xtianw joined
12:13 <superjoe> isaacs, do it! otherwise people will copy the glitch from the examples into their own code
12:13 bakadesu joined
12:14 thirdknife joined
12:14 <Nasga> s5fs: http://logio.org <- they do that for linux, i just need for my node app :)
12:14 jocafa joined
12:14 <isaacs> superjoe: hm... seems like that doesn't actually work anyway at the moment.
12:14 <isaacs> i must have broken something
12:15 perezd joined
12:15 esundahl joined
12:15 lucabox joined
12:16 <superjoe> isaacs, in node.js current stable, setEncoding("utf8") avoids this problem, correct?
12:16 <superjoe> I've been assuming it does but never tested it
12:16 <isaacs> superjoe: yeah
12:17 dwhittle joined
12:17 r0tha joined
12:17 <superjoe> cool.
12:17 robmorrissey joined
12:18 obazoud joined
12:18 jmar777 joined
12:18 __underscore joined
12:21 ngoldman joined
12:22 lwicks joined
12:23 jmar777 joined
12:23 AlbireoX joined
12:24 mike-d joined
12:25 etcetera joined
12:25 medikoo joined
12:25 joemccann joined
12:26 thomashunter joined
12:26 huskyr joined
12:26 pokoli joined
12:27 booguie joined
12:27 lwicks joined
12:28 _Renegade joined
12:28 DrShoggoth joined
12:29 Franz__ joined
12:29 jpdery joined
12:30 matthewborn joined
12:31 shuaib joined
12:31 kenperkins joined
12:31 thunders_ joined
12:31 adrianlang joined
12:32 estebistec joined
12:34 <Sven_vB> just watching the NodeJS 0.2 -> 0.3 roadmap lecture, about copying strings out of V8 to send them over the net vs. getting a pointer to the string directly. did that work out since then? also, should i try and store static parts of my web templates in Buffers and write them to the socket directly, instead of building up strings and sending them?
12:34 aut0mata joined
12:35 hipsterslapfight joined
12:35 lpin joined
12:35 thirdknife joined
12:36 rauchg joined
12:36 john3909 joined
12:36 <superjoe> Sven_vB, whoa dude.
12:36 <superjoe> you're thinking way too low level
12:38 DonOtreply_ joined
12:39 addisonj joined
12:39 jergason joined
12:40 joemccann joined
12:40 tnorris joined
12:40 dshaw_ joined
12:40 tgriesser joined
12:41 crabdude joined
12:41 hipsterslapfight joined
12:42 Lukewh joined
12:43 briancray joined
12:44 etcetera joined
12:46 john999 joined
12:47 cushman joined
12:47 TooTallNate joined
12:47 <Sven_vB> i'm trying to use node on an embedded device. :)
12:48 <Gottox> like the raspi? :)
12:48 slaskis joined
12:48 <Gottox> 0.8.11 compiles just fine :D
12:49 epiloque joined
12:49 EhevuTov joined
12:49 epiloque joined
12:50 kaspertidemann joined
12:50 JumpLink joined
12:51 nmjesus joined
12:51 <Sven_vB> raspi could be, but i'd prefer to try an anykey0x
12:51 octane--_ joined
12:52 JumpLink left
12:52 pretty_function joined
12:53 Kn|t3 joined
12:54 cgfuh joined
12:54 khrome joined
12:55 choo joined
12:55 <s5fs> Sven_vB: i'm using node on an embedded device too
12:56 schredder joined
12:56 adrianlang joined
12:58 Almindor joined
12:59 paulwe joined
13:00 defunctzombie joined
13:00 jergason joined
13:00 saikat joined
13:01 C0deMaver1ck joined
13:01 mattgifford joined
13:01 Wizek|2 joined
13:02 defunctz_ joined
13:02 brad-work joined
13:03 yoklov joined
13:05 blakmatrix joined
13:06 joshontheweb joined
13:06 jpdery joined
13:06 DonOtreply_ joined
13:07 francisl joined
13:07 _Renegade_ joined
13:08 Yuffster_fun joined
13:09 EhevuTov joined
13:09 bradgignac joined
13:09 <s5fs> Sven_vB: i hadn't seen the anykey0x, looks very interesting. i'm currently targeting beagleboards, not really the same at all haha!
13:09 jpe joined
13:10 yorick joined
13:10 yorick joined
13:10 necolas joined
13:10 DonOtreply joined
13:10 _Renegade joined
13:11 eco_ joined
13:12 esundahl_ joined
13:13 esundahl joined
13:13 tgriesser joined
13:13 xPhase joined
13:14 esundahl joined
13:14 _Renegade joined
13:14 esundahl joined
13:15 esundahl joined
13:15 ppcano_ joined
13:16 SpX joined
13:16 Senji joined
13:17 esundahl_ joined
13:17 stagas joined
13:17 _Renegade_ joined
13:18 esundahl joined
13:19 esundahl joined
13:19 kaspertidemann joined
13:19 robde joined
13:20 esundahl joined
13:20 defunctzombie joined
13:20 <larryapplegate> Looking for someone to help me create a server which may include the node-formidable body parser to serve an IOS client. I will write the IOS client, need to know what it needs to do to match what the server expects.
13:20 khrome joined
13:20 esundahl joined
13:21 ppcano_ joined
13:22 Viehzeug joined
13:22 esundahl joined
13:22 dKc joined
13:23 esundahl joined
13:23 gregpascale joined
13:23 djcoin joined
13:23 chayin joined
13:23 chrisramon joined
13:23 dzajdband joined
13:23 esundahl joined
13:25 harrison_ joined
13:25 langworthy joined
13:25 boutell_ joined
13:26 mauritslamers joined
13:26 ts33kr joined
13:28 <CoverSlide> larryapplegate: http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.2 <<--- with multipart/form-data
13:28 mikedeboer joined
13:29 <CoverSlide> larryapplegate: actually, just read the whole section: http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4
13:29 N3RG4L_ joined
13:29 blevs joined
13:29 <CoverSlide> it covers the basic types of form data that should be parsed by bodyParser
13:29 blueadept joined
13:29 blueadept joined
13:29 esundahl joined
13:30 esundahl joined
13:30 bradleymeck joined
13:31 esundahl_ joined
13:32 ppcano_ joined
13:32 jpdery joined
13:32 bindr joined
13:33 N3RG4L joined
13:34 esundahl joined
13:34 <RushPL> I opened a process with child_process.spawn and when I write to its stdin, the other process does not receive the data .. it seems to get buffered, how to flush it? There is no flush method in process.stdin and I do not want to .end() it
13:34 knirhs joined
13:36 blueadept` joined
13:36 ppcano joined
13:36 joshfinnie joined
13:37 esundahl_ joined
13:38 blueadept joined
13:38 <tnorris> RushPL: are you spawning another node script?
13:38 <RushPL> nope, actually a perl script
13:38 joemccann joined
13:38 <RushPL> and when I do myProcess.stdin.end() it gets the input but also EOF :)
13:39 <RushPL> so it quits
13:39 hillct joined
13:39 alunny joined
13:39 <RushPL> and myProcess.stdin has no flush() :/
13:39 stereosteve joined
13:40 jp232 joined
13:40 Hebo joined
13:40 <RushPL> bbl,I would be glad to to have an answer..
13:40 Kn|t3 joined
13:40 i42n joined
13:41 ppcano_ joined
13:42 jmar777 joined
13:42 <tnorris> RushPL: could you post at least your node script in a pastebin or such?
13:42 pppaul joined
13:44 harthur joined
13:44 charuru left
13:45 larryapplegate joined
13:47 lwicks joined
13:47 jxson joined
13:48 mappum joined
13:49 <larryapplegate> CoverSlide: Thanks!
13:49 zcopley joined
13:50 dgathright joined
13:50 axos411 joined
13:50 Kn|t3 joined
13:51 <tnorris> is there any documentation on what changes are being made in the streams2 branch?
13:51 willwhite joined
13:52 samstefan joined
13:52 bowen199 joined
13:52 <CoverSlide> tnorris: https://github.com/isaacs/readable-stream
13:53 tjmehta joined
13:53 <tnorris> CoverSlide: awesome dude. thanks.
13:53 kevwil joined
13:53 shac joined
13:54 ppcano_ joined
13:54 shac joined
13:55 kevinswiber joined
13:55 Venom_X joined
13:55 carlyle joined
13:55 generali_ joined
13:56 poorman joined
13:56 adrianlang joined
13:56 <rendar> i can't get a thing, i have just read that node do not start manually the event loop, like SomeLib::run(); but why? what advantages this would bring?
13:56 trypwire joined
13:56 stisti joined
13:57 dwhittle joined
13:57 rampr joined
13:57 tgriesser joined
13:57 sgupta joined
13:57 <nathan7> rendar: The event loop is always there
13:58 <nathan7> rendar: Because it's silly to have that as a manual thing on a platform where everything is in the event loop
13:58 shac joined
13:58 exos_ joined
14:01 hipsterslapfight joined
14:01 <tnorris> CoverSlide: whoa, those are significant changes. You know if there is a planned version for integration?
14:02 <rendar> nathan7: hmmm i see
14:02 <rendar> nathan7: so its just for syntax-sugar?
14:02 diegoviola joined
14:02 <CoverSlide> well he says that it will enter legacy mode whenever the "data" event is listened for
14:02 <CoverSlide> so like when piped
14:03 <CoverSlide> and it should be compatible until that's deprecated, which I don't know when that will happen
14:03 <CoverSlide> maybe v0.12
14:04 <tnorris> interesting. thanks.
14:05 kevwil joined
14:06 Franz__ joined
14:08 mykul joined
14:09 jhsto joined
14:10 <Sven_vB> <3 readable-stream
14:10 <purr> Let it be known that Sven_vB hearts readable-stream.
14:10 audreyr joined
14:11 <nathan7> rendar: it's because every node program needs an event loop
14:11 nariyal joined
14:12 jxson joined
14:13 <Sven_vB> rendar, there are only very few things you could do in node that would *not* need an event loop, and most of those are bad things. ;) so, since the majority of programs need an event loop anyway, NodeJS implies that you want one and automagically starts it at "the end" of your main script.
14:13 `3E|DINNER joined
14:13 <Sven_vB> which therefore most often isn't really the end.
14:14 ryanrolds_w joined
14:14 tjholowaychuk joined
14:14 jp232 joined
14:14 knirhs joined
14:15 drewolson joined
14:16 ts33kr joined
14:16 <drewolson> hey all, i'm using bluepill to monitor and daemonize a node.js process. when the process is daemonized by bluepill, my calls to an external program launched using child_process fail to return any data. any idea what might be happening here (obscure, i know)?
14:16 tjmehta joined
14:17 <tnorris> drewolson: is the child process returning data to the node process via stdin?
14:17 Sri19 joined
14:17 <drewolson> tnorris: i'm sending data to the process via stdin and receiving data via stdout
14:18 <drewolson> tnorris: from the child_process stream
14:18 panahi joined
14:18 lyaunzbe joined
14:18 <tnorris> yeah, so something like `cp.stdin.write(data)` and `cp.stdout.on('data', function() {})`?
14:18 <drewolson> tnorris: yes, exactly
14:19 harbhub joined
14:19 aut0mata joined
14:19 <tnorris> can you run the script outside of bluepill to see if anything is being returned?
14:20 chrisramon joined
14:20 <drewolson> tnorris: i can and did, the data is being returned when the script is not launched via bluepill
14:20 simenbrekken joined
14:20 <drewolson> tnorris: the rest of the app works when launched via bluepill up to the point of the requirement on external data, then it just hangs
14:22 <drewolson> tnorris: not sure if this matters, but i'm actually piping the stdout of the child process through https://github.com/dodo/node-bufferstream
14:22 squeakytoy joined
14:22 <tnorris> drewolson: hm, ok. do you think bluepill is force redirecting cp.stdout? your js sounds fine.
14:22 <squeakytoy> Mine? http://sphotos-f.ak.fbcdn.net/hphotos-ak-ash3/525919_4799215144002_877027741_n.jpg
14:22 <drewolson> tnorris: well, i do redirect the stdout of the node process to a log file via bluepill, should that effect the child process?
14:22 litenull1 joined
14:23 <context> squeakytoy: hahahaha
14:23 <drewolson> tnorris: now that i'm thinking it, that must be the problem
14:23 <squeakytoy> context, its good isnt :P
14:23 <squeakytoy> had to log into irc just to post a funny picture
14:23 <tnorris> drewolson: may want to include the line `process.stdout.pipe(process.stdin)`
14:24 <tnorris> actually, nevermind that.
14:24 <drewolson> tnorris: ok, was just about the ask
14:24 <drewolson> let me try removing the stdout redirection, one sec
14:24 jpdery joined
14:26 <drewolson> tnorris: still no dice
14:27 <TooTallNate> Benvie: ref-bitfield looks nice!
14:27 stisti joined
14:27 willwhite joined
14:28 kennethkoontz joined
14:28 <tnorris> drewolson: for debugging, can you try not using bufferstream, and process the write event directly: `cp.stdout.on('data', function() {})`
14:28 triptec joined
14:28 <drewolson> tnorris: yes, one sec
14:29 pritambaral joined
14:29 ZorgHCS joined
14:29 bradgignac joined
14:29 iondrip joined
14:29 garciawebdev joined
14:30 <tnorris> drewolson: heading to lunch, be back soon.
14:30 <drewolson> tnorris: still not working, thanks for the help so far, enjoy your lunch
14:31 HacDan joined
14:33 poorman joined
14:34 DonOtreply joined
14:35 Aartsie joined
14:37 lwicks joined
14:38 halfhalo joined
14:38 JumpLink joined
14:38 JumpLink left
14:38 thunderstrike joined
14:38 taky joined
14:41 <Benvie> TooTallNate: yeah it shaped up quickly. I need to finish the tests but it's otherwise near completion I think
14:42 <TooTallNate> Benvie: it'll be cool to be able to pass an Object with true/false flags to an ffi function that has an "int flags" arg :)
14:42 <TooTallNate> Benvie: i'll probably help with the tests
14:43 <Benvie> yeah as I have it now it handles either an object or you can still set the raw number
14:44 kaspertidemann joined
14:44 squeakytoy joined
14:45 <Benvie> might be worth providing a built into function that outputs a plain object with all the properties filled out on the object. I have it in the test file currently but might be good to at like as a prototype method or Constructor function or somethjing
14:45 taky joined
14:45 davemo joined
14:46 Wa joined
14:46 blup joined
14:48 disnet joined
14:49 romainneutron joined
14:49 stevegill joined
14:49 <TooTallNate> Benvie: i called it toObject() in ref-struct
14:49 <Benvie> oh I missed that!
14:49 <TooTallNate> Benvie: and then aliased that for toJSON() and inspect()
14:50 <Benvie> I'll add that then! Wanted to try and stay as close to ref-array and ref-struct as possible but didn't see that for some reason =D
14:50 pixie79 joined
14:51 Sam-T joined
14:51 ralphholzmann joined
14:51 shanlar joined
14:51 <drewolson> tnorris: i figured out the problem, the app i was spawning with child_process was not in the path of the user running the node app on the server, sorry for the red herring, thanks for the help
14:52 kazupon joined
14:52 Tobsn joined
14:52 defunctzombie joined
14:56 timeturn joined
14:56 varmose joined
14:57 graeme_f joined
14:57 andrehjr joined
14:57 Aartsie joined
14:58 tjholowaychuk joined
14:58 jelscript joined
15:00 tilgovi joined
15:01 drewolson left
15:02 heavysixer joined
15:02 geNAZt joined
15:02 <geNAZt> hi
15:03 V1 joined
15:04 <geNAZt> is here someone who tried to "block" in an nodejs thread ?
15:04 <larryapplegate> Still looking for help with node-formidable or express with multi-part form data
15:04 <larryapplegate> i am able to run either, and feed it images from the browser
15:05 <larryapplegate> but I want to find out exactly what the browser is sending, so I can duplicate it in my IOS client
15:05 Usse joined
15:06 harthur joined
15:06 pokoli joined
15:06 <geNAZt> well you have the socket from the http server ?
15:06 <geNAZt> and every request that comes in gets trough it
15:06 derpops joined
15:07 <geNAZt> so you can catch the whole data send in one request
15:07 <larryapplegate> i am new to node and http, so don't know how to do that
15:08 sorenso joined
15:08 fivetanley_ joined
15:09 <geNAZt> http://borntoprogram.blogspot.de/2011/07/reaktiv-im-web-mit-nodejsexpressjssocke.html
15:10 <geNAZt> something like that should work
15:10 jmoyers joined
15:11 lwicks joined
15:11 <larryapplegate> my German isn't good enough, though I did take a couple of courses long ago
15:15 analphabet joined
15:16 tchopper_ joined
15:17 mon joined
15:18 romainneutron joined
15:18 <geNAZt> nobody got any idea how i could wait for an event
15:18 <analphabet> Wait for an event?
15:18 <analphabet> like block until a certain event is fired?
15:18 trypwire joined
15:19 <geNAZt> nah
15:19 <geNAZt> i have 2 node instances
15:19 <geNAZt> and i have a messagesystem between them
15:19 <geNAZt> the one is a storage
15:19 <geNAZt> the other a websocket server, and i want the websocket server to wait for data from the storage
15:20 <geNAZt> but not to block the complete thread / process
15:20 <analphabet> Shouldn't the message system allow this?
15:20 <geNAZt> it works like so:
15:21 <geNAZt> websocket -> getSession -> storage -> search for session -> return session -> websocket
15:21 <geNAZt> but the websocket should wait, till the answer event from the storage has arrived
15:22 <analphabet> geNAZt: How do you do ipc?
15:22 notmatt joined
15:22 <geNAZt> via std
15:23 Motest003 joined
15:23 <analphabet> so your websocket node.js listens on stdin, right?
15:23 jergason joined
15:23 <geNAZt> y
15:23 kazupon joined
15:24 colinclark joined
15:24 <analphabet> Why not try process.stdin.on('data', function(buf) { console.log(buf) })
15:25 <geNAZt> i have
15:25 <geNAZt> the problem is:
15:25 <janmower> does anyone here package nodejs as rpm?
15:26 <geNAZt> i stdout from the websocket process to the messagesystem, it routes it to the storage stdin, it searches, returns to stdout into messagesystem, and the messagesystem to the stdin to websocket
15:26 <geNAZt> but the function is run out
15:26 <geNAZt> without returnvalue
15:26 ashnur joined
15:27 <analphabet> geNAZt: ok, i think i got it...
15:27 <geNAZt> http://pastebin.com/rpHnKHHJ
15:27 <geNAZt> that is what i have
15:27 medikoo_ joined
15:27 <geNAZt> i will execute a function in an other spawn
15:27 <geNAZt> and the return value for that should be that in the other thread
15:27 <analphabet> geNAZt: I was right..
15:27 <analphabet> geNAZt: no, no, no, no... you never sleep.usleep( 10 );
15:28 <geNAZt> y thats the problem
15:28 <holzp> I had to give up on socket.io for a project, it was juet getting too complex
15:28 <holzp> sockets kept dropping/going missing/stalling
15:28 astropirate joined
15:28 astropirate joined
15:28 <analphabet> geNAZt: didn't you hear ryan, say it never sleeps
15:28 <geNAZt> i know
15:28 <geNAZt> i dont want to sleep
15:28 andrehjr joined
15:28 <analphabet> :)
15:29 <geNAZt> i want it to wait for a change on an variable
15:29 <geNAZt> like an watcher, that emits, if the variable changes
15:29 <geNAZt> but that doenst break the scope
15:29 jaha joined
15:29 version2beta joined
15:29 <analphabet> geNAZt: you have to make your rpc function async
15:29 <geNAZt> i cant
15:30 <geNAZt> the functions that need the data must be synced with this data
15:30 <analphabet> so, it can be called like rpc(bla, bla, function(result) { /* deal with the result */})
15:30 <geNAZt> y but how should i do something like
15:30 <geNAZt> a + b = c
15:30 <geNAZt> where a and b come from storage
15:30 <geNAZt> there will ever be a difference for the value a and b
15:31 <analphabet> geNAZt: you nest it.
15:31 AaronMT joined
15:31 <analphabet> rpc(bla, function(a) { rpc(blu, function(b) { /* deal with the results */}) })
15:31 hackband joined
15:31 <geNAZt> but for that i have to ask the storage for a, wait for it, ask for b, wait for it, calculate
15:32 <analphabet> or, use the "async" module's async.parallel([fetchA, fetchB, callback])
15:32 <geNAZt> ok
15:33 <geNAZt> then i have to rewrite my websocket -_- :D
15:33 <geNAZt> to make it full async :D
15:33 <geNAZt> thanks
15:33 mykul joined
15:33 joshontheweb joined
15:33 <analphabet> yea, only async will make thing non-blocking :)
15:33 <analphabet> you're welcome
15:33 briancray joined
15:33 <Killswitch> MARCO
15:33 EweR_ joined
15:33 <geNAZt> y but sometimes i want to "block" :D
15:34 <analphabet> geNAZt: why?
15:34 <geNAZt> to wait for some events
15:34 dzajdband joined
15:34 <geNAZt> and not to have a callback for anything
15:34 <analphabet> geNAZt: to have it easier you mean
15:34 <analphabet> :)
15:34 <geNAZt> y :D
15:34 <geNAZt> im lazy
15:35 <geNAZt> :O
15:35 <analphabet> geNAZt: async module: https://github.com/caolan/async
15:35 <geNAZt> thx
15:35 <analphabet> geNAZt: there's some addon that allows you to do this
15:35 EweR__ joined
15:35 <analphabet> https://github.com/laverdet/node-fibers
15:36 <analphabet> interesting, but I never used it in production...
15:36 kennethkoontz joined
15:36 <analphabet> If only ecmascript had python like generators, then we could implement coroutines very easily
15:36 ailmake\dir\etcp joined
15:36 <geNAZt> that seems to do what i want
15:36 <analphabet> geNAZt: :)
15:37 Danielss89 left
15:37 <analphabet> geNAZt: after looking at some more complex examples, I gave up on it... :)
15:38 <geNAZt> y but it does that what i wanted
15:38 ailmake\dir\etcp left
15:38 <geNAZt> it stores a function
15:38 <geNAZt> and u dont have to block the process to wait for something
15:39 <analphabet> geNAZt: yeah, but you have to compile it, I think
15:39 <geNAZt> y
15:39 <geNAZt> first i will try to make all things async
15:39 <analphabet> but if it suits you, go ahead.
15:39 <geNAZt> its the best way i think
15:39 <geNAZt> nodejs the event catapult :D
15:40 <analphabet> >:)
15:40 jbueza joined
15:40 tjmehta joined
15:40 <analphabet> Can someone tell me, why the authors (isaacs, more or less et al, i think) of npm-www chose to use chouchDB?
15:41 <analphabet> I have to make a similar decision, and it would be cool to hear the pros and cons you've been considering...
15:42 <geNAZt> http://pastebin.com/QULus4g0
15:42 <geNAZt> so
15:42 <geNAZt> that should do better :D
15:43 <analphabet> geNAZt: yea, but I'd store the cb somewhere and simply call it in the listener of stdin, when the data is received on stdin, but
15:44 DonOtreply left
15:44 <geNAZt> hmm maybe
15:44 blueadept joined
15:44 blueadept joined
15:44 wdent joined
15:45 Franz_ joined
15:45 <larryapplegate> analphabet: i think it is probably the replication capability for scaling
15:45 defunctzombie joined
15:46 <analphabet> larryapplegate: I've been thinkin about whether replication is actually useful for scaling..
15:46 blueadept joined
15:46 blueadept joined
15:47 <larryapplegate> for mobile devices apps are keeping a local copy of the database for fast access - when the db can be limited to what is need for each user
15:47 DonOtreply joined
15:47 blueadept joined
15:47 blueadept joined
15:47 DonOtreply left
15:47 <larryapplegate> then the problem becomes resolving update conflicts when the db is replicated
15:47 <larryapplegate> at least couch has a mechanism for that
15:48 DonOtreply joined
15:48 _Renegade joined
15:49 <analphabet> yea, but you don't need that for npm-ww, I'd think, do you?
15:50 <larryapplegate> i am new to node, trying to figure it all out
15:50 <analphabet> there are no mobile app, and those wouldn't want to store the whole npm registry on their disc
15:50 Leo_ joined
15:50 ts33kr joined
15:51 DonOtreply left
15:51 <larryapplegate> for our iPad app, we first tried ruby, gave up and then went to couch. Then when parse.com appeared, it looked like a way to have someone else take care of the server side, which we were not experts in.
15:51 <Leo_> hello, can anyone recommend me a good saas provider with node support?
15:51 mscdex joined
15:52 C0deMaver1ck joined
15:52 C0deMaver1ck joined
15:52 <larryapplegate> but now we are disappointed in parse for both difficulty of doing complex things and response times.
15:52 parallel joined
15:54 <analphabet> larryapplegate: :)
15:54 Hebo joined
15:54 <larryapplegate> i wish i had found node earlier
15:55 <analphabet> larryapplegate: I'm torn between mongo and couch, actually
15:55 <larryapplegate> parse uses mongo, and i hated parse's object size limitation of about 100k
15:55 <larryapplegate> which i don't know if it was because of mongo or not
15:56 kazupon joined
15:56 <analphabet> larryapplegate: mh.
15:56 rcrowley joined
15:57 <larryapplegate> or it may have been so they didn't block the threads for very long
15:57 <larryapplegate> our couch implementation was entirely async
15:58 frasnyc left
15:58 <larryapplegate> but we were missing all the good things that node, npm, and express bring
15:58 sardavend joined
15:58 C0deMaver1ck joined
15:59 erichynds joined
16:00 <larryapplegate> i'm still looking for help with the node server for our iPad app
16:00 alucardX joined
16:01 prachi joined
16:01 <tnorris> so if I understand readable-stream correctly, `readable._read = fn` is more or less the current equivalent of listening for the 'data' event?
16:02 parallel left
16:02 dRiN joined
16:02 taky joined
16:03 alek_b_ joined
16:05 Kn|t3 joined
16:06 Qalqi joined
16:06 <superjoe> tnorris, you're thinking about it backwards
16:07 <superjoe> _read is for if you are *implementing* a readable stream
16:07 broofa joined
16:07 <superjoe> read() immediately returns the buffer if you are using the read stream
16:07 <superjoe> or null if you need to wait for an event
16:08 heavysixer joined
16:10 <tnorris> superjoe: thanks. just spent the last 2 weeks really understanding the current Stream implementation, and today just realized the stream2 branch was being developed.
16:12 <superjoe> tnorris, understanding the current stream implementation is still valuable
16:12 zimba70 joined
16:12 <superjoe> tnorris, I feel like it helps you understand the new one
16:13 taky joined
16:14 tomb_ joined
16:17 Slade- joined
16:18 wltsmrz joined
16:18 jxie joined
16:18 BronzeByte joined
16:18 taky1 joined
16:19 schemula joined
16:20 <tnorris> superjoe: definitely. just taking me a bit to wrap my head around the new architecture. lack of sleep and caffeine isn't helping much either.
16:21 <superjoe> tnorris, don't worry, it's still going to be a while before it comes out in stable
16:22 <tnorris> superjoe: cool. I was just amazed the first time I realized how many other parts of node rely on streams. now just want to stay on top of that.
16:23 <EhevuTov> tnorris, I just started working with streams as well.
16:23 <superjoe> streams are a pretty killer feature in node
16:23 Marcial joined
16:23 LeMike joined
16:23 ErvisTusha joined
16:24 <superjoe> and the new Transform class will make them super easy to write correctly
16:24 <EhevuTov> my current problem, is that I don't know how to get socket.io to emit data from a stream. I'm having what seems to be a scope issue
16:25 pandeiro joined
16:25 <tnorris> superjoe: seriously. awesome abstraction when working with multiple io types (stdio, tcp, etc.)
16:26 alunny joined
16:26 <EhevuTov> I have this uncomfortably deep nested event loop where socket.io.on('connection') creates a read stream from event-stream.pipeline() and on pipeline.on('data') i want it to emit socket.emit('data'). I can only get socket.io to broadcast the data since it's global,instead of the single client socket
16:26 <nathan7> Closures \o/
16:26 <EhevuTov> anyone know of example code to show me how to do this?
16:26 `3rdEden joined
16:26 <EhevuTov> nathan7, is that my issue?
16:27 <nathan7> EhevuTov: You can use a closure
16:27 <nathan7> EhevuTov: and keep your socket that way
16:27 taky1 left
16:27 <EhevuTov> I thought so, but I don't know closures well enough to apply it to my situation 0_o
16:28 Goodie joined
16:28 kazupon joined
16:29 FIQ joined
16:29 <EhevuTov> nathan7, do you have example code where you're doing something similar?
16:29 jasonkuhrt joined
16:29 <jmoyers> paste your code EhevuTov
16:29 <jmoyers> gist
16:29 <jmoyers> or whatever
16:29 <nathan7> EhevuTov: Define your handler in your other handler
16:29 <jmoyers> can help, but don't understand your structures.
16:29 <EhevuTov> but it's so ugly :-) I will though
16:29 <nathan7> EhevuTov: Talk is cheap - show us the code C=
16:29 <jmoyers> well, thats kind of the point, right ;-)?
16:30 <s5fs> EhevuTov: broken code usually is ;-)
16:30 Ramone joined
16:31 <EhevuTov> nathan7, jmoyers http://pastie.org/4916714
16:31 <EhevuTov> it starts around like 93
16:31 <EhevuTov> actually, I'm going to paste a gist, in case you want to edit it, etc.
16:31 <nathan7> Excellent
16:32 jbueza_ joined
16:32 <nathan7> EhevuTov: okay
16:32 <EhevuTov> https://gist.github.com/3842198
16:32 bradleymeck joined
16:33 <nathan7> I'm curious why ZeroMQ
16:33 <EhevuTov> I'm still learning scope of callbacks, closures, etc. I'm hoping once I learn how to fix this problem, I'll now more about it
16:33 <nathan7> and not Faye or something
16:33 <jmoyers> EhevuTov so your problem is you want to send to a single client?
16:34 <jmoyers> EhevuTov because if thats the case, there are two ways
16:34 <jmoyers> currying, and funciton.bind
16:34 <EhevuTov> jmoyers, correct. I'm currently broadcasting because it's got global scope and my `socket` isn't in the scope, so it's undefined in my CDR function and can't do an .emit()
16:35 <nathan7> jmoyers: function.bind is currying
16:35 <nathan7> jmoyers: with the annoying extra of fucking with your this
16:35 <jmoyers> currying, you can have sendCDR take a socket, then return a function which will send a message on that particular socket
16:35 <EhevuTov> nathan7, the zeroMQ was old stuff I from an older program I forked this from
16:35 <jmoyers> no, bind is FOR fucking with this
16:35 <jmoyers> you can implement currying with bind
16:35 <jmoyers> but something like...
16:35 <nathan7> .bind(null,blah,blah)
16:36 <EhevuTov> first time I heard of currying
16:37 <nathan7> EhevuTov: currying is simple and very powerful
16:37 futjikato joined
16:37 <nathan7> Say I have function add(a,b){ return a+b; }
16:37 <thl0> I used https://github.com/substack/node-ap for currying - worked great for me
16:37 <nathan7> I can do this: var addTwo=add.bind(null,2);
16:37 <jmoyers> EhevuTov https://gist.github.com/3842232
16:37 <Benvie> partial is more useful for JS though
16:37 <jmoyers> you don't need special shit to do currying or partials
16:38 <nathan7> >> function add(a,b){ return a+b; }; var addTwo=add.bind(null,2); addTwo(10);
16:38 <purr> nathan7: (number) 12
16:38 <jmoyers> bind or returning functions is plenty good enough
16:38 foldedcat joined
16:39 <nathan7> okay, ap is cool
16:40 onats joined
16:40 <EhevuTov> jmoyers, I tried that before and am getting a different error (didn't know how to interpret it though): /Users/james/projects/tekno/netQwikFilter/node_modules/socket.io/lib/parser.js:75
16:40 <EhevuTov> data = JSON.stringify(ev);
16:41 <jmoyers> uh
16:41 <jmoyers> what is in your data object?
16:41 samstefan joined
16:41 <jmoyers> when you dump it?
16:41 <jmoyers> that sounds to me like your event stream is not emitting something proper
16:41 addisonj joined
16:42 BronzeByte joined
16:42 <EhevuTov> hrm, yeah, let me debug a couple steps real quick
16:43 josh-k joined
16:43 _Renegade joined
16:43 larryapplegate joined
16:43 <EhevuTov> jmoyers, socket type is still 'undefined'. Let me double check your diffs
16:44 maletor joined
16:46 <thl0> nathan7: this seems simpler - function addTwo (a) { return function () { add(2, a) }; }
16:46 <thl0> nathan7: no bind needed
16:46 <EhevuTov> you can't see diffs of gists?
16:46 <nathan7> thl0: I think .bind(null,2); is a bit shorter
16:46 <nathan7> thl0: and a bit clearer
16:47 <EhevuTov> jmoyers, yeah, I'm pretty sure I made only the two major changes you made. Still coming through as 'undefined'
16:47 <jmoyers> simplify
16:47 <jmoyers> since that should work
16:47 <jmoyers> where is socket undefined?
16:47 <jmoyers> inside sendCDR or somewhere else?
16:48 <thl0> nathan7: not if you try to explain currying
16:48 lyaunzbe joined
16:48 <jmoyers> well, to be fair
16:48 bubbles10101 joined
16:48 <thl0> nathan7: in general though I agree
16:48 <jmoyers> usually when you go start to read
16:48 <EhevuTov> jmoyers, oh, hold on. You're passing the function. I didn't make that change?let's see...
16:48 <jmoyers> you see currying, partial application etc -- you learn the function return stuff, then you learn apply and call and bind etc
16:49 <jmoyers> then you pick up a mind melting substack library and go a bit further, i guess
16:49 Venom_X_ joined
16:49 <jmoyers> i've never gone that route though ;-)
16:49 <EhevuTov> what is that technique in JS called, where you return a func?
16:49 <EhevuTov> maybe there isn't one
16:49 <gkatsev> first-class functions?
16:50 <gkatsev> there is no name to it.
16:50 <nathan7> thl0: err, wait
16:50 <gkatsev> maybe closure creation would be most suited?
16:50 <nathan7> thl0: why are you returning a function?
16:50 <jmoyers> no, that specific technique I'm using
16:50 <jmoyers> is currying
16:50 <jmoyers> returning a function has no name, functions are first class ;-)
16:50 <jmoyers> nathan7 it has the exact same effect
16:50 <thl0> nathan7: just try it
16:51 <nathan7> >> function addTwo (a) { return function () { add(2, a) }; }; addTwo(10);
16:51 <purr> nathan7: function () { add(2, a) }
16:51 <thl0> it returns a function that when invoked with an arg adds two to it
16:51 <nathan7> I get a function back.
16:51 <nathan7> thl0: Yes, that's silly
16:51 <thl0> addTwo(10)()
16:51 <nathan7> thl0: I expect addTwo to be a function that returns a number
16:51 <EhevuTov> oh snap! o/\o to jmoyers
16:51 <gkatsev> -g ben alman partial application
16:51 <purr> gkatsev: Ben Alman » Partial Application in JavaScript 2<http://benalman.com/news/2012/09/partial-application-in-javascript/>
16:51 <EhevuTov> thank you got it working
16:51 <jmoyers> excellent
16:52 <thl0> sorry maybe not exact - didn't have time to actually test it, but something along those lines
16:52 <jmoyers> now go look up partial function application and currying, then bind, apply, call ;-)!
16:52 <gkatsev> ^^ good article about currying and partial application
16:52 <nathan7> >> function add(a,b){ return a+b; }; function adder(a){ return function(b){ return add(a,b); }; }; var addTwo=adder(2); addTwo(10);
16:52 <purr> nathan7: (number) 12
16:52 <nathan7> that's equivalent to
16:52 <gkatsev> currying itself is kind of useless in js, but partial application isn't
16:52 <gkatsev> (they aren't the same thing, btw)
16:52 <nathan7> >> function add(a,b); var addTwo=adder.bind(null,2); addTwo(10);
16:52 <purr> nathan7: SyntaxError: Unexpected token ;
16:52 <nathan7> err
16:52 <jmoyers> it… isn't useless at all
16:52 <EhevuTov> jmoyers, bind apply and call being seperate functions?
16:52 <nathan7> >> function add(a,b){ return a+b; }; var addTwo=adder.bind(null,2); addTwo(10);
16:52 <purr> nathan7: ReferenceError: adder is not defined
16:53 <jmoyers> yes, they are function prototype methods
16:53 <nathan7> ..well, you get what I mean
16:53 <EhevuTov> nathan7, is that for me?
16:53 lwicks joined
16:53 harbhub joined
16:53 <EhevuTov> jmoyers, thank you so much. I don't fully understand why we had to do that, but I'll study this. thanks
16:54 athenot joined
16:54 <jmoyers> yeah… the first time you try and use a loop and have an async function call who's return value depends on the value of i… you'll get it, or die trying ;P
16:54 <nathan7> EhevuTov: not specifically
16:56 stevegill joined
16:56 chovy joined
16:56 <chovy> is there a guide i should follow somewhere for publishing an npmjs package?
16:57 taky joined
16:57 <* jmoyers> watches the Blue Angels
16:57 jp232 joined
16:58 arnedebree joined
16:58 tjmehta joined
16:59 addisonj joined
17:00 No9 joined
17:00 <chovy> nice
17:01 timeturn joined
17:01 kazupon joined
17:01 dgathright joined
17:01 isao joined
17:02 joshontheweb joined
17:03 crewmoss joined
17:04 audreyr joined
17:06 Goodie2 joined
17:07 lwicks joined
17:07 jzacsh joined
17:07 jzacsh joined
17:08 Taar779_w left
17:08 lwicks1 joined
17:09 bezalel joined
17:10 ilyam joined
17:10 <panahi> anyone know about Riak in node?
17:10 Killswitch joined
17:11 <jmoyers> i know some.
17:11 isao left
17:11 graeme_f joined
17:12 Frippe joined
17:12 Frippe joined
17:13 basemath joined
17:14 mon left
17:15 tgriesser joined
17:15 joaojeronimo joined
17:15 timeturn joined
17:15 basemath left
17:16 hellopat_ joined
17:16 yoklov joined
17:17 <holzp> in express, is there a means to change the default hostname for responses? like res.redirect('/whatever') from using localhost if its on localhost? setting it universally so its overridden to a different prefix?
17:17 kaspertidemann joined
17:17 <therealkoopa> How would you recommend finding millions of items in a database (mongo in thise case) and looping over each one, doing some magic. Of course a loop is blocking by default. Would you use an async loop?
17:17 timeturn joined
17:18 jbueza joined
17:19 EhevuTov joined
17:19 broofa joined
17:20 <context> is there anything like rails rumble for node
17:20 timeturn_ joined
17:20 <context> ahh node knockout
17:20 rborg joined
17:21 <rborg> how are y'all detecting undefined locals in an express view?
17:21 crabdude joined
17:21 Frippe joined
17:22 <etcetera> hmm, thinking about sticking thumb shifters on this road bike drop bar.
17:22 <therealkoopa> rborg: You could do a typeof
17:24 Circlepuller__ joined
17:24 barneybook_work joined
17:24 Circlepuller__ joined
17:25 shalotelli joined
17:25 Nami-Doc joined
17:26 <janmower> so if anyone's interested
17:26 <janmower> and anyone has a better solution
17:26 <janmower> to spawning a node server process as a different user, disconnecting, and keeping it's pid
17:27 <nathan7> janmower: you mean setuid?
17:27 <nathan7> janmower: http://nodejs.org/api/process.html#process_process_setuid_id
17:28 <janmower> i want to spawn /usr/local/bin/node as nobody
17:28 <janmower> not fire /usr/local/bin/node as root and then reset priv
17:29 <s5fs> janmower: i'm using authbind, not sure if that would work for you
17:29 <janmower> i'm running a few services i can't change source for
17:30 <nathan7> ah, LD_PRELOAD hackery
17:30 MarkMenard joined
17:30 graeme_f joined
17:30 <janmower> not even. some deep unix shell hackery
17:30 No9 joined
17:30 <janmower> runuser -s /bin/bash $USER -c ulimit -S -c 0 >/dev/null 2>&1 ; npm start &> /dev/null &
17:30 topaxi joined
17:31 <janmower> so yea someone should work on that
17:31 willwhite joined
17:31 <janmower> that was pretty weird to figure out
17:31 poorman joined
17:31 <janmower> and fairly common use case if you have a bunch of different priv services
17:32 <tnorris> anyone know of a good tool to check the security of a web facing node app? tools like skipfish seem lacking.
17:32 kaspertidemann joined
17:32 shama joined
17:33 <nathan7> janmower: authbind is LD_PRELOAD hackery
17:33 <janmower> oh really? i should look into that perhaps
17:33 kazupon joined
17:34 andrehjr joined
17:35 <janmower> yea except i want to partition services and even though starting some things on ports below 1024 is helpful, it's only half the story
17:35 samstefan joined
17:35 gbhatnag joined
17:36 <Nami-Doc> Hello - this may sound like a dumb question, but a friend is encoutering a problem with my code i'm not encountering
17:37 taky1 joined
17:37 <Nami-Doc> (with stylus) he gets "Error: Cannot find module 'debug'"
17:37 <gbhatnag> hi all -- looking for logging support in node/express where I can set various levels (i.e. debug, info, warning, etc.) - know of any modules I could use? Doesn't seem like express.logger() supports this and it's surprisingly hard to find via google...
17:37 <jmoyers> gbhatnag winston is one such
17:37 <jmoyers> there are plenty out there
17:38 coolnalu left
17:38 davemo joined
17:38 <gbhatnag> cool thanks, jmoyers - winston seems to be best of breed right now?
17:38 <jmoyers> gbhatnag loggers are small, so there are lots of alternatives...
17:38 <jmoyers> npm search log
17:38 larryapplegate joined
17:38 <gbhatnag> gotcha
17:39 <jmoyers> winston is perhaps the most well known, since the nodejitsu guys support it and evangelize.
17:40 defunctzombie joined
17:41 <gbhatnag> awesome, thanks
17:41 andrehjr joined
17:41 overra joined
17:41 overra joined
17:42 <Nami-Doc> he's got the exact same files as me, so I don't get why node can't find the module.
17:43 `3rdEden joined
17:43 <jmoyers> Nami-Doc stylus depends on debug
17:43 <jmoyers> he needs to run npm install
17:43 <Nami-Doc> he did so, didn't changed anything :(
17:44 <tjholowaychuk> rm -fr node_modules
17:44 <tjholowaychuk> npm cache clear
17:44 <tjholowaychuk> and try again
17:44 joshfinnie joined
17:45 <Nami-Doc> I'll try that
17:47 kennethkoontz joined
17:47 jasonkuhrt joined
17:48 <tnorris> I must be missing something obvious, but why when I `.listen(<port#>, '::')` does node respond on ipv4 and ipv6 (e.g. 127.0.0.1/::1)?
17:50 Killswitch joined
17:50 <Nami-Doc> tjholowaychuk: thanks guy !
17:50 AlbireoX joined
17:52 duc1199 joined
17:54 larryapplegate joined
17:56 jpdery joined
17:56 \stro joined
17:58 gabrieluk joined
17:58 gabrieluk joined
17:58 hillct joined
17:59 mappum joined
17:59 jmar777 joined
18:00 chrisjaure left
18:03 duc1199 joined
18:04 taky joined
18:04 niteria joined
18:04 Leo_ joined
18:04 timmywil joined
18:05 markwubben joined
18:05 <Leo_> anyone using appfog?
18:05 Fwny joined
18:05 <niteria> ... why do people use nextTick to solve race conditions?
18:05 yoklov joined
18:06 taky1 joined
18:06 <niteria> and by solve I mean 'solve'
18:06 kazupon joined
18:06 <jmoyers> uh, they don't or shouldn't
18:06 <jmoyers> but occasionally with the browser, for instance, you do need to let the stack unwind
18:07 <jmoyers> only in certain cases though, for instance after a paste event, reading an input
18:07 <jmoyers> you need a setTimeout(handler,0) to get the right value
18:08 <niteria> unwinding the stack is good, I'm not saying nextTick shouldn't be there, I just don't understand why people think it helps with race conditions
18:08 <jmoyers> you'll have to give an example.
18:09 <jmoyers> if people are using as an equivalent to delay, thats just plain wrong.
18:09 <niteria> I'm reading http://howtonode.org/understanding-process-next-tick
18:09 <niteria> last section for example
18:09 joshthecoder joined
18:09 <niteria> 'When emitting events'
18:10 <jmoyers> thats a pretty wonky example
18:11 <jmoyers> you'll miss the first data event too
18:11 <niteria> yeah
18:11 <jmoyers> but thats true with streams, you need to be careful about when to attach listeners and when you call resume in general
18:11 <jmoyers> but thats kind of the point.
18:12 <jmoyers> niteria look at the comments
18:12 <jmoyers> people are crapping on that article, with good reason
18:12 codingstream joined
18:12 <niteria> and 'Keeping callbacks truly async'
18:13 FIQ joined
18:13 <jmoyers> well, there is a use case
18:13 <jmoyers> where if a function could result in either synch or asynch
18:13 <jmoyers> you might want to attach the synch cb return to nextTick so behavior is well understood
18:14 <niteria> it looks like it assumes the programmer shouldn't care about evaluation order
18:14 ashnur joined
18:14 <niteria> I think that example code is sloppy
18:14 <niteria> var client = net.connect(8124, function() { ...
18:15 ryanfitz joined
18:16 <niteria> this could be easily solved by first creating the client and then connecting
18:16 <jmoyers> yes, but
18:16 <jmoyers> its pretty common in flow control to normalize optionally asynch things into nextTick
18:17 <jmoyers> check out use on async.nextTick in caolan/async
18:17 <jmoyers> but generally, thats a pretty damn nuanced use.
18:17 <jmoyers> doesn't come up all that often in my experienced.
18:17 <jmoyers> *
18:18 jxson joined
18:19 jdeibele joined
18:19 DonOtreply joined
18:19 ctwiz joined
18:19 <Almindor> when using passport/express/mongoose store, who sets the "user" login property to the request?
18:20 <janmower> hey i have another question for the node luminaries: why spawn npm from #!/usr/local/bin/node ? why not #!/usr/bin/env node ?
18:20 <Almindor> I'm getting a successful login but when req.isAuthenticated() is called, there's not user property set and I can't figure out how it's supposed to be working
18:20 <holzp> passport sets it but you create it
18:20 <holzp> ive been messing with just that all day!
18:20 <janmower> because my dependency walker for my os
18:21 <jmoyers> janmower no reason
18:21 <jmoyers> env is better.
18:21 <janmower> really hates that
18:21 <Almindor> holzp: when does it set it?
18:21 <janmower> when i walk dependencies for all this node stuff, it really blows up on that
18:21 <janmower> all the pythonistas use #!/usr/bin/env python
18:21 <holzp> I bleieve in the callback after findorcreate
18:21 <jmoyers> god damn i hate that term
18:22 <janmower> could node use the same stuff?
18:22 <jmoyers> it makes me think of used store clothes employees
18:22 <Almindor> holzp: I'd like to walk it over in node-inspector, because I'm not getting it set even tho my login is successful and serialize is called, subsequently my requests are without the property
18:22 <jmoyers> fashionistas!
18:22 <jmoyers> yes, of course
18:22 <holzp> uh, are you using express 3? or node > 0.9
18:22 <Almindor> I get the session in the DB and all that
18:22 <Almindor> no
18:22 <Almindor> node 0.8.6, express is frozen at 2
18:22 <janmower> jmoyers: yea whatever the spamastacks if you prefer
18:22 <holzp> im using express 3 unsure if there are many differnces
18:23 <holzp> to debug i just concole logged every step
18:23 <holzp> console
18:23 <holzp> it was a bear to figureout, at least everyauth debugs nice
18:23 <Almindor> the thing is I can't figure out when it's supposed to be set since it's not there in isAuthenticated and that's pretty much first thing after routing
18:23 <Almindor> I guess express/passport try to do it before via some middleware call
18:25 <holzp> well passport has two pieces of express middleware
18:25 <holzp> are you using them?
18:25 larryapplegate joined
18:25 <holzp> passport.initialize() and passport.session()
18:25 <holzp> it wasnt obvious to me till i looked into it more
18:25 <Almindor> yes
18:25 <Almindor> thing is this worked in the past
18:26 <Almindor> we did some major changes and now login (the post part) still passes, but checking fails
18:26 bubbles10101 joined
18:26 <Almindor> express session is called before passport too ( i found some problem with that )
18:27 bradleymeck joined
18:28 Almindor left
18:28 <holzp> hm, so you can get in once, but then not again with the same cookie?
18:30 DonOtreply joined
18:33 callumacrae joined
18:33 yoklov_ joined
18:34 samstefan joined
18:35 taky joined
18:38 <RushPL> tnorris: well it is pretty complicated all in all, but the idea is simple. Write line by line some command to a perl script in JSON
18:38 <RushPL> and read line by line the results
18:39 kazupon joined
18:39 urlwolf joined
18:39 dshaw_ joined
18:40 athenot_ joined
18:40 disnet joined
18:40 Destos joined
18:40 <larryapplegate> Still looking for help on the server side with multi-part forms from IOS
18:41 athenot__ joined
18:41 elijah-mbp joined
18:41 <tnorris> to anyone with a good understanding of server port and host binding:
18:41 <tnorris> when I do `.listen(8080, '::')`, the node server works for both ipv4 and 6. is that how node should work, or is it something with my machine?
18:41 Franz__ joined
18:42 Circlepuller__ joined
18:42 <jmoyers> larryapplegate you mean you need help?
18:43 taky joined
18:44 <larryapplegate> yes, on the server side
18:44 nrmL joined
18:44 <jmoyers> larryapplegate https://github.com/felixge/node-formidable
18:44 <jmoyers> pretty simple api for multi-part.
18:44 <larryapplegate> i have been running it, works fine with the browser
18:44 _Renegade joined
18:44 Destos joined
18:44 nrmL joined
18:45 <larryapplegate> but I want to know exactly what the browser is sending, so I can duplicate it on IOS
18:45 <jmoyers> so… use web inspector? or wireshark
18:45 jpdery joined
18:46 <larryapplegate> i am new to server side, don't know how to run suc
18:46 <larryapplegate> such
18:47 <nrmL> wireshark is client side, and web inspector is client side too.
18:47 <jmoyers> run those on the client and capture packets
18:47 <jmoyers> or just look up NSMutableURLRequests
18:47 <jmoyers> which, you can setValue with a constant that deals with multi-part
18:47 <jmoyers> plenty of examples out there
18:48 <jmoyers> or http://allseeing-i.com/ASIHTTPRequest/
18:48 derpops joined
18:49 <mscdex> wireshark ftw
18:49 <nrmL> Is it costly to run many processes?
18:49 <nrmL> like child processes
18:49 <mscdex> nrmL: depends on if there's a sale
18:49 <mscdex> :-D
18:49 <nrmL> haha
18:49 <s5fs> i'm sniffing with wireshark right now!
18:49 <jmoyers> there is an overhead
18:49 <jmoyers> windows i think has a little bit more trouble with many processes than linux or macos
18:50 <mscdex> s5fs: be careful, you could get addicted
18:50 <s5fs> mscdex: i can quit anytime
18:50 <jmoyers> but nodes model is a process based model and as far as i know we've abandoned thread based isolates (?)
18:50 jasonkuhrt joined
18:50 <nrmL> yea, I'm trying to figure our a solution to a problem and i keep going back to the processes idea. Treat each child process as an object w/ attributes etc
18:50 <nrmL> *out a
18:51 reve joined
18:51 <jmoyers> well, people do clusters and service registry type things
18:51 <jmoyers> https://github.com/substack/fleet for instance
18:51 <jmoyers> nom nom
18:51 <larryapplegate> jmoyers: i was trying to stay with NSURL etc., but looking at ASIHTTPRequest looks very interesting
18:52 <jmoyers> yes, i've used it
18:52 <jmoyers> has a decent api
18:52 <nrmL> jmoyers: thats neat
18:52 <larryapplegate> ok, you've convinced me. certainly it is easier when both ends are at the same level
18:53 dshaw_ joined
18:53 <larryapplegate> but first, i want to capture the buffers from the formidable browser client
18:54 taky joined
18:54 romainneutron joined
18:56 Guest9787 joined
18:58 joshontheweb joined
19:00 <larryapplegate> jmoyers: looks like i should just go straight to their ASIFOrmDataRequest subclass
19:00 <jmoyers> yes
19:00 <larryapplegate> Thanks a lot!
19:01 <nrmL> can child processes respond to parent event emits? Would i have to do it on child_process.stdin?
19:01 <CoverSlide> if you do a fork you can do child_process.send
19:02 <nrmL> and it respond back?
19:02 <nrmL> *can it
19:02 <CoverSlide> yeah, from the child process, do process.send
19:02 <CoverSlide> prcoess.on('message'
19:02 <CoverSlide> to listen for the message
19:02 <nrmL> kk thank you!
19:04 willwhite joined
19:05 saikat joined
19:06 davidcoallier joined
19:06 sheenobu joined
19:07 boutell joined
19:08 EhevuTov joined
19:08 taky1 joined
19:10 <nrmL> jmoyers: would you consider 39 processes too many, haha
19:10 <CoverSlide> 39 processes and a bash ai'nt one
19:10 <jmoyers> too many for what
19:10 dgathright joined
19:10 <jmoyers> but unless you've got an issue, the answer is no
19:11 maletor joined
19:11 <nrmL> ok, each one would be grabbing gps info about a bus and based on distances to other objects doing stuff
19:11 <jmoyers> why are you separating these into different processes?
19:12 kazupon joined
19:12 <nrmL> uh there are different routes each one goes on, the stops are all different. The speed of each one will be different from the other too
19:12 <nathan7> node can do a zillion of those at the same time
19:13 <jmoyers> well
19:13 <nrmL> yea, thats what I'm worried about if it will slow down or become a issue with too many processes
19:13 <nathan7> I'm pretty certain that's an IO-centric task
19:13 jmar777 joined
19:13 <jmoyers> no real reason to use a process per object
19:13 <Slade-> is 'connect' related to 'express' in some way?
19:13 <nathan7> Slade-: Yes.
19:13 <CoverSlide> each process is expensive, and at some point it doesn't really improve performance
19:13 <nathan7> Slade-: It's the middleware layer Express uses.
19:13 <jmoyers> connect came first, express uses connects middleware and static file module
19:13 <Slade-> oh, so express adds more to it?
19:13 <CoverSlide> connect is like rack
19:13 <tjholowaychuk> jmoyers express came first
19:13 <nrmL> Yea, i just want to try to treat each bus as an object with location, speed and all that
19:13 <CoverSlide> express is like sinatra
19:14 <nathan7> You silly rubyheads
19:14 <jmoyers> tjholowaychuk well you would know :-)!
19:14 <nrmL> and it would be responsible to update its location
19:14 <tjholowaychuk> connect was derived from early express stuff
19:14 ddollar joined
19:14 <Slade-> connect looks pretty awesome.. need to figure out what express adds now :)
19:14 <nrmL> jmoyers: mind if i ask how you would approach it? Rather then doing processes
19:14 <nathan7> express is a web framework
19:15 <nathan7> If you want to build a webapp, use express
19:15 <nathan7> If you want to build a web framework, use connect
19:15 <CoverSlide> express adds routing, templating, and some nice sugar on top of the basic request / response
19:15 jjjohnny joined
19:15 <jmoyers> nrmL you haven't described enough of your use case for me to comment
19:15 <Slade-> ah
19:15 <nrmL> jmoyers: would you want me too? haha
19:15 jpdery joined
19:15 <CoverSlide> one thing i like about express is it parses my proxy headers so I don't have to worry about it
19:15 <jmoyers> but i'd only split it into different processes if it was a long running computation problem, or the process could provide a reusable service
19:15 <jjjohnny> what do you do to solve moving paths?
19:16 <nrmL> jmoyers: they are more like short bursts of activity every 3-5 min
19:16 <jjjohnny> when I run my app as normal, the path is X, when I test my app from another directory, the path is Y
19:16 <jmoyers> 'activity' is not well defined enough
19:16 <Slade-> and next() this pretty much ends an 'event chain' ?
19:16 <CoverSlide> there's not much benefit to running more processes than cpus
19:16 <jmoyers> if you're spending most of your time waiting on io
19:17 <jmoyers> no need to split it into a bunch of processes imo
19:17 <CoverSlide> Slade-: next() continues the event chain to jump to the next middleware
19:17 <nathan7> Slade-: continues the event chain
19:17 <nathan7> damnit CoverSlide
19:17 <jjjohnny> why the hell can't node know relative paths for each file
19:17 perezd joined
19:17 <Slade-> Is there something that kills the event chain?
19:17 <jmoyers> … ?
19:17 <nrmL> jmoyers: yea, its mostly getting data with phantomJS and then writing it to a database and then if a bus is so far from a spot it sends a message through twilo
19:18 <nrmL> *twilio
19:18 <jmoyers> is there a reason you need to depend on phantomjs for that?
19:18 <jmoyers> even if you're scraping, doing a request and parsing it as lightly as possible is better.
19:19 <CoverSlide> holy cow
19:19 <nrmL> the gps data is from the bus comps site, just scraping it off. I found out they expose the GPS info of all the buses through a page www.site.com/busID
19:19 _Renegade joined
19:19 tgriesser joined
19:19 <jmoyers> so why not request the page directly?
19:19 tgriesser joined
19:19 <jmoyers> either with http client or mikeals request module
19:19 <CoverSlide> actually, even better, use https://github.com/MatthewMueller/nom
19:19 <nrmL> its filled with other crap, like stop info w/ gps data
19:20 <nrmL> need to filter through it a little
19:20 <jmoyers> right but
19:20 <jmoyers> using phantomjs for that is overkill imo
19:20 <CoverSlide> it's great for easy DOM traversal, and doesn't use jsdom, which is a pig
19:20 <jmoyers> yeah but like, a whole instance of webkit for scraping?
19:20 <nrmL> yea, didn't know about nom
19:21 <CoverSlide> i was talking about nom
19:21 <mscdex> there's also cheerio
19:21 <CoverSlide> it's awesome, i use it for all my scraping needs
19:21 <CoverSlide> nom is cheerio + request
19:21 <mscdex> :S
19:21 <jmoyers> does the selector overhead and all that
19:21 <mscdex> probably a simple module
19:21 <CoverSlide> actually, nevermind, it uses superagent
19:22 <jmoyers> add a bunch of weight?
19:22 <Slade-> so I'm trying to understand now the event chains work.. things like favicon seem to end the chain? does next() advance, and simply returning cause the chain to end?
19:22 <CoverSlide> Slade-: response.end() ends the request
19:22 zezikaro joined
19:22 <mscdex> Slade-: if you don't call next() then the chain ends
19:22 <CoverSlide> Slade-: the chain ends when a function never calls next()
19:22 <mscdex> :-)
19:22 <Slade-> awesome
19:23 <nrmL> http://www.livelycode.com/spawnjs/ might be good instead of creating a bunch of processes for each bus
19:23 <CoverSlide> so technically, you can do other stuff after the response is ended if you want to
19:23 <jmoyers> i… still don't know why you're worried about it being different processes
19:23 azend joined
19:24 <jmoyers> you can kick off 10 requests for site/busid and most of your time is going to be spent waiting on the data
19:24 <jmoyers> or if you're worried about it, serialize the request + scrap + text message then move on to the next bus
19:24 vnguyen joined
19:25 <nrmL> its more about I don't know when I would want to kick off that request
19:26 hipsterslapfight joined
19:29 nicholasf joined
19:29 gry joined
19:29 jwulf_ joined
19:30 choo joined
19:32 Axsuul joined
19:33 octane--_ joined
19:33 <zezikaro> can anyone recommend any bdd/mocking frameworks that can test my nodejs ?
19:33 dshaw_ joined
19:34 <zezikaro> I need to mock an entire webservice as it's not created yet
19:34 dnolen joined
19:34 taky joined
19:34 khrome joined
19:37 hillct joined
19:38 nicholasf joined
19:38 <jmoyers> zezikaro https://github.com/flatiron/nock
19:38 towski joined
19:39 <jmoyers> personally i use mocha for test runner/tests
19:41 JumpLink1 joined
19:41 jtomasrl joined
19:42 <jtomasrl> is there a good api sample code over the inet?
19:42 DonOtreply joined
19:44 Electron joined
19:44 Senji joined
19:44 kazupon joined
19:45 <chovy> i made an npm module, but it can't be found when I require('my-mod')
19:46 jgornick joined
19:46 francisl joined
19:46 <chovy> i am not sure what to put in "main"
19:46 <chovy> in package.json
19:46 <chovy> my file is in ./lib/my-module.js
19:47 elevenarms joined
19:48 taky1 joined
19:48 haarg left
19:50 mattgifford joined
19:50 jpdery joined
19:51 jasonkuhrt joined
19:51 RabidFire joined
19:52 DonOtreply joined
19:52 jwulf_ joined
19:52 Hebo joined
19:53 JumpLink1 left
19:53 DonOtreply joined
19:55 DonOtreply joined
19:57 tutley joined
19:57 jmar777 joined
19:57 <addisonj> okay, someone help me think, using request to pipe to a write stream, downloading like 15,000 images, every once in a while it hangs, I am listening for "end" on the respone, and error on both response stream and write stream, yet I am still hanging somewhere
19:58 <superjoe> addisonj, maybe try the "close" event instead of "end"
19:59 <addisonj> on response?
19:59 <superjoe> addisonj, wait, you're using mikeal/request?
19:59 <addisonj> yep
19:59 <superjoe> nvm
20:00 techthumb joined
20:03 duc1199 joined
20:07 nicholasf joined
20:10 c4milo joined
20:10 nrmL left
20:11 overra joined
20:11 overra joined
20:11 joaojeronimo joined
20:12 Danielss89 joined
20:14 onats joined
20:15 larryapplegate joined
20:16 mandric joined
20:17 stisti joined
20:17 kazupon joined
20:19 perezd joined
20:21 dshaw_ joined
20:24 bubbles10101 joined
20:25 joshfinnie joined
20:25 jpdery joined
20:27 st_luke joined
20:27 Hebo joined
20:27 jasonkuhrt joined
20:27 willwhite joined
20:29 ysssoh joined
20:29 andrehjr joined
20:34 <Slade-> with express. whats the proper way to serve the / (index.html) with express.static?
20:35 <superjoe> Slade-, it does that automatically if I recall correctly
20:35 jp232 joined
20:35 harthur joined
20:36 galaxywatcher joined
20:36 jocafa joined
20:39 yoklov joined
20:42 gluxon joined
20:43 <zezikaro> in nodejs can you make a variable global
20:43 boutell joined
20:43 samstefan joined
20:44 <zezikaro> hm
20:44 arbb joined
20:44 <TehShrike> zezikaro: not across modules
20:45 <zezikaro> TehShrike what sorry?
20:45 estebistec joined
20:45 <zezikaro> ah okay
20:45 <zezikaro> I googled and found GLOBAL
20:45 <zezikaro> But i'll ignore it
20:46 taky joined
20:46 perezd joined
20:47 xPhase joined
20:48 gluxon left
20:48 xPhase left
20:49 jasonkuhrt joined
20:50 jp232 joined
20:50 kazupon joined
20:50 aslant_ joined
20:50 kazupon joined
20:52 taky joined
20:52 taky left
20:53 <superjoe> TehShrike, that's not true
20:53 <superjoe> I mean, you shouldn't do it, but you can.
20:53 <TehShrike> Why would anyone do that >_<
20:53 <superjoe> TehShrike, agreed.
20:53 <TehShrike> Why would you put that in the language
20:54 <TehShrike> That makes me sad
20:54 <superjoe> don't forget your `var` declarations.
20:54 larryapplegate joined
20:55 <TehShrike> Well, just forgetting var won't get your variable in a scope outside your module
20:55 harthur joined
20:55 aslant joined
20:55 mjr84 joined
20:55 <TehShrike> Otherwise why would you use module.exports?
20:55 dgathright joined
20:55 tgriesser joined
20:55 joshontheweb joined
20:57 Hebo joined
20:58 taky1 joined
20:59 simong joined
21:00 <nicholasf> I have a constructor function that I want inheriting objects to use, e.g. Base = function(one, two){}; util.inherit(Child1, Base); foo = new Child1(one, two);
21:01 jpdery joined
21:01 <nicholasf> what's the best way to achieve this? I thought util.inherits would copy the constructor onto the inheriting prototype
21:01 <TehShrike> nicholasf: you should read about prototypal inheritance
21:01 <nicholasf> TehShrike: yeh, I have quite a bit
21:01 <nicholasf> this bit hasn't become obvious yet
21:02 <nicholasf> note, I'm not talking about inheriting behaviours *on* the prototype
21:02 <nicholasf> I'm talking about inheriting the constructor function itself
21:03 <superjoe> TehShrike, yes it will.
21:03 <holzp> anyone know a good tutorial for the route synxax for express?
21:03 <holzp> oddly hard to find
21:04 <superjoe> TehShrike, https://gist.github.com/3843316
21:04 <nicholasf> holzp: have you read the API? It spells it out there pretty much
21:05 <nicholasf> ok, so I think I have to copy the constructor itself onto inheriting objects
21:05 francisl joined
21:05 tutley joined
21:05 disnet joined
21:05 <holzp> im talking more about the syntax for the params embedded in the route urls
21:06 <nicholasf> ah nm, got it
21:06 <holzp> express, for all its awesomeness, is fairly sparsely documented
21:07 <TehShrike> superjoe: that makes me sad :-(
21:07 Hebo joined
21:08 <nicholasf> TehShrike: I think I need to understand the difference between using {} and function(){}
21:08 <superjoe> TehShrike, use jshint with syntastic and you should be good to go
21:08 <nicholasf> that was what was tripping me up
21:08 <TehShrike> nicholasf: the first is an object literal, the second is a function definition
21:08 <nicholasf> sorry, the difference between {} and new function(){}
21:09 <TehShrike> Oh, right
21:09 <nicholasf> gah, Im not making sense, clocking a few hours here
21:09 <TehShrike> Sure, you're talking about making objects via new Constructor()
21:09 dzajdband joined
21:10 <nicholasf> https://gist.github.com/779d76424b9c594cbf64 TehShrike - see BelongsTo, HasOne, etc.? I initially had them referencing an object literal - {}
21:10 duc1199 joined
21:10 <TehShrike> Versus constructing them with var myObject = {} and then adding things to it
21:10 <nicholasf> once I moved them to constructor functions things began working as expected
21:10 N3RG4L joined
21:11 <nicholasf> and, it isnt
21:11 kaspertidemann joined
21:11 ilyam joined
21:11 c4milo joined
21:12 tphummel joined
21:13 intripoon joined
21:14 bradleymeck joined
21:14 duc1199_ joined
21:14 Piotras joined
21:15 dgathright joined
21:17 davemo joined
21:19 audreyr joined
21:20 dyer joined
21:21 soapyillusions joined
21:21 harbhub joined
21:22 tilgovi joined
21:26 tgriesser joined
21:26 comster joined
21:26 defunctzombie joined
21:27 thl0 joined
21:28 C0deMaver1ck joined
21:28 C0deMaver1ck joined
21:28 <zezikaro> is it possible to have a build script like what you can do in maven ?
21:29 <zezikaro> Like automatically run tests etc
21:29 tom-tomaso joined
21:29 bakadesu joined
21:30 duc1199 joined
21:31 <Slade-> in express is there a good way to debug routes?
21:31 <zezikaro> add a debugger?
21:33 fauverism joined
21:36 jpdery joined
21:36 <Slade-> http://nopaste.me/paste/1333988102506f8b0e11908 <-- line 17 seems to not be taking..
21:38 <Slade-> i'm not doing something bad by binding the same directory to multiple places am i?
21:39 harbhub joined
21:39 c4milo joined
21:42 harthur joined
21:44 <timeturner> anyone have experience in greping something out of a webpage with regex?
21:44 <TehShrike> lol
21:44 <TehShrike> Yes, though I'm ashamed to admit it
21:44 <timeturner> not very grep/regex svayy yet :P
21:44 <timeturner> savvy*
21:45 <TehShrike> http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454
21:45 <timeturner> whoa
21:45 <timeturner> I hope I don't start typing like that near the bottom lol
21:46 bren2010 joined
21:50 duc1199 joined
21:50 jdeibele joined
21:52 tgriesser joined
21:53 addisonj joined
21:53 jwulf_ joined
21:54 jmoyers joined
21:55 TehShrike1 joined
21:56 taky joined
21:56 mjr84 joined
21:58 <zezikaro> does aynone know how to get zombie.js to work on windows?
21:58 <zezikaro> i get all sorts of errors
21:58 <zezikaro> npm ERR! `cmd "/c" "node-gyp rebuild"` failed with 1
21:58 defunctzombie joined
21:59 poorman joined
22:00 mjr84 joined
22:00 athenot joined
22:00 dzajdband joined
22:01 clever joined
22:02 mynameis joined
22:02 adrianF joined
22:02 RabidFire joined
22:03 AvianFlu joined
22:04 diegoviola joined
22:05 hatch_ joined
22:06 stisti joined
22:08 tutley joined
22:10 DTrejo joined
22:11 Hochmeister joined
22:11 jpdery joined
22:14 chrisramon joined
22:15 <JoeDoyle23> What errors are you getting? I just installed it on node 0.8.11 on x64 Windows with no errors
22:17 <JoeDoyle23> If you haven't already, you'll want to do 'npm install -g node-gyp'
22:17 gmci joined
22:18 nicholasf joined
22:21 pandeiro joined
22:23 joshfinnie joined
22:23 mattgifford joined
22:24 langworthy joined
22:28 uiureo joined
22:28 N3RG4L joined
22:30 N3RG4L joined
22:30 langworthy joined
22:31 gmci joined
22:31 onats joined
22:33 harbhub joined
22:33 timkuijsten joined
22:33 timkuijsten joined
22:35 andrehjr joined
22:38 rampr joined
22:39 <timeturner> anyone know if a way to include a lookahead assertion in perl regex
22:39 <timeturner> so perform the lookahead and include the actual lookahead in the output match
22:39 <timeturner> or do I have to concat all the returned matched
22:39 <timeturner> matched* manually
22:39 jp232 joined
22:41 <niggler> you can't get the lookahead in the regex
22:41 <timeturner> I think I'll just pipe it into cat then
22:41 <niggler> you can do a lookahead assertion timeturner but you cant get the match
22:41 <timeturner> yeah
22:42 andrehjr joined
22:45 addisonj joined
22:45 soapyillusions joined
22:46 duc1199 joined
22:47 jpdery joined
22:47 f00579 joined
22:48 <Slade-> hmm, i mighta found a flaw in express.static :/
22:49 <deoxxa> go on
22:49 mattgifford joined
22:50 <Slade-> so I'm doing this.. app.get("/disc", express.static(__dirname + "\\client"));
22:50 <Slade-> and it adds the /disc to the name of the file its trying to get
22:51 <Slade-> so http://localhost/disc tries to pull c:\app\client\disc\index.html
22:51 diegoviola joined
22:51 <Slade-> that seems inappropriate..
22:53 <Slade-> not sure the appropriate fix tho..
22:54 taky joined
22:57 jp232 joined
22:58 st_luke joined
22:58 ragingwind joined
22:58 <JoeDoyle23> Are EventEmitters overkill when you only have a single listener for multiple events? Are there benefits over a callback model? Interested to hear if anyone has any guidance.
22:59 <JoeDoyle23> Basically, should I use an EventEmitter when its always going to be a 1 to 1 pub/sub?
23:01 kenperkins joined
23:03 <Slade-> hmm think its a flaw with static actually :/
23:03 <Slade-> err
23:03 <Slade-> send
23:04 slloyd joined
23:04 EyePulp joined
23:05 <Slade-> are there any noteworthy alternatives to express?
23:05 tgriesser joined
23:06 <timeturner> express
23:07 <niggler> how's connect?
23:07 <timeturner> more low level
23:07 <timeturner> express is sugar on top of connect
23:08 samstefan joined
23:08 rcrowley joined
23:08 patrickmc joined
23:08 gmci joined
23:08 <timeturner> anyone have expertise piping a url into curl
23:08 <timeturner> I've tried and failed with no URL specified
23:08 <timeturner> curl -d - doesn't seem to work
23:09 <timeturner> s/expertise/experience
23:09 larryapplegate joined
23:10 jp232 joined
23:10 sardavend joined
23:11 j2dp joined
23:11 <Raynos> slade: github.com/routil
23:14 ilyam joined
23:18 jdeibele joined
23:18 mandric joined
23:19 jmoyers joined
23:21 cgfuh joined
23:22 jpdery joined
23:23 r0tha joined
23:23 LouisT joined
23:24 jeswin joined
23:27 BMF joined
23:27 soapyillusions joined
23:29 broofa joined
23:29 aMoniker joined
23:29 mdedetrich joined
23:30 <aMoniker> if I have a file that creates a socket.io server and sets it as exports.io, every file that requires it will generate a new server instead of using a single instance, right?
23:30 cushman joined
23:31 gmci joined
23:32 mdedetrich joined
23:35 astropirate joined
23:35 astropirate joined
23:36 Shreekavi joined
23:37 r0tha joined
23:40 gmci joined
23:41 meso joined
23:42 nicholasf joined
23:43 etcetera joined
23:44 opus_ joined
23:44 <aMoniker> ok, I'm sending an event from the client using socket.io
23:45 <aMoniker> socket.emi('my event', data);
23:45 <aMoniker> I can see this on the server when I listen for socket.on('my event')
23:45 <aMoniker> but not when I listen for socket.on('message')
23:45 <aMoniker> socket.io docs seem to indicate that 'message' is a generic handler for all messages
23:45 <aMoniker> is this not the case?
23:46 addisonj joined
23:46 nicholas_ joined
23:47 <* Slade-> checks it out
23:47 joshontheweb joined
23:48 petschm_ joined
23:49 <aMoniker> ok… so emit() is for custom events and send() is for generic 'message' events it looks like
23:49 <aMoniker> so there's no generic handler that I can route from I guess..
23:50 heavysixer left
23:50 <mscdex> gotta pick a convention!
23:50 <aMoniker> it seems like I'll have to require() everything inside the socket.on('connection') callback
23:50 <aMoniker> and then pass it the socket var
23:51 <aMoniker> I'd rather just require those files elsewhere and have them use the same io object
23:51 lyaunzbe joined
23:52 <mscdex> niggler: i tried node-ncurses on freebsd and it works just fine like on linux there, weird stuff
23:52 jpdery joined
23:52 <niggler> i assume mscdex that there are issues with osx
23:52 <niggler> or possibly the lion default (not upgraded from snow leopard) terminfo
23:52 mattgifford joined
23:52 <mscdex> right, but i thought maybe being based on freebsd that they might share the problem
23:53 <mscdex> niggler: node-ncurses uses the bundled terminfo
23:53 <aMoniker> oh, wait
23:54 <aMoniker> require() automatically caches everything?
23:54 <mscdex> i even tried node-ncurses when it was bundling ncurses 5.8 yet and that had the same result on osx
23:54 <aMoniker> so if I require a file that opens a socket.io connection and exports it
23:54 tjmehta joined
23:54 <mscdex> aMoniker: yes, require caches
23:54 stisti joined
23:54 <aMoniker> ah ok, so exporting that connection won't open up more when I require more than once
23:54 gmci joined
23:54 <aMoniker> ok, that solves my problem :)
23:55 <mscdex> aMoniker: well, it depends on what your module is doing...
23:55 <aMoniker> mscdex: I'd just like to have one file open up a socket.io connection, then export it
23:55 <mscdex> aMoniker: it just "compiles" the module and saves it in memory
23:55 <aMoniker> so other files can listen on events
23:58 <jmoyers> substack for fleet, is a hub a one to one relationship to a github repository (meaning if you have 3 different service types, you'd have three hubs)?
23:58 pretty_function joined
23:58 samleegray joined