fluid-work IRC Logs-2013-01-18

[10:13:36 CST(-0600)] <jhung> michelled, anastasiac, justin_o, cindyli: I just sent an email with the results of testing. 3 new blockers - maybe we should discuss whether they are blockers or not?

[10:14:13 CST(-0600)] <anastasiac> I'll have a look, jhung

[10:14:20 CST(-0600)] <cindyli> sure, jhernandez

[10:14:55 CST(-0600)] <jhung> cindyli: I think you meant me. (big grin)

[10:15:20 CST(-0600)] <cindyli> exactly, jhung (smile)

[10:15:47 CST(-0600)] <cindyli> sorry, jhernandez

[11:42:47 CST(-0600)] <jhernandez> cindyli1: xDD

[11:42:48 CST(-0600)] <jhernandez> np

[11:54:30 CST(-0600)] <colinclark> Hey yzen1, do you have time for a Node.js question at some point?

[11:55:25 CST(-0600)] <yzen> colinclark: sure

[11:55:34 CST(-0600)] <colinclark> jhernandez: Quick question for you, too. Thanks for all your QA testing and your pull requests! You rule! Did you test on Fedora 17 or 18?

[11:55:53 CST(-0600)] <colinclark> yzen: I have to admit I haven't fully rtfm'ed, so be gentle… (smile)

[11:56:24 CST(-0600)] <colinclark> I remember you were telling us at the last community meeting about ways to install npm packages

[11:56:44 CST(-0600)] <colinclark> My autocorrect seems to want to change "npm" to "nom," which is funny

[11:56:51 CST(-0600)] <colinclark> npm npm npm

[11:56:57 CST(-0600)] <yzen> hah

[11:57:15 CST(-0600)] <colinclark> So, I tried installing Infusion with nom like this, and it worked:

[11:57:30 CST(-0600)] <colinclark> "npm install git://github.com/fluid-project/infusion.git"

[11:57:42 CST(-0600)] <colinclark> So this is where my question comes in...

[11:57:44 CST(-0600)] <colinclark> how does this all work?

[11:57:56 CST(-0600)] <colinclark> It looks to me like, when I do this, I get a "partial checkout" of Infusion

[11:59:15 CST(-0600)] <colinclark> In other words, it only contains the framework, lib, and module directory

[11:59:20 CST(-0600)] <colinclark> which is exactly what you'd want

[11:59:22 CST(-0600)] <colinclark> but HOW?

[11:59:30 CST(-0600)] <yzen> colinclark: one sec let me remember

[11:59:53 CST(-0600)] <yzen> AHA !

[11:59:54 CST(-0600)] <yzen> https://github.com/fluid-project/infusion/blob/master/.npmignore

[12:00:14 CST(-0600)] <colinclark> Ah, fascinating

[12:00:15 CST(-0600)] <colinclark> ok

[12:00:17 CST(-0600)] <colinclark> There's a slight bug

[12:01:07 CST(-0600)] <colinclark> We .npmignore the Progressive Enhancement features of Infusion

[12:01:12 CST(-0600)] <colinclark> which I think makes perfect sense

[12:01:22 CST(-0600)] <colinclark> however, we still include it in includes.json

[12:01:31 CST(-0600)] <colinclark> https://github.com/fluid-project/infusion/blob/master/src/webapp/module/includes.json#L8

[12:01:46 CST(-0600)] <colinclark> Unless I'm missing something, this is a bug; I can make a pull for it at some point

[12:02:06 CST(-0600)] <yzen> colinclark: ya you are right

[12:03:05 CST(-0600)] <colinclark> ok, thanks

[12:03:55 CST(-0600)] <colinclark> yzen: can we .npmignore on a per-file basis, too?

[12:04:06 CST(-0600)] <colinclark> that way we can also ignore the keyboard-a11y plugin too

[12:04:26 CST(-0600)] <yzen> colinclark: ya i m pretty sure we can

[12:04:33 CST(-0600)] <colinclark> ok

[14:20:22 CST(-0600)] <Bosmon> It was me who added in ProgressiveEnhancement to our node image

[14:20:29 CST(-0600)] <Bosmon> Not knowing about the .npmignore file

[14:20:51 CST(-0600)] <Bosmon> Not surprising since JURA had forgotten about it too (smile)

[14:21:01 CST(-0600)] <Bosmon> There will need to be further changes correlated with my current pull request

[14:21:18 CST(-0600)] <Bosmon> To bring in jquery, qunit and jqunit

[14:43:29 CST(-0600)] <Bosmon> Our JIRA is incredibly slow today

[14:44:27 CST(-0600)] <Bosmon> colinclark - progressiveEnhancement went into node because of http://issues.fluidproject.org/browse/FLUID-4871

[14:58:27 CST(-0600)] <colinclark> Bosmon: Then I guess we should include it (tongue)

[14:59:33 CST(-0600)] <colinclark> colinclark: thanks for letting me know that it was there intentionally

[14:59:44 CST(-0600)] <colinclark> i'll then make a pull request to make sure it isn't nom ignored

[15:00:39 CST(-0600)] <Bosmon> Looks like I'm not the only architect who talks to himself (smile)

[15:00:51 CST(-0600)] <colinclark> oops

[15:01:02 CST(-0600)] <colinclark> colinclark: dork

[15:01:15 CST(-0600)] <colinclark> Bosmon: One other rough edge I encountered when using Infusion in Node.js

[15:01:20 CST(-0600)] <michelled> colinclark: we are kind in this channel, please apologize to colinclark

[15:01:43 CST(-0600)] <michelled> Bosmon: yzen and I finished reviewing your pull request

[15:01:51 CST(-0600)] <colinclark> colinclark: I'm sorry you're such a dork

[15:01:55 CST(-0600)] <michelled> lol

[15:02:26 CST(-0600)] <colinclark> Bosmon: We typically advise people that for ordinary merging of objects, they're best to use jQuery.extend() rather that fluid.merge(), right?

[15:03:09 CST(-0600)] <Bosmon> colinclark - that's correct

[15:03:19 CST(-0600)] <colinclark> I'm still a Node.js neophyte…

[15:03:22 CST(-0600)] <Bosmon> Did you run into some more "constructor blindness"?

[15:03:42 CST(-0600)] <colinclark> but it looks like our jQuery standalone file never exports itself in anyway so as to be usable by anyone

[15:03:46 CST(-0600)] <colinclark> am I just completely confused?

[15:04:02 CST(-0600)] <Bosmon> You can just run var jQuery = fluid.registerNamespace("jQuery") from any file

[15:04:10 CST(-0600)] <colinclark> aha

[15:04:11 CST(-0600)] <thealphanerd> colinclark: hows it going!

[15:04:14 CST(-0600)] <Bosmon> Which has become the standard way to gain access to any parts of Fluid's globals

[15:04:15 CST(-0600)] <colinclark> thealphanerd: Hey!

[15:04:29 CST(-0600)] <colinclark> Bosmon: ok, I will give that a spin

[15:04:31 CST(-0600)] <Bosmon> This kind of thing was behind my desire to let jqUnit depend on Fluid

[15:04:44 CST(-0600)] <Bosmon> Since without it, it is incredibly awkward to deal with the code loading and access as you say

[15:04:51 CST(-0600)] <thealphanerd> so I was on the phone with the peopel from grame on monday

[15:05:18 CST(-0600)] <colinclark> thealphanerd: wheelin' and dealin', no doubt

[15:05:22 CST(-0600)] <thealphanerd> might be able to swing some things so I can do gsoc + research from grame this summer

[15:05:30 CST(-0600)] <thealphanerd> and have the two feed in to each other

[15:05:40 CST(-0600)] <thealphanerd> they have some interesting web stuff going on

[15:05:55 CST(-0600)] <Bosmon> awesome, THER ALPHER NERDD!

[15:05:57 CST(-0600)] <thealphanerd> generative interfaces for faust applications

[15:06:18 CST(-0600)] <thealphanerd> they want to make them look better… so I am pitching them doing it in infusion

[15:06:22 CST(-0600)] <thealphanerd> so it will be inclusive

[15:06:46 CST(-0600)] <colinclark> these guys, for those who don't know: http://faust.grame.fr/

[15:06:48 CST(-0600)] <thealphanerd> and we can get all the individual interface elements pulled into the infusion project

[15:07:10 CST(-0600)] <thealphanerd> they also do jack if I recall correctly

[15:07:19 CST(-0600)] <Bosmon> Fascinating

[15:07:23 CST(-0600)] <Bosmon> I hope that means they do something

[15:07:27 CST(-0600)] <Bosmon> Rather than doing jack (smile)

[15:07:59 CST(-0600)] <thealphanerd> lol

[15:08:06 CST(-0600)] <thealphanerd> I made that up

[15:08:13 CST(-0600)] <thealphanerd> jack as in jackd for linux audio

[15:08:32 CST(-0600)] <colinclark> I have been suffering through the wonders of Linux audio recently

[15:08:41 CST(-0600)] <thealphanerd> that's Paul Davis

[15:08:51 CST(-0600)] <thealphanerd> colinclark: are you playing with raspberry pi?

[15:08:51 CST(-0600)] <colinclark> It's just unbelievable how bad the state of things really are (sad)

[15:09:01 CST(-0600)] <colinclark> thealphanerd: yeah

[15:09:01 CST(-0600)] <Bosmon> "It makes it possible to compile any Faust code as a C++ code,"

[15:09:09 CST(-0600)] <Bosmon> Such lovely Franglais : P

[15:09:29 CST(-0600)] <thealphanerd> Edgar ported satellite ccrma to raspi

[15:09:32 CST(-0600)] <colinclark> I'm well on my way to having Flocking running under Node.js on the Pi

[15:09:34 CST(-0600)] <thealphanerd> I'm testing the alpha release

[15:09:44 CST(-0600)] <thealphanerd> https://ccrma.stanford.edu/~eberdahl/satellite/

[15:09:49 CST(-0600)] <colinclark> assuming the pi is even vaguely capable of output robust audio, which I'm still not fully convinced it is

[15:09:58 CST(-0600)] <thealphanerd> currently comes with jack working, pd, supercollider, faust, c sound

[15:09:58 CST(-0600)] <colinclark> nice!

[15:10:06 CST(-0600)] <thealphanerd> the alpha I'm testing also has node and chuclk

[15:10:08 CST(-0600)] <thealphanerd> huck

[15:10:11 CST(-0600)] <thealphanerd> CHUCK

[15:10:13 CST(-0600)] <thealphanerd> geeze

[15:10:16 CST(-0600)] <Bosmon> Their block and loop graphs on Faust are nice

[15:10:26 CST(-0600)] <Bosmon> Even though they are impossible to use and render in some incredibly offputting way

[15:10:35 CST(-0600)] <colinclark> Bosmon: show us an example?

[15:10:37 CST(-0600)] <Bosmon> Aha

[15:10:39 CST(-0600)] <Bosmon> THey use SVG!

[15:10:44 CST(-0600)] <thealphanerd> I KNOW

[15:10:49 CST(-0600)] <Bosmon> Well, I can't give you a URL because their site is so shitty (smile)

[15:10:51 CST(-0600)] <thealphanerd> Bosmon: re our earlier conversation…

[15:10:56 CST(-0600)] <Bosmon> http://faust.grame.fr/index.php/online-examples

[15:10:59 CST(-0600)] <Bosmon> You can get to it from here

[15:11:13 CST(-0600)] <Bosmon> Navigate through their "catalog" to choose an algorithm

[15:11:21 CST(-0600)] <Bosmon> And then click on the "Diagram" tab

[15:11:33 CST(-0600)] <Bosmon> All during this process the page will jump up and down and thrash distractingly : P

[15:11:34 CST(-0600)] <thealphanerd> yeah they generate block diagrams from the code in svg

[15:11:43 CST(-0600)] <thealphanerd> this is the stuff they want me to help with

[15:11:51 CST(-0600)] <thealphanerd> or potentially want

[15:12:07 CST(-0600)] <thealphanerd> we havn't gotten that far in the talks yet… but they have lofty goals for the online compiler

[15:12:21 CST(-0600)] <Bosmon> Wow, I think the page just auto-closed itself

[15:12:33 CST(-0600)] <thealphanerd> lol

[15:12:36 CST(-0600)] <thealphanerd> too much php

[15:12:39 CST(-0600)] <colinclark> Bosmon:

[15:12:45 CST(-0600)] <Bosmon> BUT seems to have remembered my navigation state in the session!!

[15:12:49 CST(-0600)] <colinclark> Bosmon: "We've had enough of you, goodbye"

[15:12:54 CST(-0600)] <Bosmon> Real ghetto

[15:12:59 CST(-0600)] <colinclark> web page self-destruction

[15:13:00 CST(-0600)] <colinclark> sweet

[15:13:02 CST(-0600)] <Bosmon> I can't even figure out how to zoom the SVG so I can read it

[15:13:28 CST(-0600)] <Bosmon> Urgh

[15:13:34 CST(-0600)] <colinclark> I had that problem too

[15:13:35 CST(-0600)] <Bosmon> It seems to work by invoking a "compiler" on the server-side

[15:13:40 CST(-0600)] <Bosmon> To produce the SVG

[15:13:45 CST(-0600)] <thealphanerd> colinclark: I'm going to be contributing to a paper for that satellite ccrma stuff… might get published at NIME

[15:13:47 CST(-0600)] <colinclark> thealphanerd: I'm sure you'll make awesome improvements for them

[15:13:59 CST(-0600)] <colinclark> sweet

[15:14:13 CST(-0600)] <thealphanerd> ALSO.. I'm doing a paper this quarter on DSP on the web

[15:14:20 CST(-0600)] <thealphanerd> and will be highlighting flocking stuffs (tongue)

[15:14:26 CST(-0600)] <colinclark> nice

[15:14:41 CST(-0600)] <thealphanerd> I'm some what interested to re look at the code base with my new found understanding of signal processing and fft

[15:14:49 CST(-0600)] <colinclark> cool

[15:14:56 CST(-0600)] <thealphanerd> what have you been working on lately?

[15:14:59 CST(-0600)] <Bosmon> I was just commenting privately to colinclark that this would all be far more valuable if it could compile down to shader code

[15:15:19 CST(-0600)] <Bosmon> You hardly wonder why they would bother compiling "down" to C++ which as we know is now barely more performant than JS on numerical tasks : P

[15:15:22 CST(-0600)] <thealphanerd> shader code? like opengl?

[15:15:34 CST(-0600)] <Bosmon> thealphanerd - like that - or, rather, WebGL (smile)

[15:15:44 CST(-0600)] <thealphanerd> faust compiles to c++ to then compile to like 15 different frameworks

[15:15:49 CST(-0600)] <colinclark> thealphanerd: Filters, granular synthesis, the integration of Infusion, and now Node.js support, mostly

[15:15:50 CST(-0600)] <thealphanerd> pd external, max external, sc object

[15:16:01 CST(-0600)] <Bosmon> colinclark said he found the first example of audio shader code in the wild

[15:16:05 CST(-0600)] <Bosmon> But it was very disappointing

[15:16:08 CST(-0600)] <colinclark> I did indeed

[15:16:15 CST(-0600)] <colinclark> It was very boring music, and no source code

[15:16:26 CST(-0600)] <colinclark> I asked if he'd be willing to share his code and he said "yes"

[15:16:27 CST(-0600)] <thealphanerd> what is audio shader code?

[15:16:30 CST(-0600)] <colinclark> and that was it

[15:16:37 CST(-0600)] <colinclark> thealphanerd: Doing DSP on the GPU

[15:16:42 CST(-0600)] <thealphanerd> ahhhh

[15:16:58 CST(-0600)] <thealphanerd> the faust people have stuff going on with a custom version of the chrome browser

[15:17:04 CST(-0600)] <thealphanerd> where it goes faust -> v8

[15:17:22 CST(-0600)] <thealphanerd> so you can directly code with faust in the browser

[15:17:22 CST(-0600)] <colinclark> thealphanerd: Is it possible to download the Raspberry Pi version of Satellite CCRMA? I only see reference currently to the Beagleboard version

[15:17:32 CST(-0600)] <thealphanerd> colinclark: I might have to get you an image

[15:17:42 CST(-0600)] <thealphanerd> let me check something quickly

[15:18:04 CST(-0600)] <colinclark> maybe you can ask your friends there how on earth to make Pulse Audio output any actual sound from the analog port

[15:18:23 CST(-0600)] <thealphanerd> on the raspi?

[15:20:17 CST(-0600)] <thealphanerd> https://ccrma.stanford.edu/~eberdahl/satellite/SatelliteCCRMA_Rpi_v0.9.dd.zip

[15:20:22 CST(-0600)] <thealphanerd> form the mail list

[15:22:33 CST(-0600)] <colinclark> sweet, thanks

[15:22:55 CST(-0600)] <colinclark> thealphanerd: Yeah, so far I can't get pulse audio to do its thing… ALSA is fine, but I need pulse

[15:23:00 CST(-0600)] <colinclark> Other people seem to have done it

[15:23:05 CST(-0600)] <colinclark> so who knows?

[15:23:08 CST(-0600)] <thealphanerd> what are you using pulse for?

[15:23:13 CST(-0600)] <thealphanerd> most people I know who do linux audio use jack

[15:23:21 CST(-0600)] <colinclark> Jack is a router

[15:23:28 CST(-0600)] <colinclark> not an audio backend

[15:23:31 CST(-0600)] <thealphanerd> ahhhh

[15:23:40 CST(-0600)] <colinclark> Pulse and ALSA are the two main ones these days

[15:23:45 CST(-0600)] <thealphanerd> I have a couple people from ccrma who do audio on linux exclusively

[15:23:48 CST(-0600)] <colinclark> Pulse is clearly significantly more reliable from what I've read

[15:23:58 CST(-0600)] <thealphanerd> all the systems at ccrma run ALSA

[15:23:59 CST(-0600)] <thealphanerd> fwiw

[15:24:24 CST(-0600)] <colinclark> seems to be bugs with some ALSA clients and ARM (sad)

[15:24:35 CST(-0600)] <colinclark> It's amazing how this stuff is all still clearly a work in progress

[15:24:46 CST(-0600)] <colinclark> apparently the Raspberry Pi foundation is trying to hiring some ALSA devs

[15:24:50 CST(-0600)] <colinclark> so things should get better

[15:27:39 CST(-0600)] <thealphanerd> interesting

[15:27:46 CST(-0600)] <thealphanerd> that will be a benefit to using ed's build

[15:27:51 CST(-0600)] <thealphanerd> alsa + jack working perfectly

[15:27:58 CST(-0600)] <thealphanerd> and all the audio stuff compiled and working

[15:28:05 CST(-0600)] <thealphanerd> pd was aparantly non-trivial to get working

[15:28:08 CST(-0600)] <thealphanerd> as was super collider

[15:29:16 CST(-0600)] <colinclark> I just installed it from the Debian package

[15:29:21 CST(-0600)] <thealphanerd> pd?

[15:29:25 CST(-0600)] <colinclark> SuperCollider

[15:29:29 CST(-0600)] <thealphanerd> ah

[15:29:36 CST(-0600)] <thealphanerd> is it working for you?

[15:29:44 CST(-0600)] <thealphanerd> which os did you install on the pi?

[15:29:44 CST(-0600)] <colinclark> Well, it depends how you define working (tongue)

[15:29:45 CST(-0600)] <thealphanerd> debian or ubunut?

[15:29:58 CST(-0600)] <colinclark> Debian

[15:30:31 CST(-0600)] <colinclark> I installed the wheezy distro they recommend, and then upgraded via hexxeh's rpi-upgrade utility

[15:31:05 CST(-0600)] <colinclark> But I can't successfully send a synthdef to it yet; it's quite likely just my own inexperience

[15:31:11 CST(-0600)] <colinclark> SuperCollider, that is

[15:50:23 CST(-0600)] <jessm> fluid-everyone: have a good weekend. I have the wrong noodles for dinner tonight, so I'm off to get the proper ones (smile)

[15:50:33 CST(-0600)] <colinclark> jessm: have a great weekend

[15:50:44 CST(-0600)] <colinclark> what goes with the noodles?

[15:50:46 CST(-0600)] <colinclark> stir fry?

[15:50:54 CST(-0600)] <colinclark> alfredo?

[15:51:00 CST(-0600)] <jessm> tofu, coconut milk, veggies, etc

[15:51:03 CST(-0600)] <colinclark> yum

[15:51:49 CST(-0600)] <thealphanerd> colinclark: http://www.amazon.com/dp/B006BMBUAA/ref=cm_sw_su_dp

[15:51:56 CST(-0600)] <thealphanerd> just in case your macbook takes 1333 ram

[15:52:28 CST(-0600)] <colinclark> sweet deal

[15:52:36 CST(-0600)] <colinclark> i don't even know what my macbook takes

[15:52:47 CST(-0600)] <colinclark> undoubtedly Bert would be worried if he heard I opened it up (tongue)

[15:53:04 CST(-0600)] <colinclark> despite my raspberry pi chops

[15:53:33 CST(-0600)] <colinclark> that's the craziest deal ever

[15:58:06 CST(-0600)] <avtar> you can poke around your computer to find compatible ram using this tool http://www.crucial.com/systemscanner/MacOS.aspx

[16:01:57 CST(-0600)] <thealphanerd> about this mac tells you what speed your memory is

[16:02:30 CST(-0600)] <thealphanerd> colinclark: it is an ok deal… most 16 gb kits are 70 - 100 bucks these days

[16:02:36 CST(-0600)] <thealphanerd> the patriot ram is usually way over priced

[16:02:55 CST(-0600)] <thealphanerd> colinclark: have you done much work with the s-plane and laplace transform?

[16:03:06 CST(-0600)] <colinclark> lol

[16:03:08 CST(-0600)] <colinclark> ummm

[16:05:02 CST(-0600)] <colinclark> odd, I was disconnected

[16:05:10 CST(-0600)] <colinclark> thealphanerd: Have you used them much?

[16:05:19 CST(-0600)] <thealphanerd> just learning right now

[16:05:20 CST(-0600)] <thealphanerd> http://cl.ly/2H1k142j0Z1Q

[16:05:24 CST(-0600)] <thealphanerd> yesterdays homework

[16:05:30 CST(-0600)] * thealphanerd started doing everything in latex

[16:06:49 CST(-0600)] <colinclark> nice!

[16:06:53 CST(-0600)] <colinclark> fancy stuff

[16:07:12 CST(-0600)] <colinclark> Bosmon does all his academic writing in LaTeX

[16:07:18 CST(-0600)] <colinclark> I like Pages (tongue)

[16:08:13 CST(-0600)] <thealphanerd> Bosmon: what kind of academic writing do you do?

[16:08:19 CST(-0600)] <thealphanerd> colinclark: I redid my cv in latex too (big grin)

[16:08:25 CST(-0600)] <colinclark> sweet

[16:08:51 CST(-0600)] <Bosmon> thealphanerd.... as rarely as possible, I write.... PAPPERS

[16:08:59 CST(-0600)] <thealphanerd> lol

[16:10:43 CST(-0600)] <colinclark> thealphanerd: This was the last one he wrote, for OOPSLA: http://wiki.fluidproject.org/download/attachments/1707985/Infusion-Splash-Wavefront-2011-Paper.pdf?version=1&amp;modificationDate=1317768364132

[16:10:48 CST(-0600)] <Bosmon> Didn't you read our early paper on the IoC system?

[16:10:50 CST(-0600)] <Bosmon> Ah, thanks, colinclark

[16:11:04 CST(-0600)] <thealphanerd> the stuff I reaad was either on the blog

[16:11:04 CST(-0600)] <colinclark> fully LaTeXized

[16:11:06 CST(-0600)] <thealphanerd> or on the site

[16:11:10 CST(-0600)] <Bosmon> 2011, amazing

[16:11:13 CST(-0600)] <thealphanerd> no published papers

[16:11:21 CST(-0600)] <Bosmon> Probably there will be something new to write about in 2013

[16:11:30 CST(-0600)] <thealphanerd> lol

[16:11:37 CST(-0600)] <Bosmon> Yesterday evening I just started implementing some stuff I found I wrote a posting about late in 2010

[16:11:37 CST(-0600)] <colinclark> Bosmon: We should work on your Opportunistic Ontologies draft next

[16:11:39 CST(-0600)] <thealphanerd> colinclark: you mixed up the university titles

[16:11:40 CST(-0600)] <Bosmon> So there is a lot of LAGG

[16:11:56 CST(-0600)] <colinclark> thealphanerd: Yes, that was my contribution (tongue)

[16:12:12 CST(-0600)] <colinclark> Aleatoric Institutional Affiliations

[16:12:22 CST(-0600)] <thealphanerd> LOL

[16:12:29 CST(-0600)] <Bosmon> AIA

[16:12:47 CST(-0600)] <Bosmon> It was an ok kind of paper

[16:12:56 CST(-0600)] <Bosmon> I even had BRENDAN EICH in the audience for a little while

[16:13:06 CST(-0600)] <Bosmon> But it still seems to be fundamentally unintelligible

[16:13:24 CST(-0600)] <colinclark> I thought it was a very insightful paper

[16:13:39 CST(-0600)] <colinclark> written for people with critical minds about how software is written

[16:13:49 CST(-0600)] <Bosmon> Amazingly the framework as implemented still hasn't moved on much from the one described here

[16:13:51 CST(-0600)] <Bosmon> YET

[16:14:18 CST(-0600)] <Bosmon> But if it hasn't by San Diego, you are authorised to throw me into the sea : P

[16:14:33 CST(-0600)] <colinclark> Bosmon: It's a deal!

[16:14:33 CST(-0600)] <thealphanerd> what do you guys think about angular.js?

[16:14:47 CST(-0600)] <colinclark> thealphanerd: Read the paper, our opinion about angular.js is in there

[16:14:49 CST(-0600)] <colinclark> (wink)

[16:14:55 CST(-0600)] <thealphanerd> oh reary

[16:15:01 CST(-0600)] <Bosmon> thealphanerd - it is BORING and UNDISTINGUISHED!

[16:15:03 CST(-0600)] <thealphanerd> I'll save and read it… perhaps this weekend

[16:15:12 CST(-0600)] <thealphanerd> what do you think about...

[16:15:14 CST(-0600)] <thealphanerd> backbone

[16:15:16 CST(-0600)] <Bosmon> Everyone always seems to implement EXACTLY THE SAME FRAMEWORK

[16:15:21 CST(-0600)] <Bosmon> It's hard to understand

[16:15:30 CST(-0600)] <Bosmon> You'd think there would be SOME diversity out there

[16:15:39 CST(-0600)] <Bosmon> But I guess if all the ideas are the same, all the frameworks based on them will be the same too

[16:15:47 CST(-0600)] <colinclark> thealphanerd: Have you been writing any music this semester so far?

[16:16:01 CST(-0600)] <Bosmon> <span>remaining() of todos.length remaining</span>

[16:16:06 CST(-0600)] <Bosmon> What bollocks : P

[16:16:10 CST(-0600)] <colinclark> oh, and how's Mayank? His granulator is looking awesome

[16:16:21 CST(-0600)] <thealphanerd> no music this quarter yet

[16:16:25 CST(-0600)] <thealphanerd> only been one week

[16:16:38 CST(-0600)] <thealphanerd> Mayank delivered a paper on wednesday with this guy kurt

[16:16:51 CST(-0600)] <thealphanerd> they are introducing a new modelling concept called bit bending

[16:16:59 CST(-0600)] <thealphanerd> they are modelling circuits used in cheap toys

[16:17:04 CST(-0600)] <thealphanerd> and digitally circuit bending them

[16:17:45 CST(-0600)] <thealphanerd> colinclark: so I got screend by google (sad) no internship this summer

[16:17:53 CST(-0600)] <colinclark> oh, I'm sorry to hear that

[16:17:56 CST(-0600)] <colinclark> that sucks

[16:18:03 CST(-0600)] <colinclark> did they give you any feedback at least?

[16:18:06 CST(-0600)] <thealphanerd> meh… is what it is. I'm not a computer scientist

[16:18:26 CST(-0600)] <thealphanerd> nope… they don't give feedback. But it is totally that I failed the phone screen not knowing my core cs stuff

[16:18:30 CST(-0600)] <thealphanerd> algorithms / data structures

[16:18:37 CST(-0600)] <colinclark> nor am I

[16:18:42 CST(-0600)] <colinclark> welcome to the club

[16:18:52 CST(-0600)] <colinclark> at least you have Laplace Transforms to keep you warm at night

[16:18:54 CST(-0600)] <colinclark> (smile)

[16:19:13 CST(-0600)] <Bosmon> Google interviews are brutal on "jock algorithmics"

[16:19:17 CST(-0600)] <colinclark> lol

[16:19:27 CST(-0600)] <Bosmon> You'd better have rebalancing a red-black tree down COLD : P

[16:19:35 CST(-0600)] <colinclark> it's like "Bro, how many kegs can you drink?"

[16:19:40 CST(-0600)] <colinclark> only with algorithms

[16:19:42 CST(-0600)] <Bosmon> It really is

[16:19:58 CST(-0600)] <Bosmon> There are all these championships for it now too.... mainly populated by Chinese and Romanians

[16:20:02 CST(-0600)] <colinclark> thealphanerd: I'm sure we could drink more kegs than your interviewers, anyway

[16:20:12 CST(-0600)] <thealphanerd> dude I party so hard

[16:20:16 CST(-0600)] <colinclark> lol

[16:20:17 CST(-0600)] <thealphanerd> I bet they don't even lift bro

[16:20:28 CST(-0600)] <colinclark> dude, me too

[16:20:35 CST(-0600)] <colinclark> I drank a WHOLE TALLBOY last night

[16:20:37 CST(-0600)] <colinclark> WITH DINNER!

[16:20:46 CST(-0600)] <Bosmon> Interestingly the "aesthetic" that this jock-ism promotes actually produces some really shockingly bad code

[16:20:55 CST(-0600)] <colinclark> Bosmon: Like, say, Google Chrome?

[16:21:04 CST(-0600)] <Bosmon> "bad" as in the sense of "code you wouldn't want in your framework"

[16:21:16 CST(-0600)] <Bosmon> Even if it does perform very well and is minimally written

[16:21:27 CST(-0600)] <colinclark> I have code like that in Flocking...

[16:21:34 CST(-0600)] <colinclark> it's progressively being replaced with Infusion (tongue)

[16:21:37 CST(-0600)] <thealphanerd> colinclark: OMG YOU ARE A JOCK

[16:21:40 CST(-0600)] <Bosmon> hahaha

[16:21:53 CST(-0600)] <Bosmon> These "champions" are rewarded for seeing through to the SPECIFICS in problems

[16:21:57 CST(-0600)] <Bosmon> Rather than the GENERALITIES...

[16:22:10 CST(-0600)] <thealphanerd> I'm not terribly worried though… at the end of the day if I can work things out ot be researching all summer with you and grame… I'll be way happier in the long run

[16:22:10 CST(-0600)] <colinclark> It's nice to have some specificists around

[16:22:11 CST(-0600)] <Bosmon> And so they produce code which is incredibly unstable to small changes in the problem definition

[16:22:20 CST(-0600)] <Bosmon> Yes, I do wish we had a tame one sometimes

[16:22:28 CST(-0600)] <Bosmon> Although it would be very hard to encourage them to do what we wanted : P

[16:22:34 CST(-0600)] <colinclark> thealphanerd: We'd be happy to do something with you and grame

[16:22:51 CST(-0600)] <thealphanerd> I am going to have anotehr meeting with them in the next two weeks

[16:23:15 CST(-0600)] <thealphanerd> but I really think that there is room for interesting collaboration

[16:23:23 CST(-0600)] <colinclark> yeah, it sounds great

[16:23:40 CST(-0600)] <colinclark> I was talking to Adam Tindale the other night and he echoed your distaste for "jQuery Kontrol" or whatever it's called

[16:23:52 CST(-0600)] <colinclark> it seems like the world could do with a solid suite of cross-device audio controls and interfaces

[16:24:25 CST(-0600)] <thealphanerd> colinclark: I don't even think it needs to be "audio controls"

[16:24:39 CST(-0600)] <thealphanerd> simply general ui object that just work cross platform / browser… with inclusive properties

[16:24:59 CST(-0600)] <thealphanerd> then a node app to use said objects to generate interfaces based on a json model

[16:25:11 CST(-0600)] <thealphanerd> insta osc

[16:25:16 CST(-0600)] <colinclark> that would be very cool

[16:25:22 CST(-0600)] <thealphanerd> that's what I am working towards

[16:25:27 CST(-0600)] <thealphanerd> and what I'm pitching to grame

[16:25:38 CST(-0600)] <thealphanerd> they have the rendering stuff right now.. but it is hard coded into faust

[16:25:44 CST(-0600)] <thealphanerd> and they are doing it with httpd and php

[16:25:44 CST(-0600)] <thealphanerd> yuck

[16:26:07 CST(-0600)] <thealphanerd> https://github.com/dinchak/node-blocks

[16:26:13 CST(-0600)] <thealphanerd> this project is gearing to be relly interesting too

[16:26:34 CST(-0600)] <colinclark> what does it do, thealphanerd?

[16:26:35 CST(-0600)] <thealphanerd> right now it is grid specific as it is coded by monome guys… but the idea will be to eventually abstract any control interface

[16:27:10 CST(-0600)] <colinclark> how does it compare to your grid?

[16:27:22 CST(-0600)] <thealphanerd> so this allows you to make virtual monomes

[16:27:24 CST(-0600)] <thealphanerd> that connect to apps

[16:27:32 CST(-0600)] <thealphanerd> and then bind those virtual devices to phsical devices

[16:27:52 CST(-0600)] <thealphanerd> or in theory and gui that could bind to it (so we could use my grid from the summer for example)

[16:30:05 CST(-0600)] <thealphanerd> colinclark: e7mac is mayank

[16:30:07 CST(-0600)] <thealphanerd> in case you didn't know

[16:30:18 CST(-0600)] <colinclark> yup, I recognize the name (smile)

[16:30:23 CST(-0600)] <thealphanerd> (big grin)

[16:30:24 CST(-0600)] <colinclark> e7mac: Hey Mayank!

[16:30:35 CST(-0600)] <e7mac> hey colin!

[16:30:43 CST(-0600)] <e7mac> hows it going

[16:31:00 CST(-0600)] <colinclark> pretty good

[16:31:02 CST(-0600)] <colinclark> how about you?

[16:31:17 CST(-0600)] <e7mac> yeah pretty good as ewll

[16:31:33 CST(-0600)] <colinclark> I hear you're giving a paper soon?

[16:31:45 CST(-0600)] <e7mac> yeah! got 2 papers to write

[16:31:52 CST(-0600)] <e7mac> haven't written papers before hehe

[16:32:01 CST(-0600)] <e7mac> juggling the deadlines

[16:32:26 CST(-0600)] <thealphanerd> e7mac: I was telling him about bit bending

[16:32:27 CST(-0600)] <thealphanerd> SO COOL

[16:32:35 CST(-0600)] <e7mac> oh thanks!

[16:32:49 CST(-0600)] <e7mac> yeah the video should be up soon..will share that

[16:32:55 CST(-0600)] <colinclark> awesome

[16:32:57 CST(-0600)] <colinclark> can't wait to see it

[16:33:15 CST(-0600)] <e7mac> actually ill send you the sound samples right now

[16:33:22 CST(-0600)] <thealphanerd> e7mac: that will be so exciting if we all go to NIME

[16:33:29 CST(-0600)] <e7mac> yeah totally!

[16:33:30 CST(-0600)] <thealphanerd> south korea party!

[16:33:40 CST(-0600)] <e7mac> haha yeah

[16:33:48 CST(-0600)] <e7mac> i also wanna stop by barcelona en route

[16:34:10 CST(-0600)] <thealphanerd> interesting

[16:34:20 CST(-0600)] <colinclark> Barcelona is such a great city

[16:34:32 CST(-0600)] <thealphanerd> ohh la la

[16:34:45 CST(-0600)] <colinclark> Adam has been encouraging me to submit a paper on Flocking to ICMC this year… I think I might.

[16:35:19 CST(-0600)] <colinclark> are you guys planning to present at NIME?

[16:35:32 CST(-0600)] <e7mac> is icmc in barcelona ?

[16:35:49 CST(-0600)] <e7mac> we're gonna submit our iPad tow controller to NIME

[16:35:53 CST(-0600)] <colinclark> It's in Australia this year

[16:35:56 CST(-0600)] <e7mac> planning the bit bending stuff for dafx

[16:35:59 CST(-0600)] <e7mac> aah

[16:36:13 CST(-0600)] <e7mac> but might change bit bending to the conference in the coolest city

[16:36:31 CST(-0600)] <thealphanerd> LOL

[16:36:34 CST(-0600)] <e7mac> (smile)

[16:36:37 CST(-0600)] <e7mac> julius' advice

[16:36:39 CST(-0600)] <colinclark> makes sense to me (smile)

[16:36:39 CST(-0600)] <e7mac> he does that oo

[16:36:58 CST(-0600)] <e7mac> that's how the pros do it… I'm just trying to act cool

[16:37:05 CST(-0600)] <colinclark> I think I'll be at the SuperCollider conference, around the time NIME

[16:37:35 CST(-0600)] <e7mac> thats on the east cost?

[16:37:38 CST(-0600)] <e7mac> *caost

[16:38:01 CST(-0600)] <colinclark> it's in Boulder, so I'll get the chance to visit Bosmon

[16:38:06 CST(-0600)] <colinclark> fingers crossed, anyway

[16:38:28 CST(-0600)] <colinclark> e7mac: Your granulator's looking really great

[16:38:36 CST(-0600)] <thealphanerd> Boulder is gorgeous

[16:38:45 CST(-0600)] <thealphanerd> christina and I had a lot of fun when we rolled through in sept

[16:38:49 CST(-0600)] <colinclark> I'll give it one last review based on a few new conveniences I've added to the framework, but it looks like it's ready to go to me

[16:38:57 CST(-0600)] <colinclark> yeah, it's a great city, thealphanerd

[16:39:03 CST(-0600)] <e7mac> oh thanks! meanind to get around to the audio/control signal soon

[16:39:15 CST(-0600)] <e7mac> cool! looking fwd to that

[16:39:27 CST(-0600)] <e7mac> had a few new JS questions that myles sai i should ask you

[16:39:40 CST(-0600)] <e7mac> should i email those to you ?

[16:39:48 CST(-0600)] <colinclark> email or here is fine, whatever you prefer

[16:39:56 CST(-0600)] <colinclark> I've finally found what I think is a viable strategy for the performance vs. cut and paste problem within unit generators...

[16:40:05 CST(-0600)] <e7mac> oh cool - whats thta

[16:40:06 CST(-0600)] <e7mac> ?

[16:40:13 CST(-0600)] <colinclark> I think I'll use something called Esprima to write a "function inliner"

[16:40:19 CST(-0600)] <e7mac> ill email - better to collect my thoughts instead of yappingg aimlessly

[16:40:24 CST(-0600)] <colinclark> not unlike what, say, the Google Closure Compiler does

[16:40:29 CST(-0600)] <Bosmon> Ah yes

[16:40:30 CST(-0600)] <colinclark> only in a way that is actually controllable (wink)

[16:40:32 CST(-0600)] <Bosmon> ESSPRIMMA (smile)

[16:40:41 CST(-0600)] <Bosmon> That will be a fun toe in the water

[16:40:49 CST(-0600)] <e7mac> ah -looking fwd to seeing what the implementation is

[16:40:54 CST(-0600)] <colinclark> first, though, Node.js support

[16:41:39 CST(-0600)] <e7mac> oh - thoruhg nom ?

[16:41:43 CST(-0600)] <e7mac> npm*

[16:42:17 CST(-0600)] <thealphanerd> Node.js support for infusion or flocking

[16:43:12 CST(-0600)] <colinclark> Infusion is already supported in Node.js

[16:43:14 CST(-0600)] <colinclark> this is for Flocking

[16:43:17 CST(-0600)] <thealphanerd> ahhh

[16:43:18 CST(-0600)] <thealphanerd> neat

[16:43:23 CST(-0600)] <thealphanerd> for server side audio

[16:43:24 CST(-0600)] <thealphanerd> ?

[16:43:25 CST(-0600)] <colinclark> yeah, it should be nice

[16:43:27 CST(-0600)] <colinclark> yes

[16:43:34 CST(-0600)] <colinclark> especially Raspberry Pi-based audio (smile)

[16:43:53 CST(-0600)] <colinclark> The DSP API I use for my filters and vector math has also been natively implemented in Node

[16:43:59 CST(-0600)] <colinclark> so it stands a chance of being quite fast

[16:45:39 CST(-0600)] <e7mac> which api is that /

[16:46:32 CST(-0600)] <colinclark> It was written by a guy at Opera

[16:46:47 CST(-0600)] <colinclark> and proposed as a potential spec to go alongside the Web Audio API

[16:47:02 CST(-0600)] <e7mac> its the same spec that myles was showing around right?

[16:47:08 CST(-0600)] <colinclark> in order to provide JavaScript authors with optimized implementations of Filters, FFT, and vector math

[16:47:09 CST(-0600)] <e7mac> i didn't realize the js file was avialble

[16:47:12 CST(-0600)] <e7mac> where can i check that?

[16:47:16 CST(-0600)] <e7mac> the source

[16:47:27 CST(-0600)] <colinclark> Here's a description of it: http://lists.w3.org/Archives/Public/public-audio/2012JulSep/0260.html

[16:47:51 CST(-0600)] <colinclark> Here's his polyfill for it: http://people.opera.com/mage/dspapi/dspapi.js

[16:48:08 CST(-0600)] <e7mac> whoa cool thanks

[16:48:11 CST(-0600)] <thealphanerd> e7mac: I think I was talking to you about that before

[16:48:24 CST(-0600)] <e7mac> this is nice.. i was wondering how to do dSP in js efficitnely

[16:48:29 CST(-0600)] <colinclark> You guys are probably better equipped than me at this point to evaluate the quality of his filter and FFT implementations, but from a performance perspective, it's pretty tight

[16:48:36 CST(-0600)] <e7mac> are you familiar with faust ?

[16:48:52 CST(-0600)] <colinclark> And here's the Node implementation of it: https://github.com/jussi-kalliokoski/node-dsp

[16:49:00 CST(-0600)] <colinclark> I know Faust only from reading about it

[16:49:05 CST(-0600)] <colinclark> I can tell Julius is a big fan

[16:49:47 CST(-0600)] <e7mac> yeah it is pretty cool

[16:50:00 CST(-0600)] <e7mac> people are also pushing for it tone included as a web audio node

[16:50:28 CST(-0600)] <e7mac> to be*

[16:50:33 CST(-0600)] <e7mac> to be included

[16:51:21 CST(-0600)] <colinclark> Yeah, they have their own fork of Chromium, I hear

[16:51:24 CST(-0600)] <e7mac> thanks for the dsp links - these are super interesting

[16:51:33 CST(-0600)] <colinclark> no problem

[16:51:38 CST(-0600)] <colinclark> let me know what you think

[16:51:42 CST(-0600)] <e7mac> dunno about chromium … i have a safari that runs it

[16:51:59 CST(-0600)] <e7mac> i can send it over if u wanna check it out

[16:52:07 CST(-0600)] <e7mac> a big problem though

[16:52:16 CST(-0600)] <e7mac> is that it only has audio rate signals

[16:52:35 CST(-0600)] <e7mac> so to make an instrument, the input has to be sent at audio rates

[16:52:52 CST(-0600)] <colinclark> ah, too bad

[16:52:59 CST(-0600)] <colinclark> why is that, I wonder?

[16:53:13 CST(-0600)] <colinclark> The new filter implementation I merged into Flocking uses this DSP API: https://github.com/colinbdclark/Flocking/blob/master/flocking/flocking-ugens.js#L1906-L1952

[16:53:27 CST(-0600)] <e7mac> yeah I'm not sure either.. i think they envisioned it as a purely effect processor sorta thing

[16:54:19 CST(-0600)] <colinclark> Maybe you and thealphanerd have suggestions for better coefficients out there to use. Right now I'm using some basic Butterworths and the ones from Robert Bristow-Johnston's cookbook: https://github.com/colinbdclark/Flocking/blob/master/flocking/flocking-ugens.js#L2014-L2069

[16:54:41 CST(-0600)] <thealphanerd> colinclark: at the moment it is beyond my understanding of dsp

[16:54:42 CST(-0600)] <colinclark> Sorry, the actual coefficients are here: https://github.com/colinbdclark/Flocking/blob/master/flocking/flocking-ugens.js#L2074-L2213

[16:54:52 CST(-0600)] <thealphanerd> but this is why you should fill out those forms and come here in the spring

[16:55:00 CST(-0600)] <thealphanerd> there are a ton of dsp whiz kids here

[16:55:14 CST(-0600)] <e7mac> ah cool - ill look into this

[16:56:08 CST(-0600)] <colinclark> Bosmon: You know anything about IIR filters? (smile)

[17:00:09 CST(-0600)] <Bosmon> colinclark - yes

[17:00:42 CST(-0600)] <colinclark> I guess all of the filter analysis tools that thealphanerd and e7mac are learning help a lot when evaluating coefficients...

[17:01:06 CST(-0600)] <colinclark> As I understand it, the implementation of the filter itself is pretty standard, but the real magic comes from how the coefficients have been designed

[17:01:12 CST(-0600)] <e7mac> yeah

[17:01:21 CST(-0600)] <e7mac> the way they taught us here

[17:01:28 CST(-0600)] <e7mac> is to figure the desired behaviour

[17:01:42 CST(-0600)] <e7mac> then covert to coefficients that give us that behaviour

[17:01:55 CST(-0600)] <colinclark> interesting

[17:01:57 CST(-0600)] <colinclark> that makes sense

[17:02:31 CST(-0600)] <colinclark> I guess "desired behaviour" is typically things like the frequency and phase response of the filter?

[17:02:34 CST(-0600)] <e7mac> yeah

[17:02:44 CST(-0600)] <e7mac> so we design in the analog domain

[17:02:50 CST(-0600)] <e7mac> then use the bilinear transform

[17:02:51 CST(-0600)] <colinclark> Bosmon: These are the biquad coefficients that a lot of people seem to use as a baseline: http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt

[17:02:54 CST(-0600)] <e7mac> to get digital coefficient

[17:03:02 CST(-0600)] <colinclark> right

[17:03:36 CST(-0600)] <colinclark> I've heard some people in the SuperCollider community say these coefficients aren't terribly good

[17:03:39 CST(-0600)] <Bosmon> It's helpful to have at least some basics of complex variable theory

[17:03:44 CST(-0600)] <colinclark> though they sound pretty decent to me

[17:04:27 CST(-0600)] <Bosmon> Otherwise it will be hard to have a sense of what the "Z-domain" really IS

[17:04:41 CST(-0600)] <Bosmon> http://en.wikipedia.org/wiki/Z-transform

[17:05:54 CST(-0600)] <thealphanerd> Bosmon: trying to wrap my head around it :S

[17:08:04 CST(-0600)] <Bosmon> Near the bottom on "Linear constant-coefficient difference equation" is material relevant to the biquad filters

[17:09:42 CST(-0600)] <Bosmon> You can see that the biquadratic filter is just this transfer function with both N and M equal to 2

[17:13:24 CST(-0600)] <colinclark> Yes, in my rudimentary way, I see that this second equation, with an order of 2, is essentially my implementation of the biquad filter

[17:13:42 CST(-0600)] <colinclark> Which makes the nature of the coefficients all the more mysterious to me (smile)

[17:14:31 CST(-0600)] <thealphanerd> sigh… I am in so much trouble here

[17:14:42 CST(-0600)] <thealphanerd> I better figure this stuff out in the next year and change

[17:14:54 CST(-0600)] <colinclark> you will, thealphanerd

[17:15:00 CST(-0600)] <thealphanerd> yay!

[18:04:03 CST(-0600)] * Topic is 'This channel is logged – for details see: http://wiki.fluidproject.org/display/fluid/IRC+Channel' set by jessm on 07:30:00 CST(-0600)

[18:08:00 CST(-0600)] * Topic is 'This channel is logged – for details see: http://wiki.fluidproject.org/display/fluid/IRC+Channel' set by jessm on 07:30:00 CST(-0600)