00:00:00  * ircretaryquit (Remote host closed the connection)
00:00:08  * ircretaryjoined
00:07:26  * ednapiranhaquit (Quit: Leaving...)
00:10:23  * thlorenzjoined
00:13:42  * ednapiranhajoined
00:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 36]
00:18:03  <tilgovi>thlorenz: btw, the issue I had with .require() was that I took the promise trick from connect-browserify but b0rked my overriden build and was invoking browserify's bundle() with the wrong global
00:18:06  <tilgovi>all fixed
00:18:12  <tilgovi>sorry for the noise
00:18:30  * thlorenzquit (Ping timeout: 246 seconds)
00:28:41  * timoxleyjoined
00:33:15  * timoxleyquit (Ping timeout: 272 seconds)
00:33:22  <creationix>meh, streams are so hard
00:42:00  * jcrugzz|afkchanged nick to jcrugzz
00:54:10  * defunctzombie_zzchanged nick to defunctzombie
01:02:17  * ednapiranhaquit (Remote host closed the connection)
01:07:29  * Maciek416quit (Remote host closed the connection)
01:07:48  * jergasonquit (Quit: jergason)
01:08:01  * Maciek416joined
01:09:39  * cianomaidinquit (Quit: cianomaidin)
01:10:10  * cianomaidinjoined
01:12:08  * Maciek416quit (Ping timeout: 240 seconds)
01:14:39  * cianomaidin_joined
01:14:44  * ednapiranhajoined
01:15:19  * thlorenzjoined
01:15:59  * jergasonjoined
01:16:39  * ednapiranhaquit (Remote host closed the connection)
01:16:45  <rowbit>Hourly usage stats: [developer: 2, free: 69]
01:16:57  * cianomaidinquit (Ping timeout: 272 seconds)
01:16:57  * cianomaidin_changed nick to cianomaidin
01:19:46  * thlorenzquit (Ping timeout: 245 seconds)
01:20:50  <Raynos>creationix: the problem with streams is there is no one abstraction to rule them all
01:20:54  * thlorenzjoined
01:21:23  <Raynos>creationix: which is why I like consumer(producer) because every consumer can have its own implementation of `.pipe()` and that pair of consumer + producer can have extra implementation details for efficient communication
01:22:46  * cianomaidinquit (Remote host closed the connection)
01:25:43  * cianomaidinjoined
01:25:49  * cianbeanjoined
01:25:49  <cianbean>Howdy. I am a furry robot.
01:29:26  * timoxleyjoined
01:29:50  * cianbeanquit (Ping timeout: 240 seconds)
01:32:20  * jxson_joined
01:33:26  * timoxleyquit (Ping timeout: 240 seconds)
01:35:11  * jxsonquit (Ping timeout: 245 seconds)
01:46:13  * jxson_quit (Remote host closed the connection)
01:46:40  * jxsonjoined
01:47:06  * jxsonquit (Read error: Connection reset by peer)
01:47:14  * ednapiranhajoined
01:47:18  * jxsonjoined
01:51:52  * jxsonquit (Remote host closed the connection)
01:55:33  * ednapiranhaquit (Ping timeout: 245 seconds)
01:59:48  <defunctzombie>substack: does the process.env.PORT stuff work for testling now?
01:59:58  <defunctzombie>substack: same as with local testling CLI tool?
02:00:22  * cianomaidinquit (Quit: cianomaidin)
02:04:32  * timoxleyjoined
02:06:54  <substack>defunctzombie: I don't think there's a way to set the PORT yet with the hosted version
02:07:07  <defunctzombie>substack: wasn't it set by the environment?
02:07:23  <defunctzombie>substack: iirc that was the way it was gonna be when the "server" field was used in testling ?
02:11:14  <defunctzombie>thlorenz: ping
02:15:27  * Maciek416joined
02:16:45  <rowbit>Hourly usage stats: [developer: 3, free: 13]
02:17:42  * ednapiranhajoined
02:18:55  <rowbit>substack, pkrumins: Encoders down: 50.57.103.135 (free2)
02:26:24  <thlorenz>defunctzombie: pong
02:26:44  <defunctzombie>thlorenz: reading over this zuul stuff cause I want to launch an express server for my tests to test against
02:26:54  <defunctzombie>thlorenz: is that what "initApp" is for?
02:28:58  <thlorenz>defunctzombie: yep, here is an example: https://github.com/thlorenz/ses-core/blob/master/utils/test-support.js#L34
02:29:10  <thlorenz>but you don't have to define it if you don't need custom stuff
02:29:37  <defunctzombie>well, I am testing a client side model framework thing I am building
02:29:55  <defunctzombie>so I need to hit a server to test my save/fetch stuff
02:30:01  <defunctzombie>so I think I need this haha
02:30:03  <thlorenz>actually this: https://github.com/defunctzombie/zuul#config explains it pretty well
02:30:27  <thlorenz>defunctzombie: err, don't I remember faintly that at some point you didn't like that feature ;)
02:30:59  <defunctzombie>I think it could be done a bit cleaner ;P
02:31:06  <defunctzombie>I tried using testling CLI tool
02:31:15  <defunctzombie>and that works well, but doesn't have the auto refresh zuul does
02:31:24  <defunctzombie>which I like cause I can just refresh my test page
02:31:40  <defunctzombie>and zuul output is much prettier :)
02:31:55  <substack>should I implement testling --watch?
02:31:59  <thlorenz>yeah, I refuse to work w/out autorefresh
02:32:14  <thlorenz>substack: watch may not be the right thing
02:32:36  <thlorenz>if it could be more similar to what chrisdickinson did with beefy -- that'd be awesome
02:32:38  <defunctzombie>thlorenz: config stuff worked.. nice
02:32:42  <thlorenz>:)
02:32:55  <defunctzombie>substack: I would like that personally
02:33:02  <thlorenz>if you have ideas to improve the way it's structured -- I'm open
02:33:26  <defunctzombie>substack: when I am writing tests I don't want to constantly open and close my browser
02:33:32  <thlorenz>defunctzombie: we could do a minor up if API changes -- I only have few apps depending on this right now and could still change stuff
02:33:45  <defunctzombie>thlorenz: I am not in a hurry to change it
02:33:50  <defunctzombie>if it works for you then awesome
02:33:55  <defunctzombie>I got it to do what I needed :)
02:33:59  <defunctzombie>so thanks for that!
02:34:10  <thlorenz>np :)
02:34:40  <thlorenz>cool then, but back to substack implementing beefy features for testling i.e. --live I give it +5
02:35:07  <thlorenz>substack: it would work w/ -x open right?
02:36:34  * ferossquit (Quit: feross)
02:37:35  <thlorenz>defunctzombie: btw when looking at the sample I sent I'm wondering: does express::sendFile pipe a fileReadStream?
02:37:40  <thlorenz>it better does
02:37:54  <defunctzombie>no idea.. i've never used sendfile
02:38:05  <defunctzombie>and this sinon stuff... well I dunno what random shit htat is :)
02:38:14  <thlorenz>I guess better safe than sorry
02:38:16  <defunctzombie>assert is all you need
02:38:23  <thlorenz>it's cause sinon is broken
02:38:26  * calvinfoquit (Quit: Leaving.)
02:38:27  <thlorenz>oh and not my choice
02:38:41  <defunctzombie>haha
02:38:51  <thlorenz>but if you need some simple stubbing it's quite nice, just breaks browserify like crazy
02:39:03  <defunctzombie>why is that?
02:39:04  <thlorenz>cause it wants to work with node too, so it does the wrongest things
02:39:21  <defunctzombie>of course it does
02:39:26  <defunctzombie>trying to do env detection?
02:39:30  <defunctzombie>like a dumb module
02:39:37  <defunctzombie>instead of letting the bundler do it I bet
02:39:48  <thlorenz>can't remember the syntax, but checking for function calls became one liners instead of 5 liners (when doing it by hand)
02:40:04  <thlorenz>also it can stub time stuff - Domenic_ knows it better than I do
02:40:07  <defunctzombie>one day I will be able to make people see that env checks in modules are bad
02:40:36  <thlorenz>defunctzombie: depending on any global stuff in a lib is bad -- at least let me override it
02:40:40  * ferossjoined
02:43:59  <defunctzombie>thlorenz: just need to figure out a good way to make zuul initApp stuff play nice with a server.js file for testling
02:44:18  <defunctzombie>since my real goal is to get this tested in testling as well
02:44:47  <thlorenz>hm, well you can basically do anything in there (that's why I made it a function instead of options)
02:45:02  <defunctzombie>yea
02:45:06  <defunctzombie>I think I know what I will do
02:45:33  <thlorenz>I haven't looked too much at testling lately so I can't help much, I just use it like: 'testling -x open' haha
02:45:51  <defunctzombie>heh
02:50:43  <defunctzombie>thlorenz: one annoying thing with initApp is that it doesn't reload my server code
02:51:03  <defunctzombie>substack: if you make --watch mode for testling CLI ... it should reload the server code if that changes too methinks
02:51:04  <thlorenz>huh, not sure what you mean
02:51:26  <thlorenz>defunctzombie: ah, well no
02:51:33  <thlorenz>you should run nodemon for that
02:51:46  <thlorenz>since you don't wanna restart the server just cuz some client side code chagned
02:52:08  <thlorenz>too slow that way, just letting server stay hot and refreshing bundle is much faster
02:52:12  <defunctzombie>thlorenz: yea, I just got around it with node-dev
02:52:16  <defunctzombie>node-dev is better than nodemon :)
02:53:03  <thlorenz>doesn't matter much what you use, I used nodemon and was able to config it perfectly for my use case
02:53:12  <thlorenz>the .ignore is huge: https://github.com/thlorenz/ses-core/blob/master/.nodemonignore
02:53:23  <thlorenz>so I make sure it doesn't restart on client code changes
02:53:44  <thlorenz>also you can tell it exactly what files to watch for: https://github.com/thlorenz/ses-core/blob/master/package.json#L8
02:53:56  <thlorenz>defunctzombie: what do you like better about node-dev?
02:54:07  * tilgoviquit (Remote host closed the connection)
02:54:07  <defunctzombie>it shims require so you don't need a .ignore
02:54:17  <defunctzombie>it only restarts on actual server file changes
02:55:16  <thlorenz>wow, how does it know what's what?
02:55:54  <defunctzombie>it shims require
02:56:09  <defunctzombie>so it knows what files you required on your server process
02:56:44  <thlorenz>ah, that makes sense -- kinda C make which knows what files you include in your build
02:57:03  <defunctzombie>heh yea
02:57:22  <defunctzombie>anyone got a good module for making a simple in memory document db?
02:57:37  <defunctzombie>so I can test some basic find/put/delete operations?
02:58:13  * thlorenzis impressed by the node-dev growl messages
02:58:27  <thlorenz>I think that in itself is enough reason to make the switch ;)
02:59:06  <thlorenz>defunctzombie: but how does it know to restart server when I for instance change a handlebars template?
02:59:55  <thlorenz>never mind - just read docs ;)
02:59:59  * calvinfojoined
03:00:02  <jcrugzz>defunctzombie: levelup with memory store too simple?
03:00:21  <defunctzombie>jcrugzz: would like to avoid a whole compiled database
03:00:28  <defunctzombie>just need something trivial for testing
03:00:41  <guybrush>defunctzombie: use [] and {} for simple in memory document db :D
03:00:49  <defunctzombie>yea
03:00:56  <defunctzombie>that is what its looking like :)
03:01:17  <jcrugzz>defunctzombie: you only get the compiled piece with leveldown
03:01:21  <thlorenz>defunctzombie: I think you should be able to just install levelup and use memdown
03:01:24  <jcrugzz>which you replace with the memdown
03:01:28  <thlorenz>that shouldn't require any compilation
03:01:32  <thlorenz>jcrugzz: ;)
03:01:36  <defunctzombie>I see
03:01:47  <jcrugzz>thlorenz: on the same page ;)
03:01:50  <thlorenz>yep
03:01:57  <defunctzombie>I think it will be [] and {} for now.. but I might take a loo at this memdown
03:02:19  <thlorenz>so defunctzombie I don't see how I can tell node-dev to compile when a .hbs file changes
03:02:31  <thlorenz>extensions seem to be for coffeescript stuff
03:02:41  <defunctzombie>thlorenz: your hbs files are not in your requires..are they?
03:02:51  <defunctzombie>wouldn't they be compiled when you load whatever page you have or wahtnot?
03:03:15  <defunctzombie>I know my hbs files have nothing to do with the server code
03:03:22  <defunctzombie>views are loaded on page refreshes
03:03:34  <defunctzombie>and in dev I don't cache in memory so it always loads
03:04:01  <thlorenz>defunctzombie: know they get registered with handlebars
03:04:12  <defunctzombie>...?
03:04:12  <thlorenz>so yes the server needs to restart when they change
03:04:34  <defunctzombie>what gets registered?
03:04:38  <thlorenz>yeah, I know -- doing server side rendering :(
03:04:42  <thlorenz>the partials
03:04:52  <defunctzombie>ok.. so?
03:05:07  <thlorenz>so you need to read it from disk again and reregister
03:05:23  <thlorenz>so restarting server in that case takes care of that
03:05:25  <defunctzombie>ah, I see... you use readFile or some such for partials
03:05:56  <defunctzombie>well, I can tell you a hack to make it work with node-dev haha
03:06:07  <defunctzombie>but first I am checking to see if there is a config
03:06:33  <thlorenz>damnit, I can't have growl messages w/out another hack ?
03:06:52  <thlorenz>defunctzombie: https://github.com/thlorenz/ses-core/blob/master/utils/register-partials.js#L25 this runs once on server startup
03:07:20  <thlorenz>so before you explode read this carefully ;) https://github.com/thlorenz/ses-core/blob/master/utils/register-partials.js#L8
03:07:32  <defunctzombie>thlorenz: right, so the hack is to fs watch your partials and then touch that js file :)
03:07:43  <defunctzombie>node-dev will pickup on the touch of the js file
03:07:44  <defunctzombie>:p
03:07:58  <thlorenz>pfui, that's ugly
03:08:11  <defunctzombie>that's what you get for your use of partials
03:08:17  <thlorenz>run another watcher? yeah
03:08:24  <defunctzombie>na
03:08:27  <thlorenz>I rather stick with nodemon then
03:08:29  <defunctzombie>I would just put that into the code
03:08:34  <defunctzombie>it would be like 3 lines
03:08:38  <thlorenz>yeah that makes sense
03:08:42  <defunctzombie>and don't run it in NODE_ENV production or something
03:08:43  <thlorenz>like use monocle?
03:08:48  <defunctzombie>I don't know what that is
03:08:52  <thlorenz>cause fs.watch is kinda broken
03:08:58  <defunctzombie>fs watch works just fine
03:09:11  <defunctzombie>don't use some other thing that other thing will be broken
03:09:26  <thlorenz>not for me, see: https://github.com/thlorenz/replpad/blob/master/lib/watcher.js#L21
03:09:47  <thlorenz>that's why there are so many fs.watch wrappers, cause it behaves kinda weird
03:10:03  <defunctzombie>thlorenz: that is probably cause of atime and mtime change
03:10:10  <thlorenz>possibly
03:10:12  <defunctzombie>sure.. you can detect that if you want
03:10:18  <defunctzombie>in node-dev we do a similar check
03:10:21  <defunctzombie>for mtime
03:10:29  <thlorenz>yeah, but don't you agree that fs.watch should only fire once ?
03:10:41  <defunctzombie>so if monocle does it .. yay, but the code is trivial
03:10:56  <defunctzombie>thlorenz: well, without a testcase to reproduce
03:11:03  <defunctzombie>it isn't so clear what is going on
03:11:11  <defunctzombie>technically it did change :/
03:11:20  <defunctzombie>maybe their change event label is wrong.. I dunno
03:11:29  * shamaquit
03:11:49  <thlorenz>doesn't look like 3 lines: https://github.com/samccone/monocle/blob/master/monocle.js
03:11:52  <defunctzombie>https://github.com/fgnass/node-dev/commit/511d7c9bad47ad5dc9370e7d522509e661bbf4b6
03:12:02  <defunctzombie>that's because it is overengineered
03:12:03  <thlorenz>this is watching recursively though
03:12:05  <defunctzombie>and should not be used
03:12:05  <thlorenz>:)
03:12:13  <thlorenz>haha
03:12:36  <thlorenz>over 100K ppl every month disagree
03:12:37  <defunctzombie>that is the relevant fix from the node-dev repo if yo uwant to repurpose it, could even be simpler I think
03:12:50  <defunctzombie>those people don't want fs.watch fixed
03:12:55  <defunctzombie>they just want their own api around it
03:12:59  <defunctzombie>this is why they disagree
03:13:06  <defunctzombie>not because they care to actually fix it
03:14:07  <thlorenz>interesting, thanks, but that still doesn't include watching recursively, so it'd be a couple more lines ;)
03:14:29  <defunctzombie>if it takes me less time to write the code for the module than it does to find the module.. yea...
03:14:41  <defunctzombie>why do you need recursive?
03:14:49  <defunctzombie>you know the file you want to watch
03:14:53  <thlorenz>no
03:14:58  <thlorenz>I only know the extension
03:14:58  <defunctzombie>https://github.com/thlorenz/ses-core/blob/master/utils/register-partials.js#L25
03:15:10  <thlorenz>ok, got a point
03:15:15  <thlorenz>in that special case
03:15:15  <defunctzombie>seems to me right there you load the actual file
03:15:24  <thlorenz>yep, you are right
03:15:27  <defunctzombie>well, special case is the only case I have
03:15:41  <defunctzombie>if you have some other case send it over and i will tell you how to not overengineer that one too :)
03:15:44  <thlorenz>yay mavericks downloaded (40 mins)
03:16:27  <defunctzombie>mavericks is amazing
03:16:34  <defunctzombie>multimonitor mode is so awesome
03:16:40  <defunctzombie>my new apple laptop should be here next week!
03:16:45  <thlorenz>I'll see in a bit :)
03:16:45  <rowbit>Hourly usage stats: [developer: 8, free: 6]
03:17:56  * thlorenzquit (Remote host closed the connection)
03:30:45  * calvinfoquit (Quit: Leaving.)
03:40:17  * jergasonquit (Quit: jergason)
03:59:48  * mikolalysenkojoined
04:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 34]
04:17:32  * kirbysayshijoined
04:22:00  * ins0mniajoined
04:31:34  * calvinfojoined
04:36:21  * calvinfoquit (Ping timeout: 272 seconds)
04:52:53  * dguttmanquit (Quit: dguttman)
05:01:23  * defunctzombiechanged nick to defunctzombie_zz
05:01:37  * calvinfojoined
05:02:32  * calvinfo1joined
05:02:32  * calvinfoquit (Read error: Connection reset by peer)
05:02:47  * dguttmanjoined
05:06:54  * calvinfo1quit (Ping timeout: 246 seconds)
05:16:45  <rowbit>Hourly usage stats: [developer: 2, free: 7]
05:19:37  * thlorenzjoined
05:21:55  * dguttmanquit (Quit: dguttman)
05:24:35  * thlorenzquit (Ping timeout: 272 seconds)
05:31:24  * calvinfojoined
05:40:12  * kirbysayshiquit (Quit: kirbysayshi)
05:46:46  * Maciek416quit (Remote host closed the connection)
05:47:19  * Maciek416joined
05:48:04  * ferossquit (Quit: feross)
05:48:58  * ednapiranhaquit (Remote host closed the connection)
05:51:49  * Maciek416quit (Ping timeout: 272 seconds)
05:53:51  * Maciek416joined
06:00:46  * Maciek416quit (Remote host closed the connection)
06:01:19  * mikolalysenkoquit (Ping timeout: 272 seconds)
06:01:22  * Maciek416joined
06:05:33  * Maciek416quit (Ping timeout: 245 seconds)
06:15:05  * calvinfoquit (Quit: Leaving.)
06:16:45  <rowbit>Daily usage stats: [developer: 108, free: 641]
06:16:45  <rowbit>Hourly usage stats: [developer: 1, free: 4]
06:17:47  * ins0mniaquit (Ping timeout: 272 seconds)
06:23:34  * aslantquit (Remote host closed the connection)
06:25:41  * mikolalysenkojoined
06:30:14  * mikolalysenkoquit (Ping timeout: 240 seconds)
06:40:35  * jcrugzzquit (Ping timeout: 272 seconds)
07:06:22  * jcrugzzjoined
07:15:41  * jcrugzzquit (Ping timeout: 272 seconds)
07:15:49  * calvinfojoined
07:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 12]
07:16:45  * calvinfoquit (Read error: Connection reset by peer)
07:16:48  * calvinfo1joined
07:21:23  * calvinfo1quit (Ping timeout: 260 seconds)
07:26:28  * mikolalysenkojoined
07:32:35  * mikolalysenkoquit (Ping timeout: 259 seconds)
07:41:03  * calvinfojoined
07:48:57  * calvinfoquit (Quit: Leaving.)
08:13:57  <rowbit>substack, pkrumins: These encoders are STILL down: 50.57.103.135(free2)
08:15:27  <rowbit>substack, pkrumins: Encoders down: 173.203.67.76 (free3)
08:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 12]
08:21:14  * calvinfojoined
08:21:23  * thlorenzjoined
08:26:21  * thlorenzquit (Ping timeout: 272 seconds)
08:29:04  * mikolalysenkojoined
08:35:09  * mikolalysenkoquit (Ping timeout: 241 seconds)
08:38:54  * thlorenzjoined
08:44:43  * thlorenzquit (Ping timeout: 272 seconds)
09:01:39  * ferossjoined
09:08:18  <Raynos>creationix: ping
09:08:50  <Raynos>creationix: can I use js-git in the browser and somehow send that git repo to github ?
09:09:19  * calvinfoquit (Quit: Leaving.)
09:09:28  * calvinfojoined
09:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 3]
09:22:05  * thlorenzjoined
09:24:49  * calvinfoquit (Quit: Leaving.)
09:27:03  * thlorenzquit (Ping timeout: 272 seconds)
09:31:49  * mikolalysenkojoined
09:36:11  * mikolalysenkoquit (Ping timeout: 240 seconds)
09:41:42  * calvinfojoined
09:41:47  * calvinfoquit (Client Quit)
10:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 2]
10:32:48  * mikolalysenkojoined
10:36:00  * jcrugzzjoined
10:37:12  * mikolalysenkoquit (Ping timeout: 240 seconds)
10:40:53  * jcrugzzquit (Ping timeout: 272 seconds)
10:48:47  * nickleeflyjoined
10:49:24  * cianomaidinjoined
10:53:11  * nickleeflyquit (Ping timeout: 250 seconds)
10:57:49  * cianomaidinquit (Quit: cianomaidin)
10:58:52  * cianomaidinjoined
11:05:51  * crankquit (Ping timeout: 272 seconds)
11:07:58  * ferossquit (Quit: feross)
11:08:26  * cianomaidinquit (Quit: cianomaidin)
11:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
11:17:55  * cianomaidinjoined
11:18:30  * cianomaidinquit (Client Quit)
11:23:17  * thlorenz_joined
11:28:23  * thlorenz_quit (Ping timeout: 272 seconds)
11:29:06  * cianomaidinjoined
11:33:35  * mikolalysenkojoined
11:34:30  * cianomaidinquit (Quit: cianomaidin)
11:38:32  * mikolalysenkoquit (Ping timeout: 260 seconds)
12:01:26  * crankjoined
12:06:39  * crankquit (Ping timeout: 272 seconds)
12:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
12:23:01  * mikolalysenkojoined
12:23:52  * thlorenzjoined
12:28:16  * thlorenzquit (Ping timeout: 240 seconds)
12:28:46  * mikolalysenkoquit (Ping timeout: 245 seconds)
13:01:53  * timoxleyquit (Remote host closed the connection)
13:02:29  * timoxleyjoined
13:05:08  * mikolalysenkojoined
13:06:38  * timoxleyquit (Ping timeout: 240 seconds)
13:10:53  * timoxleyjoined
13:13:46  * mikolalysenkoquit (Ping timeout: 245 seconds)
13:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
13:45:31  * temporaryjoined
14:10:06  * cianomaidinjoined
14:10:29  <rowbit>substack, pkrumins: These encoders are STILL down: 173.203.67.76(free3)
14:10:44  * ins0mniajoined
14:13:14  * cianbeanjoined
14:13:14  <cianbean>Howdy. I am a furry robot.
14:13:59  <rowbit>substack, pkrumins: These encoders are STILL down: 50.57.103.135(free2)
14:16:28  * cianbeanquit (Remote host closed the connection)
14:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
14:17:00  * cianbeanjoined
14:18:43  * cianbeanquit (Remote host closed the connection)
14:21:34  * jiangplusjoined
14:22:56  * ELLIOTTCABLEquit (Remote host closed the connection)
14:22:57  * ryanseddonquit (Remote host closed the connection)
14:22:57  * Domenic_quit (Remote host closed the connection)
14:22:57  * Birdbonesquit (Remote host closed the connection)
14:25:08  * thlorenzjoined
14:26:00  * yorickjoined
14:29:18  * thlorenzquit (Ping timeout: 245 seconds)
14:35:46  * dguttmanjoined
14:38:33  * ELLIOTTCABLEjoined
14:38:52  * Birdbonesjoined
14:39:16  * Birdboneschanged nick to Guest83970
14:39:45  * ryanseddonjoined
14:47:38  * temporarychanged nick to prettyrobots
14:48:13  * Domenic_joined
14:49:07  * dguttmanquit (Quit: dguttman)
14:50:11  * dguttmanjoined
14:52:02  * ciansbeansjoined
14:53:11  * Maciek416joined
14:53:13  <prettyrobots>Domenic_: Hello?
14:56:23  * ciansbeansquit (Ping timeout: 260 seconds)
14:57:37  * jcrugzzjoined
14:59:10  * thlorenzjoined
15:08:40  * Maciek416quit (Remote host closed the connection)
15:09:12  * Maciek416joined
15:10:55  * ednapiranhajoined
15:12:58  * Maciek416_joined
15:13:22  * Maciek416quit (Read error: Connection reset by peer)
15:15:58  * ednapiranhaquit (Remote host closed the connection)
15:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
15:23:16  * ednapiranhajoined
15:23:23  * nick__joined
15:24:45  * nick__changed nick to nickleefly
15:25:37  * ednapiranhaquit (Remote host closed the connection)
15:25:44  * thlorenz_joined
15:26:15  * nickleeflyquit (Client Quit)
15:26:25  * jiangplusquit (Quit: leaving)
15:26:32  * Maciek416_quit (Remote host closed the connection)
15:27:08  * Maciek416joined
15:30:35  * thlorenz_quit (Ping timeout: 272 seconds)
15:31:23  * Maciek416quit (Ping timeout: 245 seconds)
15:38:40  * shamajoined
15:43:50  * ciansbeansjoined
15:44:07  * mcollinajoined
15:44:26  * mcollinaquit (Remote host closed the connection)
15:44:44  * mcollinajoined
15:48:03  * ciansbeansquit (Ping timeout: 245 seconds)
15:48:54  * ciansbeansjoined
15:50:05  * brianloveswordsquit (Excess Flood)
15:50:13  * brianloveswordsjoined
15:52:27  * ciansbeansquit (Remote host closed the connection)
15:53:48  * dguttmanquit (Quit: dguttman)
15:55:06  * ciansbeansjoined
15:57:07  * kenperkinsquit (Quit: Computer has gone to sleep.)
15:59:21  * ciansbeansquit (Ping timeout: 245 seconds)
16:01:47  * ciansbeansjoined
16:04:59  * kirbysayshijoined
16:06:47  * ciansbeansquit (Ping timeout: 272 seconds)
16:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
16:29:41  * ciansbeansjoined
16:31:06  * ciansbeansquit (Remote host closed the connection)
16:31:43  * ciansbeansjoined
16:32:31  * ciansbeansquit (Remote host closed the connection)
16:32:49  * ciansbeansjoined
16:34:30  * ciansbeansquit (Remote host closed the connection)
16:34:49  * ciansbeansjoined
16:35:01  * dguttmanjoined
16:35:50  * ciansbeansquit (Remote host closed the connection)
16:36:10  * ciansbeansjoined
16:37:45  * ciansbeansquit (Remote host closed the connection)
16:38:03  * ciansbeansjoined
16:39:49  * ciansbeansquit (Remote host closed the connection)
16:40:50  * ciansbeansjoined
16:40:59  * ciansbeansquit (Remote host closed the connection)
16:41:45  * ciansbeansjoined
16:42:29  * ciansbeansquit (Remote host closed the connection)
16:42:44  * ciansbeansjoined
16:43:36  * cianomaidinquit (Quit: cianomaidin)
16:45:22  * thlorenzquit (Remote host closed the connection)
16:47:01  * ciansbeansquit (Ping timeout: 248 seconds)
16:55:17  <Domenic_>prettyrobots: what's up?
17:05:46  <prettyrobots>Domenic_: Hey!
17:06:23  * mikolalysenkojoined
17:07:23  * kirbysayshiquit (Read error: Connection reset by peer)
17:07:30  * _kirbysayshijoined
17:16:02  <prettyrobots>https://talky.io/foo
17:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
17:22:09  * ednapiranhajoined
17:23:17  * prettyrobotsquit (Quit: Page closed)
17:23:57  * Maciek416joined
17:46:32  * thlorenzjoined
17:54:25  * Maciek416_joined
17:54:25  * Maciek416quit (Read error: Connection reset by peer)
17:54:34  * _kirbysayshiquit (Read error: Connection reset by peer)
17:55:21  * thlorenzquit (Ping timeout: 272 seconds)
17:56:16  * kirbysayshijoined
17:57:03  * thlorenzjoined
17:59:17  * thlorenz_joined
17:59:23  * thlorenzquit (Read error: Connection reset by peer)
17:59:34  * ednapiranhaquit (Quit: Leaving...)
18:03:35  * mcollinaquit (Read error: Connection reset by peer)
18:03:40  * mcollina_joined
18:13:12  * thlorenz_quit (Remote host closed the connection)
18:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
18:18:52  * ELLIOTTCABLEchanged nick to ec
18:21:49  * timoxleyquit (Remote host closed the connection)
18:24:16  * ecchanged nick to ELLIOTTCABLE
18:31:15  <mikolalysenko>I just realized that underscore, coffeescript and backbone are all done by the same guy...
18:33:22  <mikolalysenko>though I don't use any of those tools, I do find it very surpising how popular they are
18:34:44  * Maciek416_quit (Remote host closed the connection)
18:35:18  * Maciek416joined
18:38:14  <mikolalysenko>I wonder if there is more to it than just the substance of those modules...
18:38:25  * yorickquit (Remote host closed the connection)
18:38:40  <mikolalysenko>maybe I am being judgemental, but underscore/coffeescript/etc. all seem like very boring packages that solve even more boring problems
18:38:54  * Maciek416quit (Read error: Connection reset by peer)
18:39:02  <mikolalysenko>so it is odd that there is so much excitement over them
18:39:05  * Maciek416joined
18:39:51  <mikolalysenko>I can't put my finger on it, but there must be something to the way they are presented that makes them so successful
18:43:29  <Domenic_>Boring problems ~ widespread problems => lots of interest
18:43:46  * Maciek416quit (Remote host closed the connection)
18:44:20  * thlorenz_joined
18:44:22  * Maciek416joined
18:44:26  <mikolalysenko>maybe
18:44:58  <mikolalysenko>though the way I am thinking about boring here is that in some sense it almost seems like it isn't really a problem if you stare at it too long
18:45:09  <mikolalysenko>for example, does coffeescript really solve any problems?
18:45:41  <mikolalysenko>and what makes it any better than say typescript or one of the zillion other compile-to-js thin languages?
18:46:20  <mikolalysenko>it seems like there is more than just the fact that they solve a boring problem, but that they make the boring problem seem interesting and fun
18:48:27  * Maciek416quit (Ping timeout: 240 seconds)
18:53:15  * thlorenz_quit (Ping timeout: 272 seconds)
19:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
19:19:25  * tilgovijoined
19:23:05  * timoxleyjoined
19:27:16  * timoxleyquit (Ping timeout: 245 seconds)
19:34:55  * timoxleyjoined
19:39:35  * timoxleyquit (Ping timeout: 272 seconds)
19:42:28  * calvinfojoined
19:48:26  * calvinfoquit (Quit: Leaving.)
19:49:15  * thlorenzjoined
19:53:32  * thlorenzquit (Ping timeout: 240 seconds)
20:06:16  * DTrejojoined
20:10:33  <rowbit>substack, pkrumins: These encoders are STILL down: 173.203.67.76(free3)
20:14:02  <rowbit>substack, pkrumins: These encoders are STILL down: 50.57.103.135(free2)
20:15:11  * jcrugzzquit (Ping timeout: 245 seconds)
20:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
20:21:39  * anvaka_joined
20:22:20  <mikolalysenko>check it out! functional binary search trees: https://github.com/mikolalysenko/functional-red-black-tree
20:23:06  <mikolalysenko>next step is to use this to do fast point-in-polygon queries
20:25:34  * brycebarilquit (Read error: Connection reset by peer)
20:25:41  <anvaka_>mikolalysenko: pretty nice
20:25:46  * brycebariljoined
20:27:38  <anvaka_>wouldn't API documentation be better viewed in the source file?
20:27:48  <mikolalysenko>anvaka_: not that source file :)
20:28:40  <anvaka_>mikolalysenko: why :)?
20:28:54  <mikolalysenko>oh, the code is just nasty is all
20:29:14  <mikolalysenko>making things functional + fast is ugly business
20:30:06  <anvaka_>i hear you. In my work GC hit is #1 performance killer
20:30:24  <mikolalysenko>well, in this case don't expect any gc savings
20:30:46  <mikolalysenko>the main advantage is you save some memory but also get persistence
20:31:14  <mikolalysenko>in general though functional programming techniques don't play nice with incremental algorithms/data structures
20:31:33  <mikolalysenko>since it is hard to express the concept of an incremental change in a data structure using functional notation efficiently
20:32:02  <mikolalysenko>also some data structures don't even have functional analogues afaik
20:33:52  <anvaka_>interesting
20:34:26  * thlorenzjoined
20:34:31  <mikolalysenko>ironically it is easier to implement persistent data structures in imperative languages
20:34:58  <mikolalysenko>for example, there is a method known to turn any data structure with bounded in degree into a fully persistent data structure with O(1) overhead
20:35:26  <mikolalysenko>though it is a little nasty in practices since it requires a lot of book keeping in history tables
20:35:42  * timoxleyjoined
20:37:21  * anvaka_went googling "bounded in degree" meaning
20:37:27  <mikolalysenko>ah
20:37:32  <mikolalysenko>no bounded in degree
20:37:37  <mikolalysenko>hang on, let me get you a reference
20:38:16  <mikolalysenko>this paper: http://www.cs.cmu.edu/~sleator/papers/another-persistence.pdf
20:38:21  <mikolalysenko>another classic from sleator
20:38:28  <mikolalysenko>and tarjan & co
20:39:00  <mikolalysenko>you need a few extra data structures to make it all work
20:39:18  <mikolalysenko>including a version history maintenance structure, which requires an O(1) total order maintenance structure
20:39:34  <mikolalysenko>like this one for example: https://github.com/mikolalysenko/order-maintenance
20:40:19  * timoxleyquit (Ping timeout: 260 seconds)
20:40:28  <mikolalysenko>the algorithm though that functional-red-black-tree uses is not as good as the dsst method
20:40:44  <mikolalysenko>it is more-or-less an adaptation of okasaki's method
20:41:09  <mikolalysenko>the advantage of using the purely functional technique is that it is easier to maintain iterators and other structures
20:41:21  <mikolalysenko>since you don't have to update their pointers when you split a node's version table
20:41:36  * jcrugzzjoined
20:41:43  <mikolalysenko>also accessing a functional tree tends to be a bit faster since it doesn't have a history table
20:41:50  * ferossjoined
20:42:02  <mikolalysenko>the tradeoff is that updates suck compared to the fully persistent algorithm...
20:42:13  <anvaka_>mikolalysenko: thanks for the reference!
20:42:32  <mikolalysenko>anvaka_: no problem!
20:43:27  * ferossquit (Client Quit)
20:46:15  * ferossjoined
20:49:46  * jcrugzzquit (Ping timeout: 245 seconds)
20:51:28  * ferossquit (Quit: feross)
21:06:47  * thlorenzquit (Remote host closed the connection)
21:08:59  * cianomaidinjoined
21:08:59  * cianomaidinquit (Client Quit)
21:10:39  * DTrejoquit (Ping timeout: 260 seconds)
21:13:18  * cianomaidinjoined
21:14:38  * cianomaidinquit (Client Quit)
21:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
21:27:25  * DTrejojoined
21:30:19  * thlorenzjoined
21:36:21  * timoxleyjoined
21:36:50  * thlorenzquit (Remote host closed the connection)
21:40:58  * timoxleyquit (Ping timeout: 245 seconds)
21:41:16  * kirbysayshiquit (Quit: kirbysayshi)
22:08:06  * thlorenzjoined
22:13:07  * thlorenzquit (Ping timeout: 272 seconds)
22:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
22:17:31  * kirbysayshijoined
22:24:32  * brycebarilquit (Read error: Connection reset by peer)
22:28:26  * defunctzombie_zzchanged nick to defunctzombie
22:30:34  * brycebariljoined
22:33:39  * cianomaidinjoined
22:35:01  * ferossjoined
22:37:08  * timoxleyjoined
22:37:59  * thlorenzjoined
22:41:48  * timoxleyquit (Ping timeout: 245 seconds)
22:42:35  * thlorenzquit (Ping timeout: 260 seconds)
22:51:48  * cianomaidinquit (Quit: cianomaidin)
22:59:36  * mikolalysenkoquit (Ping timeout: 245 seconds)
23:02:09  * crankjoined
23:05:25  * cianomaidinjoined
23:09:14  * ciansbeansjoined
23:10:29  * ciansbeansquit (Remote host closed the connection)
23:10:29  * crankquit (Ping timeout: 272 seconds)
23:13:43  * ciansbeansjoined
23:16:07  * ciansbeansquit (Remote host closed the connection)
23:16:24  * ciansbeansjoined
23:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 0]
23:20:03  * ciansbeansquit (Remote host closed the connection)
23:20:18  * ciansbeansjoined
23:20:18  <ciansbeans>Houdy I am a fury robot!
23:20:22  <ciansbeans>Houdy I am a fury robot!
23:20:37  <ciansbeans>Houdy I am a fury robot!
23:21:02  * ciansbeansquit (Remote host closed the connection)
23:21:19  * ciansbeansjoined
23:21:29  <ciansbeans>this is cianomaidin bot!
23:22:05  <cianomaidin>hello
23:25:58  * ciansbeansquit (Ping timeout: 245 seconds)
23:27:10  * DTrejoquit (Remote host closed the connection)
23:27:37  * DTrejojoined
23:32:31  * DTrejoquit (Ping timeout: 260 seconds)
23:35:03  * ciansbeansjoined
23:35:10  <ciansbeans>thisthis is crazy
23:35:23  <cianomaidin>haha
23:37:10  * kirbysayshiquit (Quit: kirbysayshi)
23:38:05  * timoxleyjoined
23:38:22  * ciansbeansquit (Remote host closed the connection)
23:38:50  * thlorenzjoined
23:40:25  * thlorenz_joined
23:40:32  * ciansbeansjoined
23:40:42  <ciansbeans>luxemborg5050a_x123y9
23:40:47  <ciansbeans>lkasd
23:40:49  <ciansbeans>aslkdj
23:40:50  <ciansbeans>laksjd
23:41:00  <ciansbeans>lkjsd003030=--=_AAX
23:41:34  <cianomaidin>date
23:42:17  * ciansbeansquit (Remote host closed the connection)
23:42:35  <cianomaidin>date
23:42:36  * ciansbeansjoined
23:42:41  <cianomaidin>date
23:42:41  * ciansbeansquit (Remote host closed the connection)
23:42:47  * timoxleyquit (Ping timeout: 272 seconds)
23:43:40  * ciansbeansjoined
23:43:47  <cianomaidin>date
23:43:56  <cianomaidin>date
23:44:03  * thlorenzquit (Ping timeout: 272 seconds)
23:44:28  * thlorenz_quit (Ping timeout: 240 seconds)
23:44:48  * ins0mniaquit (Ping timeout: 246 seconds)
23:46:23  * ciansbeansquit (Remote host closed the connection)
23:46:39  * ciansbeansjoined
23:46:43  <ciansbeans>date
23:46:56  <ciansbeans>date
23:47:02  <cianomaidin>date
23:47:02  <ciansbeans>Sat Nov 02 2013 23:47:02 GMT+0000 (GMT)
23:48:35  * ins0mniajoined
23:51:26  * ciansbeansquit (Ping timeout: 240 seconds)
23:53:05  * cianomaidinquit (Quit: cianomaidin)
23:56:26  * ins0mniaquit (Remote host closed the connection)
23:56:43  * mikolalysenkojoined