00:00:37  * substacktopic: Unofficial browserling/testling mad science channel. For official help /join #browserling
00:00:53  <tanepiper>I feel like doing myself in
00:00:56  <tanepiper>(not actually)
00:01:09  <tanepiper>I stupidly took on some freelance work - FUCKING AGENCY WORK
00:01:11  <st_luke>has anyone written a decent cli websocket client like curl that buffers responses
00:01:26  <tanepiper>*design lead agency* (throws self off bridge)
00:02:16  <st_luke>oh ws has one apparently
00:02:27  <st_luke>wscat
00:02:34  <tanepiper>st_luke: it probably sucks though
00:03:04  <tanepiper>needs more wsgrep
00:03:14  <st_luke>maybe, ws is pretty good though
00:03:45  <tanepiper>must admit, never gone that far down the chain - usually just socket.io or sockjs
00:05:22  <st_luke>i try to get as low as i can get before i get a headache
00:06:04  <tanepiper>i suggested a node/ws app at my work. this was the reponse: http://cl.ly/image/3V3x3X2R2924
00:06:18  <tanepiper>ugh rails developers
00:08:31  <defunctzombie>tanepiper: might be true if none of them know node or js
00:08:44  <defunctzombie>tanepiper: I do not consider a frontend dev who thinsk they "know" js
00:08:50  <defunctzombie>as someone who is gonna do good node work
00:09:02  <defunctzombie>node js style is not what most frontend devs are used to
00:09:06  <defunctzombie>they are used to clusterfuck
00:09:20  <isaacs>Raynos: https://github.com/joyent/node/pull/4878
00:09:23  * cianomaidinjoined
00:09:24  <tanepiper>true, but they are clever people and it wasn;t a complicated app - it's basically a CRUD app and a map frontend
00:10:35  <defunctzombie>still shit for them to think about
00:10:49  <defunctzombie>and node stuff changes all the time.. I mean.. I think node is the only way to go
00:10:52  <defunctzombie>but I am biased :)
00:11:08  * notelliottcablequit (Ping timeout: 255 seconds)
00:11:21  <tanepiper>oh me too - my day job is as a highly overpaid PHP website maintainer and copy/paste monkey
00:12:18  <tanepiper>when i joined i got sucked into the marketing team and they haven't been able to let me go - which has been frustrating - but the pay is good, and the fridge is always stocked so i'm quite comfortable there
00:13:00  <tanepiper>but the mediocrity level is over 9000
00:13:39  <tanepiper>http://tanepiper.com/blog/2013/02/27/no-one-expects-the-spanish-inquisition-or-how-users-will-behave/
00:13:47  <tanepiper>this is the kind of stuff i'm working on just now
00:14:09  <tanepiper>not exactly cutting edge
00:16:16  <tanepiper>also, the worst CMS ever :|
00:24:07  * dominictarrquit (Quit: dominictarr)
00:25:35  * dominictarrjoined
00:26:33  * dominictarrquit (Client Quit)
00:26:43  <mbalho>dominictarr: you should fill in the project URL field on the semver-ftw github page
00:28:08  * dominictarrjoined
00:31:34  * yorickquit (Remote host closed the connection)
00:36:17  * dominictarrquit (Quit: dominictarr)
00:36:32  * cianomaidinquit (Quit: cianomaidin)
00:39:51  * kenperkinsquit (Ping timeout: 240 seconds)
00:39:51  * Correnchanged nick to kenperkins
00:42:12  <jez0990>tanepiper: you have no idea
00:42:22  <jez0990>I'm editting JSTL right now :'(
00:42:37  <jez0990>on a gigantic CMS clusterfuck
00:43:11  <jez0990>all I want to do is *Node*
00:43:19  * dominictarrjoined
00:43:48  <jez0990>thankfully I have all of March off
00:45:45  * mikolalysenkojoined
00:46:24  <st_luke>quit your job and get a node one
00:47:41  <jez0990>nah, I'm not getting another "job" after this one
00:47:57  <jez0990>I'm done with being accountable to other people
00:50:29  * dominictarrquit (Quit: dominictarr)
00:55:38  <jez0990>st_luke: just read your "It's Morning" post... it felt like I was reading a blog post about my life!
00:55:58  <st_luke>jez0990: awesome :)
00:59:00  * mmckeggjoined
00:59:16  * mikealquit (Quit: Leaving.)
01:01:23  * mmckeggquit (Client Quit)
01:03:57  <defunctzombie>"I went to luke.xxx expecting porn but all I got was this random technology blog."
01:05:28  * tilgoviquit (Remote host closed the connection)
01:15:19  <jez0990>asides from the porn association, it's a great way to advertise your blog in christmas cards etc without any extra effort
01:15:50  <defunctzombie>hahaha
01:15:56  <defunctzombie>the porn association is the best part
01:30:02  * mikealjoined
01:33:44  * dguttmanquit (Quit: dguttman)
01:38:28  * mikealquit (Ping timeout: 245 seconds)
01:44:57  * Correnjoined
02:07:12  <Raynos>substack: loading component things with browserify would be cool.
02:08:21  <st_luke>hahaha .xxx domains are the best
02:08:42  <st_luke>when they first came out I bought a bunch but I let most of them expire
02:08:44  <st_luke>they're kinda expensive
02:09:04  * notalexgordonjoined
02:09:05  <st_luke>I spent almost $400 on porn domains in 2011, I think I went a bit too far
02:09:07  <Raynos>isaacs: nice
02:10:11  * thl0joined
02:30:09  * mikealjoined
02:34:21  * mikealquit (Ping timeout: 240 seconds)
02:40:18  * mikealjoined
02:41:53  <substack>the riddle of the unexpected EPIPE https://github.com/joyent/node/issues/4155
02:41:56  * mikolalysenkoquit (Ping timeout: 248 seconds)
02:46:32  <defunctzombie>haha
02:46:35  <defunctzombie>fucking streams
02:48:10  <defunctzombie>not a good low level interface imho
02:48:19  <defunctzombie>but whateves
02:48:44  * mikolalysenkojoined
02:57:31  * dominictarrjoined
02:59:23  * dominictarrquit (Client Quit)
03:01:59  * dominictarrjoined
03:02:21  * mikealquit (Quit: Leaving.)
03:09:31  * dominictarrquit (Ping timeout: 260 seconds)
03:13:09  * dominictarrjoined
03:23:03  * dominictarrquit (Quit: dominictarr)
03:28:00  * thl0quit (Remote host closed the connection)
03:42:46  <defunctzombie>I need a tool to visualize my dependencies in my local files
03:42:57  <defunctzombie>so I know what to put into multi bundles
03:45:18  <rowbit>SubStack, pkrumins: At least 5 people waiting in the queue for free servers! (Waiting: 23)
03:46:00  <pkrumins>crap
03:46:22  <defunctzombie>is that an automated bot?
03:47:33  <pkrumins>yes
03:53:26  <defunctzombie>pkrumins: how much money is a server per month for you guys?
03:53:53  <defunctzombie>and is it any particular OS that gets backed up?
03:59:21  * Correnquit (Ping timeout: 240 seconds)
04:02:12  <defunctzombie>we need to work on our single letter variable name usage folks
04:02:20  <defunctzombie>not liking this single letter stuff
04:02:43  <pkrumins>defunctzombie: they are cloud servers http://www.rackspace.com/cloud/servers/pricing/
04:03:12  <spion>defunctzombie, something like madge?
04:03:34  <defunctzombie>pkrumins: do you spin them up on demand?
04:03:44  <defunctzombie>pkrumins: you guys should just get a dedicated box :)
04:03:47  <pkrumins>no we run them all the time
04:03:48  <spion>(outputs files for dot)
04:04:05  <defunctzombie>spion: nice!
04:04:08  <defunctzombie>yea, exactly like that
04:04:18  <defunctzombie>thank you
04:04:33  <pkrumins>we cant get a dedicated box because we dont have windows virtualization licenses
04:04:38  <spion>you're welcome :)
04:04:44  <defunctzombie>pkrumins: what about dedicated for non windows?
04:04:52  <defunctzombie>or is windows the one that gets backed up?
04:04:55  <pkrumins>we already do have mac mini server
04:05:11  <pkrumins>what do you mean by backed up
04:05:27  <pkrumins>rackspace handles windows licensing
04:05:40  <defunctzombie>pkrumins: http://www.hetzner.de/en/ cheap massive boxes
04:06:01  <pkrumins>but they are in germany?
04:06:07  <defunctzombie>yes
04:06:08  <defunctzombie>:)
04:06:33  <defunctzombie>not gonna find cheap massive boxes here in the US
04:22:47  * mikolalysenkoquit (Ping timeout: 260 seconds)
04:25:36  <defunctzombie>I tried to use hyperscript
04:25:37  <defunctzombie>:(
04:25:40  <defunctzombie>it has failed me
04:27:08  * mikolalysenkojoined
04:27:46  <defunctzombie>nvm, got it to do what I wanted
04:47:19  <defunctzombie>spion: madge had coffescript? this makes me sadpadna
04:47:21  <defunctzombie>*panda
04:49:48  <defunctzombie>it also is not good at telling me module vs file
04:50:01  <defunctzombie>the cli output is strange
04:57:16  <defunctzombie>substack: browserify 2.3.1 \o/
04:57:23  <defunctzombie>what do I get if I update?
04:57:27  <defunctzombie>is that the transform stuffs?
05:12:59  <substack>yes
05:13:12  <defunctzombie>substack: I need to make multibundles better too
05:13:22  <defunctzombie>if bundle A include C B D
05:13:31  <defunctzombie>and bundle F includes C B
05:13:37  <defunctzombie>but you make A a multibundle
05:13:42  <defunctzombie>then F should not bundle C or B
05:13:52  <defunctzombie>pretty easy to do
05:13:56  <st_luke>there's an npm bug around that right now
05:16:11  <defunctzombie>I also need to profile this, cause even when I do detectGlobals: false, there is some minor slowness in enchilada usage
05:16:17  <defunctzombie>that wasn't htere before with script
05:16:26  <defunctzombie>so I gotta find out what is different in the pipeline
05:17:00  <defunctzombie>the awesome thing is once I fix it, everyone can benefit haha
05:17:49  <defunctzombie>and we gotta make this global detection stuff better
05:18:09  <defunctzombie>better as in faster
05:19:48  <defunctzombie>dammit, why doesn't isaacs make require('process') a thing #sadpanda
05:20:04  * defunctzombiehurls insult at isaacs
05:20:32  * st_lukequit (Read error: Connection reset by peer)
05:21:22  * st_lukejoined
05:24:19  * st_luke_joined
05:24:19  * st_lukequit (Disconnected by services)
05:24:31  * st_luke_changed nick to st_luke
05:25:19  * mikolalysenkoquit (Ping timeout: 260 seconds)
05:27:43  <defunctzombie>rvagg: https://github.com/rvagg/externr
05:27:57  <defunctzombie>I am of the opinion this should encapsulate rather than extend :/
05:28:11  <rvagg>defunctzombie: howso?
05:28:29  <defunctzombie>I just think it gets messier with extending or "inheriting" essentially
05:28:43  <defunctzombie>just depends on preference and familiarity tho
05:28:52  <rvagg>well, I'm thinking about extending stuff that's buried deep within your implemetation that's otherwise hard to get to
05:29:06  <defunctzombie>yea, and there might be a reason for that tho
05:29:15  <defunctzombie>in that it isn't meant to be gotten to "safely" maybe
05:29:17  * mikolalysenkojoined
05:29:36  <rvagg>perhaps, but sometimes you just want to throw caution to the wind
05:29:40  <defunctzombie>anyhow, a good test for new things I find is to use them a bit, and then see what the maintenence burden is in 6 months
05:29:43  <defunctzombie>when you haven't touched it
05:29:51  <defunctzombie>and forgot all about the magic and things it did
05:30:09  <defunctzombie>and when you revisit it and go.. wtf holy shit why.. well, then you know ;)
05:30:17  <rvagg>yeah, I remain not-fully-convinced of this approach but I extracted it from working code so we'll see how well it stands up
05:30:26  <defunctzombie>yep
05:33:11  * shamaquit (Remote host closed the connection)
05:33:43  * ralphthe1injaquit (Quit: leaving)
05:47:06  * st_lukequit (Remote host closed the connection)
05:56:30  * defunctzombiechanged nick to defunctzombie_zz
05:57:42  * mikealjoined
06:01:56  * mikolalysenkoquit (Ping timeout: 248 seconds)
06:22:46  * shamajoined
06:23:24  * shamaquit (Remote host closed the connection)
06:24:32  <jesusabdullah>substack: I'm back in towne!\
06:28:23  * mikolalysenkojoined
06:33:36  * mikolalysenkoquit (Ping timeout: 276 seconds)
06:47:30  <substack>hooray!
06:48:22  <fotoverite>jesusabdullah: for how long?
06:58:24  * mikolalysenkojoined
07:06:56  * mikolalysenkoquit (Ping timeout: 255 seconds)
07:33:06  * mikolalysenkojoined
07:43:48  * mikolalysenkoquit (Ping timeout: 248 seconds)
08:09:29  * mikolalysenkojoined
08:13:00  * AvianFluquit (Remote host closed the connection)
08:17:54  * cianomaidinjoined
08:20:51  * mikolalysenkoquit (Ping timeout: 240 seconds)
08:24:57  <jesusabdullah>fotoverite: tonight and tomorrow night
08:25:07  <fotoverite>then to alaska?
08:30:27  <jesusabdullah>indeed!
08:31:30  <jesusabdullah>I hate this laptop's trackpad
08:42:17  * cianomaidinquit (Quit: cianomaidin)
08:46:06  * cianomaidinjoined
08:47:14  * mikolalysenkojoined
08:52:07  <jjjjohnnny>substack: https://gist.github.com/NHQ/d025fb7f04fd8061e116
08:54:56  * calvinfoquit (Quit: Leaving)
08:55:17  * slaskisjoined
08:58:29  * mikolalysenkoquit (Ping timeout: 248 seconds)
09:05:12  <substack>http://substack.net/images/substack_compute.jpg
09:05:12  * cianomaidinquit (Read error: Connection reset by peer)
09:07:14  * cianomaidinjoined
09:13:57  * cianomaidinquit (Quit: cianomaidin)
09:25:30  * mikolalysenkojoined
09:29:55  <juliangruber>substack: https://fbcdn-sphotos-e-a.akamaihd.net/hphotos-ak-snc7/466131_231266593648150_2015737662_o.jpg (cinema4d)
09:30:18  <substack>what about it?
09:38:09  * mikolalysenkoquit (Ping timeout: 256 seconds)
09:53:58  * calvinfojoined
09:56:42  <juliangruber>substack: you share 3d art, I share 3d art
10:03:55  * mikolalysenkojoined
10:07:53  <rvagg>ralphtheninja, juliangruber, Raynos: I think I need some reassurance that this isn't *that bad*: https://github.com/rvagg/node-levelup/pull/84
10:08:57  <juliangruber>rvagg: if state is that complex a state object is ok
10:10:20  <rvagg>managing state on readable streams on something like an async iterator sucks, too many corner cases
10:10:44  <juliangruber>rvagg: if we can't reduce state complexity then I like this change
10:11:32  <rvagg>juliangruber: I'd love to make it more clever, but my fear is that the complexity it's trying to deal with will get obscured, hence pulling it out into a very explicit rule set
10:11:52  <rvagg>.destroy() mid-read is annoying
10:13:40  <juliangruber>what do you mean by more clever?
10:14:20  <rvagg>well, like perhaps queueing up callbacks
10:14:36  <rvagg>in a .destroy(), perhaps you could queue up a cleanup/close when a read event happens
10:14:44  <rvagg>just so every bit doesn't have to be aware of every other bit
10:17:00  * mikolalysenkoquit (Ping timeout: 264 seconds)
10:18:15  * cianomaidinjoined
10:37:36  <substack>juliangruber: aha, neat stuff!
10:42:28  * mikolalysenkojoined
10:53:44  * mikolalysenkoquit (Ping timeout: 246 seconds)
11:01:31  * cianomaidinquit (Quit: cianomaidin)
11:05:21  * fotoveritequit (Read error: No route to host)
11:10:11  * cianomaidinjoined
11:10:14  * jibayjoined
11:22:25  * mikolalysenkojoined
11:23:42  * cianomaidinquit (Quit: cianomaidin)
11:28:36  * cianomaidinjoined
11:29:53  * cianomaidinquit (Client Quit)
11:31:11  * spionquit (Ping timeout: 246 seconds)
11:32:50  * mikolalysenkoquit (Ping timeout: 240 seconds)
11:33:13  * cianomaidinjoined
11:40:19  <substack>http://substack.net/images/cassette_robot.jpg
11:40:51  <juliangruber>substack: sweeet!
11:41:54  <substack>just made that
11:42:09  <substack>going to get a whole cast of robot characters
11:51:26  <juliangruber>is that one for tape?
11:51:57  <substack>oh that's a good idea!
11:52:07  <substack>tape already has some vector art but it could have 2 images
11:52:28  <juliangruber>mhm
11:58:47  * mikolalysenkojoined
12:00:45  * cianomaidinquit (Quit: cianomaidin)
12:11:35  * mikolalysenkoquit (Ping timeout: 255 seconds)
12:11:53  <jez0990>I was thinking the other day about how every module really should have a well thought out character - it would make visualising the ecosystem fun
12:12:27  <jez0990>in fact, short gifs with the characters performing some kind of abstract representation of what the module does would be good too
12:19:54  * spionjoined
12:20:13  <rvagg>jez0990: what I was imagining the other day is every package having some kind of voxel creature/character/avatar so we could watch things getting published in realtime
12:22:33  <spion>wow, I'm looking at that EPIPE bug and man its annoying.
12:22:56  <substack>jez0990: I like that idea.
12:23:20  <substack>personification of the abstractions and tools we use
12:24:18  <spion>I wonder if EventEmitter.prototype.once should be fixed, or just Stream.prototype.pipe
12:24:23  * shuaibjoined
12:28:06  <jez0990>substack: meme-ification
12:28:44  * ins0mniajoined
12:29:27  <ins0mnia>need a good name for a module that accesses and sets localStorage from the server
12:31:35  <substack>ins0mnia: thunderstore
12:31:49  <ins0mnia>substack: cool!!
12:32:46  <ins0mnia>substack: I'm giving it a streamy interface that plays nice with shoe, this will be awesome
12:34:08  * thl0joined
12:35:03  <substack>pretty great
12:37:23  * mikolalysenkojoined
12:49:19  * mikolalysenkoquit (Ping timeout: 276 seconds)
13:08:40  * slaskisquit (Quit: slaskis)
13:10:42  * thl0quit (Remote host closed the connection)
13:16:00  * mikolalysenkojoined
13:27:13  * mikolalysenkoquit (Ping timeout: 245 seconds)
13:36:24  * jibayquit (Remote host closed the connection)
13:54:32  * mikolalysenkojoined
14:05:58  * mikolalysenkoquit (Ping timeout: 245 seconds)
14:08:25  * devaholicjoined
14:09:51  * defunctzombie_zzchanged nick to defunctzombie
14:13:04  * heathquit (Read error: Connection reset by peer)
14:13:20  * heathjoined
14:24:29  * heathquit (Changing host)
14:24:30  * heathjoined
14:32:44  * mikolalysenkojoined
14:44:50  * mikolalysenkoquit (Ping timeout: 240 seconds)
14:52:13  <defunctzombie>I refuse to support sockjs because it is coffeescript.. yea, I am like that hahaha
14:53:06  <substack>purist!
14:53:51  <substack>I don't mind that things I use are written in languages I don't typically use
14:54:14  <substack>so long as they work, are easy to install, and have a nice api
14:58:31  <juliangruber>mhm, as long as their method names aren't underscore_style because they like ruby it's ok
14:58:44  <substack>haha defunctzombie does that
14:58:55  <substack>I don't mind it too much
14:59:02  <defunctzombie>:D
14:59:16  * shuaibquit (Quit: Computer has gone to sleep.)
14:59:19  <juliangruber>oops :D
14:59:30  <defunctzombie>i_love_me_some_underscore_separated_names
14:59:41  <defunctzombie>theyAreMuchEasierToReadThanThis
14:59:45  <substack>I just use camelCase because that's what the core prototypes use
14:59:54  <defunctzombie>we_use_spaces_for_a_reason
15:00:06  <defunctzombie>+1 to substack for the strength of consistency
15:00:49  <juliangruber>let the ego disappear and use what's used
15:00:55  <defunctzombie>yep
15:02:35  <substack>I care much more about higher-level organization than low-level formatting
15:03:02  <substack>split up everything into reusable modules and it doesn't matter how the modules are written
15:03:10  <substack>so long as they are small and do just one thing each
15:03:33  <defunctzombie>here here!
15:04:21  <defunctzombie>https://github.com/ncb000gt/node.bcrypt.js/issues/143#issuecomment-14293227
15:04:23  <defunctzombie>bahaha
15:04:41  <defunctzombie>I like how the windows comment completely made him disregard my note about the compile warning
15:05:13  <defunctzombie>should I tell him I will fix it if he buys me a windows 8 computer?
15:05:35  <substack>microsoft should be giving travis-ci so much money right now
15:05:44  <defunctzombie>yes
15:05:50  <juliangruber>we need something like browserling for testing and debugging node modules on different operating systems
15:06:24  <defunctzombie>I dunno why all these people love the windows
15:06:30  <defunctzombie>you can deploy for so cheap on the linux
15:06:35  <defunctzombie>and test locally for free
15:06:41  <defunctzombie>it is just stupid.. whatever
15:06:43  <juliangruber>they might work somewhere where there is no alternative to using windows
15:06:56  <defunctzombie>juliangruber: I refuse to believe that
15:07:06  <juliangruber>it happened to me ;)
15:07:14  <defunctzombie>if they want to use new things then they should consider alternatives
15:07:36  <defunctzombie>otherwise, they need to face the reality and pay me the moneys to fix their windows problems :D
15:08:10  <defunctzombie>submitting issues to open sources projects about windows should be illegal (and OSX for that matter too) without providing a computer for the person to test it on
15:08:35  <defunctzombie>thats like saying... oh I have this 500$ piece of software I use to develop on.. your stuff doesn't work.. you should buy it and fix it
15:08:39  <defunctzombie>no thank you
15:09:26  <defunctzombie>the redis guy has the right approach
15:09:58  <substack>domenic denicola fixes all the windows bugs in my modules
15:10:04  <defunctzombie>yea
15:10:09  <defunctzombie>that is really awesome
15:10:16  <defunctzombie>he wants to use windows and makes it happen
15:10:56  <defunctzombie>substack: you use vim right?
15:11:14  <substack>affirmative
15:11:21  * mikolalysenkojoined
15:11:40  <substack>although I might start using dominictarr's text editor
15:11:50  <juliangruber>:O
15:11:51  <juliangruber>hipster?
15:12:27  <defunctzombie>trying to find the setting for you to trim trailing whitespace :p
15:12:34  <defunctzombie>mine does it automatically
15:12:43  <defunctzombie>or I set it up a long time ago somwhere to do it
15:13:08  <substack>defunctzombie: leading whitespace that is also trailing is intentional
15:13:26  <substack>I dislike discontinuous whitespace gaps for otherwise empty lines
15:14:01  <substack>it disagrees with my internal model of how whitespace denotes logical blocks
15:14:21  <defunctzombie>haha
15:14:25  <defunctzombie>whitespace doesn't
15:14:35  <defunctzombie>braces do, we just happen to use tabs/whitespace as well
15:14:54  <defunctzombie>I like my empty lines to be empty
15:15:01  <defunctzombie>ghost characters
15:15:21  <substack>"\n" lines should only ever appear around code with no leading whitespace
15:15:41  <substack>not interspersed with indented blocks of code
15:16:07  <juliangruber>http://www.slate.com/blogs/future_tense/2013/02/28/brain_to_brain_interface_migeul_nicolelis_links_rats_minds_via_computer.html
15:16:18  <juliangruber>rat.pipe(otherRat).pipe(rat)
15:16:46  <defunctzombie>it has begin
15:16:48  <defunctzombie>*begun
15:17:34  <juliangruber>I wonder how it feels being connected to a rat
15:18:13  * CryptoQuickjoined
15:20:53  <defunctzombie>juliangruber: invigorating
15:22:39  <juliangruber>defunctzombie: I bet all my problems are gone
15:23:25  <juliangruber>*were
15:24:05  * mikolalysenkoquit (Ping timeout: 248 seconds)
15:25:08  * mikolalysenkojoined
15:28:53  * AvianFlujoined
15:35:12  * mikealquit (Quit: Leaving.)
15:44:39  * CryptoQuickquit (*.net *.split)
15:44:41  * sveisveiquit (*.net *.split)
15:45:36  * sveisveijoined
15:45:42  * CryptoQuickjoined
15:45:50  <defunctzombie>substack: so I played around with "better" multi bundles some
15:46:31  <defunctzombie>the only limitation to making it happen is that bundles would need to be able to export/expose everything within them
15:47:12  <defunctzombie>could be a flag or something for those that might want to do this, I dunno
15:47:26  <substack>with hashes?
15:47:31  <defunctzombie>basically, the following should be possible (and is with very little work on top of the current system)
15:47:44  <defunctzombie>substack: yea
15:47:54  <defunctzombie>otherwise the following doesn't work:
15:48:05  <defunctzombie>bundle A is made of of a.js which requires b.js
15:48:21  <defunctzombie>bundle C is made up of c.js which requires a.js and b.js
15:48:30  <defunctzombie>if we make bundle a using .require('a.js);
15:48:33  <defunctzombie>then b.js is never exposed
15:48:51  <defunctzombie>so when bundle C does .external(a.js) that does get you b
15:49:24  <defunctzombie>this is easy to fix via API, in that you can just pass a bundle to .require
15:49:44  <defunctzombie>or have .require (only on a flag) be able to figure out that external a will contain b
15:49:49  <defunctzombie>but looking at the deps
15:49:50  <defunctzombie>however!
15:49:58  <defunctzombie>bundle A still needs to expose b.js
15:50:06  <substack>pass a bundle object?
15:50:08  * defunctzombieswears it all makes sense
15:50:22  <defunctzombie>substack: that is one way, but you don't have to do that
15:50:40  <defunctzombie>substack: the benefit of passing a bundle to require is that you then don't need to worry about what that bundle contains
15:50:53  <defunctzombie>and you can just be interested in what it will contain once resolved
15:51:06  <defunctzombie>substack: if you look at the multi_bundle.js test
15:51:19  <defunctzombie>imagine instead of .require('./b.js') you did .require(core);
15:53:19  * dguttmanjoined
15:54:34  * spionjust wrote an onConsoleMessage listener for Android's webview that translates error file/lineNo from browserify files to the original file/lineNo
15:55:20  <spion>really, really useful.
16:14:31  * mikealjoined
16:19:00  * defunctzombiechanged nick to defunctzombie_zz
16:35:41  * mikealquit (Quit: Leaving.)
16:37:13  * dguttmanquit (Ping timeout: 245 seconds)
16:40:06  * Correnjoined
16:41:15  * kenperkinsquit (Disconnected by services)
16:41:15  * Correnchanged nick to kenperkins
16:42:07  * Correnjoined
16:43:05  * dguttmanjoined
17:00:50  * slaskisjoined
17:12:12  * jibayjoined
17:13:15  * zero_coderjoined
17:16:01  * fotoveritejoined
17:19:42  * defunctzombie_zzchanged nick to defunctzombie
17:25:54  <mikolalysenko>can you guys recommend me a good tokenizer for javascript?
17:26:13  <mikolalysenko>I tried using falafel/esprima but had some issues
17:26:42  <mikolalysenko>for example, I get an error when I try to do the following:
17:26:43  <mikolalysenko>require("falafel")("function(a,b) { a += b; }", function(node) { console.log(node);
17:26:46  <mikolalysenko>});
17:29:06  <mikolalysenko>basically what I want to do is create some code for automatically generating component-wise operations on large arrays
17:29:28  <mikolalysenko>that takes into account cache when traversing arrays with different layouts
17:30:13  <defunctzombie>mikolalysenko: escodegen?
17:30:26  <defunctzombie>or esprima
17:30:30  <defunctzombie>which part of this do you need?
17:30:57  <defunctzombie>you want the whole AST I am guessing
17:32:37  * mikealjoined
17:36:10  <mikolalysenko>no, I just want to rename some variables
17:36:22  <mikolalysenko>my idea is that I want to make a library to do componentwise operations on ndarrays
17:36:46  <mikolalysenko>but doing this properly requires a lot of tricky things, depending on the layout of the arrays in memory
17:37:03  <mikolalysenko>so I was thinking, why not just write a little compiler that can generate optimized loops
17:37:14  <mikolalysenko>and inline the given function
17:37:35  <mikolalysenko>so I was thinking that you could write something like:
17:37:47  <mikolalysenko>cwise(function(a,b,c) { a += b * c; })
17:38:11  <mikolalysenko>and it would generate an optimized function that takes 3 typed arrays as input and then adds the product of the second two to the first one
17:40:19  <mikolalysenko>so what it would do is basically take the function, convert it to a string and rename all the variables like this:
17:40:25  <mikolalysenko>var str = func + ''
17:40:52  <mikolalysenko>and then loop over all free names and add replace the ones that match the arguments with array indices
17:40:55  <mikolalysenko>so:
17:41:03  <mikolalysenko>a -> a[ptr0]
17:41:08  <mikolalysenko>b -> b[ptr1]
17:41:14  <mikolalysenko>c -> c[ptr2] ...
17:41:49  * mikealquit (Quit: Leaving.)
17:44:11  <defunctzombie>mikolalysenko: well, looking at falafel docs, you are missing the "( )()"
17:44:13  <defunctzombie>around your function
17:44:33  <defunctzombie>maybe you don't need that
17:44:42  <defunctzombie>but the readme has it, so I would start with that
17:45:34  <mikolalysenko>defunctzombie: I tried that, but still breaks
17:45:53  <mikolalysenko>hmm
17:45:59  <mikolalysenko>actually, it worked
17:46:04  <mikolalysenko>never mind, I am stupid
17:48:15  <defunctzombie>substack: oh jesus ok glad I realized it
17:49:11  <defunctzombie>substack: https://github.com/shtylman/node-detective/commit/fa3cbe775ca4f3e2e4bf4e5b313aae699be7cd52
17:49:31  <defunctzombie>substack: you need to pull that in for faster parsing
17:49:38  <defunctzombie>it is much faster if you don't capture ranges
17:50:05  <defunctzombie>you can bench it yourself to verify, I benched it when I did that fix
17:50:15  * defunctzombiewas wondering why things were slower
17:50:35  * mikealjoined
17:58:46  * tphummeljoined
18:08:52  <defunctzombie>substack: if you want a pull request I can do that, also, I had the escodegen stuff so the error message could show expression require errors
18:09:10  <defunctzombie>anyhow, the range stuff turned on is slooowwww
18:14:06  * tilgovijoined
18:14:41  * tilgoviquit (Remote host closed the connection)
18:16:40  * zero_coderquit (Remote host closed the connection)
18:20:20  * spionquit (Ping timeout: 246 seconds)
18:29:00  * mirkokquit (Quit: ZNC - http://znc.in)
18:47:37  * heathquit (Remote host closed the connection)
18:52:03  * CryptoQuickquit (Quit: CryptoQuick)
19:18:50  * mikolalysenkoquit (Ping timeout: 260 seconds)
19:23:23  * shamajoined
19:27:13  * mikolalysenkojoined
19:45:05  * shuaibjoined
19:54:06  * dfggquit (Ping timeout: 272 seconds)
19:54:47  <Raynos>rvagg: that is bad
19:54:57  <Raynos>rvagg: You should figure out a cleaner way to not have a state machine
20:14:03  <chrisdickinson>the whole "buffer doesn't quite work the same in browser as in node" bit makes life difficult
20:14:11  * shuaibquit (Quit: Computer has gone to sleep.)
20:15:48  * shuaibjoined
20:46:38  <defunctzombie>http://tryme.jit.su/shtylman/qr.js/example/
20:46:43  <defunctzombie>pure js qrcode calculations
20:46:49  <defunctzombie>no rendering decisions made by the lib :)
20:47:13  <defunctzombie>basic lib to use it on a webpage coming up
20:47:17  <defunctzombie>I think I will call it qarr
20:47:24  <defunctzombie>anyone got a better suggestion?
20:53:32  <jez0990>queueArr
20:53:47  <jez0990>for maximum confusion
20:54:05  <jez0990>defunctzombie: ^
20:54:15  <defunctzombie>haha
20:54:30  <defunctzombie>since it will be a widget type thing I wonder if I should do qr-widget
20:54:31  <defunctzombie>or some such
20:57:07  <mikolalysenko>just call it qr
20:57:51  <mikolalysenko>though qr is already taken ... :(
20:58:19  <defunctzombie>yea
20:58:27  <defunctzombie>fucking npm :P
20:58:35  <defunctzombie>I want to publish shtylman/qr and fuck the other qr
20:58:54  <defunctzombie>but really no, this is a higher level widget
20:58:59  <tanepiper>yea, npm could do with namespacing :/
20:59:05  <defunctzombie>I hate when people take a large namespace by something randomly specific
20:59:18  <defunctzombie>tanepiper: not really namespacing, there are better UIs actually
20:59:30  <defunctzombie>anyhow, right now I need to come up with a name
21:09:01  <jez0990>i just googled "checkerboard qr" and found this: http://lynnmeloche.wordpress.com/2012/02/09/a-checkerboard-on-lsd-the-qr-code/
21:09:15  <jez0990>maybe look at the wiki page
21:09:53  <jez0990>i'm sure there's plenty of good inspiration around
21:24:12  * mikealquit (Quit: Leaving.)
21:24:14  <defunctzombie>haha
21:36:46  * defunctzombiechanged nick to defunctzombie_zz
21:49:31  * st_lukejoined
21:54:30  * mikealjoined
22:03:08  * mikealquit (Ping timeout: 252 seconds)
22:12:32  <st_luke>rvagg: ping
22:13:07  <st_luke>LOUDBOT: what time is it in australia?
22:22:26  <sorensen>am i crazy, or does substack have a general migration lib out there?
22:23:19  * shuaibquit (Quit: Textual IRC Client: http://www.textualapp.com/)
22:31:40  <mbalho>sorensen: 'general migration'?
22:32:51  <st_luke>like rsync?
22:33:42  * yorickjoined
22:33:42  * yorickquit (Changing host)
22:33:42  * yorickjoined
22:40:24  * dominictarrjoined
22:42:47  <sorensen>i was thinking of tj
22:42:49  <sorensen>:P
22:53:04  <st_luke>has anyone put their 23andMe results on npm
22:55:07  * mikealjoined
22:57:04  * dominictarrquit (Quit: dominictarr)
22:59:47  * mikealquit (Ping timeout: 252 seconds)
23:03:28  <st_luke>"the ability to reach out to disenfranchised media partners"
23:03:31  <st_luke>fuck
23:03:41  <st_luke>I hate startups
23:04:11  <st_luke>"once we get users, this thing sells itself"
23:04:53  * st_lukequit (Remote host closed the connection)
23:05:34  * dominictarrjoined
23:08:07  * slaskisquit (Quit: slaskis)
23:10:40  * dominictarrquit (Quit: dominictarr)
23:11:54  * tilgovijoined
23:18:50  * mikolalysenkoquit (Read error: Connection reset by peer)
23:20:33  <jez0990>23andMe... interesting
23:21:08  <jez0990>presumably you'd have to require("mother") and require("father")
23:23:53  <jesusabdullah>substack: question about browserify: How would I go about customizing a prelude?
23:24:22  <jesusabdullah>substack: thinking about experimenting with gnome extensions and would like to shim out a bunch of shitty APIs
23:24:24  <rvagg>Raynos: the original this._state string was already becoming a state machine on its own, better to clear it up and make it explicit
23:24:34  <rvagg>Raynos: but if you have a better way then *please* contribute
23:25:23  <Raynos>that requires deep thought
23:25:45  <jesusabdullah>rvagg: Raynos do you guys use browserify and know how to do custom "built-in" shims?
23:31:36  <jesusabdullah>oh I think I see
23:31:53  <jesusabdullah>I add custom entries to the module-stream
23:31:58  * dominictarrjoined
23:32:21  <jesusabdullah>where are the normal shims though?
23:32:59  <jesusabdullah>dominictarr: are you good at browserify?
23:33:25  <jesusabdullah>oh wait I'm being a noob I should just add them to node_modules to start
23:33:26  <dominictarr>jesusabdullah: good at browserify? browserify is simple, you don't really need to be good at it
23:33:46  <jesusabdullah>right what I want to do is modify the built-in module shim
23:33:54  <jesusabdullah>at least that's what I thought I wanted to do
23:33:58  <jesusabdullah>I could still do that
23:34:11  <jesusabdullah>but for now just adding code into node_modules works just fine
23:35:11  <jesusabdullah>dominictarr: basically I want to know where the browser shim code for native node apis lives
23:36:05  <dominictarr>jesusabdullah: yeah, I did that for crypto-browserify
23:36:11  <dominictarr>in browserify v1
23:36:18  <jesusabdullah>how are you doing it now?
23:36:24  <jesusabdullah>I'm looking at v2
23:36:39  <dominictarr>it was kinda complicated then
23:36:43  <jesusabdullah>dominictarr: I learned gnome shell runs on spidermonkey, planning to fuck around with extensions
23:36:48  <dominictarr>but I'm sure it's much better and different now
23:37:09  <dominictarr>gnome shell?
23:37:25  <jesusabdullah>yeah the ux for gnome 3
23:37:32  <dominictarr>oh sweet
23:37:34  <jesusabdullah>the destop and panels and shit
23:37:35  <jesusabdullah>yeah dude
23:37:40  <jesusabdullah>but of course the APIs suck
23:37:41  <dominictarr>right, and you can browserify that stuff
23:37:46  <jesusabdullah>yeah exactly
23:37:49  <dominictarr>of course
23:38:00  <dominictarr>wrap them in event emitters
23:38:01  <jesusabdullah>I want to shim out its global import object api a little
23:38:06  <jesusabdullah>yeah
23:38:08  <dominictarr>and maybe some jquery like selector thing
23:38:37  <jesusabdullah>yeah I mean you don't have to fuck with a DOM really just gobject representations in javascript
23:38:48  <dominictarr>jesusabdullah: also have you seen https://npmjs.org/x11
23:39:01  <dominictarr>pure js binding to the x-11 protocol
23:39:06  <jesusabdullah>wat
23:39:20  <jesusabdullah>that's kinda intense
23:39:22  <dominictarr>so you can build native apps with no c
23:39:27  <jesusabdullah>lulz nice
23:39:41  <jesusabdullah>x11 apps sans toolkit kinda look like balls though
23:39:47  <dominictarr>it's api is quite close to the (binary) protocol
23:39:59  <dominictarr>it would be much better if you wrapped it a bit
23:40:03  <jesusabdullah>yeah yeah
23:40:09  <dominictarr>it wouldn't be that hard
23:40:12  <jesusabdullah>you'd almost want to port fltk or something
23:40:24  <dominictarr>fltk?
23:40:54  <jesusabdullah>https://en.wikipedia.org/wiki/FLTK reasonably small gui toolkit
23:41:16  <dominictarr>think you could do something even better from starting in a dynlan
23:41:23  * st_lukejoined
23:41:29  <jesusabdullah>a dynlan?
23:42:14  <dominictarr>dynamic language
23:42:24  <jesusabdullah>oh I see
23:42:30  <jesusabdullah>write your own graphics toolkit as you go
23:42:51  <dominictarr>I spent some time hacking on a window manager http://github.com/dominictarr/nwm
23:43:03  <dominictarr>but it's build on a partial binding
23:43:03  <jesusabdullah>yeah I've used nwm
23:43:07  <jesusabdullah>have you met mixu? cool dude
23:43:14  <dominictarr>yeah, he's awesome
23:43:23  <jesusabdullah>word
23:43:39  <dominictarr>but I'd rather start over with the pure js x11 binding
23:43:55  <dominictarr>I want to combine tabs and tiles
23:44:00  <jesusabdullah>hmmm
23:44:08  * ins0mniaquit (Read error: Connection reset by peer)
23:44:33  <dominictarr>so you can have tabs of screens with multiple tiles in them
23:44:43  <dominictarr>and have a term next to a browser etc
23:44:49  <jesusabdullah>hmm
23:45:22  <dominictarr>and have consistent controls for changing tabs
23:45:27  <dominictarr>and tiles through out
23:45:49  <jesusabdullah>I see
23:46:07  <jesusabdullah>oh yeah I fucked around with windows 8 in LHR
23:46:30  <jesusabdullah>it's basically IE extensions except they get access to this full-screen ui thinger
23:46:35  <jesusabdullah>almost cool
23:47:13  <jesusabdullah>dominictarr: https://github.com/awamper/wikipedia-search-provider/blob/master/extension.js currently reading
23:47:49  <jesusabdullah>gnome's javascript style rules are kinda retarded
23:48:39  <dominictarr>new Lang.Class({…WTF...})
23:48:53  <jesusabdullah>yeah well it's based on bindings to the gobject api
23:49:02  <jesusabdullah>so that's gonna affect some shit
23:49:22  <dominictarr>go?
23:49:28  <dominictarr>or gnome?
23:49:38  <jesusabdullah>gnome's C objects api
23:49:42  <jesusabdullah>or gtk maybe
23:49:42  <dominictarr>right
23:49:46  <jesusabdullah>yeah
23:49:50  <dominictarr>yeah… need a polyfil
23:50:11  <jesusabdullah>so gjs (the runtime) is spidermonkey + gtk bindings
23:50:26  <dominictarr>controling widgets written in C with js is gonna be pretty weird
23:50:26  <jesusabdullah>and gnome shell is written on top of that
23:50:41  <jesusabdullah>yeah but I think browserify + custom wrappers it could be fun/sane
23:50:43  <dominictarr>what do events look like?
23:50:49  <dominictarr>jesusabdullah: agree
23:50:51  <jesusabdullah>I think method event handlers
23:50:57  <jesusabdullah>gotta require EE brah
23:51:13  <jesusabdullah>just wrap crappy APIs as I go with better ones
23:51:22  <dominictarr>I mean what do gobject events look like?
23:51:50  <jesusabdullah>one sec
23:52:10  <jesusabdullah>one sec lemme hit up the goog
23:52:23  <jesusabdullah>like I said I think it's like the dom where you define a method with the name or whatever
23:52:35  <dominictarr>I think you might get just as much awesome from just wrapping x11. People make a big deal about using a toolkit… but that stuff is easy to whip up in js
23:53:09  <jesusabdullah>yeah maybe but gnome 3 is like already there and honestly I kinda want to encourage the gnome guys by actually using their shit
23:53:21  <jesusabdullah>I found a gnome extension for xmonad style tiling
23:53:32  <jesusabdullah>works mostly, better than nwm last I checked
23:53:56  <dominictarr>oh, cool.
23:54:00  <jesusabdullah>I found the docs for making custom gtk3 themes so I think I'm gonna make one that's as small as possible and get rid of box shading
23:54:05  <dominictarr>I'm gonna go back to linux
23:54:08  <dominictarr>I'll check it out
23:54:42  <jesusabdullah>dominictarr: https://live.gnome.org/GnomeShell/Extensions
23:54:47  <st_luke>dominictarr: what are you running currently?
23:54:50  <jesusabdullah>docs aren't great
23:54:59  <mbalho>dominictarr: got my bluetooth usb for my r-pi today, hopefully my keyboard arrives soon, then I can test out the kindleberry!
23:55:30  * mikealjoined
23:55:51  <dominictarr>st_luke: I don't know, whatever is on a new macbook air
23:55:54  <jesusabdullah>dominictarr: https://live.gnome.org/Gjs/Mapping this is about how gobjects map to javascript
23:56:06  <dominictarr>I was kinda hoping I could get a mac and just be dumb
23:56:16  <jesusabdullah>hahaha
23:56:25  <jesusabdullah>that's part of the appeal of gnome 3 for me actually
23:56:32  <dominictarr>but it's not working well enough
23:56:34  <jesusabdullah>is I can have something that's sane for a tard but extensible
23:56:53  <dominictarr>jesusabdullah: I'm gonna go the opposite: arch
23:57:02  <jesusabdullah>oh man I tried arch
23:57:10  <jesusabdullah>but I can't bring myself to give enough fucks to make it sane
23:57:12  <jesusabdullah>it's cool and all
23:57:15  <dominictarr>how did it go?
23:57:18  <jesusabdullah>but man that's a lot of work
23:57:23  <mbalho>st_luke: oh hey, wanna have east coast tacoconf on the same day as west coast tacoconf?
23:57:35  <jesusabdullah>dominictarr: barely used it, eventually put ubuntu/unity on it
23:57:39  <jesusabdullah>dominictarr: this laptop actually
23:57:49  <dominictarr>I got sick of ubuntu
23:57:53  <jesusabdullah>dominictarr: the arch wiki is fucking awesome in case you didn't know, it's good gen. purpose stuff
23:58:03  <jesusabdullah>me too dominictarr but I kinda didn't care in this case
23:58:07  <jesusabdullah>this is my backup laptop
23:58:08  <dominictarr>and moved off unity soon
23:58:15  <jesusabdullah>on my main I'm going back to fedora for a while
23:58:16  <dominictarr>it was too slow on my old computer
23:58:32  <mbalho>dominictarr: try out the mac apps Divvy and DTerm
23:58:41  <dominictarr>how different is ubuntu vs fedora
23:58:51  <st_luke>mbalho: that's actually a really good idea
23:58:59  <jesusabdullah>less different than people would lead you to believe
23:59:02  <jesusabdullah>off the top of my head
23:59:06  <jesusabdullah>rpm vs. deb
23:59:16  <jesusabdullah>but both use packagekit now so it can be moot if you want it to be
23:59:29  <jesusabdullah>gnome 3 vs unity but both have spins
23:59:46  <jesusabdullah>fedora has its own apis for building spins and it's well-documented so that's cool
23:59:57  <jesusabdullah>I mean they both have spins y'know? anyways