00:00:02  * ircretaryquit (Remote host closed the connection)
00:00:13  * ircretaryjoined
00:01:15  * tmcwquit (Ping timeout: 268 seconds)
00:01:40  * thlorenzjoined
00:06:45  * Maciek416quit (Remote host closed the connection)
00:07:18  * Maciek416joined
00:12:03  * Maciek416quit (Ping timeout: 265 seconds)
00:15:48  * defunctzombiechanged nick to defunctzombie_zz
00:16:45  <rowbit>Hourly usage stats: [developer: 2, free: 14]
00:17:26  * mpiercequit (Ping timeout: 240 seconds)
00:20:27  * mcollinaquit (Remote host closed the connection)
00:20:59  * mcollinajoined
00:23:23  * williamcottonquit (Ping timeout: 272 seconds)
00:25:55  * mcollinaquit (Ping timeout: 268 seconds)
00:28:58  * ednapiranhaquit (Quit: Leaving...)
00:29:36  * rxgxjoined
00:30:06  * mikolalysenkojoined
00:33:52  * enjaworkquit (Read error: Operation timed out)
00:36:55  * enjaworkjoined
00:41:43  * jergasonquit (Quit: jergason)
00:42:02  * thlorenzquit (Remote host closed the connection)
00:43:30  * yorickquit (Remote host closed the connection)
00:44:39  * jergasonjoined
00:50:56  * enjaworkquit (Ping timeout: 244 seconds)
00:51:35  * mcollinajoined
00:57:43  * Maciek416joined
00:57:46  * mcollinaquit (Ping timeout: 246 seconds)
01:04:44  * jiangplusjoined
01:16:22  * jxsonquit (Remote host closed the connection)
01:16:45  <rowbit>Hourly usage stats: [developer: 12, free: 197]
01:16:49  * jxsonjoined
01:17:05  * jxsonquit (Remote host closed the connection)
01:17:12  * jxsonjoined
01:26:11  * cianomaidinquit (Quit: cianomaidin)
01:27:48  * thlorenzjoined
01:27:54  * cianomaidinjoined
01:31:37  * williamcottonjoined
01:32:21  * thlorenzquit (Ping timeout: 248 seconds)
01:32:58  * hughskquit (Read error: Connection reset by peer)
01:34:26  * jergason_joined
01:35:53  * williamcottonquit (Ping timeout: 244 seconds)
01:37:27  * jergasonquit (Ping timeout: 268 seconds)
01:37:27  * jergason_changed nick to jergason
01:37:59  * jxsonquit (Remote host closed the connection)
01:38:26  * jxsonjoined
01:39:12  * cianomaidin_joined
01:39:49  * cianomaidinquit (Ping timeout: 248 seconds)
01:39:50  * cianomaidin_changed nick to cianomaidin
01:39:56  * rxgxquit (Quit: rage quit)
01:42:40  * Maciek416_joined
01:43:01  * jxsonquit (Ping timeout: 248 seconds)
01:43:16  * thlorenzjoined
01:43:25  * Maciek416_quit (Read error: Connection reset by peer)
01:43:41  * Maciek416_joined
01:44:06  * Maciek416_quit (Read error: Connection reset by peer)
01:45:05  * cianomaidinquit (Quit: cianomaidin)
01:45:31  * Maciek416_joined
01:45:49  * Maciek416_quit (Read error: Connection reset by peer)
01:46:11  * Maciek416_joined
01:46:57  * Maciek41_joined
01:46:57  * Maciek416_quit (Read error: Connection reset by peer)
01:47:31  * thlorenzquit (Ping timeout: 245 seconds)
01:47:31  * Maciek41_quit (Read error: Connection reset by peer)
01:47:42  * Maciek416_joined
01:49:05  * Maciek416_quit (Read error: Connection reset by peer)
01:52:01  * Maciek416_joined
01:52:05  * Maciek416_quit (Remote host closed the connection)
01:54:12  * mcollinajoined
01:59:01  * mcollinaquit (Ping timeout: 272 seconds)
01:59:21  <rowbit>substack, pkrumins: Encoders down: 50.57.103.135 (free2)
02:02:59  * williamcottonjoined
02:06:48  * thlorenzjoined
02:09:05  * jxsonjoined
02:13:23  * williamcottonquit (Ping timeout: 246 seconds)
02:13:26  * jxsonquit (Ping timeout: 240 seconds)
02:14:03  * jergasonquit (Quit: jergason)
02:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 11]
02:17:13  * brianloveswordsquit (Excess Flood)
02:17:45  * brianloveswordsjoined
02:22:50  * DTrejoquit (Remote host closed the connection)
02:23:25  * DTrejojoined
02:28:01  * DTrejoquit (Ping timeout: 268 seconds)
02:29:49  * williamcottonjoined
02:30:44  * tmcwjoined
02:32:57  * soldairquit (Ping timeout: 250 seconds)
02:35:34  * mpiercejoined
02:37:16  * thlorenzquit (Remote host closed the connection)
02:37:52  * thlorenzjoined
02:40:04  <substack>jiangplus: https://www.mediawiki.org/wiki/API:Main_page
02:40:04  * thlorenz_joined
02:40:31  * thlorenzquit (Read error: Connection reset by peer)
02:55:02  * mcollinajoined
02:57:13  * jergasonjoined
02:59:26  * mcollinaquit (Ping timeout: 240 seconds)
03:05:09  <Raynos>miko what is this aho thing ?
03:07:59  * dools_changed nick to dools
03:09:03  * ins0mniaquit (Ping timeout: 260 seconds)
03:10:28  * jxsonjoined
03:10:28  * ITproquit (Ping timeout: 260 seconds)
03:10:53  * ITprojoined
03:11:02  * jiangplusquit (Ping timeout: 240 seconds)
03:11:18  * ITprochanged nick to Guest52327
03:14:33  * jxsonquit (Ping timeout: 244 seconds)
03:15:04  * Guest52327quit (Ping timeout: 244 seconds)
03:16:45  <rowbit>Hourly usage stats: [developer: 5, free: 16]
03:35:51  * defunctzombie_zzchanged nick to defunctzombie
03:36:10  <defunctzombie>substack: I think bouncy has incorrect behavior
03:45:21  <mikolalysenko>Raynos: it is a pattern matching automaton
03:45:41  <mikolalysenko>what I want to do with it is eventually make a pattern matching tool for ndarrays
03:45:48  <mikolalysenko>to find 2d or higher subimages in linear time
03:46:05  <mikolalysenko>but you can also use it as a streaming automata for finding patterns in text
03:46:12  * tmcwquit
03:47:49  * jergasonquit (Quit: jergason)
03:55:54  * mcollinajoined
03:58:22  * evboguequit (Read error: Connection reset by peer)
04:00:17  * wolfeida_joined
04:00:31  * mcollinaquit (Ping timeout: 268 seconds)
04:01:23  * wolfeidauquit (Ping timeout: 260 seconds)
04:02:04  * ferossquit (Quit: feross)
04:04:11  * mpiercequit (Remote host closed the connection)
04:11:12  * jxsonjoined
04:15:26  * jxsonquit (Ping timeout: 240 seconds)
04:16:37  * jiangplusjoined
04:16:45  <rowbit>Hourly usage stats: [developer: 9, free: 92]
04:17:04  * ferossjoined
04:23:42  * thlorenz_quit (Remote host closed the connection)
04:25:21  * wolfeida_quit (Ping timeout: 244 seconds)
04:28:27  * wolfeidaujoined
04:33:33  * timoxley_joined
04:33:42  * timoxleyquit (Read error: Connection reset by peer)
04:43:24  * chilts_changed nick to chilts
04:45:14  * anvakaquit (Remote host closed the connection)
04:51:17  * Maciek416quit (Remote host closed the connection)
04:51:51  * anvakajoined
04:51:52  * Maciek416joined
04:55:50  * Maciek416quit (Ping timeout: 240 seconds)
04:56:44  * mcollinajoined
05:02:03  * mcollinaquit (Ping timeout: 272 seconds)
05:11:55  * jxsonjoined
05:16:37  * jxsonquit (Ping timeout: 272 seconds)
05:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 29]
05:23:41  * defunctzombiechanged nick to defunctzombie_zz
05:24:58  * thlorenzjoined
05:28:45  * defunctzombie_zzquit (Ping timeout: 272 seconds)
05:29:09  * thlorenzquit (Ping timeout: 248 seconds)
05:29:23  * clone1018_joined
05:30:55  * clone1018quit (Ping timeout: 272 seconds)
05:35:38  * defunctzombie_zzjoined
05:49:03  * ITprojoined
05:49:30  * ITprochanged nick to Guest79096
05:56:36  * anvakaquit (Remote host closed the connection)
05:57:34  * mcollinajoined
05:59:41  * timoxley_quit (Remote host closed the connection)
06:02:13  * mcollinaquit (Ping timeout: 248 seconds)
06:16:44  <rowbit>Daily usage stats: [developer: 3, free: 387]
06:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 28]
06:17:40  * maksimlinquit (Remote host closed the connection)
06:22:30  * timoxleyjoined
06:25:46  * thlorenzjoined
06:26:02  <substack>jiangplus: https://gist.github.com/substack/7349970
06:30:43  * thlorenzquit (Ping timeout: 272 seconds)
06:45:59  * defunctzombie_zzchanged nick to defunctzombie
06:46:25  * defunctzombiequit (Changing host)
06:46:25  * defunctzombiejoined
06:46:25  <defunctzombie>for npmd it becomes even more important that we have shasums of all the module contents
06:58:20  * mcollinajoined
07:02:31  * mcollinaquit (Ping timeout: 245 seconds)
07:13:28  * jxsonjoined
07:16:37  * shamaquit
07:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 142]
07:18:20  * jxsonquit (Ping timeout: 265 seconds)
07:32:22  * mikolalysenkoquit (Ping timeout: 244 seconds)
07:52:13  * defunctzombiechanged nick to defunctzombie_zz
07:53:52  <rowbit>substack, pkrumins: These encoders are STILL down: 50.57.103.135(free2)
07:54:13  * djcoinjoined
07:59:08  * mcollinajoined
08:03:39  * dguttmanquit (Quit: dguttman)
08:03:49  * mcollinaquit (Ping timeout: 272 seconds)
08:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 141]
08:19:03  * slaskisjoined
08:21:33  * thlorenzjoined
08:26:07  * thlorenzquit (Ping timeout: 244 seconds)
08:38:43  * mikolalysenkojoined
08:39:52  <rowbit>substack, pkrumins: Encoders down: 173.203.67.76 (free3)
08:43:29  * jcrugzzquit (Read error: Operation timed out)
08:43:34  * mikolalysenkoquit (Ping timeout: 268 seconds)
08:48:44  * jiangplusquit (Read error: Connection reset by peer)
08:53:13  * jiangplusjoined
08:59:56  * mcollinajoined
09:04:05  * mcollinaquit (Ping timeout: 248 seconds)
09:05:43  * ferossquit (Quit: feross)
09:08:22  * ferossjoined
09:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 52]
09:18:22  <rowbit>substack, pkrumins: Encoders down: 50.57.103.135 (free2)
09:22:23  * thlorenzjoined
09:23:58  * ferossquit (Quit: feross)
09:27:25  * thlorenzquit (Ping timeout: 272 seconds)
09:28:57  * ferossjoined
09:33:50  * jiangplusquit (Ping timeout: 240 seconds)
09:44:39  * mcollinajoined
09:46:55  * ferossquit (Quit: feross)
09:51:40  * peutetrejoined
09:52:07  * ins0mniajoined
10:14:29  * crankquit (Ping timeout: 248 seconds)
10:16:02  * jxsonjoined
10:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 43]
10:19:16  * Guest79096quit (Ping timeout: 244 seconds)
10:21:00  * jxsonquit (Ping timeout: 268 seconds)
10:23:13  * thlorenzjoined
10:27:47  * thlorenzquit (Ping timeout: 268 seconds)
10:52:17  * cianomaidinjoined
11:03:55  * runningskullchanged nick to zz_runningskull
11:07:16  * slaskisquit (Quit: slaskis)
11:09:52  * crankjoined
11:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 52]
11:16:50  * jxsonjoined
11:19:22  <rowbit>substack, pkrumins: Encoders down: 50.57.103.135 (free2)
11:21:15  * jxsonquit (Ping timeout: 244 seconds)
11:24:05  * thlorenzjoined
11:28:37  * thlorenzquit (Ping timeout: 248 seconds)
11:30:11  * zz_runningskullchanged nick to runningskull
11:58:31  * hij1nxquit (Ping timeout: 245 seconds)
12:10:19  * slaskisjoined
12:12:50  * cianomaidin_joined
12:15:49  * perlbot_joined
12:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 47]
12:17:05  * ogd_joined
12:17:25  * mmalecki_joined
12:17:35  * jxsonjoined
12:21:35  * jxsonquit (Read error: Operation timed out)
12:21:45  * cianomaidinquit (*.net *.split)
12:21:47  * mmaleckiquit (*.net *.split)
12:21:48  * perlbotquit (*.net *.split)
12:21:48  * ogdquit (*.net *.split)
12:21:48  * perlbot_changed nick to perlbot
12:21:49  * cianomaidin_changed nick to cianomaidin
12:24:22  * jez0990_joined
12:24:51  * pikpikquit (Ping timeout: 264 seconds)
12:24:52  * thlorenz_joined
12:25:11  * owenb__quit (Ping timeout: 245 seconds)
12:25:29  <jez0990_>ogd_: hey are you meeting up with the redecentralise folks again before you leave?
12:25:36  * ehdquit (Ping timeout: 245 seconds)
12:26:09  * owenb__joined
12:26:28  <jez0990_>ogd_: also, I *always* forget how awesome Sol Niger Within is :3
12:27:59  * ehdjoined
12:29:22  * thlorenz_quit (Ping timeout: 246 seconds)
12:30:46  * pikpikjoined
12:34:08  * yorickjoined
12:34:12  * runningskullchanged nick to zz_runningskull
12:37:37  * jiangplusjoined
13:01:36  * zz_runningskullchanged nick to runningskull
13:02:32  * peutetrequit (Quit: peutetre)
13:06:10  * thlorenzjoined
13:10:14  * thlorenzquit (Ping timeout: 240 seconds)
13:15:23  * peutetrejoined
13:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 157]
13:17:58  * mmalecki_changed nick to mmalecki
13:18:16  * jxsonjoined
13:19:52  * jiangplusquit (Ping timeout: 265 seconds)
13:22:40  * jxsonquit (Ping timeout: 244 seconds)
13:31:48  * peutetrequit (Quit: peutetre)
13:35:13  * thlorenzjoined
13:35:35  * runningskullchanged nick to zz_runningskull
13:38:34  * thlorenzquit (Remote host closed the connection)
13:40:51  * brianloveswordsquit (Excess Flood)
13:41:18  * brianloveswordsjoined
13:43:22  <rowbit>substack, pkrumins: Encoders down: 173.203.67.76 (free3)
13:43:52  <rowbit>substack, pkrumins: Encoders down: 50.57.103.135 (free2)
13:47:41  * zz_runningskullchanged nick to runningskull
13:52:45  * peutetrejoined
13:53:51  * tmcwjoined
13:56:10  * tmcwquit (Remote host closed the connection)
13:56:48  * tmcwjoined
13:58:09  * tmcw_joined
13:58:39  * tmcwquit (Read error: Connection reset by peer)
13:59:13  * tmcw_quit (Remote host closed the connection)
13:59:50  * tmcwjoined
14:04:21  * tmcwquit (Ping timeout: 252 seconds)
14:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 68]
14:18:34  * tmcwjoined
14:19:01  * jxsonjoined
14:21:06  * Maciek416joined
14:21:30  * ins0mniaquit (Ping timeout: 268 seconds)
14:23:02  * jxsonquit (Ping timeout: 240 seconds)
14:37:27  * mcollinaquit (Remote host closed the connection)
14:38:03  * mcollinajoined
14:39:15  * alessioalexquit (Read error: Connection reset by peer)
14:39:43  * alessioalexjoined
14:42:14  * mcollinaquit (Ping timeout: 244 seconds)
14:44:39  * mcollinajoined
14:50:25  * jolissquit (Ping timeout: 272 seconds)
15:15:54  * mikolalysenkojoined
15:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 53]
15:17:28  * clone1018_changed nick to clone1018
15:19:13  * jiangplusjoined
15:19:50  * jxsonjoined
15:24:06  * jxsonquit (Ping timeout: 252 seconds)
15:27:20  * jolissjoined
15:31:21  * defunctzombie_zzchanged nick to defunctzombie
15:34:08  * cianomaidinquit (Quit: cianomaidin)
15:37:28  * djcoinquit (Quit: WeeChat 0.4.1)
15:45:25  * ednapiranhajoined
16:01:45  * runningskullchanged nick to zz_runningskull
16:02:09  * zz_runningskullchanged nick to runningskull
16:05:34  <ogd_>jez0990_: not redecentralize but theres the nodeschool event
16:06:34  * AvianFlujoined
16:07:02  * peutetrequit (Quit: peutetre)
16:09:58  * ralphtheninjajoined
16:11:06  * toddselfjoined
16:11:41  * toddselfquit (Remote host closed the connection)
16:11:57  * toddselfjoined
16:14:27  * cianomaidinjoined
16:16:33  * hij1nxjoined
16:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 45]
16:19:25  * jez0990_quit (Remote host closed the connection)
16:20:39  * jxsonjoined
16:22:14  * jiangplusquit (Ping timeout: 240 seconds)
16:22:45  * slaskisquit (Quit: slaskis)
16:22:57  * jergasonjoined
16:25:15  * jxsonquit (Ping timeout: 252 seconds)
16:28:39  * djcoinjoined
16:35:40  * kevino80joined
16:38:06  * ogd_changed nick to ogd
16:38:31  * jcrugzzjoined
16:41:24  * ralphtheninjaquit (Quit: leaving)
16:42:00  * slaskisjoined
17:00:31  * tilgovijoined
17:03:31  <defunctzombie>zuul is fully documented!!!
17:03:32  <defunctzombie>https://github.com/defunctzombie/zuul
17:06:29  * thlorenzjoined
17:06:31  <runningskull>fuck yeah
17:06:51  <runningskull>i have a shit-ton to do this wknd, but i do have a browser-side project that i need to verify works in all browsers
17:06:53  <runningskull>so.......
17:07:13  <jcrugzz>defunctzombie: you have travis run zuul which then talks to saucelabs?
17:07:22  <defunctzombie>jcrugzz: yea
17:07:42  <defunctzombie>jcrugzz: check out the wiki for how to make all that work
17:07:43  <jcrugzz>nice, clever hack there :p
17:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 68]
17:17:26  * ins0mniajoined
17:19:08  * toddselfquit (Remote host closed the connection)
17:21:26  * jxsonjoined
17:25:57  * williamcottonquit (Ping timeout: 248 seconds)
17:26:12  * jxsonquit (Ping timeout: 252 seconds)
17:34:28  * djcoinquit (Quit: WeeChat 0.4.1)
17:39:00  * cianomaidinquit (Quit: cianomaidin)
17:47:27  * dguttmanjoined
17:49:58  * toddselfjoined
17:51:43  * toddselfquit (Read error: Connection reset by peer)
17:51:51  * toddself_joined
17:52:29  * williamcottonjoined
17:56:20  * toddself_quit (Ping timeout: 265 seconds)
17:56:59  * thlorenzquit (Remote host closed the connection)
18:02:41  * kenperkinsquit (Quit: Textual IRC Client: http://www.textualapp.com/)
18:05:00  * cianomaidinjoined
18:14:24  * AvianFluquit (Remote host closed the connection)
18:16:21  * kenperkinsjoined
18:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 49]
18:19:01  * AvianFlujoined
18:19:42  * cianomaidinquit (Quit: cianomaidin)
18:22:20  * jxsonjoined
18:22:34  * thlorenzjoined
18:22:57  * thlorenzquit (Remote host closed the connection)
18:23:30  * thlorenzjoined
18:26:47  * jxsonquit (Ping timeout: 265 seconds)
18:27:39  <ogd>mikolalysenko: have you seen https://blog.mozilla.org/javascript/2013/11/07/efficient-float32-arithmetic-in-javascript/ ?
18:27:54  * grncdrquit (Remote host closed the connection)
18:27:55  <ogd>mikolalysenko: you should write a response post linking to your modules :D
18:28:17  * thlorenzquit (Ping timeout: 272 seconds)
18:35:01  * williamcotton1joined
18:39:19  * williamcotton1quit (Ping timeout: 246 seconds)
18:46:19  * thlorenz_joined
18:50:17  * toddselfjoined
19:01:24  <defunctzombie>thlorenz_: zuul is published
19:01:55  <defunctzombie>thlorenz_: also... we should make a chrome app for markdown editing for node knockout hahahah would take us like an hour
19:01:56  <thlorenz_>defunctzombie: I saw, looks awesome -- haven't had much time to look into it, but tomorrow or so we'll upgrade to it
19:02:04  <thlorenz_>:)
19:02:24  <thlorenz_>yeah, I'm already in a team involving Zombie Bats
19:02:33  <defunctzombie>oh nice with Domenic_ !
19:02:36  <thlorenz_>yep
19:02:40  <thlorenz_>what about you?
19:02:42  <defunctzombie>I am curious to see what that will entail
19:02:49  <defunctzombie>I am not doing knockout
19:02:49  * thlorenz_changed nick to thlorenz
19:02:56  <thlorenz>ah you prefer sleep?
19:02:59  <defunctzombie>have too much real work to do :)
19:03:00  <defunctzombie>yea
19:03:11  <thlorenz>yeah real work and sleep are both overrated
19:03:38  <defunctzombie>haha
19:04:13  <thlorenz>actually my colleague already signed up for sauce labs -- he saw the new zuul ;)
19:04:35  <defunctzombie>nice :)
19:06:10  * jxsonjoined
19:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 38]
19:17:31  <mikolalysenko>interesting article, and it is nice to have these optimizations
19:17:57  <mikolalysenko>though my feeling about float32 for numerical computing is that it is maybe not so interesting, since you really want double precision for most big linear algebra things
19:18:19  <williamcotton>defunctzombie: zuul looks pretty awesome!
19:18:22  <mikolalysenko>the fft application is useful for realtime signal processing though where accuracy is not as critical
19:18:41  <mikolalysenko>I am actually a little nervous though about them getting all this stuff right...
19:18:44  <defunctzombie>williamcotton: thanks :) try it out... feedback from user's that aren't me would be awesome too
19:19:08  <mikolalysenko>I would be pretty irritated if some engine randomly thought it was cool to convert one of my double arithmetic operations to a float without telling me...
19:19:57  <williamcotton>defunctzombie: we're wanting to integrate some client-side tests in to our node knockout project this weekend
19:20:14  * runningskullchanged nick to zz_runningskull
19:21:18  <williamcotton>like, it's an in browser wizard to publish to npm… and the idea was to run tests side-by-side… and even then go on to integrate with travisCI
19:21:38  <williamcotton>as far as I can tell, zuul would work perfectly to assist with that, right? I gotta dive in to the details
19:22:04  <defunctzombie>williamcotton: yep
19:22:17  <defunctzombie>williamcotton: the wiki documents everything it can do right now
19:22:42  <defunctzombie>williamcotton: are you on the npm-wizard thing team?
19:22:46  <williamcotton>yeah
19:22:50  <defunctzombie>nice
19:23:56  <williamcotton>if one wanted to author and then run tests in a single-page web app, what's like the top level 2 paragraph explanation of how to use zuul for that?
19:25:17  <defunctzombie>williamcotton: https://github.com/defunctzombie/zuul/wiki/Quickstart
19:25:36  <defunctzombie>write some tests then use zuul with --local like a typical test runner
19:25:47  <williamcotton>yeah, reading that, it seems like I need to run those tests from the CLI
19:26:03  * enjaworkjoined
19:26:03  <defunctzombie>williamcotton: you run the zuul tool in the CLI
19:26:09  <defunctzombie>but then open a browser
19:26:14  <defunctzombie>for the actual tests to run
19:26:30  <defunctzombie>the tool just setups the harness structures for running the tests in a browser
19:26:33  <Domenic_>defunctzombie is an ember celebrity haha :D
19:26:41  <defunctzombie>oh jesus
19:26:48  <defunctzombie>I don't even use ember
19:26:56  <Domenic_>shhh you'll spoil your image
19:27:01  <defunctzombie>haha
19:27:43  <defunctzombie>williamcotton: right now mocha and qunit are supported, but adding support for tape/tap shouldn't be too hard
19:27:56  <defunctzombie>the "frameworks" that zuul supports are in the frameworks folder
19:28:14  <defunctzombie>and I built it with the idea that other styles could be added
19:28:17  <williamcotton>ah, we're doing a browser interface, so we'd have to have the server-side interface with the CLI… and does zuul run a web server as well? sort of like karmaa?
19:28:27  <defunctzombie>yes
19:28:34  <defunctzombie>that is exactly what it does
19:28:44  <williamcotton>ah, ok, I thought it was a little different
19:28:45  <defunctzombie>when you run zuul it will give you a url for it's web server
19:29:32  <defunctzombie>yea, you could make a server side interface into the zuul api
19:29:56  <defunctzombie>the api for zuul could probably use some love, but most of the code is not in the CLI app.. most of it lives in the lib files
19:29:57  * rchquit (Ping timeout: 252 seconds)
19:30:18  <defunctzombie>tho it does make some strong assumptions that lib/zuul.js runs as a CLI app right now.. but that can easily change
19:31:01  <williamcotton>I guess what I'd like is an API that takes in some "code" and a "test", and runs that code through that test somehow, and spits back the result… ideally that API could execute completely in the browser, or on the server, or at an HTTP end point… if it was agnostic to it's runtime, that would be ideal
19:32:39  <williamcotton>so let's say I'm just writing the code and the test in the browser… it might as well just execute that code and test right in the browser as well… and that same API could just as easily be executing somewhere else… or conform to a service like TravisCI
19:33:12  * rchjoined
19:33:20  <defunctzombie>yea
19:33:31  <defunctzombie>it is possible to do the whole "execute this in browser X" style API
19:33:56  <defunctzombie>and I might make generic modules that do similar things inside of zuul
19:36:20  * defunctzombiechanged nick to defunctzombie_zz
19:38:23  <rowbit>substack, pkrumins: These encoders are STILL down: 173.203.67.76(free3)
19:38:33  <williamcotton>like a "CLI" or a "REST Interface" or a "JavaScript Object Interface" or whatever… they're just different mechanisms for some underlying functionality… CLI assumes STDIO, REST assumes HTTP… mikolalysenko and I were chatting about this stuff yesterday :)
19:38:53  <rowbit>substack, pkrumins: These encoders are STILL down: 50.57.103.135(free2)
19:39:06  * rannmannquit (Read error: Connection reset by peer)
19:39:48  * rannmannjoined
19:39:48  * rannmannquit (Changing host)
19:39:48  * rannmannjoined
19:42:36  * DTrejojoined
19:42:55  <williamcotton>make the code do the abstract thing, and then make the code that lets that code operate in some environment… pass in the IO/World/Runtime/Context as an argument to a function, but pull in other "pure functions" as dependencies… those pure functions can live in a land where there are no "object spaces" and then at some point the functionality can be "lifted" to whatever context…
19:44:22  <williamcotton>the "live world" of an object space, the quantum world, the indeterminate world where creativity lives and flourishes… vs the "dead world" of pure functions, where things can be reasoned and clarified and talked about in binary absolutes :)
19:46:47  * mcollinaquit (Remote host closed the connection)
19:47:23  * mcollinajoined
19:51:53  * mcollinaquit (Ping timeout: 272 seconds)
19:55:37  * cianomaidinjoined
20:03:52  * jxsonquit (Remote host closed the connection)
20:05:59  * cianomaidinquit (Ping timeout: 260 seconds)
20:10:42  * jxsonjoined
20:11:23  <rowbit>substack, pkrumins: Encoders down: 50.57.174.117 (dev2)
20:14:13  * ferossjoined
20:16:34  * kevinswiberjoined
20:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 49]
20:19:49  * defunctzombie_zzchanged nick to defunctzombie
20:26:12  * mcollinajoined
20:32:43  * mcollinaquit (Ping timeout: 246 seconds)
20:38:06  * zz_runningskullchanged nick to runningskull
20:39:06  * cianomaidinjoined
20:45:12  <tim_smart>Open question: What do you use to deploy your node.js apps?
20:45:25  <tim_smart>Currently looking at a ansible + pm2 setup
20:45:45  <tim_smart>Maybe sit haproxy and nagios in front
20:49:15  * cianomaidinquit (Ping timeout: 252 seconds)
20:51:31  <defunctzombie>tim_smart: currently use salt
20:51:40  <defunctzombie>always behind nginx
20:51:48  <defunctzombie>don't waste time with haproxy
20:53:36  <tim_smart>defunctzombie: Does nginx have an API for enabling / disabling servers from the load balancer dynmaically?
20:54:18  <defunctzombie>tim_smart: not that I know of.. but it has a lua interface
20:54:22  <defunctzombie>so you can make it do anything I think
20:55:21  <defunctzombie>tim_smart: you could just regenerate the config and reload the server
20:55:37  <defunctzombie>reload is different than restart
20:56:28  <creationix>tim_smart, I put nginx in front now that it supports websocket proxies
20:57:08  <creationix>and then use manual upstart scripts for each website (listening on a local high port, proxied through nginx with virtual domains)
20:57:17  * mikolalysenkoquit (Quit: Lost terminal)
20:57:38  <creationix>once I finish js-git server support, I'll probably write some pure-node git-deploy system
20:57:43  <creationix>just push a tag to deploy
20:57:50  * Wraithanquit (Ping timeout: 264 seconds)
20:57:54  <defunctzombie>creationix: I kind have that already
20:58:04  <defunctzombie>my servers just run a cronjob periodically
20:58:08  <defunctzombie>and check my git repo
20:58:11  <defunctzombie>and then deploy that
20:58:15  <defunctzombie>tim_smart: http://wiki.nginx.org/HttpLuaModule
20:58:24  <creationix>yeah, it can be done today, I just want to do it with js-git
20:58:25  <creationix>:)
20:58:37  <defunctzombie>tim_smart: making a simple lua module to build a routing table would not be hard
20:58:39  <creationix>it should be simpler (less moving parts)
20:59:10  * cianomaidinjoined
20:59:18  <tim_smart>defunctzombie: I might see if anyone has done a ansible module etc
20:59:52  <tim_smart>Or if you can run a simple shell commands to interface with nginx
21:00:02  <tim_smart>s/run a/run/
21:00:31  <defunctzombie>you can.. but again no api to add/remove upstreams... those come from the config file
21:00:47  <defunctzombie>so you have to edit that and then signal nginx (reload)
21:00:59  <defunctzombie>I actually like the idea of making a lua module
21:01:08  <defunctzombie>to dynamically proxy based on what is available
21:01:12  <defunctzombie>kinda zero-conf style
21:03:27  * cianomaidinquit (Ping timeout: 252 seconds)
21:11:40  <defunctzombie>tim_smart: http://sosedoff.com/2012/06/11/dynamic-nginx-upstreams-with-lua-and-redis.html
21:11:50  <defunctzombie>that seems to describe exactly what I was talking about
21:16:13  <defunctzombie>this would be really awesome since your service could register itself with a central registry and then you can just serve out based on what is available
21:16:17  <defunctzombie>pretty cool actually
21:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 30]
21:20:54  <tim_smart>defunctzombie: That is pretty cool. Will have to tweak it so if I removed a host from the list it invalidates the cache..
21:21:14  <defunctzombie>tim_smart: yea
21:21:18  <defunctzombie>tim_smart: lots of options there
21:21:49  <defunctzombie>you could have expiries.. maybe even just use UDP networking if you have a local network to know instantly if something is offline
21:23:17  * kevinswiberquit (Remote host closed the connection)
21:23:50  * kevinswiberjoined
21:27:21  * runningskullchanged nick to zz_runningskull
21:27:50  * kevinswiberquit (Ping timeout: 240 seconds)
21:29:29  * mcollinajoined
21:33:54  * zz_runningskullchanged nick to runningskull
21:33:59  * mcollinaquit (Ping timeout: 252 seconds)
21:38:10  * slaskisquit (Ping timeout: 244 seconds)
21:42:01  * defunctzombiechanged nick to defunctzombie_zz
21:48:24  * jolissquit (Quit: joliss)
21:49:43  * jolissjoined
21:49:56  * jxsonquit (Remote host closed the connection)
21:50:24  * jxsonjoined
21:52:53  * Wraithanjoined
21:53:11  * mcollinajoined
21:54:53  * jxsonquit (Ping timeout: 252 seconds)
21:56:14  * enjaworkquit (Ping timeout: 240 seconds)
21:57:54  * mcollinaquit (Ping timeout: 252 seconds)
21:58:18  * enjaworkjoined
22:00:08  * kevinswiberjoined
22:02:24  <rowbit>substack, pkrumins: Encoders down: 50.57.103.135 (free2)
22:02:38  * tilgoviquit (Ping timeout: 240 seconds)
22:07:19  * ins0mniaquit (Ping timeout: 260 seconds)
22:10:15  * cianomaidinjoined
22:11:08  * ins0mniajoined
22:11:16  <jcrugzz>tim_smart: this is why we just write our own balancer with http-proxy @nodejitsu. we use a service registry and invalidate the cache on new deploys etc
22:11:46  <tim_smart>jcrugzz: I'm going with haproxy :)
22:12:26  <jcrugzz>javascript > config files imo ;)
22:12:29  * enjaworkquit (Ping timeout: 272 seconds)
22:14:47  * cianomaidinquit (Ping timeout: 260 seconds)
22:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 34]
22:19:02  * enjaworkjoined
22:21:45  * ferossquit (Quit: feross)
22:22:04  * AvianFluquit (Remote host closed the connection)
22:25:59  * AvianFlujoined
22:34:10  * toddselfquit (Remote host closed the connection)
22:35:30  * jxsonjoined
22:38:03  * enjaworkquit (Ping timeout: 252 seconds)
22:39:08  * blobaumquit (Remote host closed the connection)
22:46:20  * kevinswiberquit (Remote host closed the connection)
22:46:53  * kevinswiberjoined
22:49:16  * ferossjoined
22:50:16  <jesusabdullah>"josh why are you on facebook" "oh my migration script's running"
22:51:02  * kevinswiberquit (Ping timeout: 240 seconds)
22:54:07  * mcollinajoined
22:54:22  <AvianFlu>jes http://xkcd.com/303/
22:54:36  <AvianFlu>LOUDBOT WHY DID YOU TRUNCATE MY TAB COMPLETION IT IS CLEARLY ALL YOUR FAULT
22:54:36  <LOUDBOT>PUNY MAMMALS. WHY MUST YOU SECRETE WHITE FLUID FROM YOUR CHESTS TO NOURISH YOUR PUNY YOUNGLINGS?
22:54:52  <jesusabdullah>AvianFlu: yeah exactly
22:55:06  <jesusabdullah>AvianFlu: "my mongo query's running" "oh, carry on"
22:55:14  <spion>since people are now doing .c and everything else in npm does "node_modules" even make sense now?
22:55:15  <spion>:)
22:55:34  * tmcwquit (Remote host closed the connection)
22:56:25  <jesusabdullah>spion we'll fix it in post
22:58:17  <williamcotton>that raises an interesting point… npm really has the priority set to support node-land/Unix/filesystem…
22:58:35  * thlorenzquit (Remote host closed the connection)
22:58:41  * mcollinaquit (Ping timeout: 252 seconds)
22:58:49  <williamcotton>but doesn't treating the browser like a second-class citizen cause a bunch of problems?
22:58:54  <jesusabdullah>filesystem is best system
22:59:11  <williamcotton>erhm
22:59:23  <williamcotton>that is clearly just your opinion :)
22:59:50  <AvianFlu>WHATEVER BROWSERS ARE JUST A FAD WE'LL ALL BE BACK ON FARMS PRETTY SOON
22:59:51  <LOUDBOT>MY HORSE HAS A BUM LEG CAN YOU PLEASE HOLD A TUNING FORK TO IT AND FIX IT?
22:59:57  * tmcwjoined
23:00:02  * kevino80quit (Remote host closed the connection)
23:00:07  <williamcotton>maybe it is a majority opinion as well
23:00:36  * kevino80joined
23:00:40  <williamcotton>but you know there is no filesystem in the browser, right?
23:00:55  <spion>well there should be!
23:01:04  <AvianFlu>I'm quite confident that jesusabdullah and I were joking just now
23:01:13  <williamcotton>dude
23:01:18  <williamcotton>it is really hard to tell these days :)
23:01:33  <AvianFlu>npm was built for node, and now it's being used for other things because it's cool
23:01:41  <AvianFlu>by definition, that means it's not built for certain other things
23:01:42  <spion>its true that the module resolution algorithm could be made simpler
23:01:46  <jesusabdullah>nope it follows directly from Zermelo-Fraenkel set theory b/w Axiom of Choice
23:01:57  <williamcotton>but a bunch of people want it to be used for the browser as well
23:01:57  <jesusabdullah>I'll leave the detailed proof as an exercise for the reader.
23:02:09  <jesusabdullah>AvianFlu: usenet 4 lyfe
23:02:55  <spion>the truth is, you can have the necessary fs data in the browser
23:03:19  <jesusabdullah>williamcotton: and yes it does cause promblems, but maybe not as many as you think. Look at browserify, requirejs, bower, componentjs, etc.
23:03:32  <spion>a dictionary with module -> URL mapping
23:03:45  <williamcotton>ok, so what if I build my servers with the JVM or .NET or python?
23:04:02  <jesusabdullah>williamcotton: you can see that all of these take different approaches to either make node modules work in the browser, or attempt to come up with a system that treats the browser as the primary target
23:04:16  * Maciek416quit (Read error: Connection reset by peer)
23:04:16  <williamcotton>having these node specific technologies for browser code seems… short-sighted
23:04:24  <jesusabdullah>It might be
23:04:25  <spion>what is node-specific?
23:04:37  * Maciek416joined
23:04:43  <jesusabdullah>but then again so is almost any other approach seen today
23:04:45  <williamcotton>erhm, browserify? CommonJS?
23:04:55  <spion>commonjs isn't'
23:04:55  <jesusabdullah>commonjs is not node-specific.
23:05:03  <williamcotton>eh, you know what I mean, it's not async
23:05:04  <spion>e.g. see https://github.com/montagejs/mr
23:05:05  <jesusabdullah>in fact node purposefully doesn't use commonjs
23:05:11  * kevino80quit (Ping timeout: 260 seconds)
23:05:16  * toddselfjoined
23:05:32  <spion>"A no-build-step CommonJS module system for browsers."
23:05:36  <williamcotton>like, node assumes that require() is there and does something
23:05:55  <jesusabdullah>the "real problem" is that there's no native module system in es5
23:06:08  <williamcotton>not really
23:06:10  <jesusabdullah>whether es6 modules actually help anything is up for debate
23:06:13  <williamcotton>because code is data is code is data
23:06:19  <williamcotton>so you just need to abstract things properly
23:06:19  <jesusabdullah>incorrect
23:06:36  <jesusabdullah>that's true in lisp, but the situation's notably more complex elsewhere
23:06:46  <williamcotton>it's true everywhere!
23:07:00  <williamcotton>eval is your friend :)
23:07:07  <jesusabdullah>unless your language is its own ast, I disagree.
23:07:28  <williamcotton>you're right that it isn't as elegant as it is in lisp
23:08:05  <williamcotton>but don't forget that there's a heaping spoonful of Scheme in JS :)
23:08:25  <spion>not the right spoonful
23:08:55  <spion>(for that)
23:09:09  <williamcotton>s-expressions and c-like syntax do have some pretty big philosophical differences, that is true
23:09:13  <spion>anyway, I really want macro exports in wisp - https://github.com/Gozala/wisp
23:09:14  <spion>xD
23:09:19  <jesusabdullah>js is way more of a smalltalk with a sprinkle of scheme's fp and c's syntax
23:09:30  <williamcotton>yeah totally
23:09:35  <jesusabdullah>the dom is fundamentally smalltalk-ish
23:09:40  <williamcotton>btw, no file system in Smalltalk ;)
23:09:49  <jesusabdullah>which is honestly terrible.
23:09:51  * toddselfquit (Ping timeout: 260 seconds)
23:09:58  <williamcotton>that's a matter of opinion
23:10:00  <jesusabdullah>smalltalk has a lot of good ideas but kinda sucks in practice.
23:10:08  <williamcotton>and again, it maybe a mainstream opinion
23:10:28  <williamcotton>but it's not binary, you know?
23:10:39  <williamcotton>there are good things about persistent object space images
23:10:49  <williamcotton>they work well for some problem domains and some development environments
23:10:52  <williamcotton>not all
23:11:05  <spion>the thing is, in theory
23:11:15  <spion>AMD/requireJS can replicate most of npm's success
23:11:27  <spion>can they?
23:11:32  <williamcotton>I agree, and I built a proof-of-concept on top of requireJS :)
23:11:43  <AvianFlu>lol AMD
23:11:50  <spion>you did?
23:11:55  <williamcotton>yup
23:12:14  <williamcotton>http://www.corslit.com/williamcotton/FutureTwin:Bolinas
23:12:22  <spion>like, a repository, and you install some AMD modules, and then you define(... var x = require('installed');, and it all works?
23:12:34  <williamcotton>yup
23:12:35  <williamcotton>and builds as well
23:12:42  <williamcotton>http://www.corslit.com/v0/williamcotton/FutureTwin:Bolinas-v0.0.5.js
23:13:09  <williamcotton>you can see the modules that it depends on as links on that first URL
23:13:14  <williamcotton>http://www.corslit.com/williamcotton/FeedbackLoop
23:13:15  <williamcotton>etc
23:13:33  <spion>where can I find the package manager?
23:13:46  <williamcotton>http://www.corslit.com/williamcotton/lit
23:13:47  <williamcotton>:P
23:13:52  <williamcotton>it is self hosted
23:13:58  <williamcotton>client-side, that is
23:14:24  <spion>so how do I share stuff with the community?
23:14:41  <williamcotton>I'm not sure I understand the question
23:14:51  <spion>i have an AMD module and I want everyone to be able to use it
23:14:51  * meschquit (Read error: Connection reset by peer)
23:15:11  <AvianFlu>lolol
23:15:11  * meschjoined
23:15:13  <spion>I have multiple versions of it, and people should be able to use whichever they want
23:15:28  <AvianFlu>I guess it's a credit to JS that people can do all this crazy shit with it
23:15:29  <williamcotton>sure, you get a unique hash when you publish
23:15:39  <AvianFlu>HEAR THAT LOUDBOT I'M BEING OPTIMISTIC
23:15:39  <LOUDBOT>I HATE LINUX VENDORS MORE THAN I EVER HAVE BEFORE
23:15:59  <williamcotton>that website, corslit.com, is built on top of the lit API
23:16:25  <spion>hm. maybe something isn't quite working right
23:16:25  <williamcotton>think of it as a combination of npm and git and github
23:16:39  <williamcotton>I could believe that 100%, haha, it is super alpha
23:16:45  <rowbit>Hourly usage stats: [developer: 0, free: 32]
23:16:58  <williamcotton>there are a bunch of UI quirks
23:17:11  <williamcotton>I don't expect anyone other than myself to be able to use it just yet :D
23:17:29  <williamcotton>I really need to make a screencast, though
23:17:38  <williamcotton>(i've been saying that for about 6 weeks now)
23:17:57  <spion>I really like commonjs, but if you manage to replicate the registry/installer/publishing ecosystem success of npm, I'm all for it.
23:18:16  <spion>(will definitely *not* use requirejs though, I've been burned before)
23:18:36  * ferossquit (Quit: feross)
23:19:22  <spion>e.g. r.js assumes way too much about the structure of my project
23:19:42  <williamcotton>right now with lit and corslit.com, I can write a new module, have it pull in dependencies (other lit modules at this point), and then build to a static JS file the entire graph
23:19:52  <spion>another thing about AMD...
23:20:00  <spion>once my project got to any appreciateable size
23:20:09  <spion>the no-build-step development mode started to suck
23:20:19  <spion>because I was waiting for ages for the browser to download everything
23:20:25  <williamcotton>yeah, totally
23:20:46  <spion>even from localhost
23:21:04  <williamcotton>I don't like r.js and I don't use it
23:21:11  * enjaworkjoined
23:21:28  <williamcotton>I *do* use RequireJS, though
23:21:59  <williamcotton>but the build system is different, because it is never coming from the filesystem
23:22:34  <williamcotton>there's two build processes
23:23:15  <williamcotton>one that uses the module pattern, with self-executing functions defined in the arguments for the functions where they are being injected
23:23:21  <williamcotton>but that doesn't allow for global singletons
23:23:42  <williamcotton>so I've got a system that caches it outside of the graph
23:23:50  <spion>not to mention its completely unergonomic
23:24:11  <spion>enjoy your manual token counting/matching
23:24:14  <williamcotton>I honestly don't mind the non-cached version, it is much more "functional"
23:24:19  <spion>erm oops
23:24:27  <spion>you're talking about something else.
23:24:34  * spionconcentrates more
23:24:42  <williamcotton>assuming that there is some transcendental object space where singleton objects can live can cause a bunch of design issues :)
23:25:06  <spion>umm, cached global singletons?
23:25:09  <spion>you mean cached modules.
23:25:23  <williamcotton>eh, semantics
23:25:36  <spion>not semantics, just specifics. I'm trying to understand
23:25:37  <spion>:)
23:25:47  <williamcotton>ok
23:25:49  <williamcotton>so like
23:26:01  <williamcotton>if I have a dependency that I use in one module
23:26:05  <williamcotton>and I use it again in another module
23:26:21  <williamcotton>and I can communicate to the same instance of that dependency, then it is a global singleton
23:26:34  <spion>got that
23:26:37  <williamcotton>sorry if I'm not making sense!
23:27:03  <williamcotton>so, in my experience, that pattern can be problematic for evolving architectures
23:27:11  <williamcotton>it sure is handy :)
23:27:30  <williamcotton>but I prefer to pass in any "living" objects as arguments to functions
23:27:31  <spion>i still can't quite connect it with the rest of what you said, but okay
23:28:29  <williamcotton>like, the deps should be pure functions, dead functions… and if you have any sort of "runtime" or "live object space" or anything like that, it should be passed in to your functions as arguments…
23:29:19  <williamcotton>but anyways, I don't mind being able to build to both :)
23:29:24  <spion>are we still talking about AMD? :)
23:29:36  <williamcotton>loosely
23:29:51  * defunctzombie_zzchanged nick to defunctzombie
23:29:56  <williamcotton>I don't really think the CommonJS vs AMD argument is properly positioned most of the time
23:29:59  <spion>here is the thing then. the main reason why I gave up on AMD.
23:30:19  <spion>as the length of the dependency chain grows
23:30:29  <spion>the time to load every page also grows.
23:30:38  <spion>(in development mode, without a build step)
23:30:38  <williamcotton>sure sure
23:30:51  <williamcotton>here's my main thing
23:31:05  <williamcotton>you can take an AMD definition and turn it in to CommonJS pretty easily
23:31:24  <williamcotton>just convert the mapping of the array of deps to the callback args
23:31:33  <williamcotton>and write those as require() calls at the top of the method
23:31:45  <williamcotton>going the OTHER way is more difficult
23:31:48  <spion>I stopped using the array-deps syntax almost immediately.
23:31:58  <spion>its a complete usability nightmare.
23:32:05  <williamcotton>parsing out calls to require() and building an async on top of it is more difficult
23:32:35  <williamcotton>as for whatever is exposed to your everyday tasks of coding, who gives a shit?
23:32:52  <williamcotton>you can always implement a layer between that and the underlying abstraction
23:33:25  <spion>and that layer is parsing for require.
23:34:18  <williamcotton>you get what I'm saying, though?
23:34:45  <spion>I do get it, although you're using a very roundabout way.
23:34:51  <spion>compile commonjs to AMD.
23:35:08  <williamcotton>but it is easier to compile AMD to CommonJS :)
23:35:18  <spion>it doesn't matter
23:35:21  <spion>as its harder to use AMD.
23:35:38  <spion>you do the compiler *once*
23:35:46  <spion>you have to use that god-awful AMD syntax every day
23:35:53  <spion>its not only bad on the eyes
23:35:58  <spion>its truly unergonomic.
23:36:02  <spion>once you remove a module from the list
23:36:06  * jolissquit (Ping timeout: 265 seconds)
23:36:08  <spion>you have to scan the other list and update accordingly.
23:36:23  <williamcotton>dude, I'm not saying I want to look at that define() wrapper
23:36:40  <williamcotton>I don't even want my source in a file
23:36:53  <williamcotton>so like
23:37:08  <williamcotton>if you abstract away all that stuff, you get left with an API that is more like AMD in nature
23:37:18  <spion>all what stuff
23:37:25  <williamcotton>files, filesystems
23:37:53  <williamcotton>what is a module of code?
23:38:00  <spion>files and the filesystem is why node and npm are able to do dependencies like no other system has managed before.
23:38:04  <williamcotton>and forget about languagee
23:38:34  <spion>you should not abstract away files and filesystems. they're the right abstraction :)
23:38:46  <williamcotton>it has a unique identifier, it has some dependencies, it has some metadata, and it has a "black box of IO"
23:38:47  <spion>with the right properties for a feature-rich module-system.
23:39:40  <williamcotton>IO, std lib, runtimes, machines… all of that shit should be kept out of the equation for abstracting things
23:40:08  <spion>wow. okay.
23:40:09  <williamcotton>there is a really good reason why the browser doesn't have a filesystem or have access to the filesystem :)
23:40:38  <spion>indeed so. the reason is, it was never designed to do what it does now.
23:40:39  <spion>:)
23:41:02  <spion>and is slowly growing to fill its clothes
23:41:22  <williamcotton>Unix… C… pipes… files… directory structures… those all go hand in hand, and it works great
23:41:32  <williamcotton>that's the "unix runtime"
23:42:07  <williamcotton>that doesn't need to dictate the abstraction of every computing machine
23:42:20  <williamcotton>and there have been very nicely designed systems that don't use that
23:42:45  <williamcotton>and it is a huge cop-out to say that Smalltalk or Self faded just because they didn't use a filesystem
23:42:57  <spion>not saying that.
23:43:06  <spion>the truth is, I don't know why they faded
23:43:08  <spion>why did they fade?
23:43:21  <williamcotton>I think a lot of reasons, haha
23:43:30  <williamcotton>marketing was a big one
23:43:56  <williamcotton>Java just steamrolled the competition
23:44:09  <williamcotton>Self was at Sun at the same time Java was there
23:44:14  <williamcotton>it never got the push from management
23:44:36  <williamcotton>I think there are deeper issues, though
23:44:50  <williamcotton>like, those systems were designed as Personal Computers
23:44:59  <williamcotton>and really did have some issues with interacting with other systems
23:45:10  <spion>:D
23:45:22  <spion>its interesting though that the browser, despite not being designed to do what it does
23:45:35  <spion>still managed to take over
23:45:51  <spion>and I don't think it was marketed too much either.
23:45:57  <williamcotton>what?
23:46:02  <spion>at least not for a while
23:46:06  <williamcotton>Netscape?
23:46:14  <williamcotton>that company was a marketing MACHINE
23:46:31  <williamcotton>the web browser itself is incredibly viral
23:46:51  <spion>hmm
23:47:11  <williamcotton>"oh you need to check out this web page" - "what's a web page?" - "oh, go download netscape"
23:47:56  <williamcotton>I love that Señor Eich decided to hide a little Self system in there
23:48:19  <williamcotton>and borrowed enough from Scheme to make for some fun functional techniques as well
23:48:55  <williamcotton>Metaxy
23:49:23  <williamcotton>"a movement between opposite poles as well as beyond"
23:49:26  <williamcotton>there's no reason to be like
23:49:31  <williamcotton>everything should be functional
23:49:36  <williamcotton>or everything should be OOP
23:50:06  <williamcotton>this sort of binary oppositions in thought are super problematic
23:50:33  <williamcotton>like all the booooring conversations about the callbacks vs promises vs streams vs events
23:50:49  <williamcotton>embrace them all!
23:51:07  <williamcotton>I know it's a lot easier to just decide that one type of thinking is the best
23:51:35  <williamcotton>to "collapse the quantum state" so that things can be easily reasoned about
23:51:40  <williamcotton>but fuck that
23:51:47  * Wraithanpart ("WeeChat 0.4.3-dev")
23:52:02  <williamcotton>embrace the schizophrenia, anxiety, and paranoia!
23:52:36  <williamcotton>and JS is the perfect language for that, haha
23:53:04  <williamcotton>we should just revel in the fact that we have a language that is at odds with itself and somehow ended up being in more runtimes than any other
23:54:03  <williamcotton>maybe the fact that it is so schizophrenic is part of the reason it is surviving so well?
23:54:45  <spion>there are relatively few quirks in JS, if you ask me. some primitive type coercion, really roundabout and rushed classes magic (instead of just exposing prototypes explicitly)...
23:54:47  <spion>what else?
23:54:54  * mcollinajoined
23:55:50  <williamcotton>just that there are functional aspects and OOP aspects… it is "impure", you know?
23:56:12  <williamcotton>you can never touch an object prototype and do just fine… and you can never use a closure and do just fine as well
23:56:31  <williamcotton>the point is, there are times to use one approach or another
23:56:34  <spion>that "functional" word is a bit overloaded lately
23:56:53  <williamcotton>yeah, and I'll admit I'm probably not helping the matter much, haha
23:57:31  <spion>yeah, especially not when you add impure in quotes
23:57:32  <spion>:)
23:57:49  <spion>which in turn alludes to pure (as in pure functional)
23:57:52  <spion>anyway
23:58:15  <spion>time to go to bed.
23:58:27  <williamcotton>gnight :)
23:59:02  * AvianFluquit (Ping timeout: 240 seconds)
23:59:25  * toddselfjoined
23:59:47  * thlorenzjoined