11:58:40  <rowbit>Hourly usage stats: []
12:58:40  <rowbit>Hourly usage stats: []
13:55:10  <SubStack>tanepiper: well we're not even using fleet yet
13:55:29  <SubStack>but I wrote it so that we would have something to use to orchestrate all of this craziness
13:55:35  <SubStack>and we'll start using it pretty soon
13:58:40  <rowbit>Hourly usage stats: []
14:04:39  * isaacsjoined
14:14:56  <SubStack>also I figured out what was killing the instances
14:14:58  <SubStack>totally my fault too
14:15:04  <SubStack>silly race condition in airport
14:38:54  * isaacs_joined
14:41:32  * isaacsquit (Disconnected by services)
14:41:35  * isaacs_changed nick to isaacs
14:48:46  * _sorensenquit (Quit: _sorensen)
14:49:34  * isaacsquit (Remote host closed the connection)
14:58:40  <rowbit>Hourly usage stats: []
15:03:30  * wiwilliajoined
15:06:15  * chewbrancajoined
15:06:18  * _sorensenjoined
15:06:38  * _sorensenquit (Remote host closed the connection)
15:06:54  * _sorensenjoined
15:09:44  <tanepiper>cool cool - yea i had a play with fleet, very nice :) Although didn't look at it in anger yet, had to get talk stuff prepped and finish off stuff for work last week.
15:11:38  <tanepiper>so I was going to ask, is airport just a wrapper around dnode (i.e. can I do air({ foo: function() {} }, function(remote, connection) { this.bar = function() {}; }).listen('boop') ) ? - the reason I asked is I tried to do the 'static' methods but didn't seem to work for me?
15:30:23  <tanepiper>hmm i think my disconnect fail is understanding where dnode for client-side stuff still fits in. For example https://gist.github.com/ad53c212d491167ea544
15:30:54  <tanepiper>where before I would have an express server for http, and have dnode listen on it, but with this /dnode.js isn't there
15:31:22  <tanepiper>(and it's difficult to know which port to view without querying seaport
15:34:18  * isaacsjoined
15:38:28  * st_lukejoined
15:51:55  * st_lukequit (Read error: Connection reset by peer)
15:52:15  * st_lukejoined
15:58:40  <rowbit>Hourly usage stats: []
16:06:56  * isaacsquit (Remote host closed the connection)
16:12:11  * sorensen_joined
16:12:39  * isaacsjoined
16:15:40  * _sorensenquit (Ping timeout: 260 seconds)
16:18:29  * sorensen_quit (Remote host closed the connection)
16:18:43  * _sorensenjoined
16:20:08  * tanepiperquit (Quit: WeeChat 0.3.7)
16:20:38  * tanepiperjoined
16:20:54  * tanepiperquit (Client Quit)
16:22:46  * tanepiperjoined
16:22:56  * chewbrancaquit (Ping timeout: 252 seconds)
16:25:40  * tanepiperquit (Client Quit)
16:26:02  * tanepiperjoined
16:27:44  * isaacsquit (Remote host closed the connection)
16:28:02  * isaacsjoined
16:37:29  * stlsaintjoined
16:37:40  * isaacsquit (Remote host closed the connection)
16:40:54  * mikealquit (Quit: Leaving.)
16:45:34  * ryan_stevensjoined
16:58:40  <rowbit>Hourly usage stats: []
17:01:34  * chewbrancajoined
17:03:52  * mikealjoined
17:06:26  * zz_shykeschanged nick to shykes
17:12:09  * misterinterruptjoined
17:24:35  * mikealquit (Quit: Leaving.)
17:44:21  * TheJHjoined
17:53:29  * devaholicjoined
17:54:52  * shykeschanged nick to zz_shykes
17:58:40  <rowbit>Hourly usage stats: []
18:02:01  * mikealjoined
18:11:23  * AvianFlujoined
18:11:23  <mikeal>SubStack: hit me up soon, we need to get your flight booked for NodeConf
18:26:37  * wiwilliaquit
18:36:04  * tilgovijoined
18:36:19  <tilgovi>Anyone know how I can get the option key back on my mac?
18:36:36  <tilgovi>I just got a mac for the first time in forever and lion doing a ß when I want option-S is *bullshit*
18:37:11  <tilgovi>I've been googling like mad but can't find a solution.
18:39:44  <misterinterrupt>there is a 'keyboard' section in the system preferences you can set the keys to do different things. there is a button in there called modifier keys
18:39:50  <misterinterrupt>tilgovi:
18:40:04  <tilgovi>misterinterrupt: thanks. I found that very quickly and made caps lock into control
18:40:10  <tilgovi>but unfortunately, you can just set that the option key should be option
18:40:27  <tilgovi>but not that option-s should be passed through as a shortcut rather than used for an international character
18:40:35  <tilgovi>(or option-anything for that matter)
18:40:52  <misterinterrupt>is your keyboard international?
18:41:34  <tilgovi>no… I just realized that emacs seems to capture it fine
18:41:38  <tilgovi>so maybe it's just PyCharm whose bindings suck
18:41:40  * wiwilliajoined
18:41:49  <tilgovi>thanks for your help
18:41:50  <misterinterrupt>sounds strange, afaik option should be option by default
18:41:58  <misterinterrupt>np :)
18:43:22  <tilgovi>http://stackoverflow.com/questions/7637671/using-the-emacs-bindings-in-pycharm-in-os-x-lion
18:43:32  <tilgovi>I think it's a bug in PyCharm
18:58:40  <rowbit>Hourly usage stats: []
19:10:32  * tilgovi_joined
19:10:53  * tilgoviquit (Disconnected by services)
19:10:53  * tilgovi_changed nick to tilgovi
19:11:22  * isaacsjoined
19:16:46  * tilgoviquit (Quit: tilgovi)
19:20:36  * isaacs_joined
19:22:01  * isaacs_quit (Remote host closed the connection)
19:23:51  * isaacsquit (Ping timeout: 256 seconds)
19:23:54  <SubStack>tanepiper: airport is for node to node communication
19:24:08  * mikealquit (Quit: Leaving.)
19:33:43  * alessioalexjoined
19:36:19  * alessioalexquit (Client Quit)
19:52:13  * mikealjoined
19:58:40  <rowbit>Hourly usage stats: []
19:58:40  <rowbit>Daily usage stats: []
20:01:44  * tilgovijoined
20:07:49  * tilgoviquit (Quit: tilgovi)
20:27:57  * saijanai__joined
20:28:13  * saijanai_quit (Ping timeout: 244 seconds)
20:28:13  * saijanai__changed nick to saijanai_
20:39:30  <pkrumins>battlecruiser operational
20:39:32  <st_luke>node on node on node
20:51:15  <maxogden>yo dog
20:51:48  * lionstonejoined
20:58:40  <rowbit>Hourly usage stats: []
20:59:01  <SubStack>now on https!
21:04:25  <tanepiper>SubStack: ahh yea, finally figured that out :D So I still need to use DNode + Express + Seaport to make client based stuff
21:04:55  <SubStack>yep
21:08:38  * lionstonequit (Ping timeout: 244 seconds)
21:16:55  * mikealquit (Quit: Leaving.)
21:17:28  * TheJHquit (Ping timeout: 246 seconds)
21:30:53  <tanepiper>ahh cool so i can use upnode directly, that's neat
21:43:40  * mikealjoined
21:49:13  * yuletidejoined
21:58:40  <rowbit>Hourly usage stats: []
22:17:24  * mikealquit (Quit: Leaving.)
22:20:23  <SubStack>we're up to 108 paying customers now!
22:20:33  <pkrumins>nicely done o/
22:20:40  <SubStack>\o
22:25:09  <tanepiper>woop!
22:25:26  <pkrumins>1. don't die. 2. keep shipping.
22:30:30  <tanepiper>SubStack: see in https://github.com/substack/toy-company-cluster-example - so you run the cluster, then run the bouncy proxy seperatly? (so you would potentially need two app monitors for upstart/monit?) - as I don't see it in the cluster.json
22:31:59  <tanepiper>oh so bouncy starts it's own seaport rather than from the cli, clever
22:33:32  <SubStack>yep
22:33:48  <SubStack>you could run a separate seaport server too but this way it's all in the memory of the same process
22:34:10  <SubStack>so it's easy to query bouncy and you don't need to do an LRU cache with expiry
22:34:24  <SubStack>which is good if you need multiple load balancers but fine for this simple case
22:35:12  <tanepiper>clever :)
22:35:32  <tanepiper>anyway, bedtime - i shall play with this more tomorrow!
22:35:37  <SubStack>sweet
22:35:58  <SubStack>I'll try to have patches to fleet soon to have the git http server authenticate too
22:37:30  * mikealjoined
22:46:47  * xaqjoined
22:50:37  <SubStack>it'd be fun to give a talk about force multipliers in technology
22:50:49  <SubStack>perhaps I'll do a blog post first
22:58:40  <rowbit>Hourly usage stats: []
23:05:51  <rowbit>/!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\
23:05:51  <rowbit>/!\ ATTENTION: (default-local) paid account successfully upgraded /!\
23:09:51  <SubStack>rawk
23:09:53  <SubStack>109
23:20:14  <mikeal>SubStack: i want you to look at something
23:20:19  <mikeal>https://github.com/mikeal/must
23:20:24  <SubStack>click
23:20:36  <mikeal>i need some docs
23:20:38  <mikeal>basically you do
23:20:41  <mikeal>var x = must()
23:20:46  <SubStack>it says "pattern" in the description
23:20:52  <SubStack>I don't think I can look past that.
23:20:57  <mikeal>x.must('thing', 'anotherthing')
23:21:05  <mikeal>then, in the future
23:21:10  <mikeal>x.set('thing', result)
23:21:13  <mikeal>and some other time
23:21:16  <SubStack>"patterns" are confused thinking
23:21:21  <mikeal>x.must('anotherthing', result)
23:21:33  <mikeal>once all the required names are resolved, it emits end
23:21:49  <mikeal>and, any objects that it was piped to are emitted as "dest"
23:22:00  <mikeal>and it holes x.results as an object of all the results
23:22:24  <mikeal>"observer pattern" is a thing
23:22:29  <SubStack>yes that is the problem
23:22:35  <mikeal>you can't just call it "observer", it's actually called "observer pattern"
23:22:40  <SubStack>thinking in terms of things
23:22:43  <mikeal>this is not really that, it's way simpler
23:22:44  <SubStack>instead of verbs
23:22:46  <SubStack>noun-thinking
23:23:09  <SubStack>you could just use verbs to describe what it actually does instead
23:23:13  <SubStack>instead of what it "is"
23:23:14  <mikeal>well, must is the verb
23:23:31  <mikeal>the API is verb, the results are nouns
23:23:43  <SubStack>I'm just talking about the description
23:23:52  <mikeal>that's the third description in 5 minutes
23:23:58  <mikeal>i can't decided what it is
23:24:22  <SubStack>it doesn't need to "be" anything
23:24:26  <SubStack>just say what it does
23:24:36  <SubStack>convey its value proposition by stating what it can do for people
23:24:40  <mikeal>it like, holds your results, emits end
23:25:05  <SubStack>"hold" would be a sweet name
23:25:19  <SubStack>but you could just say that it "holds results" in the desc
23:25:25  <SubStack>and put something about how it's for flow control
23:25:38  <SubStack>anyways the lib itself seems nifty
23:25:52  <SubStack>I'm just being pedantic about how it's described
23:26:16  <mikeal>new description https://github.com/mikeal/must
23:26:18  <SubStack>why does it .pipe()?
23:26:30  <SubStack>haha much better
23:26:50  <mikeal>i have this case where, after "end" is emitted, I want to do something to all the destination streams
23:27:03  <mikeal>so, you can pipe() it to things
23:27:12  <mikeal>and they will all be emitted as "dest" after "end"
23:27:40  <mikeal>this is useful in tako in particular, i can sit on "end", write out to a template, then sit on "dest" for each stream and write out the results to it
23:27:53  <mikeal>at some point in the future i could also handle streaming template stuff
23:27:59  <mikeal>although i'm still skeptical if that's a good idea
23:28:26  <SubStack>I was more thinking why does it .pipe() since I don't see it emitting 'data' events anyplace
23:28:34  <mikeal>it's fake
23:28:35  <mikeal>:)
23:28:38  <SubStack>so it violates my expectation in that respect
23:29:05  <SubStack>also I've seen this approach before in flow control libs
23:29:08  <mikeal>well, if you use it as a base it probably will
23:29:23  <SubStack>of queueing handlers until results are set
23:29:39  <mikeal>i do it inline a lot, this was how page objects worked as well
23:29:57  <SubStack>as a base?
23:30:09  <mikeal>until.inherits(mythin, must.Must)
23:30:21  <mikeal>they might implement the rest of the stream interface
23:30:23  <SubStack>:/
23:30:31  <mikeal>but, mostly
23:30:35  <mikeal>it's so that i can do
23:30:54  <mikeal>req.pipe(x).pipe(res)
23:31:13  <SubStack>that makes sense at least
23:31:39  <mikeal>then, x.results.pipe = req and i can listen for the "dest" event for all the outputs and write out to them after it's completed, or failed
23:31:42  <mikeal>or timed out
23:31:49  <SubStack>I'm not sold on inheritance as the best api for that though
23:32:34  <mikeal>me neither, they can just as easily modify instances
23:32:40  <mikeal>by default that's what the module does
23:32:46  <mikeal>var m = require('must')()
23:37:29  * devaholicquit (Ping timeout: 250 seconds)
23:37:44  * devaholicjoined
23:41:20  * wiwilliaquit
23:48:49  * AvianFluquit (Remote host closed the connection)
23:58:40  <rowbit>Hourly usage stats: []
23:59:47  * mikealquit (Quit: Leaving.)