# window experiments

i started trying to work out the notation system for this performance. the idea has been that, prior to each performance, a new score would be generated algorithmically so that the likelihood of my making an error would follow some nominal curve. obviously, if the score were static i would practice it, and thus throw off the whole effect.

i began by cataloguing each curve i could make with the ball on the surface. for ideas, i played with polar coordinate functions, and tried to narrow down the family of curves that would be most appealing on the materials. i found the lissajous family of curves to be quite nice, since they cover a rectangular area. also appealing were the rose curves, although eventually i determined those to be too difficult to execute. i limited my scope to lissajous shapes with a/b = 1 (ellipse), 1/2 (figure-8, infinity sign), and 1/3. these shapes could be oriented horizontally or vertically, and traced in a clockwise or counter-clockwise fashion. i decided not to explicitly state the direction, for several reasons. i found that treating the change of direction as an event itself made more sense ultimately.

as for durations, i decided simply to come up with some set of durations which add up to the target duration (5 minutes). then, as long as all elements of the set are used, the performance will always be the same length. i eventually landed on the set of non-primes between 12 and 30, although this could very well change.

i also wanted to parameterize how fast the ball should move, as this is the best predictor of failure in this system. however, rather than using the rate of shapes to produce, i decided a looser approach would be more beautiful. while this rate is used as a constraint for the composition algorithm, i will display the instruction in terms of 'how many' rather than 'how often'.

i am currently using a metronome to keep track of seconds, and i think i'll be doing that in the performance as well. other things remain less clear. i initially imagined cards would be sufficient to help me keep track of the tasks, but now i'm starting to wonder whether some kind of graphical display would make things simpler. i dislike having the score ultimately reside in the computer. perhaps i will eventually have the card system totally worked out and have both representations. the computer version is more a conductor than a score, really, so i think it's ok as long as i get some kind of notation that has been printed out or transcribed.

i have been using the following (very simple, buggy) supercollider patch to test possible score outcomes and hone in on reasonable constraints. here's what i have:

```a = (12..30).reject({|x| x.isPrime}); b = 1/(1..5); d = 2; ~score = Routine({ [ { {Impulse.ar(1/d)}.play },{ i = 1; loop({ i.post; " : ".post; c.post; " : ".post; (c*e).round.postln; i=i+1; wait(d); }) },{ loop({ "__________________________".postln; c = a.choose.postln; i = 1; e = b.choose.postln; "events: ".post; (c*e).round.postln; "__________________________".postln; wait(c*d); }) } ].fork }).play;```

and here are some lissajous pictures...

a/b = 1

a/b = 1/2

a/b = 1/3

* * *

also, as i got progressively worn down by the process of composing with logical constraints, i started messing with more feedback systems that used the window-ball system as a source of richness. using one piezo as a pickup and the other as a driver, i had previously been discouraged by the incredibly screechy results. taking a cue from a discussion with hans, i decided to try implementing a pitch-shifter into the signal path, to reduce the shriek and get some harmonically related and physiologically comfortable feedback. of course, instead of using my computer to do this, i breadboarded a simple circuit.

the resulting feedback was mostly noise-ridden, but every once in a while it would converge on a tone. i used the ball like a 2-dimensional glass slide on a guitar string, a technique which worked well, especially near either piezo. i discovered some rich aural terrain by trying to locate the node points on the glass. the resulting mayhem i posted here.

despite how fun that exercise was, i definitely would like a simpler nime performance than that. i think in other contexts, a performance like that would be awesome, and i can't wait to try it with some of my other circuits and patches, but the dialogue i've set up is way too subtle for me to simply do a feedback piece as a result. mostly, i am relieved i still know how to make a circuit, considering i haven't done anything but code and think all semester.