[00:00] nicholasf has joined the channel [00:00] roroo: how can i use process to make my js code restart itself? send it a HUP signal [00:00] jesusabdullah: I really do think coffeescript is fine. Neat even! But it's bad for teaching and demonstration because not everyone is familiar with it. [00:00] bingomanatee: use smart quotes instead of braces, snowman == function, greenApple == private, etc. [00:00] cmr: bingomanatee: You mean APL? [00:01] pyrotechnick: dave i sometimes use the lambda and pi and epsilon and other greek characters in my coffeescript [00:01] pyrotechnick: it makes my comrades cringe but they can deal with it [00:01] pyrotechnick: because it looks fucking badass [00:01] roroo: or is it even possible... to restart my js scripts process on it's own? [00:01] benvie: did someone say unicode [00:01] cmr: roroo: fork and exec a new process, and then die. [00:02] pauls1 has joined the channel [00:02] enmand has joined the channel [00:03] benvie: http://omegamenu.com/css/omega-menu.css <--unicode [00:03] jamund has joined the channel [00:03] pyrotechnick: thats ugly as hell [00:03] pyrotechnick: it doesn't even serve a useful purpose [00:04] benvie: it servers the purpose of making me happy [00:04] pyrotechnick: seriously though there's something about [00:04] joshsmith has joined the channel [00:04] pyrotechnick: shader: (args, λ) -> λ null, fs.readFileSync "#{__dirname}/shaders/#{args.key}.#{args.type}.glsl", 'utf8' [00:04] pyrotechnick: that is 100% badass [00:04] isufy has joined the channel [00:05] cmr: If that's what turns you on, I guess.. [00:05] roroo: difference between fork and spawn is you can 'talk' to a forked process? [00:05] cmr: roroo: fork+exec == spawn [00:05] pyrotechnick: plus it reminds me of halflife [00:05] pyrotechnick: benvie: are you the author of this omegamenu thing? [00:06] benvie: yeah I made it a while ago just as a fun project to make color things [00:06] hipsters_ has joined the channel [00:07] pyrotechnick: setting ΩΩ❏ to depth kicks in hardware acceleration indefinitely, it's weird [00:07] hackband has joined the channel [00:07] Axefield has joined the channel [00:08] benvie: think it may be on purpose [00:08] pyrotechnick: what does depth do [00:08] Axefield: Hello Everyone [00:08] benvie: not sure if I did it here, but you can force hardware acceleration by setting translateZ(0) [00:08] Axefield: Hey I'm looking for learning materials on node.js [00:08] benvie: even if it doesn't do anything [00:08] bingomanatee: Writing code for Black Mesa? [00:08] pyrotechnick: nah i dont mean like it utilises hardware to draw i mean it continuously re-renders [00:09] bingomanatee: I just replayed HL2e2 for the umpteenth time. [00:09] Axefield: My friend set me up with a VM with everything working, and I'm just getting started with the system. [00:09] benvie: oih yeah [00:09] pyrotechnick: benvie: but why [00:09] benvie: that was an unresolved bug with chrome [00:09] cmr: Axefield: The API docs are nice. [00:09] pyrotechnick: benvie: it's a HUGE bug [00:09] MattRichardson has joined the channel [00:09] benvie: it's due to some buggy handling of chrome's svg rendering [00:09] pyrotechnick: it even renders off-screen and out off-tab [00:09] pyrotechnick: terrible [00:10] benvie: I know, I never actually released this to anyone lol [00:10] benvie: it's just there [00:10] benvie: I didn't finish it [00:10] Axefield: cmr I'm looking for like videos, downloads, maybe blogs... [00:10] pyrotechnick: no your app is fine [00:10] pyrotechnick: it's chrome's fault [00:10] pyrotechnick: this is a serious issue though it might explain a few things for me [00:10] pyrotechnick: thankyou [00:11] benvie: yeah it's an issue with svg as paint renderer in css [00:11] pyrotechnick: what's the actual style that changes with depth [00:11] benvie: like if you use svg as an image [00:11] tilgovi has joined the channel [00:11] benvie: sec [00:11] roroo: i think you probably are looking for material for learning javascript [00:11] ovnicraft has joined the channel [00:12] benvie: depth doesn't actually change the svg itself, what it does is creates drop shadows using before and after psuedo elemnts [00:12] cmr: Axefield: Once you know javascript, node isn't that much. [00:12] cmr: What do you want to write? [00:12] pyrotechnick: benvie: weird, it's only pulling 40 fps and it has huge spikes [00:13] benvie: something is more broken on this than it was last time I looked at it [00:13] ChrisPartridge has joined the channel [00:13] pyrotechnick: it's cooking my macbook [00:13] benvie: as in something in chrome's rendering has changed [00:13] pyrotechnick: yeah [00:13] pyrotechnick: it's even worse in canary and chromium [00:13] pyrotechnick: *sigh* [00:13] benvie: some of the animations are really over the top [00:13] MadGu1 has joined the channel [00:14] benvie: specifically the ones that zoom out and cover much of the page, tend to cause the browser to chug [00:14] benvie: understandably [00:14] pyrotechnick: it's the transparency if anything [00:14] benvie: also a problem I didn't resolve is secondary menus initiating animations while the parent menu animates over the cursor [00:14] tonymilne has left the channel [00:14] pyrotechnick: transparency + depth = GPU nightmare [00:15] benvie: causing extra unnecessary animation relative to the first animation, really intensive to render [00:15] Axefield: cmr: I'm semi-adept at javascript still getting my head around the syntax (I've been doing front end my whole life and finally switching sides..) [00:15] benvie: and that's all with dynamically rendered backgrounds, like using svg to do the stripes and whatnot. Definitely not targeted at mainstream usage.. [00:15] cmr: Axefield: You know about closures and such? [00:16] bartt has joined the channel [00:16] pyrotechnick: benvie: OmegaMenu is for the 1% [00:16] okee has left the channel [00:16] pyrotechnick: the criminal elite of wall st with their massive offshore renderfarms for workstations [00:17] strevat_ has joined the channel [00:17] Axefield: O_o [00:17] gavin_hu_ has joined the channel [00:18] benvie: haha [00:19] isufy has joined the channel [00:19] cmr: Axefield: I take that as a no? You should be strong with the functional aspects of javascript. That and the async of node are the major loops you need to jump your brain through. [00:19] benvie: it was a fun project but I came to the conclusion that while fun it had no practical use [00:19] benvie: because of how ridiculous it is [00:19] benvie: a testing bed for some ideas [00:19] ovaillancourt has joined the channel [00:19] pyrotechnick: a testing bed for unicode [00:19] pyrotechnick: and chrome bugs [00:19] pyrotechnick: i actually like it [00:19] benvie: the unicode thing actually has a use [00:19] danraz has joined the channel [00:20] benvie: it generates the interface to switch classes by parsing the classnames [00:20] benvie: and using the unicode as a kind of namespacing thing [00:20] danraz: anybody doing A/B testing / click-path analysis? [00:20] benvie: builds an object structure from the increasingly specific classnames [00:20] benvie: it could be done without unicode but then would have really long classnames [00:20] benvie: since you couldn't use one character per level of specifity [00:21] pyrotechnick: that's actually [00:21] pyrotechnick: rather cool [00:21] benvie: the idea was to try and make an extremely customizable framework for building a menu that only required modifying classes in the CSS [00:21] benvie: er [00:21] benvie: in thr html [00:22] soapyillusions has joined the channel [00:22] pyrotechnick: ahh i get it now [00:22] benvie: all the dropdowns do is switch the classes applied to the menu, so it's super simple for even an html noob to put slap a bunch of classes on a simple nested UL structure [00:22] pyrotechnick: i thought you were just insane but you're really quite creative [00:22] benvie: I think both [00:22] wdbl_away: what does this do? if (!!!value) doSomething(); [00:22] Axefield: Thanks a lot cmr that's already 2 steps in the right direction [00:22] jbpros has joined the channel [00:22] pyrotechnick: they're mutually-dependent [00:23] devongovett has joined the channel [00:23] benvie: three excalamation marks is 1 more than could possibly be useful [00:23] rhinobean has joined the channel [00:23] pyrotechnick: wdbl: it casts it to a boolean than nots it [00:23] wdbl: pyrotechnick: ahhh, ok that makes sense [00:23] MrBig has joined the channel [00:23] cmr: Axefield: Yep. getting familiar with the functional aspects of javascript is very important, especially to writing half-good code. [00:23] pyrotechnick: it's slightly different to ! [00:23] benvie: ! will do the same as !!! [00:23] pyrotechnick: nah i think there's a particular case it doesnt [00:24] wdbl: benvie: I found it on line 124 of assert.js in the node source. [00:24] pyrotechnick: like undefined or 0 or null or something [00:24] wdbl: NaN [00:24] wdbl: maybe [00:24] pyrotechnick: something like that [00:24] cmr: Axefield: http://nodejs.org/docs/latest/api/index.html for all your node-needs. [00:24] pyrotechnick: let me make a table [00:24] pyrotechnick: we shall work this out [00:25] pyrotechnick: is there a spreadsheet app [00:25] benvie: pretty sure ! always results in a boolean, even factoring in edge cases [00:25] pyrotechnick: where you can use javacsript [00:25] benvie: no but that's a good idea [00:25] benvie: I mean maybe there is [00:25] Axefield: I've been staring, and reading logic and providing feed back for a long time, I understand a lot about javascript, I've been debugging it at least 2-3 years.. I just never typed my own out. :( [00:25] pyrotechnick: ive seen some with python and stuff [00:26] benvie: well [00:26] benvie: considering like google docs and office online are built in js [00:26] benvie: and have spreadsheets [00:26] pyrotechnick: ahh yeah i think ive seen it there in scripting actually [00:26] benvie: but yet they don't actually allow you to write your stuff in js [00:26] pyrotechnick: google docs is really quite nice lately [00:27] brianseeders has joined the channel [00:27] pyrotechnick: since the redesign for google+ [00:27] benvie: yeah they're finally integrating their disparate web presences [00:27] pyrotechnick: yep you can script in javascript [00:28] pyrotechnick: but it uses function hoisting :o [00:28] benvie: having completely different interfaces and places to configure every different google thing was annoying [00:28] pyrotechnick: lol they are using codemirror [00:29] murvin has joined the channel [00:30] murvin: i have a question regarding session. i just find out if I make the session cookie be secure, there will be nothing saved in the session. is it what suppose to be? [00:30] pyrotechnick: [undefined, null, 0, [], {}, NaN, Infinity, -Infinity, -1, false, true] [00:31] pyrotechnick: all those ! = !!! [00:31] murvin: or the next call will not get the session [00:31] pyrotechnick: can you think of any other objects? [00:31] benvie: yeah I looked real quick, ! always results in a boolean, so the third one can't possibly to anything extra [00:31] pyrotechnick: i swear i've seen reasoning for it before [00:32] benvie: there's use for like !!~ and +!! [00:32] pyrotechnick: i think in some browsers like IE maybe you can get dodgy handles on activex components or something [00:32] EhevuTov_ has joined the channel [00:32] pyrotechnick: i dunno it was probably a hack in someones blog [00:32] benvie: that'd be the only plausible explanation [00:33] benvie: in js proper ! to a typecast to boolean and that's cut and dry [00:33] pyrotechnick: oh god [00:33] pyrotechnick: google binned codesearch [00:33] pyrotechnick: WHAT ARE THEY THINKING [00:33] mikeal has joined the channel [00:34] christkv_ has joined the channel [00:34] pyrotechnick: so google are [00:35] pyrotechnick: moving away from the only thing they do decently [00:35] pyrotechnick: i see how that works [00:35] joshfinnie has joined the channel [00:37] ap3mantus has joined the channel [00:37] literal_username has joined the channel [00:37] sorensen__ has joined the channel [00:37] evangenieur: do someone know how to launch the coffee-script repl from a node script ? [00:38] Shaunzie: can anyone suggest a decent streaming api implementation for twitter? [00:38] cmr: Shaunzie: When I was looking a month or two ago I couldn't find any [00:38] dshaw_1 has joined the channel [00:39] pyrotechnick: evangenieur: require('child_process').spawn('coffee'); [00:39] Shaunzie: cmr: did you end up writing your own? ._. [00:39] JoshuaJ has joined the channel [00:40] wdbl_away has joined the channel [00:40] replore_ has joined the channel [00:40] replore has joined the channel [00:40] evangenieur: ACTION i'm looking for something like that :  [00:40] evangenieur: ACTION r = require "repl" [00:40] cmr: Shaunzie: No, I just used the rest api and wasn't a cool person. Just needed something that would run ;). If I go back to that project, the twitter part will be rewritten. [00:40] evangenieur: r.start "repl >" [00:41] evangenieur: working for javascript, just trying to do the same for coffeescript [00:41] pyrotechnick: evangenieur: https://github.com/jashkenas/coffee-script/blob/master/src/command.coffee [00:41] Shaunzie: cmr: book :( I found one project that was kinda cool, but it isn't maintained…. [00:41] cmr: Shaunzie: That's what I found about most of the twitter libs. [00:42] pyrotechnick: evangenieur: https://github.com/jashkenas/coffee-script/blob/master/src/repl.coffee [00:42] raincole_ has joined the channel [00:42] Kunda has left the channel [00:43] evangenieur: yes but no commonJS :( [00:44] xbayrockx: Hey how do I use