This reading unexpectedly turned out to be one of my favorites from this semester, because exploring the relationship between a musician and an artist has always intrigued me. As someone who was always closely linked to both musical and artistic worlds since I was young, there were moments when I was confused which one I wanted to choose/was a “better fit” for in terms of career paths; and to be frank, I’m still standing at a crossroad with this decision. This was probably why this reading had many relatable and intriguing aspects, because it talked about how the boundaries between different categories of art are becoming blurred, especially with the rise of technology usage in both music and art — this allowed many artists to become “multiple artists,” or artists who refuse to be confined to a single category.
I found it particularly interesting how club spaces in the 1990s became the new “institutions” that acted as new forms of galleries and museums where hybrid work could get done. Reading about this also reminded me of my time in Berlin, where we got to learn about underground art scenes during the early 1900s and the evolvement of the club culture in Germany throughout the 20th century. It was also around this time when works in which music and visual art that are conceptuallyand technologically intertwined were starting to become popular, thus showing how digitalization didn’t just provide new tools, but moreso fundamentally redefined the relationship between music and visual art, as well as artist and audience.
I liked how the reading showed that moving between music and visual art can happen naturally. It didn’t feel forced – it made sense that artists would want to use whatever way helps them express their ideas best. I thought it was cool when they mentioned how Paul Klee used ideas like “polyphony” from music in his paintings. It showed how deeply connected the two worlds can be.
The part that stood out most to me was the section on techno and club culture. I liked how clubs became spaces for both music and art, and how computers let artists mix sound, visuals, and performance together. It felt like a real shift in how creative work was happening.
I also agreed with the point that today, art and business are closely tied together. Like the reading said, success and money often decide whether someone is seen more as an artist or a musician. I think that’s just the reality now – everything is connected to capital.
Finally, the idea that energy and passion matter more than technical perfection really resonated with me. I liked how punk made it okay to be intense and imperfect. It made me think that sometimes the strongest art isn’t the most polished, but the most honest.
Overall, the reading made me appreciate how free and open creative work can be when you don’t stick to one label.
For the peformance we wanted to go in with a theme. We decided to center our performance around a drum and bass vibe, however, when we met up and started our first jam session, it all kind-of deviated and became more of a robo-core or break core type of sound and we decided to just let our creative juices flow.
Mohamed was in charge of the hydra and P5 visuals, while Aadil and I were handling the Tidal parts. We decided that this was probably the best workflow as a group because going back and forth from coding in Haskell to Javascript resulted in us doing alot of run time errors and keeping track of the syntax was quite difficult.
We used tried to play and experiment with cutting up whole samples and to try to create some sharp and distinct sounds that we thought would go well with a DnB energy. While for the visuals we tried to flow into something more distorted and bring out a sense of entropy.
We want to start with a simple pattern, a circle. As we start from something simple, we add more layers on top of it. As we started with one circle, we tried to make simple changes such as scale and modulateScale. We also wanted to add feedback to the visual, so we added another layer of s0 to the screen. Finally, because we have 2 people work on the visual, we kind of create different visuals and mult them together to get the final visual. Ziya decided to work with the ccn and ccv values to add more dynamic feel to the performance, but overall our aim was to synthesis all our performances into one.
When I started working on the audio, I wanted to use a sample. I really like music that starts in a very angelic and harmonic vibe and then it would shift into chaos. I was listening to a song the other day called GOLDWING and I decided to sample the first couple of seconds. I, then, started experimenting with legato along with chop and striate. I decided to play with the vocals instead of having my main sound be a drum sound or a bass sound (inspired by your washing machine). I feel like at first, improvising was really hard and it felt like this really fixed and concrete method of live coding which is why I really disliked it at first. However, after meetings with my group mates, I realized that some things are just not my strong suits and some things are my strong suits which is why I decided to go with audio rather than visuals. I found it really entertaining to experiment with audio as we were recording. Even when it came to the parts we had previously written, I wanted to experiment with what i could do with what I already had to the point where I found myself digging inside of my memories and finding random samples that I have previously used for previous projects and implementing them without taking a second to think if they fit the vibe we were going for.
Also! I decided to add another sample from one of the best songs ever created called Headlock (hence the sample name) by Imogen Heap because I found one of the instruments she used in her song very interesting and I wanted to somehow incorporate that into the performance. I decided to do this last second but I really pushed for it and thank goodness everyone agreed. Very fun indeed.
Luke:
I was stuck in an endless loop of capstone and all the materials related to it so I wasn’t able to meet with my groupmate. The music on my end has no script, I instead had to improvise my part during the drum circle performance, I followed Rashed’s cue and tried to figure out how to come in so that it matched with visuals and added to the music; his music led the way for me to think on the spot how I could accompany in real time environment.
once $ jux rev $ s "gold"
d1 $ s "~ ~ ~ tink*2"
d8 $ ccv "~ ~ ~ 120 60" # ccn "1" # s "midi"
d9 $ ccv " 124 0 124 0 120" # ccn "0" #s "midi"
d10 $ ccv ((segment 128 (range 127 0 saw))) # ccn "0" # s "midi"
d1 $ s "tink" >| n (scale "major" ("[4*2 3*4 2*2 1*2]")+"1")
d2 $ s "bass1" # room 0.9 # legato 1 # gain 1
d3 $ chop 2 $ s "gold*2" # legato 0.4
d4 $ jux rev $ striate 6 $ s "gold ~ ~ bass:2*3" # cut 1
d2 $ s "~ ~ bass1*2" # room 0.9 # legato 1 # gain 1
hush
d3 silence
d4 silence
d1 silence
d4 $ jux (striate 8) $ jux rev $ s "gold*2" # legato 1
d9 $ ccv "120 20" # ccn "0" # s "midi"
d5 $ jux rev $ "hh*12 ~ hh*4 ~ hh*8"
d5 $ "~ ~ ~ hh*2" # room 0.2 # legato 0.5 # gain 1.5
hush
d4 silence
d6 silence
d7 silence
d5 silence
d6 $ s "tink" >| n (scale "minor" ("[4 3 2 4 1]")+"0.8")
once $ s "lock"
d7 $ jux rev $ chop 6 $ s "lock*4" # legato 1
hush
Adilbek and Jiho were primarily working on Hydra, and Jannah and Clara were working on Tidal code. There were a lot of improvisation sessions where we just met up and improvised whatever we wanted to do on the spot, and we felt ourselves getting more comfortable each time we did it. We also thought of how we could have an arc with a build-up, climax, and slow fade out for both visuals and our audio, and we ended up experimenting a lot with tweaking each other’s lines and building off of what the previous person wrote on Flok, etc. Overall, our sessions were sometimes unpredictable but also rewarding when there were unexpected moments of harmonization during our improv!
let p5 = new P5()
s0.init({src: p5.canvas})
src(s0).out()
let x = 0;
let y = 5;
let gridSize = 1000;
let r = 255;
p5.hide();
p5.strokeWeight(1);
p5.stroke(0);
p5.noFill();
p5.frameRate(20);
p5.draw = ()=>{
p5.background(20);
for ( x = 0; x < p5.width; x += (gridSize*(0.7+cc[0]/2))){
for ( y = 0; y < p5.height; y += (gridSize*(0.7+cc[0]/2))){
p5.fill(p5.map(255,0,127,0,255));
let rand = p5.random(-5,5);
p5.rect(x,y,gridSize+rand,gridSize+rand);
}
}
}
src(o0)
.invert(()=>ccActual[1])
.modulateScale(osc(20,[0.1,0.6]))
.mask(shape(30,()=>cc[0]*1.5).scale(1,window.innerHeight/window.innerWidth,1))
.modulatePixelate(noise(20,10),400)
.mult(solid(1,()=>ccActual[1],()=>ccActual[1],1))
.out(o1)
render(o1)
Tidal Code
d1 $ slow 2 $ s "superhammond*8" # note (scale "lydian" ("[a3*2] ~ a3 a3 c4 [e4 g4]")) # gain 1.2 # lpf 1000
d2
$ fast 1
$ chop 64
$ "moog(5,8)"
# gain 1.2
# up "-1"
#legato 4
#crush (slow 2(range 1.2 1.8 sine))
d3
$ fast 1
$ chop 32
$ "moog(5,8)"
# speed "3 2"
# gain 0.8
# up 4
#legato 4
d4 $ fast 0.5 $ chop 32 $ "ade:6" #speed "4 3" #room 1
p "ccMaskSize" $ ccv "127 30 60 5" # ccn "0" # s "midi"
p "ccColor" $ ccv "<1 0>" # ccn "1" # s "midi"
d5 $ slow 2 $ s "blip:8(3,8)" # gain 1.2 # up "<-1 1>"
d6 $ slow 2 $ jux rev $ s "hh*8 sn*4" # crush 8 # gain 0.8 # legato 1
Ruiqi Liu:
In this performance, I am in charge of the visual. I sticked to my preferred minimalistic and geometrical style. I wrote the basic shape using for loop using p5 instances, and then added effects using hydra on top of that. I also tried with lines, circles, ellipse, and squares, and found out that grids look best.
Rebecca & Mike: We had three main iterations on our tidal script when experimenting with long samples from different genres as we wanted to play with the chop and striate functions. In the early iterations of in-group jams, we developed our drum circle from acid and ambient samples respectively as these two genres have a strong contrast. The acid samples feature a strong energy and a psychedelic feeling, while the ambient samples create a peaceful and calm atmosphere of the audio. These practices helped us open up our mind and had a better idea of how to arrange patterns according to the various textures from and potential emotions brought by the samples. In the final version, we decided to use built-in samples and synth, and utilize effects like legato, and chop to create our own sounds instead of directly using ambient samples. We also wanted to include a transition and an ending to make our project more complete, so we added a strong crush effect to let the synth sound raw and distorted, while adding a strong color transition for the pattern. For the ending, we gradually minimized the pattern and the audio at the same time, and eventually kept the ambient synth on going.
This reading gave me a clearer view of how “liveness” in music can mean very different things depending on the context. It contrasts Deadmau5’s highly pre-planned, spectacle-driven performances with Derek Bailey’s real-time, improvisational approach, and uses that contrast to explore where live coding fits in. What stood out to me is how live coding challenges the idea that laptops are just playback tools. Instead, the laptop becomes a responsive, expressive instrument—one that demands constant decision-making and invites unpredictability.
Reading this made me reflect on how easy it is to overlook the creative labor involved in electronic music when it’s not visibly tied to physical gesture. It also helped me think more deeply about how we define instruments and performance itself. Even when something is happening behind a screen, it can still carry the same energy, tension, and risk as traditional live music—and sometimes even more, because it blurs the line between composing and performing in the moment.
In a way, it reminded me of watching speedrunners code live in video game modding streams—they’re typing fast, problem-solving on the fly, and the audience watches the screen just like a performance. There’s a similar tension between planning and improvisation, and both have that excitement of “anything could go wrong or right.”