00:16:04  * mikealjoined
00:16:14  * thl0_joined
00:16:42  * thl0quit (Ping timeout: 245 seconds)
00:16:49  * thl0_quit (Remote host closed the connection)
00:18:23  * tilgoviquit (Quit: No Ping reply in 180 seconds.)
00:19:41  * Domenic__joined
00:20:15  * tilgovijoined
00:20:24  * mikealquit (Ping timeout: 252 seconds)
00:24:15  * tilgoviquit (Quit: No Ping reply in 180 seconds.)
00:26:37  * tilgovijoined
00:34:46  * spionquit (Ping timeout: 246 seconds)
00:42:38  <defunctzombie>who has an hour or two to write something for me? I will pay the bitcoins!
00:44:31  * tilgoviquit (Quit: No Ping reply in 180 seconds.)
00:44:52  * tilgovijoined
00:45:17  <rowbit>Hourly usage stats: [free: 17]
00:47:48  <jesusabdullah>niftylettuce: /r/ a way to edit name and description of bins http://bookmarkbin.com/jesusabdullah/internet-of-things
00:47:59  <jesusabdullah>niftylettuce: name/description aren't really accurate, I want to change them
00:48:08  * mikealjoined
00:49:36  * mmckeggquit (Quit: mmckegg)
00:53:46  * mikealquit (Ping timeout: 252 seconds)
00:54:27  * Domeni___joined
00:55:17  <defunctzombie>anyhow, if any of you peeps has some spare cycles let me know
00:55:18  <defunctzombie>:)
00:56:25  <mikolalysenko>defunctzombie: what are you trying to get written?
00:56:47  <defunctzombie>I have some emails in raw format
00:56:53  <defunctzombie>and I need them scraped for attachments
00:57:04  * timoxleyquit (Ping timeout: 252 seconds)
00:57:08  * jxsonquit (Ping timeout: 256 seconds)
00:57:12  <mikolalysenko>hmm... parsing emails doesn't sound like much fun
00:57:20  <defunctzombie>nope
00:57:24  <defunctzombie>not fun at all
00:57:36  <mikolalysenko>but good luck, I am sure you can find someone who will do it
00:57:47  <substack>sounds like a regex
00:58:00  <substack>regex is fun
00:58:03  <mikolalysenko>well, maybe
00:58:10  <substack>probably a perl one liner
00:58:20  <rvagg>regex makes you feel smart, that's the important thing about regexes
00:58:24  <mikolalysenko>but the email spec is pretty wtf
00:58:27  <pkrumins>Regexp::Common::Email::Address
00:58:33  * Domeni___quit (Ping timeout: 240 seconds)
00:59:53  <defunctzombie>there is a node lib to process raw emails actually
01:00:00  <defunctzombie>I just need it written using that lib ideally
01:00:32  * mmckeggjoined
01:00:38  <defunctzombie>https://github.com/andris9/mimelib
01:00:59  <defunctzombie>er
01:01:01  <defunctzombie>I meant https://github.com/andris9/mailparser
01:01:03  <defunctzombie>that one
01:01:13  <defunctzombie>I used this lib to fetch the messages: https://github.com/mscdex/node-imap
01:05:06  * timoxleyjoined
01:10:01  <dools>substack: i'm wearing my html5 shirt today - my 3 y/o daughter said "oooh i like that picture"
01:10:10  <substack>neat
01:10:18  <dools>substack: you reckon you could draw a mermaid?
01:10:19  * timoxleyquit (Quit: ["Textual IRC Client: www.textualapp.com"])
01:10:24  <dools>substack: i'll buy you something off amazon :)
01:10:27  <dools>or gittip you
01:10:32  <substack>dools: yep!
01:10:55  <dools>i said "i know the guy that drew this! would you like him to draw you something?" and she was liek YEEEEAH! A MEERRRMAIIIID!
01:14:08  * ITproquit (Ping timeout: 255 seconds)
01:21:30  * mikealjoined
01:25:35  * ITprojoined
01:25:45  * thl0joined
01:26:02  * mikealquit (Ping timeout: 252 seconds)
01:29:42  * wolfeidaujoined
01:32:40  <rvagg>https://www.firebase.com/blog/2013-04-09-firepad-open-source-realtime-collaborative-editor.html
01:37:12  * tilgoviquit (Remote host closed the connection)
01:42:31  * rowbitquit (Ping timeout: 252 seconds)
01:43:04  * pkruminsquit (Ping timeout: 256 seconds)
01:43:43  * substackquit (Ping timeout: 264 seconds)
01:44:46  * substack_joined
01:48:09  * substack_quit (Client Quit)
01:52:57  * mikealjoined
01:55:52  * dguttmanquit (Quit: dguttman)
01:57:11  * mikealquit (Ping timeout: 252 seconds)
02:07:07  * ralphtheninjaquit (Ping timeout: 264 seconds)
02:12:49  * pkruminsjoined
02:12:49  * pkruminsquit (Changing host)
02:12:49  * pkruminsjoined
02:17:47  <jesusabdullah>niftylettuce: is bookmarkbin down? :(
02:24:32  * mikealjoined
02:29:17  * mikealquit (Ping timeout: 252 seconds)
02:40:49  <Nexxy>niftylettuce, ;<
02:40:55  <jesusabdullah>SEE??
02:41:02  <jesusabdullah>I was about to bookmark the shit out of some stuff
02:43:56  * evboguejoined
02:46:05  * evboguequit (Client Quit)
02:47:16  <niftylettuce>jesusabdullah Nexxy restarting, moving from EC2 to Linode in a bit
02:47:22  <jesusabdullah>ahh
02:47:35  <niftylettuce>back online
02:47:38  <niftylettuce>jesusabdullah: http://bookmarkbin.com/jesusabdullah/alaskloud-com
02:47:40  <niftylettuce> /cc Nexxy ^^
02:48:03  <niftylettuce>jesusabdullah: RE earlier ? about edit name/desc of bin -- I'm working on it :)
02:48:14  <niftylettuce>integrating socket.io to speed up bookmarkbin create step
02:48:23  <niftylettuce>so u can create bookmark INSTANTLY
02:48:30  <niftylettuce>and then it has spinner and image updates once done
02:48:49  <jesusabdullah>http://bookmarkbin.com/jesusabdullah/internet-of-things :)
02:48:51  <niftylettuce>I might just have image refresh itself every few seconds tbh, might be a bit easier :)
02:48:52  <jesusabdullah>niftylettuce: ^^
02:49:11  <niftylettuce>beagleboard!
02:49:13  <niftylettuce>bonescript!!! FTW
02:49:23  <jesusabdullah>bonescript, huh?
02:49:35  <mikolalysenko>is there a way to get npm install to automatically update your package.json?
02:49:57  <mikolalysenko>like if I install a package or change a dependency, do I always have to update my package.json manually?
02:50:19  <jesusabdullah>mikolalysenko: --save ?
02:50:33  <mikolalysenko>let me give it a shot
02:51:01  <mikolalysenko>jesusabdullah: sweet! thanks
02:52:05  * thatguydanquit (Quit: thatguydan)
02:52:32  <jesusabdullah>yw
02:53:34  * Guest94624changed nick to jden
02:54:24  <niftylettuce>jesusabdullah: https://github.com/jadonk/bonescript
02:56:16  <jesusabdullah>niftylettuce: very nice will need that
02:57:20  * mikealjoined
03:01:43  * mikealquit (Ping timeout: 252 seconds)
03:02:29  * thl0quit (Remote host closed the connection)
03:05:29  <Nexxy>niftylettuce, +1 on the linode
03:05:36  <Nexxy>they are so good
03:05:56  * rowbitjoined
03:05:58  * substackjoined
03:06:34  <Nexxy>niftylettuce, have you used linode much?
03:07:17  <Nexxy>jesusabdullah, you IoTing?
03:07:26  <jesusabdullah>IoT?
03:07:30  <jesusabdullah>oh, umm
03:07:33  <jesusabdullah>not right now, just dreaming
03:07:45  <Nexxy>oh
03:07:50  <jesusabdullah>like I said that page isn't 100% correctly named
03:08:13  <jesusabdullah>Nexxy: I want a htcpcp coffee pot, when I have money I'm gonna try to build one
03:08:36  * wolfeidauquit (Remote host closed the connection)
03:08:50  <jesusabdullah>Nexxy: going to build a thermostat at some point too, I have a plug-in heater at this apartment with no thermostat so I have to toggle the switches manually when it gets too hot/too cold
03:08:58  <Nexxy>jesusabdullah, just get a thrift store coffeepot
03:08:59  <Nexxy>and a relay
03:09:28  <jesusabdullah>Nexxy: yeah, that's the idea, get a standard drip pot and a relay and start there
03:09:43  <jesusabdullah>Nexxy: I also want to implement automatic changing of filter and grinding of beans
03:09:52  <jesusabdullah>Nexxy: which is a bit harder but I'm an engineer right? XD
03:10:11  <jesusabdullah>Nexxy: if I'm REALLY smart I can design it for some "standard" coffee pot
03:11:26  <substack>then sell http coffee kits
03:11:48  <jesusabdullah>yes
03:11:49  <jesusabdullah>exactly
03:13:53  <jesusabdullah>hardest part is filter dispenser
03:20:34  * thatguydanjoined
03:21:25  <niftylettuce>Nexxy: yea :) been with them for 2 yrs
03:21:42  <rowbit>Hourly usage stats: [developer: 2, free: 19]
03:21:42  <niftylettuce>Nexxy: just got 8 cores so it'll be nice
03:22:04  <niftylettuce>setting up a cluster
03:22:37  * wolfeidaujoined
03:27:55  * thatguydanquit (Ping timeout: 260 seconds)
03:28:16  * mikealjoined
03:32:31  * mikealquit (Ping timeout: 251 seconds)
03:37:33  * Domenic__quit (Ping timeout: 240 seconds)
03:40:23  <Nexxy>niftylettuce, sweet
03:40:36  <niftylettuce>Nexxy: yeah they doubled everything @ no extra cost
03:40:43  <Nexxy>niftylettuce, I've been with them since 2004, they've had 1 (one) outage in that time
03:40:44  <niftylettuce>Nexxy: its on HN
03:40:48  <Nexxy>that actually affected me
03:40:53  <Nexxy>yeah, second time they've done it
03:40:54  <niftylettuce>Nexxy: yea caker is awesome and they have free IRC support
03:41:21  <Nexxy>the 8 core thing is ridiculous for node apps
03:41:30  <niftylettuce>yea espec with cluster
03:41:30  <niftylettuce>:D
03:41:34  <Nexxy>mhmm
03:41:48  <Nexxy>and the bandwidth
03:42:30  <Nexxy>$40/mo = 4TB of transfer, 16 cores, 1GB RAM
03:43:46  <Nexxy>niftylettuce, have you checked out stackscripts at all?
03:44:39  <niftylettuce>Nexxy: yea they are nice, though i just deploy myself manually since i dont have anything major right now
03:45:16  <Nexxy>you mean except for a majorly awesome web app
03:45:37  <niftylettuce>i've had a ton of negative feedback about it
03:45:48  <substack>stackscripts?
03:45:50  <niftylettuce>need to make changes
03:45:56  <niftylettuce>slackscripts arent they called?
03:46:09  <substack>lamps I see
03:46:59  <Nexxy>it's just for throwing commands @ the box after it is created
03:47:19  * mikolalysenkoquit (Ping timeout: 264 seconds)
03:47:47  <substack>see also https://github.com/substack/ploy
03:47:54  <substack>using this to continuously deploy testling right now
03:47:58  <substack>it's working really well
03:59:39  * mikealjoined
04:00:26  <isaacs>substack: the easy part is getting the features out. the hard part is getting them out
04:03:07  <substack>wow so that bug took way less time than I was expecting...
04:03:22  <substack>on account of the problem of not knowing what you don't know
04:04:02  * mikealquit (Ping timeout: 252 seconds)
04:13:38  * mikolalysenkojoined
04:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 49]
04:26:26  * mikolalysenkoquit (Ping timeout: 252 seconds)
04:31:05  * mikealjoined
04:37:46  * mikealquit (Ping timeout: 252 seconds)
04:40:13  <substack>right then, now finishing my tie::file thing
04:42:54  * shuaibjoined
04:45:39  <jesusabdullah>In case anyone was confused on the matter: I really really like food. :3
04:54:01  * mikolalysenkojoined
05:00:18  * mikealjoined
05:05:15  * mikolalysenkoquit (Ping timeout: 276 seconds)
05:19:26  <jesusabdullah>fucking with gnome 3 theming lol
05:19:37  <jesusabdullah>for some reason a theme involves c code???
05:19:43  <jesusabdullah>(don't look at me)
05:19:55  <jesusabdullah>(I'm just massaging the standard theme until it doesn't piss me off
05:20:20  <niftylettuce>jesusabdullah: just get linux mint cinnamon?
05:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 36]
05:22:43  <jesusabdullah>niftylettuce: naw I want to make my own!
05:23:42  <jesusabdullah>acch
05:23:49  <jesusabdullah>don't feel like pushing forward on this anymore
05:23:52  <jesusabdullah>too lazy
05:23:55  * tilgovijoined
05:30:33  * mikolalysenkojoined
05:34:44  <jesusabdullah>lol what am I even doing
05:34:48  <jesusabdullah>deleting files I need GEEZ
05:39:49  * Dr_Kjoined
05:42:20  * mikolalysenkoquit (Ping timeout: 255 seconds)
05:42:46  <jesusabdullah>Dr_K: !
05:43:22  <Dr_K>Hi!
05:43:35  <Dr_K>I haven't been camping on IRC very much lately.
05:44:17  <jesusabdullah>I see
05:44:23  <jesusabdullah>oh dang tired all of a sudden
05:44:26  <jesusabdullah>it's not even 10:00
05:46:20  * chrisdickinsonquit (Read error: Operation timed out)
05:46:38  <substack>Dr_K: ahoy!
05:46:46  <Dr_K>Hello!
05:48:03  <Dr_K>WHAT'S UP LOUDBOT
05:48:03  <LOUDBOT>DAAR IS DE LENTE DAAR IS DE ZON, BIJNA MAAR IK DENK DAT ZE WELDRA ZAL KOMEN
05:48:42  * chrisdickinsonjoined
05:49:09  <substack>YOU ARE NO DIJKSTRA. NOT EVEN A DE BRUIJN.
05:49:09  <LOUDBOT>IVE NEVER BEEN HAPPIER THAN WHEN I THROTTLED A GONDOLA
05:50:07  <Dr_K>;)
05:53:53  * jcrugzzquit (Ping timeout: 245 seconds)
05:58:55  <jesusabdullah>ahaha
06:00:30  * defunctzombiechanged nick to defunctzombie_zz
06:03:08  * mikealquit (Read error: Connection reset by peer)
06:04:06  * mikeal1joined
06:13:52  * mikolalysenkojoined
06:20:00  * jcrugzzjoined
06:20:03  * AvianFluquit (Read error: Connection reset by peer)
06:20:39  * AvianFlujoined
06:21:14  * mikolalysenkoquit (Ping timeout: 245 seconds)
06:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 73]
06:28:21  * jcrugzzquit (Ping timeout: 245 seconds)
06:39:31  * shuaibquit (Quit: Textual IRC Client: http://www.textualapp.com/)
06:42:22  * wolfeidauquit (Remote host closed the connection)
06:47:33  * mikolalysenkojoined
07:00:00  * mikolalysenkoquit (Ping timeout: 245 seconds)
07:13:27  * mikeal1quit (Quit: Leaving.)
07:19:45  * nicholasfjoined
07:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 65]
07:28:27  * mikolalysenkojoined
07:28:44  * nicholasfquit (Ping timeout: 245 seconds)
07:34:18  <juliangruber>substack: have you tried connection: close with bouncy?
07:38:58  * mikolalysenkoquit (Ping timeout: 246 seconds)
07:43:46  * mikealjoined
07:47:12  * no9joined
07:54:39  * mikealquit (Ping timeout: 252 seconds)
08:00:13  * spionjoined
08:07:14  <niftylettuce>Call for recipes... http://startupsupper.com ... going to launch sometime this week. /cc Nexxy jesusabdullah
08:07:53  * mikolalysenkojoined
08:18:48  * mikolalysenkoquit (Ping timeout: 264 seconds)
08:21:28  * mikealjoined
08:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 86]
08:25:49  * mikealquit (Ping timeout: 252 seconds)
08:27:20  * mikealjoined
08:40:24  <substack>juliangruber: what about it?
08:40:37  <substack>bouncy will never set that for you
08:42:18  <jesusabdullah>substack: https://github.com/jesusabdullah/know-your-http
08:45:06  <juliangruber>substack: I thought because of the keep-alive issues
08:46:41  <jesusabdullah>juliangruber: do you like posters? ^^
08:46:52  * spionquit (Ping timeout: 246 seconds)
08:46:55  <substack>juliangruber: but it works fine
08:47:06  <substack>you just can't patch into requests after the first connection
08:47:22  <substack>connection: close would slow everything way the fuck down
08:47:28  * mikolalysenkojoined
08:48:08  <juliangruber>jesusabdullah: almost looks too good to put on a wall :P
08:48:14  <juliangruber>jesusabdullah: damn useful though
08:48:33  <juliangruber>substack: I had some issues the last time I tried bouncy, so that's fixed now?
08:48:44  <jesusabdullah>lol
08:48:47  <jesusabdullah>too good? nowai
08:49:18  <jesusabdullah>I want to make some sweet custom titles for them
08:49:27  <jesusabdullah>will take time though
08:49:35  <substack>juliangruber: I'm not sure what you mean
08:49:38  <jesusabdullah>with the gimp or inkscape, one of them
08:49:39  <substack>or what version you last tried
08:50:01  <juliangruber>substack: last time I tried some requests were never answered bc of keepalive issues
08:50:15  <substack>what version
08:51:13  <juliangruber>substack: 3.1.1
08:51:31  <juliangruber>jesusabdullah: if you do that I'll put them everywhere in the office
08:55:26  <substack>juliangruber: nothing has changed then
08:55:38  <substack>it's working as it should
08:55:44  <juliangruber>substack: and browserling.com is runnign behind bouncy, right? works for me
08:55:51  <substack>yep
08:55:53  <juliangruber>I'll try again
08:56:02  <substack>and testling
08:56:52  <juliangruber>the site I was proxying to was behind varnish and haproxy and stuff, maybe that could have been an issue?
08:57:54  * mikolalysenkoquit (Ping timeout: 245 seconds)
08:58:19  <rvagg>mmckegg: is there a reason why level-match-index isn't on the levelup modules wiki page? is it good for production use?
08:58:20  <jesusabdullah>juliangruber: nice
08:58:49  <mmckegg>rvagg: mainly because I wrote it then got really busy working on something else
09:00:17  <mmckegg>rvagg: the tests are pretty weak at the moment also, and I'm not personally using it in production yet. hopefully next week I'll get back to leveldb stuff.
09:00:28  <rvagg>ok, cool
09:00:39  <rvagg>it's similar to what I was about to implement myself, I might give it a spin
09:02:31  <jesusabdullah>ohey rvagg you like posters? https://github.com/jesusabdullah/know-your-http
09:03:16  <mmckegg>rvagg: we're in the process of rewriting most of our stack to sit on top of the module, so it should get some heavy use soon. can't wait to say goodbye to mysql.
09:04:11  <rvagg>jesusabdullah: very nice! unfortunately I'm not into posters, I'm not organised enough and tend to float in and out of my "office"
09:04:34  <rvagg>mmckegg: amen to that... mysql has taken too many years off my life
09:12:14  <rvagg>mmckegg: I'd really like regexes in json-filter, either that or being able to pass in a simple match function would be nice
09:13:25  <mmckegg>yes, I agree. will put it on my mental todo list.
09:18:57  <mmckegg>rvagg: actually there is 'simple' support for functions, via the queryHandler option, but yeah, not ideal.
09:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 86]
09:23:29  <rvagg>hm, thinking I still might be better off just rolling my own indexes with level-map-reduce since does almost everything anyway
09:24:16  * mikolalysenkojoined
09:24:38  <mmckegg>yeah, probably. I started with that, but ended up veering off a little far. But that's the great thing about leveldb, you can do whatever.
09:24:48  * Raltquit (Ping timeout: 264 seconds)
09:24:55  * dominictarrjoined
09:25:37  * Raltjoined
09:36:34  * mikolalysenkoquit (Ping timeout: 246 seconds)
09:40:07  <rvagg>dominictarr: morning. I'm just about to write a simple index on top of map-reduce, I just want to make sure that you don't have anything that does it yet -- index by a simple map function and then fetch/stream by indexed properties?
09:41:00  <dominictarr>I have something that does a thing like that in level-master, and level-inverted-index
09:41:02  <rvagg>dominictarr: I just want to smooth over the clunkyness involved in fetching the entried map-reduce creates, db.createReadStream(db.map.views['prop'].bucket.range([ prop, '' ]))
09:41:17  * tilgoviquit (Remote host closed the connection)
09:42:13  <rvagg>dominictarr: is level-map deprectated now since map-reduce basically does the same thing and more?
09:42:19  <dominictarr>yes
09:50:02  * jcrugzzjoined
09:54:31  * jcrugzzquit (Ping timeout: 256 seconds)
09:55:36  * AvianFluquit (Remote host closed the connection)
10:07:32  * mikolalysenkojoined
10:08:05  * ralphtheninjajoined
10:13:45  * spionjoined
10:14:54  * nicholas_joined
10:17:12  * mikolalysenkoquit (Ping timeout: 260 seconds)
10:17:39  * dominictarrquit (Quit: dominictarr)
10:21:42  <rowbit>Hourly usage stats: [developer: 2, free: 104]
10:27:31  * AvianFlujoined
10:27:31  * AvianFluquit (Client Quit)
10:29:11  * mmckeggquit (Quit: mmckegg)
10:37:04  * mikealquit (Ping timeout: 252 seconds)
10:37:24  * mikealjoined
10:47:09  * mikolalysenkojoined
10:56:23  * mikolalysenkoquit (Ping timeout: 246 seconds)
11:04:04  * thl0joined
11:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 63]
11:21:42  * nicholas_quit (Read error: Connection reset by peer)
11:24:02  * mikolalysenkojoined
11:35:36  * mikolalysenkoquit (Ping timeout: 256 seconds)
11:42:05  * st_lukejoined
11:45:07  <st_luke>ec2 is such a shithole
12:00:09  <rowbit>/!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\
12:00:09  <rowbit>/!\ ATTENTION: (default-local) paid account successfully upgraded /!\
12:00:58  <st_luke>is anyone running mosh on solaris?
12:03:45  * mikolalysenkojoined
12:08:03  * st_luke_joined
12:11:15  * st_lukequit (Ping timeout: 245 seconds)
12:15:11  * mikolalysenkoquit (Ping timeout: 255 seconds)
12:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 50]
12:27:45  * st_luke_quit (Remote host closed the connection)
12:28:46  * spionquit (Ping timeout: 246 seconds)
12:39:31  * dominictarrjoined
12:41:38  * spionjoined
12:43:23  * mikolalysenkojoined
12:47:44  * defunctzombie_zzchanged nick to defunctzombie
12:48:17  * dominictarrquit (Quit: dominictarr)
12:48:31  * defunctzombiequit (Changing host)
12:48:31  * defunctzombiejoined
12:55:49  * mikolalysenkoquit (Ping timeout: 245 seconds)
13:02:06  * ITproquit (Ping timeout: 245 seconds)
13:04:55  * no9quit (Remote host closed the connection)
13:06:24  * niixjoined
13:13:08  * cianomaidinjoined
13:13:12  * thl0quit (Remote host closed the connection)
13:17:21  * thl0_joined
13:21:19  * thl0_quit (Remote host closed the connection)
13:21:42  <rowbit>Hourly usage stats: [developer: 2, free: 57]
13:21:57  * mikolalysenkojoined
13:23:47  * thl0joined
13:24:32  * thl0quit (Remote host closed the connection)
13:26:01  * niixquit (Remote host closed the connection)
13:28:37  * cianomaidinquit (Quit: cianomaidin)
13:35:25  * mikolalysenkoquit (Ping timeout: 245 seconds)
13:40:05  * st_lukejoined
13:42:06  * tmcwjoined
13:48:54  * thl0joined
13:49:40  * mikolalysenkojoined
13:52:05  * AvianFlujoined
14:07:04  * Domenic__joined
14:15:40  * jcrugzzjoined
14:19:17  <Domenic__>jesusabdullah: those are some sweet posters
14:19:21  * yorickjoined
14:19:58  * jcrugzzquit (Ping timeout: 252 seconds)
14:21:42  <rowbit>Hourly usage stats: [developer: 5, free: 73]
14:23:15  * dominictarrjoined
14:26:49  * ITprojoined
14:28:57  <st_luke>I was very pleased
14:34:54  * wolfeidaujoined
14:38:35  * jcrugzzjoined
14:43:37  * ITpropart
14:45:11  * jcrugzzquit (Ping timeout: 252 seconds)
14:52:49  * dominictarrquit (Quit: dominictarr)
15:01:13  * dominictarrjoined
15:05:55  * st_lukequit (Read error: Connection reset by peer)
15:09:35  * fallsemojoined
15:14:50  * fallsemo1joined
15:14:50  * fallsemoquit (Read error: Connection reset by peer)
15:15:51  * tilgovijoined
15:17:28  <dominictarr>mbalho: https://travis-ci.org/dominictarr/JSONStream/builds/6139083
15:17:47  <dominictarr>failing tests after your last push
15:17:50  * dominictarrquit (Quit: dominictarr)
15:19:21  * tilgoviquit (Remote host closed the connection)
15:21:42  <rowbit>Hourly usage stats: [developer: 3, free: 66]
15:29:28  * shamajoined
15:36:41  * dguttmanjoined
15:44:14  * Benviequit (Ping timeout: 240 seconds)
15:52:21  * Benviejoined
15:56:36  * yorickquit (Remote host closed the connection)
15:57:50  * defunctzombiechanged nick to defunctzombie_zz
16:00:12  * jcrugzzjoined
16:21:08  * yorickjoined
16:21:42  <rowbit>Hourly usage stats: [developer: 4, free: 44]
16:28:06  * ITprojoined
16:37:57  * defunctzombie_zzchanged nick to defunctzombie
16:48:39  * defunctzombiechanged nick to defunctzombie_zz
16:51:39  * thl0quit (Remote host closed the connection)
16:53:20  * dominictarrjoined
16:59:19  * spionquit (Ping timeout: 246 seconds)
17:00:31  * defunctzombie_zzchanged nick to defunctzombie
17:01:32  * dominictarrquit (Quit: dominictarr)
17:07:07  * ITproquit (Ping timeout: 264 seconds)
17:09:34  <rowbit>/!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\
17:09:34  <rowbit>/!\ ATTENTION: (default-local) paid account successfully upgraded /!\
17:21:42  <rowbit>Hourly usage stats: [developer: 2, free: 61]
17:22:01  * thl0joined
17:30:48  * thl0quit (Ping timeout: 276 seconds)
17:41:28  * jxsonjoined
17:45:20  * thl0joined
18:01:18  <rowbit>/!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\
18:01:18  <rowbit>/!\ ATTENTION: (default-local) paid account successfully upgraded /!\
18:03:22  <pkrumins>\o/
18:03:28  <pkrumins> `-<
18:21:42  <rowbit>Hourly usage stats: [developer: 3, free: 59]
18:27:05  <Domenic__>defunctzombie: so about those bitcoins
18:27:15  <defunctzombie>Domenic__: yea.. about those bitcoins
18:27:17  <defunctzombie>:)
18:28:39  <Domenic__>what triggered the bubble burst? is it just ddosing?
18:29:16  <Domenic__>wow it's falling fast according to bitfloor
18:29:55  <yorick>Domenic__: I think it's mostly ddossing
18:30:08  <yorick>bitcointalk.org is down too
18:37:03  <defunctzombie>Domenic__: I think it is something malicious
18:37:15  <defunctzombie>Domenic__: which then causes everyone to panic
18:37:19  <defunctzombie>and these services get overloaded
19:07:49  <Raynos>Domenic__: your reply to that monad thing is very dickish :/
19:08:28  <Domenic__>Raynos: this guy is a pretty well-known troll
19:08:43  <Raynos>Just like I'm a pretty well-known troll
19:09:21  <Raynos>he makes jokes about the weak type kids just like I make jokes about the jquery kids
19:09:47  <Raynos>Does that stop us from recognizing when people give serious advice?
19:09:53  <Domenic__>no like trolling lxjs by talking about haskell at a js conference and saying "i don't like javascript" despite being an invited speaker at a js conference
19:10:01  <Domenic__>i don't think he gives serious advice
19:10:19  <thl0>Raynos: sorry couldn't help myself
19:10:21  <Domenic__>i think he is trapped in a functional programming typed-language fantasy land
19:10:26  <Raynos>...
19:10:44  <Raynos>That depends on context
19:11:06  <Domenic__>his context was "ur doing it wrong"
19:11:37  <Raynos>Domenic__: I agree with your conclusion that attempting to polymorphism with support all monads is out of scope for promises/A+
19:11:57  <Raynos>its just you decided to not take him seriously and instead shoot him down as a troll based on your personal opinions
19:12:09  <Raynos>And he's probably right, lack of types is doing it wrong
19:12:26  <Domenic__>you kind of have to draw the line somewhere
19:12:27  <Raynos>No-one in their right mind says that JavaScript's type system can't be improved
19:12:38  <Domenic__>when someone comes in and says "my way is best! but it's totally different!" you can't take all those people seriously
19:13:07  <thl0>Domenic__: agree with you there, what he asked for didn't fit with JS promises at all
19:13:44  <Raynos>Domenic__: all he is saying is that given a standardized `point` operator we can do better things
19:13:53  <Raynos>his bikeshed on changing `then` is a bikeshed
19:14:25  <Domenic__>Raynos: that is a very charitable interpretation of his article and his tone
19:14:27  <Raynos>its not about type fantasy land. It's about function composition
19:15:12  <Raynos>Domenic__: When i deal with people like him or david mark I respect their opinion and try to look through their layers of bikesheddery, pedantry and stubborn-ness
19:15:35  <Raynos>There are gems of genuine advice that are being poorly delivered
19:15:57  <Raynos>but his monads & promises solve two completely disjoint problems
19:16:25  <Raynos>promises are async try catch, monads are a different beast aimed at composability
19:17:38  <Domenic__>i guess you just have more patience than i for that type of thing
19:17:43  <mbalho><unsolicited opinion>monads and promises are a thing you add to your code if you want more tooling and are willing to increase the cognitive load required to understand your program</unsolicited opinion>
19:17:52  <mbalho>there is nothing wrong with tooling though :D
19:18:00  <thl0>Raynos: don't fully agree - promises are to compose a chain of functions
19:18:02  <mbalho>just get off my lawn with it
19:18:16  <thl0>Raynos: try catch is just an extra nice feature
19:18:27  <Domenic__>mbalho: i think i agree with that. until we have generators promises require extra cognitive load
19:18:43  <Raynos>Domenic__: that statement is bullshit
19:18:47  <Domenic__>i've been meaning to write a blog post about that. how promises aren't really a big enough win in node.js for now.
19:18:52  <Raynos>your assuming that ES6 generators don't require extra cognitive load
19:18:56  <thl0>Raynos: functions further down the chain get called with values produced by functions higher up, so how is that not composing?
19:19:04  <Raynos>you've just moved the cognitive load from promises into generators and claims this solves the probelm
19:19:19  <Domenic__>Raynos: I think they do not. Just like you don't think of try/catch in terms of gotos and all the cognitive load translating from try/catch to gotos causing you to do.
19:19:37  <thl0>you basically compose smaller async workflows into larger ones
19:19:37  <Domenic__>s/causing/causes
19:19:39  <Raynos>thl0: that's composing as in `compose(a, b) -> c` not composition which is writing polymorphic functions
19:20:02  <mbalho>the strength and weakness of callbacks is that they are stupid
19:20:26  <thl0>Raynos: but you can compose functions in JS like that - promises have nothing to do with that
19:20:34  <thl0>promises compose async workflows
19:21:34  <Raynos>no
19:21:42  <rowbit>Hourly usage stats: [developer: 1, free: 44]
19:21:47  <Raynos>value representations of asynchronous work compose
19:21:52  <Domenic__>callbacks and generators both require very little understanding to use, just like all basic language features really. promises are trying to implement a new language feature without syntax, so theoretically it's nicer, but in practice it is indeed extra cognitive understanding you need.
19:21:53  <Raynos>or abreviated
19:21:56  <Raynos>values compose.
19:22:16  <Raynos>Domenic__: I don't think generators require "very little" understanding
19:22:25  <thl0>yeah values produced by async operations
19:22:42  <Domenic__>Raynos: why
19:22:47  <Raynos>thl0: continuable's also compose
19:23:07  <Raynos>Domenic__: because blocking syntax that is actually async requires me to think very fucking hard about race conditions
19:23:18  <Domenic__>Raynos: example please
19:23:20  <Raynos>I have spend months learning how to deal with callback based race conditions
19:23:25  <Domenic__>my experience in C# is the opposite
19:23:39  <Domenic__>it is much easier to reason about race conditions when you have a simple syntax for it
19:23:52  <Raynos>I have a strong intiution for debugging when async callbacks dont work because I spend months understanding the pitfalls
19:23:57  <Raynos>I will have to do the same for generators
19:24:04  <Raynos>it will take me months to be comfortable working with them
19:25:48  <Raynos>thl0: also https://github.com/Raynos/continuable
19:26:23  <Raynos>composition is trivial with values. `Promise#then` does a lot more to allow for "async try catch"
19:27:35  <pkrumins>yes! trap 'sudo kill -9 -- -$$' EXIT
19:28:45  <thl0>ok, so here it is better phrased promises allow composition, just not of functions, instead of values produced by them
19:29:30  <thl0>Raynos: I think we actually agree - I may have expressed it not very clearly
19:29:39  <pkrumins>we had this problem that we couldnt kill a bash script's child processes
19:30:00  <pkrumins>when the bash script exits
19:30:07  <Raynos>thl0: I agree, however promises are not a minimal implementation of something that allows composition
19:30:07  <pkrumins>that trap command gets rid of them nicely
19:30:19  <Raynos>I also think the goal of promises is seperate from composition
19:30:25  <thl0>agreed, since they offer more features
19:30:40  <Raynos>or at least I agree with Domenic__ in that "the point of promises" is emulating async "try catch"
19:30:51  <Domenic__>:)
19:31:00  <Raynos>Domenic__: also the answer about generators is that i need to use them before I can judge
19:31:13  <Domenic__>Raynos: kk. i can tell you from C#, they are nice :)
19:31:36  <Raynos>but in C# you dont debug async code
19:31:40  <Raynos>it's just not the same.
19:31:41  <Domenic__>O_____o
19:31:44  <Domenic__>that's just not true
19:31:48  <thl0>Raynos: they are not hard, just a like a list that you can keep stuffing values in one at a time
19:31:58  <pkrumins>in C# the async code debugs you
19:31:58  <Raynos>Domenic__: you dont debug "only async code"
19:32:16  <Domenic__>pkrumins: haha
19:32:24  <pkrumins>;)
19:32:26  <Domenic__>Raynos: you do the same as in JS. All I/O is async
19:32:40  <Raynos>thl0: but its a function that halts. What happens to the variables it closes over?
19:32:55  <Raynos>Domenic__: in C# NOT all I/O is async
19:33:07  <Raynos>which is why I argue it's different but maybe I'm wrong
19:33:10  <Domenic__>Raynos: that's true. there are sync APIs. but people don't use those since C# 3.
19:33:33  <thl0>Raynos: it doesn't really halt, its like a state machine
19:33:58  <thl0>actually that is how it is implemented in traceur (you saw that ugly code before right)?
19:34:03  <thl0>that was the state machine
19:34:07  <Domenic__>sorry, correction. as of c# 5, people only use the async apis. (i meant to say "after c# 3 people don't use the sync apis" but that's wrong, i forgot about c# 4, which was a pretty boring release imho)
19:35:40  <Raynos>Domenic__: you mean ASP.NET MVC does not have synchronous APIs for reading from `Request` and synchronous APIs for writing to `Response`
19:37:40  <Domenic__>Raynos: don't confuse streams and promises. I actually haven't used C# streams very much (but they do exist, e.g. http://stackoverflow.com/questions/9541351/returning-binary-file-from-controller-in-asp-net-web-api). But my experience is more Windows 8 app world where streaming arbitrary size data wasn't important, so i just read files into memory or read http responses using async i/o
19:37:59  <Raynos>thats irrelevant
19:38:43  <Domenic__>what i mean is that you don't do blocking fs.read() anymore, you do `await fs.read()` and it's async i/o instead of blocking i/o.
19:38:45  <Raynos>I would assume you would use generators to model all types of IO as a sync api
19:39:17  <Domenic__>only one-and-done operations
19:39:28  <Domenic__>but maybe streams can be a series of one-and-dones, not sure
19:40:15  <Domenic__>e.g. (just guessing) pipe <=> `var data; while(data = await source.read()) { sink.write(data); }`
19:40:33  <Raynos>almost
19:40:59  <Raynos>I prefer to think of `pipe` not being needed and have a `Reader(ReadableStream)` api instead
19:45:11  <Domenic__>sigh streams apis
19:45:36  <Domenic__>Raynos: you gonna be at any conferences soon? wanna hash out some streams stuff in person.
19:46:05  <Domenic__>so we can come up with a concrete proposal for fixing and/or replacing that w3c streams api
19:53:26  * defunctzombiechanged nick to defunctzombie_zz
19:55:11  <juliangruber>w3c streams OO
19:55:11  <juliangruber>onloadstart, onprogress, onload, onabort, onerror, onloadend
19:55:11  <juliangruber>ONMADNESS
19:55:34  * defunctzombie_zzchanged nick to defunctzombie
19:57:20  * defunctzombiechanged nick to defunctzombie_zz
19:57:23  * defunctzombie_zzchanged nick to defunctzombie
19:58:47  * defunctzombiechanged nick to defunctzombie_zz
20:01:36  <mbalho>ONMICROSOFT
20:02:34  <Domenic__>most of those can probably be replaced with promises :)
20:02:59  <Domenic__>really one of the major reasons they got added to the dom is all those utterly stupid events that only happen one time
20:03:11  <Domenic__>and often occur in error/success pairs
20:03:27  * Correnjoined
20:04:18  * kenperkinsquit (Remote host closed the connection)
20:07:26  * kenperkinsjoined
20:08:21  * Correnquit (Ping timeout: 245 seconds)
20:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 37]
20:24:58  * defunctzombie_zzchanged nick to defunctzombie
20:25:50  <mikolalysenko>in npm, how does the require("a/b") thing work again?
20:26:00  <mikolalysenko>I think I've seen it before, but maybe I am misremembering
20:26:10  <mikolalysenko>like I want to create a module with two parts:
20:26:25  <mikolalysenko>require("somemodule/server") and require("somemodule/client")
20:26:43  <mikolalysenko>and store it in npm
20:27:49  <mbalho>mikolalysenko: module.exports.client = require(path.join(__dirname, 'client.js')) is one way
20:28:36  <mikolalysenko>hmm
20:29:09  <mikolalysenko>well, I kind of wanted to do it this way so that if you browserified the package then the server code would not necessarily end up getting transmitted
20:29:43  <Domenic__>mikolalysenko: you just place extra modules in your package's root
20:30:17  <mikolalysenko>Domenic__: thanks!
20:30:23  * tmcwquit (Remote host closed the connection)
20:31:10  * tmcwjoined
20:31:18  <Raynos>juliangruber: w3c streams === zero backpressure, zero abort
20:32:03  * mmckeggjoined
20:32:11  <Raynos>miko: require("a/b") is just require("node_modules/.../a/b")
20:32:17  <Raynos>so b.js in the root folder of the thing works
20:33:10  <mikolalysenko>cool! I assumed it worked something like that, but couldn't find the documentation
20:34:02  <mikolalysenko>also is browserify smart enough to not include the rest of the stuff in a module if I just require("a/client")
20:34:18  * kenperkinsquit (Remote host closed the connection)
20:34:58  * kenperkinsjoined
20:41:13  * ITprojoined
20:49:17  * mikealquit (Ping timeout: 252 seconds)
20:56:42  <Raynos>yes
20:56:51  <Raynos>assuming client doesn't do something silly like require("./server")
20:56:59  <Raynos>I use this to create effect to include single files
20:57:10  <Raynos>that way I can split 400loc into 10 40loc files and reduce size
21:00:20  <thl0>substack: ping
21:13:59  * jxsonquit (Remote host closed the connection)
21:20:05  <substack>pong
21:21:16  * ITproquit (Ping timeout: 260 seconds)
21:21:37  * ITprojoined
21:21:42  <rowbit>Hourly usage stats: [developer: 3, free: 65]
21:22:24  <thl0>substack: could you merge my PRS plz, most importantly the NaN fix in deep-equal
21:22:57  <thl0>substack: otherwise it NaN shows up as changed on every scriptie-talkie line i.e.: http://thlorenz.github.io/scriptie-talkie/?code=var%20a%20%3D%20NaN%0Avar%20b%0Avar%20c
21:23:52  <thl0>substack: the other PR fixes some edge case in difflet which caused it to crash before
21:24:21  <substack>but there's already isNaN()
21:25:31  <thl0>but iNaN(undefined) is true
21:25:37  <substack>yes was just playing with it
21:25:42  <thl0>so the check I have is better
21:25:46  <substack>problem: return typeof value == 'number' && value !== value;
21:25:50  <substack>== vs !==
21:25:53  <substack>first should be ===
21:26:13  <thl0>not really since typeof is guaranteed to return a string
21:26:24  <thl0>but for consistency it could also be ===
21:26:42  <Domenic__>too bad there's no linter to catch such things for you
21:27:15  <thl0>actually I turned that off on my linter since at times it makes sense to use ==
21:27:25  <substack>oh whoops you're right
21:27:25  <Domenic__>never
21:27:30  <substack>shouldn't matter
21:27:32  <thl0>few cases one being typeof
21:27:44  <Domenic__>better to pretend == doesn't exist.
21:27:56  <thl0>ok I can live with that
21:28:09  <thl0>so substack do you want me to update the PR to use === ?
21:28:42  <thl0>Domenic__: just some people like TJ actually insist on the opposite, i.e. when you know == is fine, use it
21:28:56  <Domenic__>those people are evil and should be eaten by dinosaurs
21:29:21  <mbalho>some people like to think that all programmers are as talented as they are
21:29:33  <mbalho>NICE INSULTS!
21:29:33  <LOUDBOT>WHAT IF YOU'RE WRONG AND WHAT YOU THINK IS LOVE IS ACTUALLY HATE
21:29:56  <Raynos>thl0: dont trust TJ
21:29:58  <Raynos>>_>
21:30:00  <Domenic__>haha i love it when LOUDBOT is topical
21:30:22  <thl0>Raynos: not trusting anyone
21:30:24  <Raynos>mbalho: sounds like the node community. "callbacks are easy" :D
21:30:33  <thl0>Raynos: just trying to match people's style when PRing
21:30:42  <Raynos>oh
21:30:50  <Raynos>you should troll substack and remove his whitespace :D
21:30:51  <substack>thl0: does your patch work the same way as node core's assert.deepEqual() still?
21:31:13  <thl0>Raynos: that style is not always obvious from just looking at the existing code
21:31:15  <mbalho>Raynos: that is exactly the opposite of what i mean
21:31:38  <thl0>substack: not sure - if assert.deepEqual is also broken than no, let me check
21:32:00  <Domenic__>Object.is FTW
21:32:44  <thl0>substack: so assertDeepEqual also thinks NaN != NaN
21:32:56  <substack>but isn't that true?
21:32:59  <thl0>assert.deepEqual(NaN, NaN) -> AssertionError: "NaN" deepEqual "NaN"
21:33:14  <thl0>it's kind of a JS bug
21:33:27  <substack>I'm not even sure if that can be considered "broken"
21:33:35  <substack>I want parity with the way it works in node core
21:33:46  <thl0>Infinity == Infinity -> true
21:33:51  <Domenic__>yeah. probably need to write your own deep-equal that uses Object.is semantics :(
21:33:57  <thl0>NaN === NaN -> false
21:33:59  <Domenic__>thl0: -0 === +0 -> true
21:34:00  <thl0>that is broken
21:34:24  <thl0>Domenic__: that makes sense I guess
21:34:43  <thl0>substack: I understand if you want to stay compatible with core and assert
21:35:11  <thl0>I can use my fork in scriptie-talkie since there it has an annoying side effect
21:35:32  <Domenic__>publish it as deep-is
21:36:59  <thl0>Domenic__: that is an option
21:37:21  <thl0>not sure if just using my fork suffices though, since I hit a specific edge case
21:40:01  <Domenic__>sure but i'd use deep-is over deep-equal
21:40:34  <thl0>Domenic__: how about I publish as deep-equal-with-fixed-NaN-since-that-is-better
21:41:36  <thl0>Domenic__: or maybe deep-is will do - it's shorter
21:44:18  * jxsonjoined
21:45:01  * nicholasfjoined
21:46:08  <Domenic__>lol
21:46:24  <Domenic__>I like deep-is because it's deep-equal but with Object.is instead of ===
21:46:44  <jesusabdullah>niftylettuce: Do you know a good place for printing a0 posters on demand? My default is zazzle but you seem hip on this sort of thing
21:46:48  <thl0>makes sense - will go out tonite
21:47:06  * thl0just defeatedly closed PR on deep-equal
21:54:06  * jxsonquit (Ping timeout: 264 seconds)
22:04:41  <Raynos>deep-is is useless :/
22:04:51  <Raynos>oh wait
22:04:55  <Raynos>its recursive-is
22:05:21  <thl0>Raynos: that's deep !
22:10:36  <Raynos>https://twitter.com/jsuereth/status/322106645662539777
22:12:16  * jxsonjoined
22:15:42  * thl0quit (Remote host closed the connection)
22:21:42  <rowbit>Hourly usage stats: [developer: 1, free: 47]
22:32:06  <Domenic__>man this guy is basically ruining promises for me
22:32:22  <Domenic__>my motivation to work on them when i know i'm going to have to deal with this self-righteous shit is pretty low
22:36:43  <mikolalysenko>th10: regarding NaN discussion, you can use float-bits to check equality
22:36:47  <mikolalysenko>at least for fp values
22:36:57  <mikolalysenko>I may make a double-bits to check equality for double values
22:39:35  * no9joined
22:42:20  * stlsaintjoined
22:46:07  * stlsaintquit (Client Quit)
22:46:11  * nicholasfquit (Read error: Connection reset by peer)
22:47:00  * stlsaintjoined
22:50:18  <Domenic__>uh oh
22:50:27  <Domenic__>we are using fs.readFileSync in our server-side handlebars renderer
22:50:32  * Domenic__facepalms
22:53:05  <mbalho>lol
22:54:57  * yorickquit (Read error: Connection reset by peer)
22:55:09  * Domenic__quit (Remote host closed the connection)
23:04:53  * tmcwquit (Remote host closed the connection)
23:07:09  <Raynos>Domenic__: what guy?
23:08:32  <Raynos>Domenic__: you can use fs.readFileSync if you cache the result :D
23:09:38  * dominictarrjoined
23:13:45  <Raynos>Domenic_: what's actually the problem, I dont see him being a self-righteous shit.
23:21:42  <rowbit>Hourly usage stats: [developer: 0, free: 33]
23:26:05  * thl0joined
23:29:51  <no9>Domenic__ don't forget to compile the template as well
23:30:38  * thl0quit (Ping timeout: 255 seconds)
23:31:54  * ITproquit (Ping timeout: 264 seconds)
23:35:34  * Guest55310joined
23:35:58  * CryptoQuickjoined
23:37:43  * no9quit (Ping timeout: 264 seconds)
23:38:12  * lepahcjoined
23:38:50  * chapelquit (Read error: Operation timed out)
23:38:51  * lepahcchanged nick to chapel
23:41:03  * CryptoQuickquit (Quit: CryptoQuick)
23:41:12  * dominictarrquit (Quit: dominictarr)
23:41:23  * CryptoQuickjoined
23:41:26  <mikolalysenko>In dnode is there anyway to get some identifier associated with the client that is invoking the rpc method?
23:42:21  <mikolalysenko>or do I have to do something like create a separate dnode instance for each client that connects?
23:46:37  * ins0mniajoined
23:49:02  * ins0mniaquit (Remote host closed the connection)
23:49:37  * CryptoQuickquit (Quit: CryptoQuick)
23:50:48  * ins0mniajoined
23:52:21  <substack>mikolalysenko: you get all of that already, I'm not sure what you're looking for
23:55:07  * ins0mniaquit (Remote host closed the connection)
23:56:17  <substack>mikolalysenko: dnode(function (remote) {}) <-- you get the remote ref here
23:56:25  <substack>and the .connect(function (remote) {}) has the same signature