00:03:15  <pkrumins>nice!
00:04:23  <SubStack>^_^
00:04:34  <SubStack>now getting the transforming part of it working
00:04:43  <SubStack>I already have the source reconstruction logic figured out
00:05:16  <SubStack>then I'll plug this into stackedy and have some sweet debugging technology
00:05:24  <pkrumins>:D
00:05:45  <pkrumins>great job substack!
00:05:59  <SubStack>but first, drawing a trumpet!
00:06:15  * mikealjoined
00:06:17  <pkrumins>:)
00:06:43  <SubStack>also rowbit is working pretty awesomely
00:07:04  <SubStack>would be awesomer to have it show how many unique users maybe?
00:07:16  <SubStack>could use the session ids if they're handy
00:08:22  <pkrumins>need to track them with a cookie i think
00:08:33  <SubStack>we're already doing that
00:08:36  <SubStack>with session cookies
00:08:46  <SubStack>oh actually could be difficult
00:08:49  <pkrumins>oh really!
00:08:58  <SubStack>since encoders don't have access to that, only webapp
00:09:03  <SubStack>that'll change when encoder hopping goes live
00:13:21  <pkrumins>can track ips for now
00:13:50  <pkrumins>uses per ip
00:14:21  <SubStack>good idea
00:14:28  <SubStack>yeah can just show # of unique ips
00:14:39  <pkrumins>yeah
00:14:48  <SubStack>^5
00:15:05  <pkrumins>^5
00:18:46  <wiwillia>SubStack previous record was 299
00:19:27  <pkrumins>smashed.
00:20:31  <chapel>pkrumins: you should track time on site as well
00:22:13  <SubStack>pkrumins: also how has the stability of the new servers been since the patch yesterday?
00:22:18  <pkrumins>yup, working on that
00:22:44  <pkrumins>SubStack: still getting blank screen
00:23:09  <SubStack>pesky >_<
00:25:21  * mikealquit (Quit: Leaving.)
00:41:52  <pkrumins>awesome that mark bao uses browserling!
00:50:05  <SubStack>oh wow!
00:50:34  <SubStack>aha, cto of onswipe right now I see
00:50:45  <SubStack>those onswipe critters have been using us for a while
00:51:45  <wiwillia>SubStack we sent mark a bunch of your NodeJS tees as well - he was a big fan
00:51:54  <SubStack>awesome
00:52:15  * st_lukejoined
00:55:14  * niscquit (Quit: /quit tiup\)
00:58:26  <rowbit>Hourly usage stats: [free: 21]
01:06:33  * st_lukequit (Remote host closed the connection)
01:10:59  * ryan_stevensquit (Quit: Leaving.)
01:16:39  * ryan_stevensjoined
01:24:47  * dominic_joined
01:25:19  * mikealjoined
01:27:44  <dominic_>hey guys!
01:29:55  <pkrumins>hey dominic_!
01:45:06  * mikealquit (Quit: Leaving.)
01:48:17  * tilgoviquit (Remote host closed the connection)
01:58:26  <rowbit>Hourly usage stats: [free: 23]
02:15:34  <SubStack>beep boop
02:16:13  <SubStack>http://substack.net/images/trumpet.png
02:21:02  <dools>dominic_: sup tarrball
02:22:33  <dominic_>hey, whats up.
02:25:37  <dominic_>Man, I'm trying to figure out how the 3-way-merge in git actually works.
02:25:43  <SubStack>dominic_: check it, streaming html transforming! http://github.com/substack/node-trumpet
02:26:04  <SubStack>now getting the transform part implemented
02:26:25  <dominic_>I saw that, looks good.
02:26:47  <SubStack>turns out css selectors are not very difficult to write a mini-parser for
02:26:51  <SubStack>although I only have a subset right now
02:27:40  <dominic_>yeah, there are cheap ones and expensive ones.
02:27:47  <dominic_>oh, but that is actually calculating them.
02:28:51  <SubStack>any crazy new mad science?
02:30:55  <dominic_>yes, lots.
02:31:10  <dominic_>been working on gui stuff.
02:31:50  <SubStack>awesomeness
02:31:58  <dominic_>and like, I've been trying to understand what "MVC" means for years, but no one ever gives me a straight answer.
02:32:09  <SubStack>hahaha yeah
02:32:12  <SubStack>mvc is bullshit
02:32:34  <SubStack>I wish it were easier to write modules for gui components
02:32:47  <SubStack>gui libraries tend to be really gigantic
02:32:53  <dominic_>I'm working under a new idea, that it's really just about syncing datastructures.
02:33:20  <dominic_>so, when you change a data model, that should trigger corisponding changes in other models.
02:33:34  <SubStack>change the data changes the display?
02:33:34  <dominic_>(like the gui, and the database)
02:33:43  <dominic_>yeah,
02:33:49  <SubStack>sounds useful, tricky to do right now
02:34:10  <SubStack>do it with pipes!
02:34:20  <SubStack>https://github.com/substack/request-browserify-example/blob/master/entry.js
02:34:21  <dominic_>yeah, pipes of changes.
02:35:06  <dominic_>yeah, that is the sort of approach I'm talking about.
02:39:38  <dominic_>I have a an array model, that emits changes, and can attach it to a html element,
02:40:09  <dominic_>so that when you manipulate the array with push, pop, shift, unshift, splice, reverse, etc.
02:40:24  <dominic_>you get corrisponding changes in the UI.
02:40:48  <dominic_>you just have to pass in a function that renders an item to html.
02:43:43  <SubStack>excellent
02:43:48  * sorensen__quit (Quit: Leaving...)
02:44:04  <SubStack>do you pass the function browser-side or server-side?
02:51:07  <dominic_>so far it's all client side.
02:51:48  <dominic_>it's basically like a template, but if it's on the client it can assign listeners to things too.
02:52:15  <dominic_>then you can control the model layer too.
02:53:20  <dominic_>the down side is you have to use set('key', value) style, to get events, etc.
02:55:03  <dominic_>also, I did this yesterday: https://github.com/dominictarr/adiff
02:55:14  <dominic_>it lets you diff and patch arrays.
02:55:32  <dominic_>trying to figure out how to do a three way merge...
02:58:26  <rowbit>Hourly usage stats: [free: 15]
03:03:44  <SubStack>ah yeah I'm not sure about those either
03:03:49  <SubStack>replicant could use a solution to that problem
03:05:52  * dominic_quit (Ping timeout: 245 seconds)
03:23:46  * isaacsjoined
03:26:55  <SubStack>isaacs: I am using your modules to build other modules https://github.com/substack/node-trumpet
03:38:03  * mikealjoined
03:44:40  <isaacs>SubStack: that's neat.
03:44:48  <isaacs>SubStack: you should be advised, however, that sax cannot properly parse html
03:45:29  <isaacs>SubStack: you should use html-parser or html5 instead
03:46:13  <SubStack>those aren't streaming
03:46:27  <SubStack>and in my experiments sax has performed adequately for my purposes
03:46:53  <SubStack>if I run into edge cases I'll just work around them
03:47:26  <isaacs>SubStack: <h1>Heading <p>paragraph <ul><li><img src="beep"><li><img src="boop">
03:47:33  <isaacs>SubStack: select('p img')
03:47:37  <isaacs>TWO FAILS!
03:47:37  <LOUDBOT>UNFORTUNATELY VIM DOESN'T WORK ON MY VOICE...SOON YOU WILL BE FROWNED UPON BY THIS SOCIETY AT THIS AWESOME SHOPVAC, I HOPE IT STAYS HERE SO I SAY THAT WITHOUT SCREWING UP THE BUS IS COMING"
03:47:47  <SubStack>isaacs: how so?
03:48:14  <isaacs>SubStack: it'll find two images that are "children" of the p
03:48:18  <isaacs>but in fact, it should not match either of those
03:48:27  <isaacs>because a <p> can't contain block elements
03:48:30  <isaacs>neither can an h1
03:48:40  <SubStack>oh I can work around that pretty easily
03:48:51  <isaacs>well, not quite "pretty easily", but yes, you can work around that
03:49:11  <isaacs>the semantics of html are such that you can't simply stream-parse it.
03:49:18  <isaacs>it's highly contextual
03:49:22  <SubStack>I disagree!
03:49:45  <chapel>properly formed html, possibly can be streamed
03:49:53  <isaacs>consider this: <b>bold starts here <p>still bold</b> not bold</p> not p.
03:50:02  <isaacs>chapel: there is no such thing as "properly formed html"
03:50:08  <isaacs>chapel: the html5 spec allows such madness.
03:50:13  <chapel>well sure
03:50:13  <isaacs>only xml has properness.
03:51:19  <isaacs>SubStack: browsers stream to the greatest degree possible, however, there are cases where they have to backtrack after rendering an element
03:51:52  <isaacs>of course, your goal isn't to build a dom, but merely to select nodes, so it's a *bit* simpler
03:52:05  <isaacs>but you still need all the semantics of which elements can contain which other elements.
03:52:35  <isaacs>this information is encoded in the doctype definition document, but sax explicitly does not doanything with those.
03:58:26  <rowbit>Hourly usage stats: [free: 8]
04:06:57  <wiwillia>S
04:11:03  * prsnquit (Read error: Operation timed out)
04:11:18  * prsnjoined
04:19:47  * isaacsquit (Remote host closed the connection)
04:21:35  * mikealquit (Quit: Leaving.)
04:29:51  * mikealjoined
04:52:06  * tanepiperquit (Ping timeout: 260 seconds)
04:58:26  <rowbit>Hourly usage stats: [free: 23]
05:02:50  <SubStack>lots of critters
05:05:17  * tanepiperjoined
05:09:48  * sorensen__joined
05:11:31  * ryan_stevensquit (Quit: Leaving.)
05:11:55  <SubStack>jesusabdullah: trying to get your bird to make robot sounds
05:12:02  <SubStack>playing lots of skrillex
05:20:31  * mikealquit (Quit: Leaving.)
05:24:49  * mikealjoined
05:36:05  * sorensen__quit (Quit: Leaving...)
05:53:59  * mikealquit (Quit: Leaving.)
05:58:26  <rowbit>Hourly usage stats: [free: 6]
05:58:36  * sorensen__joined
06:02:51  <rowbit>/!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\
06:02:51  <rowbit>/!\ ATTENTION: (default-local) paid account successfully upgraded /!\
06:03:34  <SubStack>:D
06:03:59  <SubStack>hadn't seen one of those for a while, must be a weekday thing
06:15:36  * ryan_stevensjoined
06:18:55  * zz_shykeschanged nick to shykes
06:27:02  * mikealjoined
06:34:34  * wiwillia_mobilejoined
06:39:11  * mikealquit (Quit: Leaving.)
06:40:40  * wiwilliaquit (Ping timeout: 252 seconds)
06:40:42  * wiwillia_mobilechanged nick to wiwillia
06:44:14  * wiwilliaquit (Quit: Colloquy for iPhone - http://colloquy.mobi)
06:55:18  * mikealjoined
06:58:26  <rowbit>Hourly usage stats: [free: 18]
07:58:26  <rowbit>Hourly usage stats: [free: 21]
07:59:40  * sorensen__quit (Quit: Leaving...)
08:06:55  * shykeschanged nick to zz_shykes
08:06:57  <SubStack>bwahaha got self-closing tags working
08:08:50  <SubStack>ok expanding css selector support
08:08:59  <SubStack>then hacking up dreamcatcher
08:14:57  * ryan_stevensquit (Ping timeout: 244 seconds)
08:24:46  * mikealquit (Quit: Leaving.)
08:28:57  <SubStack>actually I'll just blog about this after css selector support!
08:29:01  <SubStack>then dreamcatcher
08:35:23  * mikealjoined
08:55:18  * st_lukejoined
08:58:26  <rowbit>Hourly usage stats: [free: 34]
09:11:41  * tanepiperquit (Ping timeout: 260 seconds)
09:25:18  * tanepiperjoined
09:52:34  <SubStack>bwahaha got E + F sibling selectors working
09:58:26  <rowbit>Hourly usage stats: [free: 34]
09:59:21  <niftylettuce>bahaha 'trying to make ur bird make robot sounds'
10:03:05  * niscjoined
10:03:06  * niscquit (Changing host)
10:03:06  * niscjoined
10:24:44  * st_lukequit (Remote host closed the connection)
10:58:26  <rowbit>Hourly usage stats: [free: 44]
10:59:35  <SubStack>O_O
11:52:08  * niscquit (Quit: /quit tiup\)
11:58:26  <rowbit>Hourly usage stats: [free: 30]
12:32:42  <SubStack>anyhow, got all that I care to get done with trumpet tonight
12:32:50  <SubStack>it'd be sweet to get attributes too but I'm sleepy
12:32:58  <SubStack>and want to get dreamcatcher working!
12:58:25  <rowbit>Hourly usage stats: [free: 30]
13:58:25  <rowbit>Hourly usage stats: [free: 45]
14:58:26  <rowbit>Hourly usage stats: [free: 50]
15:00:42  <niftylettuce>wow way cool pkrumins SubStack the new feature for dedicated plans when you click it sends an action to the instance
15:00:49  <niftylettuce>that is so. effing. awesome.
15:08:30  * sorensen__joined
15:10:42  * isaacsjoined
15:54:44  <pkrumins>yeah
15:58:26  <rowbit>Hourly usage stats: [dedicated: 2, free: 49]
16:16:00  * _ritchjoined
16:18:37  * _ritchquit (Client Quit)
16:19:11  * jeffbcrossjoined
16:21:49  * ryan_stevensjoined
16:29:21  * ryan_stevensquit (Quit: Leaving.)
16:30:10  * simcop2387quit (Excess Flood)
16:31:12  * simcop2387joined
16:34:11  * wiwilliajoined
16:34:27  <wiwillia>pkrumins 400 today for sure
16:35:26  * ryan_stevensjoined
16:40:27  <pkrumins>wiwillia: rock
16:46:58  * ryan_stevensquit (Quit: Leaving.)
16:58:26  <rowbit>Hourly usage stats: [dedicated: 1, free: 58]
17:02:21  * TheJHjoined
17:08:40  <jesusabdullah>SubStack: lulz, good to hear he's still alive ;)
17:08:50  <jesusabdullah>SubStack: I'll be back this evening
17:20:29  <rowbit>/!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\
17:20:29  <rowbit>/!\ ATTENTION: (default-local) paid account successfully upgraded /!\
17:20:39  <pkrumins>at 82 customers
17:31:50  * noirsjoined
17:32:43  <noirs>I'm just getting started with Browserling, trying to use IE8, any ideas how to debug javascript errors or view source? I get prompted to install DebugBar, but it fails to install, says its blocked by group policy
17:34:22  <noirs>anyone here?
17:34:30  <pkrumins>you'll have to wait a little until we can install debugbar on the systems
17:35:10  <pkrumins>it crashes the ietester currently
17:35:29  <pkrumins>we're getting real IEs (IE 6, 7, 8) soon, so then i'll be able to install it, and it will work
17:45:27  <noirs>ok, thanks pkrumins
17:47:11  * AvianFluquit (Quit: Leaving)
17:48:44  <noirs>i'm also having trouble using the switch resolution tab, i managed to switch to 640x480, but the green circle with red dot keeps spinnig, and I am unable to switch back to 1024x768 (or any other resolution(
17:49:45  <pkrumins>sorry about that
17:49:57  <pkrumins>it's a bug
17:50:28  <pkrumins>it will be fixed together with real IEs
17:50:40  <pkrumins>as we're rolling out a major update/rewrite
17:53:08  <noirs>ok
17:58:26  <rowbit>Hourly usage stats: [dedicated: 1, developer: 1, free: 75]
18:04:29  * noirsquit (Quit: Page closed)
18:10:56  <pkrumins>niftylettuce: imma reset you to free plan for a while, need to do some tuning
18:14:46  * sorensen__quit (Quit: Linkinus - http://linkinus.com)
18:15:02  * sorensen__joined
18:53:52  * AvianFlujoined
18:58:25  <rowbit>Hourly usage stats: [developer: 2, free: 49]
19:03:43  * mikealquit (Quit: Leaving.)
19:05:32  * TheJHquit (Ping timeout: 272 seconds)
19:18:33  * mikealjoined
19:34:33  * yuletide666joined
19:45:39  * st_lukejoined
19:49:52  <pkrumins>400 hjkl vim shirts sold now!
19:58:21  <pkrumins>browserling now has chrome 17!
19:58:26  <rowbit>Hourly usage stats: [free: 20]
19:58:26  <rowbit>Daily usage stats: [dedicated: 4, developer: 4, free: 771]
19:58:36  <chapel>why not chrome 19
19:58:47  <chapel>http://cl.ly/320v0c2Y15310S371x2e
19:58:50  <pkrumins>chrome canary?
19:58:52  <pkrumins>we have chrome canary!
19:58:57  <pkrumins>chrome 17 is latest stable
19:58:58  <chapel>well Im on dev
19:59:01  <chapel>not canary
19:59:32  <pkrumins>i'll see if i can add it
19:59:43  <pkrumins>do i need to update it daily?
20:03:49  <chapel>idk
20:03:56  <chapel>it updates when it updates
20:04:09  <chapel>you have to restart it when it needs updated
20:04:24  <chapel>so if you are restarting it between sessions, any updates will be applied
20:06:55  <pkrumins>it's more complicated than that
20:09:53  * jeffbcrossquit (Quit: Leaving.)
20:58:26  <rowbit>Hourly usage stats: [developer: 1, free: 47]
20:58:48  <wiwillia>pkrumins substack are those unique visits this hour?
20:58:57  <wiwillia>unqiue sessions*
20:58:58  <pkrumins>that's uses
20:59:06  <pkrumins>all uses total
20:59:12  <wiwillia>pkrumins awesome - that's really cool
20:59:13  <pkrumins>havent filtered out unique vs total yet.
20:59:16  <wiwillia>771 today :o
20:59:17  <pkrumins>< rowbit> Daily usage stats: [dedicated: 4, developer: 4, free: 771]
20:59:19  <pkrumins>this was better
20:59:20  <pkrumins>yeah
20:59:26  <pkrumins>and 2 new customers today
20:59:30  <pkrumins>fantastic!
20:59:31  <wiwillia>score
20:59:35  <pkrumins>@82 now
20:59:47  <wiwillia>we'll be #83 as soon as we have a chance to breath
20:59:52  <wiwillia>breathe*
20:59:58  <pkrumins>hurry up
21:01:37  <rowbit>/!\ ATTENTION: (default-local) [email protected] successfully signed up for developer browserling plan ($20). Cash money! /!\
21:01:38  <rowbit>/!\ ATTENTION: (default-local) paid account successfully upgraded /!\
21:01:45  <wiwillia>fast enough?!
21:01:46  <wiwillia>haha
21:02:16  <pkrumins>hahaha
21:03:03  <pkrumins>that is awesome. thanks!
21:03:46  <wiwillia>no worries
21:03:48  <wiwillia>least we can do
21:03:58  <wiwillia>I'll give you the devs feedback after they've played around with it!
21:04:08  <pkrumins>awesome ok!
21:07:45  <pkrumins>412 shirts.
21:08:12  <wiwillia>it's never ending
21:09:06  * yuletide666quit (Quit: zzzzzz #cfaphl)
21:11:04  * yuletide666joined
21:16:44  <isaacs>pkrumins: what's 412 shirts?
21:16:59  <pkrumins>isaacs: sold! teespring.com/hjkl
21:17:20  <pkrumins>isaacs: hjkl vim shirts! art by substack!
21:17:31  <isaacs>neat!
21:17:42  <pkrumins>isaacs: based on this blog post of mine http://www.catonmat.net/blog/why-vim-uses-hjkl-as-arrow-keys/
21:18:37  <isaacs>wiwillia: can i get a beta?
21:28:00  * st_lukequit (Remote host closed the connection)
21:28:50  <wiwillia>isaacs yeah absolutely
21:29:05  <isaacs>thanks!~
21:46:33  * jeffbcrossjoined
21:52:38  * isaacsquit (Remote host closed the connection)
21:52:53  * isaacsjoined
21:58:26  <rowbit>Hourly usage stats: [developer: 2, free: 47]
21:59:21  * jeffbcrosspart
22:16:55  * _ritchjoined
22:29:27  * yuletide666quit (Quit: zzzzzz #cfaphl)
22:52:50  <niftylettuce>pkrumins: free plan is fine
22:52:57  <niftylettuce>:D
22:53:36  * mikealquit (Quit: Leaving.)
22:53:45  * st_lukejoined
22:58:25  <rowbit>Hourly usage stats: [free: 22]
23:33:27  * st_lukequit (Read error: Connection reset by peer)
23:33:53  * st_lukejoined
23:34:25  * mikealjoined
23:42:11  * AvianFluquit (Quit: Leaving)
23:50:12  * mikealquit (Quit: Leaving.)
23:58:02  * sorensen__quit (Quit: Leaving...)
23:58:26  <rowbit>Hourly usage stats: [free: 19]