We did it…

Our concept was inspired by the musical Wicked. We wanted to create a piece that was playful but also something that showcased our personality. This project does not just encapsulate the skills we learnt across this course, but also how we learnt to improvise efficiently and stay on track with our vision.

Ziya and Linh were in charge of the visuals for this performance. As we are inspired by the musical “Wicked”, we want to develop a similar theme for the visual, including the images from “Wicked” itself, and also a theme of witches. As the audio starts with a simple and slow pace, we used simple patterns with simple changes using MIDI value to match with the sample. From the start, we knew we wanted to include a theme of the musical itself into our performance as we were big fans of it, but we of course did not want to make it entirely Wicked-centered, therefore, we thought of telling the story of Wicked through campus cats. We decided that we’d take pictures and videos, and edit them to make them related to the wicked theme. However, when we were executing this, we quickly grew sick of these images, and decided to draw images directly from the wicked musical itself.

One of our prominent challenges was working on transitions, particularly the part where we were switching between the two images. We found that we had to be very careful about what functions and details to include and at what time. Furthermore, we also had to listen carefully to the sound to ensure that the beat drop and the overall transitions were in sync. One of the strategies we approached was layering the first and second visuals on top of each other for transition. Then, we can just fade out the first visual to reveal our final intention. Also, we decided to change the visuals significantly after the drop as the musical color and timbre changes at that point.

Another challenge for us is to sync with the sound so that the audience can see the relations between the changes in visuals and the audio together. As Linh did not have any extensive experience in music, she could not catch on when the audio changes by listening. Therefore, we asked Luke and Rashed to signal us when they are moving to a new section so that the visual can adapt to change.

Staying on theme was important to us, and we had two: Brat and Wicked. And somewhere in the corner of Tiktok, this subculture exists, so we decided to bring it to the stage of NYUAD in our performance. This was exemplified through the sounds used such as the “365” which were sampled from Charlie XCX, who is the originator of “Brat”. Brat also fit well with Wicked, and both were prominent with the colour green — Brat was neon green, and Wicked is a darker green. Colour for us was just as important, and in Wicked, there are two main colours which are Green and Pink – representing the opposing sides of Glinda and Elphaba. Hencewhy, throughout our entire performance we referenced these two colours, hopefully in a manner that did not seem too repetitive.

voronoi(100, 0.15) //shape(2,0.15)
  .thresh(0.8)
  .modulateRotate(osc(10), 0.4, () => cc[0]*50) // cc
  .thresh(0.5)
  .diff(src(o0).scale(1.8))
  .modulateScale(osc(10) // cc
  .modulateRotate(o0, 0.74))     
  .diff(src(o0))
  .mult(osc(()=>cc[0], 0.1, 3))
  .out()

hush()

// VIDEO SECTION
s0.initVideo("https://blog.livecoding.nyuadim.com/wp-content/uploads/the-bratty-vid.mp4")
p5 = new P5()
vid = p5.createVideo("https://blog.livecoding.nyuadim.com/wp-content/uploads/the-bratty-vid.mp4");
vid.size(window.innerWidth, window.innerHeight);
vid.hide()
p5.draw=()=> {
  let img = vid.get();
  p5.image(img, 0, 0, width, height); // redraws the video frame by frame in                           p5
}
s0.init({src: p5.canvas})
vid.play()
src(s0).out()

s5.initImage("https://blog.livecoding.nyuadim.com/wp-content/uploads/wckd-scaled.png")
src(s5)
  //.modulateRotate(osc(10), 0.4, () => cc[0]*50) // cc
  .scale(0.6,() => cc[0]*1)
  .scrollX(2, 1)
  .out()

hush()

s0.initImage("https://blog.livecoding.nyuadim.com/wp-content/uploads/witch-hat.png")
s1.initImage("https://blog.livecoding.nyuadim.com/wp-content/uploads/oz-img.png")
s2.initImage("https://blog.livecoding.nyuadim.com/wp-content/uploads/witch-kingdom.png")
s3.initImage("https://blog.livecoding.nyuadim.com/wp-content/uploads/nessarose-cat.png")

//  -- HAT SECTION
src(o0)
  .layer(src(s0)
  .add(o1)
  .scale(()=>0.5 + cc[2])
  )
  .out(o1)
render(o1)

hush()

render()


// o3 -> o0 -> scale -> pixelate -> ccActual
src(s2)
  .diff(src(s1).diff(src(o3).scale(()=>cc[0])))
   .diff(src(o1))
  // .blend(src(s1), ()=>ccActual[4])
  // .diff(src(o0))
  // .modulateRotate(o0)
  // .scale(() => cc[0]*2)
  .out(o3)
render(o3)

hush()

s0.initImage("https://blog.livecoding.nyuadim.com/wp-content/uploads/boq-img.png")
s3.initImage("https://blog.livecoding.nyuadim.com/wp-content/uploads/nessarose-cat.png")

// look glinda pt 2 
src(s3)
  .scale(()=>cc[5]/2)
  .blend(
        src(s0).invert().luma(0.3).invert().scale(0.5)
        .rotate(()=> (cc[2] - 0.5)* 50 * 0.02)
        .scale(()=>cc[3]*0.5)
        //.modulateScale(osc(5, 0.1), () => cc[0])
    , ()=>cc[6])
  .out()
src(o2)
  .layer(src(o0))
  .out(o1)
render(o1)

render()
hush()

////////////////////////////////
let p5 = new P5()
let lastCountdown = null;
let ellipses = [];
p5.hide();
s4.init({src: p5.canvas})
p5.hide();
p5.noFill()
p5.strokeWeight(20);
p5.stroke(255);
p5.draw = () => {
  p5.background(0);
  p5.fill(255);
  p5.textAlign(p5.CENTER, p5.CENTER);
  p5.textSize(200);
  // Get the current CC value
  let ccValue = 1; // or cc[0] if it's from another source
  // Decide which text to display based on the CC value
  if (ccValue == 1) {
    p5.text("wicked",cc[0]*p5.width, p5.noise(cc[0]*2)*p5.height);
  }
}
src(s4).mult(osc(10,0,3)).modulate(voronoi((10, 0.5, 2)))
  .luma(0.1)
      .repeat(()=>cc[2]*10, ()=>cc[2]*10)
  .out(o4)
render(o4)

/// NEW PRPOSED VISUALS
a.show()
a.setBins(8)
a.setSmooth(0.8)  
solid(1, 0, 1) // pink
    .mask(
      shape(999, 0.5, 0.5)
        .scale(() => a.fft[1] + 0.2)
         .scrollX(-0.3) 
    )
    .layer(
      solid(0, 1, 0.5) // green
        .mask(
          shape(4, 0.5, 0.5)
            .scale(() => a.fft[1] + 0.2)
            // .scrollX(0.3)
        )
    )
    // .modulate(voronoi(999,3),0.8)
    // .modulatePixelate(noise(55,0.5))
    // .modulate(noise(0.9, 0.1))
    .out()

hush()


hush()

In terms of the audio, we initially wanted to combine the idea of campus cats and simultaneously tell the story of ACT 1 of Wicked the musical and after further experimenting, we realized that we would have to split our performance into 9 different sections (That is, for each of the songs in ACT 1, so we decided to abandon the campus cats and we decided to put our energy into three main songs in ACT 1 which are The Wizard and I, What is this Feeling, and Defying Gravity. However, Rashed could not handle making the performance about one singular thing because he likes, as he says, “mixing things together that don’t really make sense but they somehow also do make sense”  So he suggested adding Brat. The thing is, we did not know how we would add that element because that is an entirely different concept and Rashed found a clip of Abby Lee Miller stating “Oh, that sounded really bratty” and after further discussion we decided that clip would be a perfect transition from wicked to Brat. But that was not enough, Rashed wanted to add more things and he brought up the idea of using “Crazy” by Le Sserafim because he also like voguing and that song would reach the Kpop lovers and all the gaming community since it’s been used in various games and edits and so we added it. Rashed suggested adding one more thing from a Nicki Minaj song but he wanted to make it Wicked themed to which we said yes but he had to censor the one curse word to which he agreed. After further discussion, we decided that Rashed and Ziya would say/ sing the first part of the song “What is This Feeling” to add a humorous aspect and Rashed would say the Nicki Minaj part and the ending War Cry which is a reference to Cythia Erivo’s Target Commercial.

At first when we approached the composition, we were not sure how it would sound. We know the musical songs from Wicked are already very theatrical and professionally composed and sung. What we came up with was our interpretation, our own twist of the music. We worked on the composition section by section, that is intro, build-up, drop, bridge, final ending, and I would say interlude. Starting out, we let every idea that came across our minds be realized into codes. In our first attempt, we ended up having a composition that had a runtime of roughly 7 – 8 minutes. After many more rehearsals, we realized that every section seemed to exist on its own term and didn’t connect much to the previous or next section, which was a little bit frustrating given that each section sounded so good on their own. We worked a lot on the transitions between sections. After multiple attempts at rehearsal, we realized the main issue with the transition was the sonic palette itself. We were using too many different samples; almost each pattern used a distinct sample. We figured out a good way to fix the problem is to narrow down the number of samples used, so we replaced the samples used in a few patterns with the samples that we already had, or reuse a few of them. Specifically, putting patterns that share the same sample next to each other helped a lot with smoothing out the transition. Moving forward, the lesson learned is that simplicity is better than complexity. At first in each section, we had a lot of sounds stuffed together. But as we progressed, we had to cut down the sounds and the patterns, either combining a few or removing a few completely. Critical thinking and feedback from the visual team, our classmates, and Professor Aaron helped us to reflect on the composition. Cleaning up and tightening the composition took a lot of time because we had to rearrange, add, remove patterns here and there. In addition to cleaning up, we also had to keep the filter and effects consistent. We ran into a few issues but eventually things got sorted out thanks to Professor Aaron’s help. One final thing, even though it is live coding, we also had a good time composing the music with code and mixing the sounds together. I wish we had more time to develop the live composing skill.

Overall, we are proud of our final composition and the way we were able to execute our idea in a unique yet smooth manner to the extent that the audience also enjoyed.

Tidal code:

setcps(135/60/4) 

do
  once "loath"
  p "background" $ slow 2 $ ccv ((segment 10 (range 0 127 saw))) # ccn "0" # s "midi"
        
once "loath:5"

do
  resetCycles
  d11 $ loopAt 4 $ s "360b:3"
  p "360b visuals" $ ccv "20 90 40" # ccn "0" # s "midi"
     
hush

--blonde--

do -- evaluate the hat section
  d1 $ s "gra" # legato 1 -- add in scrollX
  p "hat" $ ccv "50 65" # ccn "2" # s "midi"

d2 $ "hh*8"
   
   --

do
  d3 $ fast 2 $ n "1*2" # s "bd" # amp 1 -- comment out diff    
  p "background" $ fast 4 $ ccv ((segment 10 (range 0 127 saw))) # ccn "0" # s "midi" -- change voronoi to shape

do
  d3 $ fast 2 $ n "0 1*2 2 1*2" # s "bd" # amp 7
  p "switch" $ ccv "0 1" # ccn "4" # s "midi"  -- comment out the blend


d4 $ s "909(5,16)" 

do -- do the shape NOT BLEND -- EVALUATE PIXELATE SECTION
  d5 $ s "bass1:11*4" # speed "2" # gain 1 # cutoff "70"
  --p "pixelate" $ ccv ((segment 4 (range 0 100 saw))) # ccn "0" # s "midi"
  p "pixelate" $ ccv "80 100 120 127" # ccn "0" # s "midi"

--


d6 $ swingBy (1/3) 4 $ sound "hh:13*4" # speed "0.5" # hcutoff "7000" # gain 1

d7 $ jux rev $ fast 0.5 $ s "crzy:6" # gain 0.6 # legato 1 


hush

d1 silence    
d2 silence
d3 silence
d4 silence
d5 silence
d6 silence
d7 silence
d8 silence

hush

-- build-up and beatdrop --


lookGlinda = do 
  d1 $ qtrigger $ filterWhen (>=0) $ 
    seqP 
      [ (0, 1, s "bd*4"  # room 0.3)
      , (1, 2,  s "bd*8"  # room 0.3)
      , (2, 3,  s "bd*16" # room 0.3)
      , (3, 4,  s "bd*32" # room 0.3)
      ]
      # hpf (range 100 1000 $ slow 4 saw)
      # speed (range 1 4 $ slow 4 saw)
      # gain 1.2
      # legato 0.5
  p "popkick visual" $ qtrigger $ filterWhen (>=0) $ 
    seqP
      [ (0, 1,  ccv "30 60 90 120" # ccn "0" # s "midi")
      , (1, 2,  ccv "15 30 45 60 75 90 120" # ccn "0" # s "midi")
      , (2, 3,  ccv "30 10 20 40 50 60 70 80 90 100 110 120 10 30 60" # ccn "0" # s "midi")
      , (3, 4, ccv ((segment 32 (range 0 127 saw)))  # ccn "0" # s "midi")
      ]
  d2 $ qtrigger $ filterWhen (>=0) $ 
    seqP 
      [ (0, 4, stack 
          [ s "~ cp" # room 0.9
          , fast 2 $ s "hh*4 ~ hh*2 <superchip*2>"
          ])
      ]
      # room 0.4
      # legato 1
      # gain (range 1 6 rand)
      # speed (range 1 2 $ slow 4 saw)
  d3 $ qtrigger $ filterWhen (>=0) $ 
    seqP 
      [ (4, 5, s "boq:1" # room 0.3 # gain 2) ]


lookGlinda


-- LOOK GLINDA P2 --
do
  lookGlinda
  p "disappear" $ qtrigger $ filterWhen (>=0) $ 
      seqP 
        [ (0, 4, ccv "0" # ccn "6" # s "midi") ]
  p "disappearcat" $ qtrigger $ filterWhen (>=0) $ 
      seqP 
        [ (0, 4, ccv "0" # ccn "5" # s "midi") ]
  p "me" $ qtrigger $ filterWhen (>=0) $ 
    seqP 
      [ (4, 5, ccv "[0 40 80 100 120] ~" # ccn "5" # s "midi") ]
  p "boq" $ qtrigger $ filterWhen (>=0) $ 
    seqP 
      [ (4, 5, ccv "0 127" # ccn "6" # s "midi") ]

once $ "boq:1"

d11 silence


-- beat drop --
hush

-- change to :1 --
do  -- uncomment the rotate
  d1 $ fast 1 $ s "crzy" # legato 1 # gain 1.5
  p "rotate" $ ccv "100 20" # ccn "2" # s "midi"

d1 silence

-- Act like witches, dress like crazy --

d5 $ fast 2 $ sound "bd:13 [~ bd] sd:2 bd:13" #krush "4" # gain 2

do
  setcps(120/60/4)
  resetCycles
  d5 silence
  d1 $ loopAt 4 $ s "crzy:4" # gain 1.2
  p "rotate" $ ccv "100 20" # ccn "2" # s "midi"

   
hush
d1 silence
d2 silence


d3 silence
hush


-- LOOK AT GLINDA PART 2

do --comment out scale
  d4 $ slice 32 "2" $ sound "twai:1" # gain 1
  p "scale" $ slow 2 $ ccv "100 20" # ccn "3" # s "midi"

d6 $ striate 8 $ s "ykw" # legato 1 # gain 1.2


do
  d7 $ fast 0.5 $ s "oiia" # gain 1.1 # speed 0.8
  p "shape-popular" $ fast 1 $ ccv "40 120 40" # ccn "0" # s "midi"




-------------------------------------------------------------------------

hush


do 
  d10 $ sound "bd:13 [~ bd] sd:2 bd:13" #krush "4" # gain 1.8
  p "d10 sound" $ ccv "124*3 [~10] 10*2 30*13" # ccn "2" # s "midi"

d10 silence
    
d12 $ s "gra"

hush


d1 silence
d2 silence
d3 silence
d4 silence
d5 silence
d6 silence 
d7 silence
d8 silence
d9 silence
d10 silence
hush

--ENDING VORONOI-- 

do 
 d12 silence
 once $ s "chun"


-- defying gravity --
once $ s "defy:2" # gain 1.5

d1 $ loopAt 1.2 $ "defy:6" 

hush
     
d2 $ fast 2 $ sometimes (|+ n 12) $ scramble 4 $ n "<af5 ef6 df6 f5> df5 ef5 _" # s "superpiano" # legato 2
# pitch2 4
--change 4 to 8
# pitch3 2
# voice 0
# orbit 2
# room 0.1
# size 0.7
# slide 0
# speed 1
# gain 1.2
# accelerate 0
# cutoff 200

d3 $ slow 4 $ n "af5 ~ ef5 ~ df5 ~ f5 ~"
  # s "supersaw"
  # gain 0.6
  # attack 0.2
  # sustain 2
  # release 3
  # cutoff 800
  # room 0.9
  # size 0.8

d4 $ n "<[0 ~ 1 ~][~ 0 1 ~]>" # s "tink:4"


do
  d5 $ slow 2 $ sound "superpiano:2" <| up "af5 af5 ef6 df6 ~*4 f5 af5 ~*24 df5 ~*2 f5 ef5 ~*12" # gain "0.6" # room "0.9"
  p "endingpiano" $ slow 2 $ ccv "30 30 40 35 ~*4 50 50 ~*24 30 ~*2 50 40 ~*12" # ccn "0" # s "midi"

--d5 $ sound "superpiano:2" <| up "g5 f6 ~ [e6 c6]"

d5 $ slow 2 $ sound "superpiano:2" <| up "af5 af5 ef6 df6 ~*4 f5 af5 ~*12 df5 ~*2 f5 ef5 ~*8" # gain "0.6" # room "0.9" $ slow 2 $ sound "superpiano:2" <| up "af5 af5 ef6 df6 ~*4 f5 af5 ~*12 df5 ~*2 f5 ef5 ~*8" # gain "0.6" # room "0.9"
   
hush
   
once $ s "defy:5"

Code on Github

Performance Video:

Final Documentation Live Coding

In our group, Mike was in charge of the music, Ruiqi worked on the visuals, and Rebecca worked on both and also controlled the midi value, and the Ascii texts.

Visual

Personally, I’ve started thinking of Hydra more as a post-processing tool than a starting point for visuals. I’ve gotten a bit tired of its typical abstract look, but I still love how effortlessly it adds texture and glitchy effects to existing visuals. That’s why I chose to build the base of the visuals in Blender and TouchDesigner, then bring them into Hydra to add that extra edge.

As always, I’m drawn to a black, white, and red aesthetic—creepy and dark visuals are totally my thing. I pulled inspiration from a previous 3D animation I made, focusing on the human body, shape, and brain. In the beginning, I didn’t have a solid concept. I was just exploring faces, masks, bodies—seeing what looked “cool.” Then I started bringing some renders into Hydra and tried syncing up with what Mike was creating. We quickly realized that working separately made our pieces feel disconnected, so we adjusted things a bit to make the whole thing feel more cohesive.

At one point, I found myself overusing modulatePixelate() and colorama()—literally slapping them on everything. That’s when I knew I needed to change things up. So I went for Touch Designer and used instancing to build a rotating visual with a box, which gave the piece a nice shift in rhythm and form.

In the end, I’m proud of what I made. The visuals really reflect my style, and it felt great combining tools I’ve picked up along the way—it made me feel like a real multimedia artist. I’m also super thankful for my teammates. Everyone put in so much effort, and even though some issues popped up during the final performance, it didn’t really matter. We knew we had given it our all. Big love to the whole cyber brain scanners crew.

Here are some images and videos we made in Blender and TouchDesigner for the performance:

Audio

For the whole performance, we were trying to create upon several keywords: space, cyberpunk, and huge distortion. I drew inspiration from Chicago house music, glitch, and industrial music for how to make the sounds raw and wild, to correspond to the sketches for the visual.

At the early iterations of the performance, our theme was a space odyssey for cyborgs. So I thought a continuous beeping sound from a robot would fit in to start the performance. Though later we built something slightly different, we still agree this intro is effective in grasping the audience’s attention, so we chose to keep it.

For the build up, I really like the idea of using human voices to serve as a transition into the second part. And to echo with the theme, I picked a recording from crews on Discovery, a space shuttle orbiter with NASA on testing the communication system.

The aesthetic for the visual reminded me to keep the audio minimalistic. Instead of layering too many different tracks as the performance progressed, I used different variants of the main melody by adding effects like lpf, crush, and chop. The original sample for creating the main melody is a one-shot synth, and these effects helped make it sound intense, creepy and distorted.

In the second part, we wanted to make the audience feel hyped, so I focused more on the sound design for drums. The snare created a depth for the sound, and the clap can make the audience interact with us. And the glitch sample was adopted according to the pixel noise cross from the visual. 

It’s really amazing to see how we have evolved as a group since the very first drum circle project, and it is a pleasure to work together and exchange ideas to make everything better.

Communication with the audience

To do live coding as a performance, we decided to use some extra methods to communicate with the audience. Typically, in a performance, the performer might communicate with the audience directly via microphone, which might undermine the consistency of the audio we are creating. Live coders might also type something in comments, which takes advantage of the nature of live coding, but the comments might be too small compared to the visual effects, and it might be hard for the audience to notice them.

Finally, we came up with the idea of creating ASCII art. ASCII art has been a part of the coding community for a long time, especially when it comes to live coding. In one of the most well-known live coding platforms, Sonic Pi, users will encounter an ASCII art title of this software. We would like to hype up the audience by adding some ASCII art to our flok panel, which could also utilize the flok layout and let those who don’t read code pay attention to the code panel.

We really managed to hype up the audience and express our big thanks and love to the community that has been supporting us throughout this semester.

👽👽👽💻🧠❤❤❤

Reading Artist-Musicians, Musician-Artists made me think about how blurry the line between disciplines really is, and maybe always has been. Looking up Paul Klee’s work was also interesting as he literally structured his paintings like musical compositions. It reminded me of how we use TidalCycles and Hydra, where coding becomes a tool to create a hybrid performance, a balance between live, rhythmic, and visual elements. Also, the part about intensity over virtuosity also stood out. It made me think of how, in live coding, it’s not about being super polishedl it’s about being present and responsive. Mistakes, randomness, and improvisation are part of the experience, and sometimes even enhance it. Sometimes in Tidal, we throw in randomness just to see what the system gives back. That unpredictability feels exciting, like giving up some control and letting the tool collaborate with you. What I found especially interesting was how often artists, like Cornelia Schleime, shifted between disciplines because they had to, whether it was due to censorship, economics, or needing a new form to express something. It made me realize that interdisciplinary practice isn’t always just an aesthetic choice, it often carries a sense of urgency or necessity. Are labels like artist, musician, or performer even useful anymore? Or are they just there for institutions and funding applications? When we do live coding, these lines feel less and less relevant.

I think it’s interesting to see how the combination of art and sound has existed since very early times, even before the advent of live coding. It’s fascinating how people have integrated other disciplines into their own areas of interest. I remember watching a video about how sound can shape sand into different patterns. It feels like the idea of interdisciplinarity with sound has helped lay the foundation for experimentation, forming the initial steps toward sound visualization through sand.

As we move into the digital era, people now have access to tools that make it easy to create both art and sound compositions. This has blurred the line between musicians and artists in the digital world, as mentioned in the reading, opening up opportunities for new forms of sound and visuals that can complement each other. This kind of co-evolution between the senses powerfully represents the concept of “multidisciplinary” work, as fields with distinct terminology and skill sets begin to build on one another to elevate both art and music to new levels.

Synesthesia is very commonly seen in contemporary art and I think it plays an even bigger role in the context of live coding. In the narrative of the artist-musician/musician artist, being able to interact with one form of sense as an artist and another as a musician becomes particularly potent when the tools themselves facilitate this blend. 

Abstract motifs in music and visuals and especially the idea of counterpoint in visuals as well as musically is something that I would look into as a tool for expression, as artists sought a universal language beyond representation. Just as musical counterpoint involves the interplay of independent melodic lines, visual counterpoint can be looked at through the juxtaposition and interaction of distinct visual elements like colour, form, or rhythm within a composition like Hans Richter’s work. 

Programming personality that moved into music. This is something we see greatly in the live coding community, again going back to Orca and Devine Lu Linvega from earlier in the semester, we see a lot of individuals being really good programmers and creating tools that help them bring musical ideas and motifs they inherit. The ability as a programmer to be able to wield coding languages as instruments for their artistic voice have made these individuals really good musicians/performers too. So in a sense in the scope of live coding, it goes beyond just touching on the two disciplines but for one ability to really be able to nourish the other.

In the very wide scope of topics that the article covers, art as an expression and art as a tool for fun is explored. Like in Fiorucci Made Me Hardcore (1999) there is one section where the dance looks entirely performative, while this may be besides the point. I think its very cool to see the performative side of the English club scene, in the same way as there are youtube tutorials on how to dance at a rave.

The reading challenges the traditional separation between artistic disciplines by showing how deeply interconnected music and visual art have become, particularly through the lens of artist-musicians. What stood out to me was how necessity, personal affinity, and cultural shifts dissolve the boundary between “art” and “music” as fixed identities. It becomes clear that being an artist today often means being multidisciplinary by default — especially as digital tools and cultural platforms blur creative categories. The reflection this invites is that creativity is not just about mastering a medium, but about navigating between them. In many cases, the most radical or resonant work emerges not from staying in one lane, but from embracing the ambiguity and hybrid nature of contemporary artistic identity. It prompts a reevaluation of authorship, originality, and even professionalism — not as barriers to cross, but as areas to explore fluidly.

This made me reflect on my own creative practice and how naturally I’ve gravitated toward working across different mediums. It made me feel seen in the messiness of experimenting, switching roles, and being curious about tools outside my comfort zone. Especially in a time when digital platforms allow for cross-pollination so easily, it’s not about fitting into one box, but about finding the language that best expresses the idea — even if that means inventing new ones. This encourages me to embrace the in-between more fully, and see it not as indecision, but as potential.

This article made me rethink how I separate art and music. I always thought of painters and bands as two different worlds, but the text shows they have been mixing for more than a hundred years. I liked the story about Paul Klee using music ideas like “fugue” in his colors, and later how punk students turned art school energy into noisy songs. It feels honest when the authors say money often decides whether someone is called an “artist” or a “musician.” That line hit me, because labels still matter today even when people switch tools on the same laptop. The piece also reminded me that raw spirit can beat perfect skill; three punk chords can share a gallery wall with video art. After reading, I feel freer to blur my own projects instead of picking one box.