00:00:01  * ircretaryquit (Remote host closed the connection)
00:00:10  * ircretaryjoined
00:02:40  * thatguydanquit (Remote host closed the connection)
00:02:45  * jden_joined
00:02:54  * thatguydanjoined
00:03:08  * jden_changed nick to Guest15049
00:06:43  <defunctzombie>Raynos: technically, I think that is done with two threads one for rendering (which you can control) and one that cannot interfere with rendering
00:06:57  <Raynos>in javascript
00:06:58  <Raynos>in the browser
00:07:00  * Guest15049quit (Ping timeout: 244 seconds)
00:08:03  <defunctzombie>Raynos: yea, I realize :)
00:08:26  <defunctzombie>Raynos: if webworkers are not an option, I would say setTimeout
00:08:42  <defunctzombie>and compute the different from last render to how long before next
00:08:42  <Raynos>what about RAF
00:08:56  <defunctzombie>royal air force?
00:14:21  <Raynos>request animation frame
00:17:41  * defunctzombiechanged nick to defunctzombie_zz
00:24:23  * alunnyquit (Ping timeout: 252 seconds)
00:25:37  * alunnyjoined
00:36:27  * alunnyquit (Ping timeout: 244 seconds)
00:39:07  * jden__joined
00:42:47  * intabula_joined
00:43:15  * alunnyjoined
00:44:58  * intabulasquit (Ping timeout: 246 seconds)
00:45:40  * jden__quit (Ping timeout: 248 seconds)
00:50:16  * tilgoviquit (Remote host closed the connection)
00:53:57  * alunnyquit (Ping timeout: 252 seconds)
00:56:09  <chrisdickinson>Raynos: raf will give you as close to "true 60hz" refresh as it can
01:01:11  * slaskisquit (Remote host closed the connection)
01:05:25  * calvinfoquit (Quit: Leaving)
01:07:16  * yorickquit (Remote host closed the connection)
01:09:29  * CryptoQuickquit (Ping timeout: 252 seconds)
01:11:59  * jden_joined
01:12:15  * alunnyjoined
01:12:24  * jden_changed nick to Guest49839
01:12:42  * calvinfojoined
01:21:30  <substack>coffeeing up
01:21:37  <substack>about to lay down some mad hacktivity
01:23:13  <mbalho>i just got down to sudoroom
01:23:46  * fotoveritequit (Read error: Connection reset by peer)
01:23:47  * Guest49839quit (Ping timeout: 252 seconds)
01:24:08  * fotoveritejoined
01:24:18  * alunnyquit (Ping timeout: 276 seconds)
01:24:20  <substack>I'm just going to walk down to powderface and finish up straggler
01:25:08  <substack>then hacking up a filter/reduce module to hook into straggler streams with json-scrape for generating monitoring stats
01:25:23  <substack>then I'm going to make some progress on browserify v2 things
01:25:41  <substack>I've decided I'll need to make incremental progress on browserify v2 since doing everything at once is too daunting
01:26:01  <substack>and I want to evolve the patches along with the existing test suite
01:27:23  <substack>actually I'll just stay home since it's already 17:27
01:28:21  <substack>mbalho: have you gone to the .gov.au website to get your travel visa yet?
01:36:27  <mbalho>substack: no i didnt know about that
01:37:10  <substack>it's supposed to be immediate but it's $20 or something
01:37:23  <substack>there was a blurb about it in my airline ticket email
01:37:26  <mbalho>ah
01:38:32  <Raynos>I've started writing modules using `gozala/reducers`. They return these reducible interfaces that are not very interopable with the rest of node (callbacks / emitters / streams)
01:38:39  <mbalho>substack: https://www.eta.immi.gov.au/ETA/etas.jsp
01:38:42  <Raynos>Are there any good ways to write modules that other people can consume and collaborate on
01:38:52  <Raynos>or do I just have to work in my "reducible garden".
01:39:01  <Raynos>I guess I should ask people that use apis that return promises
01:41:14  * alunnyjoined
01:41:38  <substack>Raynos: you are in the same boat as people who use promises
01:41:51  <Raynos>blargh
01:42:11  <substack>if you're going to go down that road you should make sure that the external interface obeys node idioms
01:42:52  <Raynos>that defeats the point
01:42:55  <Raynos>its all or nothing
01:43:04  <Raynos>but its not hard to convert reducible into callbacks / streams
01:43:14  <Raynos>so I guess I could do that
01:43:44  <substack>Raynos: do reducibles provide sufficient benefits to offset the api divergence?
01:43:57  <Raynos>they do if you choose to use them in your app
01:44:12  <substack>I personally stick to node-style interfaces so it's easier to spin out pieces into separate modules
01:44:17  <Raynos>but I need to explore them more in application building to see whether its worthwhile
01:44:26  <substack>without having to explain a special kind of usage
01:44:59  <Raynos>yeah the learning curve is killer
01:45:23  <substack>depends on what you're trying to achieve with your modules
01:45:27  <substack>or with your application
01:46:01  <Raynos>I avoid the problem by assuming the audience knows about reducers
01:46:18  <Raynos>reducers allows me to build my "big client-side app" as a massive recursive tree of modules in npm
01:46:56  * thatguydanquit (Quit: thatguydan)
01:46:56  <Raynos>there not really modules. There widgets / sub applications / components / whatever
01:47:41  <mbalho>substack: completed the visa thing, it is indeed immediate
01:48:36  <substack>so now you won't be deported!
01:48:40  <mbalho>lol
01:49:00  <substack>like one of those boat people that I've heard so much about
01:49:12  <substack>boat people like dominictarr
01:49:30  <substack>sneaking into australia from new zealand and bumming around in the woods
01:49:32  <mbalho>hahahah
01:49:41  <mbalho>damn gypsies!
01:49:54  * jden__joined
01:54:32  <sorensen>wowza, been a long time since i used dnode
01:54:37  <sorensen>what happened to the use() ?
02:00:17  <substack>sorensen: you can do the same thing by listening for 'local' events and modifying the reference
02:00:52  <substack>I mostly just didn't find myself using .use() at all
02:01:00  <sorensen>i think i was using it to have common things bundled in files
02:01:31  * jden__quit (Ping timeout: 260 seconds)
02:01:34  <substack>you can already do that though
02:01:41  <substack>no need for dnode to have a special thing
02:02:57  <sorensen>by listening to the local event?
02:03:24  <substack>you don't need anything
02:03:26  <sorensen>essentially have some file with `exports = function(dnode) { add listener })`
02:04:00  <substack>var cons = require('./cons'); var d = dnode(cons)
02:04:11  <substack>then in ./cons.js require() whatever other files you need
02:04:29  <sorensen>essentially build up the available methods before hand
02:04:40  <substack>not necessarily
02:04:47  <substack>it's just something you can do with programming
02:04:59  <substack>however you want it to work
02:07:05  <sorensen>might be having a dense moment i think
02:07:07  <sorensen>https://gist.github.com/sorensen/ac2dcb0fd1542017a0ab
02:07:14  <sorensen>this is what i was use'ing before
02:09:28  <substack>the tight coupling to socket.io is completely gone
02:10:01  <substack>you can just set the session and cookie things yourself though
02:12:53  <sorensen>is there a way to add methods after the fact
02:13:14  <sorensen>or do they have to be passed to the dnode method initially
02:14:05  <substack>"initially"?
02:14:52  <sorensen>d = dnode(method)
02:16:23  <substack>I'm still not sure what you're saying
02:17:18  <sorensen>the example has something like dnode({ transform: function() {} })
02:17:32  <sorensen>is there a way to add that transform method afterwards
02:17:43  <substack>how do you mean afterwards?
02:17:50  <substack>why do you want to do that?
02:17:58  <substack>you can use a function or an object for the cons
02:18:17  <substack>dnode(cons) <-- cons can be a `function (remote) { return obj }` or just `obj`
02:19:23  * alunnyquit (Ping timeout: 255 seconds)
02:19:41  <sorensen>derp
02:19:44  <sorensen>thanks
02:19:46  <sorensen>lol
02:19:49  <sorensen>was having a dense moment
02:26:25  * thatguydanjoined
02:27:35  <Raynos>Fuck. https://github.com/Gozala/reducers/issues/49 :/ Either i have to hand optimize reducers or ragequit everything.
02:27:43  * jden_joined
02:28:07  * jden_changed nick to Guest71560
02:28:25  * thatguydanquit (Remote host closed the connection)
02:28:38  * thatguydanjoined
02:37:53  * mikolalysenkojoined
02:38:45  * Guest71560quit (Ping timeout: 276 seconds)
03:05:01  * jden_joined
03:05:25  * jden_changed nick to Guest17055
03:16:31  * Guest17055quit (Ping timeout: 246 seconds)
03:17:33  * thatguydan_joined
03:19:42  * thatguydanquit (Ping timeout: 276 seconds)
03:19:43  * thatguydan_changed nick to thatguydan
03:20:05  <substack>Nexxy: https://github.com/substack/dnode#dnode
03:39:23  * thatguydanquit (Quit: thatguydan)
03:40:27  <substack>Raynos: the cesspool that is es-discuss needs to be purged from the earth
03:40:43  <Raynos>probably
03:40:49  <Raynos>ES6 is a disaster
03:40:58  <substack>nerf it
03:41:02  <Raynos>I do remember starting an interesting thread about being able to opt out of global scope
03:41:15  <Raynos>and no-one replied / humored me :/
03:41:22  <Raynos>also they aren't doing anything useful
03:41:25  <Raynos>FUCK
03:41:39  <Raynos>This reminds me of w3c and idb
03:41:44  <Raynos>and ugh the web ._.
03:41:46  <substack>correct
03:41:49  <Raynos>I should just go write ansi C
03:42:12  * mikolalysenkoquit (Ping timeout: 248 seconds)
03:42:22  <Raynos>substack: we should fork https://github.com/benvie/continuum and write a good ES6
03:42:30  <Raynos>alternatively never move away from es5
03:42:43  <substack>es5 is good enough
03:42:48  <substack>just leave it alone
03:42:54  <substack>make some tiny incremental improvements
03:43:51  <substack>http://substack.net/images/dismantle_all_the_standards_bodies.png
03:44:22  <substack>institutions mostly get in the way
03:44:46  <substack>keep institutions that make meaningful progress, dismantle institutions that get in the way
03:47:25  * jden__joined
03:50:19  <substack>just write modules
03:50:34  <substack>the worst about about es6 is that people think that what they're doing will actually matter
03:50:54  <substack>so they postpone picking a module system to use until the "blessed" one from es6 comes out
03:51:14  <substack>the blessed one that will be some useless pythonic thing
03:52:43  * shamaquit (Remote host closed the connection)
03:53:06  * shamajoined
03:55:01  * jden__quit (Ping timeout: 246 seconds)
03:56:31  <substack>Raynos: I think the best way to make sure that harmony modules become irrelevant is to write hundreds of node modules that also work in browsers
03:57:14  <Raynos>substack: we need some improvements like better UTF & binary things
03:57:45  <Raynos>its just the wave of shit and bullshit in es6 blocks the useful stuff
03:57:50  <Raynos>I would love to have weakmaps right now
03:57:57  <Raynos>The same with w3c
03:58:02  <Raynos>they should stop doing useless shit
03:58:04  <Raynos>and finish crypto
03:58:19  <Raynos>I want an api to generate private/public keypairs in the browser and have them stored securely
03:58:27  <substack>ecma does waterfall
03:58:28  <substack>is why
03:58:35  <substack>we can't get this shit rolled out piecemeal
03:59:04  <fotoverite>Some of es6 is useful
03:59:15  <fotoverite>you just hate their module system and that it's taking 4 fucking years
03:59:17  <substack>fotoverite: it's such a grab-bag though
03:59:26  <Raynos>Ugh
03:59:29  <fotoverite>All api changes are grab bag
03:59:31  <Raynos>I feel depressed :(
03:59:36  <Raynos>writing clean small modules is hard
03:59:41  <substack>I hate the module system yes and I also hate lots of the syntax wankery
03:59:43  <Raynos>everything becomes a clusterfuck
03:59:46  <Raynos>at an alarming system
03:59:59  <Raynos>"write small modules they say"
04:00:17  <Raynos>"why did I end up with this fucked up glue layer that bolts and ducktapes all the shit together"
04:00:28  <substack>the module system in es6 and the class system do not promote writing small modules that just do one thing
04:00:33  <substack>it's for big application ideologies
04:00:48  <Raynos>lol
04:00:50  <fotoverite>Big application are still part of the web also
04:00:52  <Raynos>they have nested modules
04:00:53  <Raynos>so funny
04:00:59  <fotoverite>ugh alright shoot that person
04:01:02  <fotoverite>undefensible
04:01:14  <substack>modules don't need special syntax
04:01:28  <substack>aside from import/export which I can see the utility of
04:01:40  <substack>definitions can just use a callback
04:04:51  <Raynos>well I like import/export syntax
04:05:02  <Raynos>because then you don't need the require and module token
04:05:15  <Raynos>export x; desugars to module.exports = x;
04:05:23  <Raynos>import "foo"; desugars to require("foo");
04:08:25  * dguttmanquit (Quit: dguttman)
04:10:12  <guybrush>hmm this is maybe a dumb question, but is there some clever way to pass object-values to array-elements by reference? basically i want to change obj['0'] by changing arr[0]
04:10:26  <guybrush>i think theres just no way in js to do that?
04:12:28  <guybrush>oh well i will just treat the array as a object :p
04:12:42  <guybrush>or rather threat the object as an array
04:22:00  <guybrush>or just use getter/setters
04:23:32  * dguttmanjoined
04:25:20  * jden_joined
04:25:43  * jden_changed nick to Guest44109
04:27:30  <substack>guybrush: you could just use functions
04:27:33  <substack>.set() and .get()
04:28:25  * dguttmanquit (Quit: dguttman)
04:29:45  <guybrush>right
04:34:07  * Guest44109quit (Ping timeout: 244 seconds)
04:42:42  <Raynos>lol reading es-discuss about modules
04:42:43  <Raynos>is funny
04:42:44  <Raynos>and sad
04:43:11  <substack>people who are writing modules aren't wasting time on es-discuss
04:43:15  <substack>they're too busy writing modules
04:43:18  <substack>is the problem
04:53:25  <Raynos>something like that
05:00:35  * jden__joined
05:14:29  * jden__quit (Ping timeout: 256 seconds)
05:19:31  <guybrush>what do you guys think about getters/setters? it really solves my current problem without having to change a lot
05:20:18  <guybrush>but its like 4x slower with lots of iterations
05:20:47  <substack>I try to avoid them because they behave in unexpected ways
05:21:04  * rannmannquit (Remote host closed the connection)
05:21:10  <substack>and they're trouble if you want to reuse that code for the browser later
05:21:27  <guybrush>oh isnt it implemented everywhere?
05:21:40  <guybrush>(in that case i dont care about old browsers and ie anyway)
05:22:14  <guybrush>but i agree, its like magic and unexpected
05:23:39  <substack>almost have the script code ready for straggler
05:24:48  <Raynos>es5 getter/setters are ugly
05:24:52  <substack>you'll be able to `node server.js 2>&1 | straggler` to all your procs and then view the output/logs across all the processes from a single `straggler read NAME` command yay
05:24:56  <Raynos>get functions are ugly
05:24:59  <Raynos>set functions are tolerable
05:25:49  <substack>then I can write the next part of it to json-scrape stdout and make ad-hoc dashboards
05:26:07  <substack>just by printing json fragments here and there
05:26:32  <substack>and it all goes through secure-peer with an authorized keys json array
05:28:10  <substack>text: the universal interface
05:39:56  * defunctzombie_zzchanged nick to defunctzombie
05:40:12  * jden_joined
05:40:35  * jden_changed nick to Guest86181
05:43:33  <defunctzombie>substack: you should make a straggler output thing for book :)
05:50:55  <substack>defunctzombie: if it prints to stdout or stderr then you can scrape it
05:51:03  <substack>straggler just aggregates stderr and stdout
05:51:24  <defunctzombie>gotcha, personally I don't like unstructured log data :/
05:51:28  <defunctzombie>at least not for app errors
05:51:28  <substack>it's doesn't care at all what data is coming down the wire
05:51:50  <defunctzombie>app errors I prefer structure and have a simple log system in place
05:51:56  <substack>you can parse stdout though
05:52:06  <substack>I'm going to experiment with using json-scrape for this
05:52:13  <defunctzombie>too annoying I have found
05:52:21  <defunctzombie>I use to pipe through various tools, and other things
05:52:40  <defunctzombie>but for app errors it became too much of a hassle over just inserting the functions I needed
05:52:44  <defunctzombie>to just send my errors off
05:53:41  * Guest86181quit (Ping timeout: 244 seconds)
05:53:51  <defunctzombie>substack: https://gist.github.com/shtylman/4744099
05:54:12  <defunctzombie>that is basically what I do for app error logging
05:54:27  <defunctzombie>pleased with it so far in terms of handling error cases I care about
05:54:44  <defunctzombie>not really for general purpose analytics tho or things like that
05:54:51  <substack>I don't want to depend on a logger library inside of my processes since the first thing I want to do is aggregate all the existing stdout output
05:55:13  <defunctzombie>substack: I do want to depend on a logging library because I can capture way better logging information that way
05:55:31  <defunctzombie>I get stacktraces, file locations, request info, modules, git commit ids, etc
05:55:36  <defunctzombie>all from almost nothing
05:55:41  <defunctzombie>simply a log.error(err);
05:55:58  <defunctzombie>you just cannot get that from console.error(err);
05:56:18  <substack>I'm not yet at the point where I want any of those things yet
05:56:46  * mikolalysenkojoined
05:58:19  <defunctzombie>substack: I passed the point where I wanted a simple logging library a long time ago
05:58:27  <defunctzombie>I can't imagine running the software stacks I do without it
05:58:33  <defunctzombie>all by myself
05:59:23  <defunctzombie>using console.log to do any real logging is pretty useless to me, even if I write to stdout, I do it through my logging library
05:59:37  <defunctzombie>that way when I want to change what I write I dont have to hunt all over my code
05:59:48  <defunctzombie>all my logging statements don't change, just what I write and where
06:00:59  <mikolalysenko>quick question: is there an npm/browserify module that pulls query strings from the browser automatically?
06:01:08  <mikolalysenko>sort of like optimist, only in the dom
06:02:17  <defunctzombie>mikolalysenko: there is just the regular querystring module.. not sure what you mean by automatically
06:02:26  <mikolalysenko>yeah, I know
06:02:41  <mikolalysenko>but I want something that automatically pulls the values from the current document's query string
06:03:01  <mikolalysenko>it isn't a big deal, but it feels like the sort of thing that should be solved
06:04:40  <guybrush>mikolalysenko: maybe https://github.com/visionmedia/page.js ?
06:05:00  <guybrush>but there are for sure a lot of others too
06:06:23  <mikolalysenko>ah, that is too much
06:06:33  <mikolalysenko>nevermind, I'll just do it myself
06:07:23  <substack>require('querystring').parse(window.location.search.slice(1))
06:07:55  <mikolalysenko>yeah, that is what I did
06:08:32  <substack>or some <es5 browsers don't have string slice so you could do windowlocation.search.replace(/^\?/,'') instead
06:08:38  <mikolalysenko>though replace the slice with a substr
06:08:47  <mikolalysenko>or that would work
06:08:50  <substack>or that
06:12:12  * defunctzombiechanged nick to defunctzombie_zz
06:16:28  * mikealquit (Quit: Leaving.)
06:20:30  * jden_joined
06:20:54  * jden_changed nick to Guest62995
06:33:24  * Guest62995quit (Ping timeout: 276 seconds)
06:41:50  <mikolalysenko>Check it out: http://mikolalysenko.github.com/conway-hart/example/www/index.html
06:42:02  <mikolalysenko>make polyhedra in your browser!
06:42:26  <mikolalysenko>not the most original thing, I know, but I need it as a subcomponent for this other project
06:42:55  <guybrush>mikolalysenko: pretty awesome! i like how i learn so much stuff just by looking at your modules and reading on wikipedia :D
06:45:09  <mikolalysenko>guybrush: Thanks! I'm glad you are enjoying them!
06:45:28  <mikolalysenko>though I need to get around to writing some of this stuff up more formally
06:46:45  <guybrush>its really cool way to describe polyhedra
06:47:27  <mikolalysenko>yeah, it is very compact
06:47:45  <mikolalysenko>though I have been thinking about an improvement that may be simpler to implement and also generalize to higher dimensions
06:54:00  <mikolalysenko>also: does anyone know if there is a way to resize images in github flavored markdown?
06:54:18  <guybrush>i think you can embed html
06:54:26  <guybrush>and just use inline-css
06:54:34  * shamaquit (Quit: shama)
06:54:36  <mikolalysenko>I see
06:56:30  * mikealjoined
06:56:34  <Raynos>https://twitter.com/Raynos2/status/300136021457252352
06:56:39  <Raynos>es6 modules aren't THAT bad
06:57:11  <mikolalysenko>well, once they get implemented widely I'll switch to them
06:57:21  <mikolalysenko>but for now commonjs all the way, baby!
06:57:35  * mikealquit (Client Quit)
06:57:43  <substack>Raynos: that seems like a really bad example
06:57:46  <Raynos>the only advantage ES6 has is a nice `import { assert, fs, path, http } from "node"`
06:57:48  <substack>since reducible does a lot of things
06:57:53  <substack>doing a lot of things is bad
06:58:14  <Raynos>substack: reducible and reducers don't do that many things
06:58:25  <substack>also the correspondence between the exported names and the imported names is really, tremendously unfortunate
06:58:35  <substack>coupling export names with import names is such a terrible idea
06:58:50  <substack>Raynos: it seems to have a crazy number of exports
06:59:08  <Raynos>substack: that's because he exports many small functions and has no methods ever
06:59:17  <Raynos>sec
06:59:53  * jden_joined
06:59:57  <substack>when I write a module I don't even want to give the single function I'm exporting a name
07:00:00  <Raynos>But it follows the "a module (a file) exports a single function"
07:00:17  * jden_changed nick to Guest25297
07:00:24  <Raynos>and "a package is a grouping of modules from which you can import some modules"
07:00:27  <substack>Raynos: last I saw they took out exports=
07:00:34  <Raynos>:/
07:00:36  <Raynos>then fail
07:00:36  <substack>from domenic's gist
07:01:07  <substack>"a grouping of modules" is horrible
07:01:27  <substack>modularity anti-pattern
07:01:37  <substack>the point of modules is that they do exactly one thing in a composable way
07:01:42  <Raynos>substack: if you rewrote seaport gozala style you would have a seaport, connect, createServer, createStream, register, query, get, free, authorize, close, peer files
07:01:52  <substack>that's disgusting
07:02:16  <Raynos>well it's about being able to import functions directly as individual tokens without using methods ever
07:02:25  <substack>I like methods
07:02:41  <Raynos>and by a grouping of modules I mean the 11 modules from seaport is a grouping
07:02:45  <substack>I don't need to thread the state across every goddamned invocation
07:02:57  <substack>seaport is not 11 modules
07:03:01  <substack>it is 1 module
07:03:06  <substack>what kind of hippie fp bullshit is this
07:03:18  <substack>methods are good
07:03:31  <substack>sometimes you don't need them but they are very appropriate a lot of the time
07:03:32  * mikealjoined
07:04:06  <substack>Raynos: so now I am even less convinced that es6 modules are a good idea
07:04:11  <substack>and I was pretty unconvinced before
07:04:13  <Raynos>its 1 package
07:04:14  <Raynos>and 11 files :p
07:04:30  <Raynos>I am all about hippie fp bullshit
07:04:36  <Raynos>i'll wear off after about 3 months
07:04:39  <substack>I don't want 11 files
07:04:54  <substack>I want to split out files where appropriate
07:05:24  <substack>I just want small reusable pieces that do one thing well
07:06:28  <Raynos>substack: I agree though the import { test } from "tape" is ugly
07:06:36  <Raynos>You can have import "tape" as test but thats ugly too
07:06:42  <Raynos>I think I want import test from "tape"
07:06:49  <substack>I think what I want
07:06:57  <substack>is for import to return a goddamned value
07:07:13  <substack>let test = import 'tape'
07:07:18  <substack>or var
07:07:20  <substack>I don't even care
07:07:26  <substack>let already has destructuring
07:07:30  <substack>if you care about that crap
07:07:33  <Raynos>What I really want
07:07:38  <Raynos>is the minimal amount of bullshit to pay
07:07:50  <Raynos>to allow collab between npm, browserify, AMD and component
07:07:52  <mikolalysenko>there are a few awesome things in es6 though
07:07:56  <substack>never
07:07:57  <mikolalysenko>the biggest one is binary data types
07:08:04  <substack>I will go out of my way to not support harmony modules
07:08:05  <mikolalysenko>that has been a long time coming
07:08:26  <mikolalysenko>oh quit being so stubborn
07:08:28  <substack>people who opt in to harmony modules should get fucked
07:08:34  <mikolalysenko>I will just be happy if it kills off amd
07:08:37  <mikolalysenko>which is really terrible
07:08:45  <substack>amd is better than harmony modules
07:08:52  <Raynos>substack: if it enables more collaboration between js developers then its a good thing
07:08:52  <substack>that is saying something
07:09:16  <Raynos>assuming you pay a minimal bullshit penalty
07:09:27  <substack>so the other thing
07:09:33  <substack>is that nobody even writes code this way
07:09:42  <substack>there is nobody to collaborate *WITH*
07:09:48  <substack>it's all so fucking one-sided
07:10:11  <substack>on the harmony modules side we have: 0 modules, 0 package managers, 0 complete implementations
07:10:24  <substack>on the commonjs side we have: 20k+ modules on npm
07:10:38  <substack>harmony can get fucked
07:10:44  <substack>it's not useful to me
07:10:48  <substack>it might be useful in 10 years
07:11:16  <substack>but this is a network effects game
07:11:29  <Raynos>well
07:11:36  <Raynos>harmony modules will only be good
07:11:46  <Raynos>if the browsers allow me to use them without any local tooling
07:11:50  <substack>we already have a thing that is good
07:11:52  <Raynos>thats the only fucking thing they can do well
07:12:53  <Raynos>which basically means browsers have to bake something like wreq into themself
07:13:21  * Guest25297quit (Ping timeout: 245 seconds)
07:13:28  <substack>if browsers exposed their AST parsing tools like wreq become much more feasible
07:13:37  <substack>so it wouldn't need to bundle esprima or uglify
07:14:03  <substack>that is the sort of meta-innovation tc39 should be working on
07:14:33  <substack>instead of prescribing a module system that nobody will like
07:15:33  <Raynos>thats an interesting idea
07:15:46  <Raynos>I would love to have a function
07:15:52  <Raynos>scope(functionReference)
07:16:03  <Raynos>that gets me the function closure data you can see in chrome 25 dev tools
07:16:22  <mikolalysenko>well, whatever method people use they are still going to have to compile it anyway
07:16:43  <mikolalysenko>loading each module by http is a retarded proposition
07:16:59  <mikolalysenko>so, I see the whole es6 module thing as kind of moot anyway
07:17:17  <mikolalysenko>but if it gets branded as the one-true-module system, then the simple fact that everyone uses it makes it worthwhile
07:17:45  <mikolalysenko>technically though, I think the proposal is a bit dumb
07:18:02  <mikolalysenko>more of a marketing gimmick than anything else
07:18:25  <guybrush>like c++ :D
07:39:38  * jden__joined
07:42:23  <Raynos>loading each module over http is nice for local dev
07:43:23  * mikolalysenkoquit (Ping timeout: 255 seconds)
07:45:17  <Raynos>sure its slow
07:45:27  <Raynos>but if it works over nginx then thats pretty cool
07:45:49  <Raynos>especially if you can open the console
07:45:59  <Raynos>and do `import { through } from "through"`
07:46:02  <Raynos>and just play with it
07:53:02  * jden__quit (Ping timeout: 244 seconds)
08:09:54  * mikolalysenkojoined
08:19:16  * jden_joined
08:19:40  * jden_changed nick to Guest78792
08:24:12  * mikolalysenkoquit (Ping timeout: 264 seconds)
08:32:55  * Guest78792quit (Ping timeout: 246 seconds)
08:49:50  * mikolalysenkojoined
09:02:31  * jden__joined
09:05:22  <Nexxy>Raynos, your through-stream package has an old repo (https://github.com/Raynos/through-stream)
09:05:30  * mikolalysenkoquit (Ping timeout: 276 seconds)
09:05:44  <Nexxy>old/wrong/missing/abducted
09:12:12  * jden__quit (Ping timeout: 264 seconds)
09:12:44  <Raynos>I think I renamed it to transform-stream
09:13:32  <Raynos>or maybe its read-write-stream
09:13:53  <Raynos>Nexxy: https://github.com/Raynos/read-write-stream
09:14:00  <Nexxy>ohh oki ty
09:15:13  <Raynos>Nexxy: https://github.com/Raynos/read-write-stream/commit/f6c160a2bd4e2d100291e68bd65dd922861d52d1
09:15:41  <Raynos>but I need to rewrite all my streams2 things anyway
09:15:49  <Raynos>its on the todo list
09:15:56  <Nexxy>!
09:16:17  <Nexxy>I'm just looking for an easy way to write a transform stream
09:16:25  <Raynos>dominictarr/through
09:16:41  <Raynos>unless you really want it to be streams2
09:16:50  <Nexxy>nah, this is for 0.8.x
09:17:36  <Nexxy>Raynos, thanks :) I'll try through
09:17:51  <Raynos>or map-stream ( https://github.com/dominictarr/map-stream )
09:17:58  <Raynos>really depends what kind of transformation it is
09:18:06  <Nexxy>no I think through is perfect
09:18:30  <Nexxy>I'm parsing JSONish data that's spewing from an arduino
09:19:17  <Raynos>if its json then json stream or stream-serializer can do it for you
09:24:13  <Nexxy>paff!
09:26:40  <Raynos>Ok I s hould sleeep
09:29:35  <substack>through is pretty great
09:30:02  <substack>and JSONStream is pretty much my favorite module on npm
09:30:42  * mikolalysenkojoined
09:31:45  <substack>Nexxy: what are you needing to do with the json stream?
09:32:43  <Nexxy>substack, so it's just a bunch of newline terminated text that is supposed to parse to JSON
09:33:13  <Nexxy>substack, so I want to parse it, modify the structure a bit, and then pipe it away
09:35:08  <substack>what sort of modification and what sort of output?
09:35:21  <substack>another streaming string of output or objects as the final product
09:35:32  <Nexxy>objects
09:35:42  <Nexxy>it actually goes to an upnode connection
09:36:10  <Nexxy>as for modification I'm actually not really going to do much of htat right away
09:36:15  <Nexxy>but I want to be able to drop packets
09:36:17  <Nexxy>deduping
09:36:21  <Nexxy>within the stream if possible
09:37:10  <substack>makes sense
09:37:55  <Nexxy>I'm trying to streamify the ninja blocks stack
09:38:04  <substack>could just do something like: split().pipe(through(function (line) { this.emit('data', JSON.parse(line)) })
09:38:06  <Nexxy>starting from the bottom up
09:38:24  <substack>with https://npmjs.org/package/split and https://npmjs.org/package/through
09:38:28  * jden_joined
09:38:45  <Nexxy>substack, good call
09:38:52  * jden_changed nick to Guest68743
09:38:55  <Nexxy>I'm already getting newlines emitted from the arduino so I don't even need split
09:39:27  <substack>oh neat
09:40:06  <Raynos>im going to buy a new laptop
09:40:13  <Raynos>the criteria will be it runs voxeljs
09:40:13  <substack>Raynos: hooray!
09:40:35  <substack>my crappy thinkpad can run voxeljs pretty well
09:40:46  <Raynos>then im going to persist voxeljs in levelidb and replicate it over webrtc :D
09:40:50  <substack>for linux it's mostly a matter of getting the correct drivers
09:41:26  <Nexxy>it would be neat to see NB sensor data visualized in voxels
09:52:24  * Guest68743quit (Ping timeout: 264 seconds)
10:01:07  * nk109joined
10:05:36  * thatguydanjoined
10:08:06  * slaskisjoined
10:08:21  <mikolalysenko>soccerball!
10:08:22  <mikolalysenko>http://mikolalysenko.github.com/conway-hart/example/www/index.html?e=tI
10:08:25  <mikolalysenko>ok
10:08:30  <mikolalysenko>I am tired, time for sleep...
10:09:06  <mikolalysenko>(for more info, see the following: https://github.com/mikolalysenko/conway-hart )
10:09:37  <guybrush>also http://en.wikipedia.org/wiki/Conway_polyhedron_notation
10:09:53  <guybrush>lots of notation-examples
10:10:04  <mikolalysenko>yeah
10:10:44  <mikolalysenko>Conway notation is a pretty efficient way to generate regular-ish polyhedra
10:13:27  <guybrush>woah you should link the interactive example in the wikipedia-article (or me if you want me to)
10:15:33  <substack>neat
10:18:31  * jden_joined
10:18:54  * jden_changed nick to Guest45363
10:19:34  <mikolalysenko>guybrush: if you want to do it, go ahead
10:20:11  <mikolalysenko>I have been talking to George Hart about it, and so he may actually put a link to it on his page
10:20:28  <guybrush>nice
10:32:10  * Guest45363quit (Ping timeout: 244 seconds)
10:33:12  * mikolalysenkoquit (Ping timeout: 244 seconds)
10:42:51  * nk109quit (Quit: Computer has gone to sleep.)
10:59:08  * jden__joined
11:11:41  * jden__quit (Ping timeout: 245 seconds)
11:13:25  * jden_joined
11:13:49  * jden_changed nick to Guest67841
11:17:56  * Guest67841quit (Ping timeout: 255 seconds)
11:51:15  * calvinfoquit (Ping timeout: 276 seconds)
12:26:21  * slaskisquit (Remote host closed the connection)
13:09:00  <substack>what the FUCK
13:09:03  <substack>request has a timeout
13:09:08  <fotoverite>:(
13:09:09  <substack>the module
13:09:14  <substack>how do I always turn that off
13:09:24  <substack>I never ever want to have a timeout ever
13:09:40  <substack>the ways that I use http are incompatible with such ideas
13:10:38  <substack>oh wait it seems that it isn't set to anything by default
13:10:41  <substack>that's good
13:10:55  <substack>except that my http requests are idling out for no discernable reason
13:12:22  <substack>FUCK
13:12:25  <substack>it's in node core
13:13:38  <fotoverite>Nooo!
13:13:58  <substack>https://github.com/joyent/node/blob/master/lib/http.js#L1800
13:16:09  <Nexxy>can't you just overwrite that?
13:17:09  <substack>how?
13:17:17  <substack>there are no options provided even
13:18:05  <Nexxy>like
13:18:25  <substack>goddamn github
13:18:34  <substack>I just wrote a comment and it goes down for maintenance
13:18:40  <Nexxy>var http = require('http')
13:19:21  <substack>I am increasingly disappointed with node's http library
13:19:27  <substack>need to userspace it
13:19:29  * slaskisjoined
13:19:30  <Nexxy>http.prototype.setTimeout = function fancyNewsetTimeoutFunctionThatIgnoresTheConnectTimeout(msecs, callback) { ...
13:19:55  <substack>it's worse than that
13:20:01  <substack>it calls setTimeout() on the underlying socket
13:20:09  <Nexxy>ohh
13:20:29  <Nexxy>you could always http2
13:20:30  <Nexxy>or something
13:20:56  * ins0mniajoined
13:21:28  <Nexxy>http-dos
13:21:56  <Nexxy>http-part-deux
13:22:24  <fotoverite>electric-request-boogaloo?
13:25:31  * yorickjoined
13:25:32  * yorickquit (Changing host)
13:25:32  * yorickjoined
13:28:45  <substack>core http is the crappiest pile of crap
13:28:57  <substack>why doesn't it just parse http
13:29:03  <substack>it does all this socket bullshit
13:29:14  <substack>pooling and other out of scope features
13:31:37  <Nexxy>var http = require('http-just-the-good-parts')
13:32:49  <substack>isaacs: https://twitter.com/substack/status/300235727042646016
13:32:53  <substack>yeah fuck http
13:33:41  <Nexxy>fuckttp
13:36:45  <substack>the other problem is that core http parser is really hard to benchmark
13:37:00  <substack>since it's all tied up in io with the underlying socket
13:37:24  <substack>it's not just a parser that parses
13:37:29  <substack>it's a bunch of other bullshit
13:49:12  <substack>so res.connection.setTimeout(0) isn't fixing it
13:49:31  <substack>and github is down so I can't even look up how to mitigate this on the node issues tracker
13:51:15  <substack>isaacs: the core http module is far worse than I even thought previously
13:51:19  <substack>also it belongs in userspace
13:51:30  <substack>iterating on this inside of core is insanity
14:20:04  * thatguydanquit (Quit: thatguydan)
14:45:21  * dguttmanjoined
14:50:42  * dguttmanquit (Quit: dguttman)
14:52:23  <fotoverite>substack: and so the change from Node to No begins
14:54:49  <substack>I have too many things to do grumble
14:56:15  <substack>like updating browserify and fixing browserling/testling bugs
14:56:21  <substack>and getting more customers
15:03:31  <fotoverite>hire an assistant?
15:04:13  <substack>need more money for that
15:04:16  <substack>which entails: 14:56:20 < substack> and getting more customers
15:14:24  * devaholicjoined
15:14:24  * devaholicquit (Client Quit)
15:17:15  * slaskisquit (Remote host closed the connection)
15:41:10  <substack>https://github.com/substack/straggler#example
15:41:22  <substack>https://github.com/substack/straggler#usage
15:41:32  <substack>streams. pipes. unix.
16:17:26  * defunctzombie_zzchanged nick to defunctzombie
16:21:31  * thatguydanjoined
16:50:13  * rannmannjoined
16:57:01  * thatguydanquit (Quit: thatguydan)
17:23:04  <jesusabdullah>YOU'RE unix
17:27:10  * nk109joined
17:42:35  * defunctzombiechanged nick to defunctzombie_zz
17:44:32  * thatguydanjoined
17:45:55  <AvianFlu>jesusabdullah: YOU'RE A TOWEL
18:01:41  * slaskisjoined
18:02:44  * thatguydanquit (Quit: thatguydan)
18:12:52  * nk109quit (Quit: Computer has gone to sleep.)
18:23:50  * mikolalysenkojoined
18:53:36  * mikolalysenkoquit (Ping timeout: 264 seconds)
19:00:31  * nk109joined
19:16:44  * nk109quit (Quit: Computer has gone to sleep.)
19:16:45  * calvinfojoined
19:20:58  * intabulasjoined
19:23:46  * intabula_quit (Ping timeout: 245 seconds)
19:37:32  * mikolalysenkojoined
19:40:43  * shamajoined
20:03:48  * thatguydanjoined
20:12:48  * Altreusquit (Ping timeout: 252 seconds)
21:15:38  * slaskisquit (Read error: Connection reset by peer)
21:15:40  * shamaquit (Quit: shama)
21:15:56  * slaskisjoined
21:39:41  * saijanai_joined
21:39:41  * saijanai_quit (Excess Flood)
21:41:24  * saijanai_joined
21:42:27  * jden_joined
21:42:51  * jden_changed nick to Guest62051
21:44:32  * defunctzombie_zzchanged nick to defunctzombie
21:54:39  * gwenbelljoined
22:53:00  * mikealquit (Quit: Leaving.)
23:02:34  * dguttmanjoined
23:23:39  * mikealjoined
23:32:26  * mikealquit (Ping timeout: 255 seconds)
23:35:53  * slaskisquit (Remote host closed the connection)
23:39:29  * thatguydanquit (Quit: thatguydan)
23:40:53  * Guest62051quit (Ping timeout: 255 seconds)
23:43:17  * thatguydanjoined
23:50:20  <mbalho>substack: come hang with mikolalysenko + i + vogonistic
23:51:15  * dguttmanquit (Quit: dguttman)
23:51:39  * shamajoined
23:51:49  * shamaquit (Client Quit)
23:55:51  * gwenbellquit (Remote host closed the connection)
23:59:58  * mikealjoined