The text explores different approaches to live coding, with some individuals relying on pre-written code, while others start from scratch with no preparation. It notes that the emphasis on “liveness” in live coding is not meant to undervalue or underestimate the programming and practice that occur behind the scenes or before a live coding performance. Instead, the goal is to draw attention to the unique dynamics that arise during real-time live coding.

In my experience, the main factor that prevents me from adding new layers live is the unpredictability of the notes I might enter. For example, what if the notes I play clash with the current sound? What if they’re in different keys, creating harsh dissonance? I think these concerns stem from my past reliance on traditional digital audio workstations (DAWs), where I would improvise on a MIDI keyboard to determine which notes to use. Even when I prepare for a live coding performance, I often rely on this method to generate new ideas for my code. Besides this, I try to experiment more with adding effects and functions to my existing code during live demonstrations.

The text also notes that “live coding involves a sense of embodied awareness, where knowing how and when are just as important as knowing what. Unlike some forms of computer-generated performance, live coding demands heightened levels of dexterity, focus, cognitive agility, and tactical intelligence.” This resonates with me because I tend to trigger new lines of code only at the end of a cycle or a four-beat loop, which helps smooth transitions.

I also want to point out that the “liveness” in coding is not just about the interaction between the performer and the computer, but also about the interaction between the performer and the audience. This made me wonder how that human-to-human interaction could manifest in live coding performances.

The reading’s final section delves into the emergence of artists with art school backgrounds into the pop music scene. The author cites PJ Harvey, Pulp, Sade, and M.I.A as examples of musicians who have pursued art studies and have subsequently contributed to pushing boundaries in pop music. This observation resonated strongly with me as I closely follow pop music and admire artists who embrace a DIY ethos, striving for creative control over all aspects of their work. One example that came to mind is the pop duo Magdalena Bay, who not only write, produce, mix, and master all their music but also undertake the filming, directing, and editing of their music videos. Their output of over 51 music videos to date, created solely by two individuals working from their bedroom, showcases the power of self-sufficiency in today’s music landscape.

In the past, I was also drawn to artists like Grimes for the same reason. I believe this culture of autodidacticism, coupled with the increasing accessibility of creative tools, has led to a decentralization of the arts scene and the music industry. Musicians now have the opportunity to explore multidisciplinary approaches and exert creative control over various aspects beyond just the music itself. As access to creative tools continues to expand, I anticipate this trend of musicians embracing a diverse skill set and expanding their creative endeavors to only grow further in the future.

I found the author’s comparison between computer languages and human languages intriguing, as it highlights how different languages influence our expressions, molding our thoughts and personalities. The author suggests that switching to another language could even alter our physical gestures while speaking. In live coding, these effects are particularly pronounced, given that languages are typically high-level and often crafted with particular visual or musical styles in mind, thereby imposing creative constraints. This point made me wonder how the notation systems of Tidalcycles and Hydra might be affecting our class’s live coding outputs. At the beginning of the class, I found myself sticking to highly vibrant and psychedelic-ish visuals. However, after going through Hydra documentation and also seeing my classmates’ performances, it showed me that a variety of visual styles can be achieved depending on the approach taken.

The text also highlights the evolving nature of live coding culture, particularly regarding its stance on commercialization and consumption. As documentation becomes more prevalent, the once anti-commercialization ethos of live coding seems to be shifting. However, this shift is not necessarily negative; rather, it fosters an open-source community where knowledge-sharing and collaboration thrive. In my case, I often find myself resorting to online examples to explore the possibilities of languages I’m attempting to learn. Observing someone implement a specific function or utilize an unusual notation sparks ideas for me to experiment with those techniques in my own projects. By saving and sharing code, practitioners contribute to a pool of resources that enriches the community and promotes collective learning and inspiration.

For my composition project, I delved into exploring Tidalcycles’ default synthesizers, systematically examining each one as detailed in the documentation. Ultimately, I settled on “superpwm” to craft a simple chord progression and establish an ambiance. To introduce a wobbly quality, I applied the pitch1 function. Throughout the composition, I incorporated various synthesizers like gabor, superfm, and supervibe for the keys, selecting them strategically for specific parts. Additionally, I introduced “superhammond” to infuse rhythm and a groovy bass into the composition. I opted for a relatively straightforward drum arrangement, avoiding an overwhelming sound. In the bridge section, I aimed to make a distinctive transformation using “superchip” and “supercomparator” sounds, incorporating an unpredictable bassline with the use of “?”.

Conceptually, my objective was to explore the life cycle of a flower, tracing its journey from formation to wilting. The initial oscillator and the blob symbolize energy floating in the air, inspired by the movement of energy across organisms and objects as the essence of life. As the composition progresses, the synchronized visuals grow further to depict the growth of a flower, reaching heights that symbolize vitality and the peak of its life cycle. In the bridge, it goes into a reflection phase before returning to the same liveliness later in its life cycle. The ending segment portrays the flower rotating in its original form with various colors, symbolizing the lasting legacy it leaves in the universe.

The reading presents live coding as a dynamic interplay between problem generation and problem-solving, where practitioners continuously test the boundaries of possibility. This unpredictable and experimental nature resonates with my own experience in preparing for class demonstrations, where the journey often involves navigating uncharted territory and embracing the unknown. Most of my class demo preparation so far involves trying different things, testing, adding new things, and experimenting without knowing the answers until I end up somewhere. It’s like driving without a destination, exploring the possibilities, and ending up wherever my curiosity takes me.

The concept of embodied knowledge and “knowing-in-action” reminded me of the quote “Knowledge is a rumor until it lives in the body” from a Sci-fi TV series The OA. While the practice of live coding itself requires a preconceived knowledge, I appreciated how the text pointed out that a risk and uncertainty are innate parts of the practice. It explains how Live coding performances actively disclose to an audience their moments of not knowing, of trial and error, and of testing something out. Therefore, embracing failure and trying to figure out how to make it work is part of the live coding process. However, This is easier said than done since one can sometimes panic and mess up even more when they are presenting in front of an audience.

For my research project, I chose Melrōse which is a MIDI programming environment for composing MIDI signals and sending them to a synthesizer or DAW. Melrōse uses a custom language to compose notes and create loops to play. 

I found the installation instructions to be somewhat unclear. The installation package didn’t open on my computer, so I attempted to build it from the source. This process required significant effort to get it functioning properly, as some steps in the instructions were confusing or ambiguous. Therefore, I thought it would have been helpful if there was a video tutorial demonstrating the entire installation process and an introduction explaining how Melrōse interacts with a DAW and synthesizers.

Once my installation was complete, I was able to send midi signals from my Visual Studio Code to my DAW. For this to work, I had to install the Melrōse plugin on VS Code and arm the track of my choice on my DAW. Then I started playing around and experimenting with different notes and functions. I thought that the documentation of the project was quite limited, so some functions were either missing or unclear.

Despite these limitations, I found it fun to play around with Melrōse, especially when it’s used alongside my project in DAW. This workflow allowed me to draw inspiration from the loops I made in Melrose and further explore that idea on my DAW. After creating a simple loop, I was able to build a short demo in my DAW based on that loop. However, Melrōse’s limitation of sending only one signal to the output at a time meant that live layering of different sounds and patterns was not possible.

Screenshot of my VS Code:

Screenshot of my Ableton project:

The reading delves into the cyclical patterns found in music composition and explores the application of information theory within a compositional context. The author emphasizes our ability to anticipate each note before hearing it, highlighting the cognitive reception of repetitiveness in music.

In my perspective, the incorporation of repetitions and predictable elements in music can be effective when balanced with non-repetitive details and transitions. I find that some repetitions, when skillfully employed, contribute to a catchy earworm effect and even introduce a hypnotic quality that enhances the overall composition. A well-executed use of repetition can create an auditory illusion of change, despite the underlying continuity of the sound. This idea lowkey resonates with the author’s point on how “what we interpret as spontaneous generation may be just the transformation of previously experienced material as it moves within the human perceptual and cognitive systems.”

Furthermore, the reading introduces the idea of incorporating noise and randomness as a tool to counteract redundancy in musical composition. While random corruptions have the potential to add a layer of unpredictability and musicality, I believe that such interventions work best when they are executed strategically. Applying randomness at the right moment and with a calculated approach often ensures that it contributes to the overall composition without disrupting the coherence of the musical piece.