Live coding

Last Sunday, I was introduced to the concept of [music] live coding, and spent last morning trying it with Sonic Pi.

As a person who has a huge facility to program (as opposed to playing an instrument), I find the idea quite attractive. Also, I work as a computer science teacher, and that means that writing code is only a little part of my job.

So, I’d like to know which tools exist and are most used. Of course, I can look up this myself on the Internet (and I’m doing it), but I would appreciate the vision of someone who has been live coding for a while, before I spend a lot of time learning and trying different products.

3 Likes

if you haven’t explored tidal yet worth checking out. Haskell is pretty accessible.

1 Like

The best programming language is super collider . If you are familiar with programming it is for you.

1 Like

I’ll try both Tidal and SuperCollider. I think that Sonic Pi and Tidal are frontends for SuperCollider, so I suppose this is quite low level.

Sonic Pi was very easy to install and get started, which is a plus.

Sonic Pi I never used it, but I think is simple and easier to get stared .
Have fun

I saw this recently too but can’t find the video I watched now, it was really interesting and as someone with coding proficiency myself it also piqued my interest. Was a female musician I remember that. Felt almost like some of the aims were different, and that the way the music was being generated as important as the sounds themselves, part artistic expression, part technical demonstration.

Pure Data would be a neat format for improvisation but probably more analogous to modular synthesis than coding.

I’m remembering why I hated jackd on Linux and started producing music on Windows…

Try Foxdot as well - https://foxdot.org
I still use TidalCycles with Supercollider too. TidalC can get you to places rhythmically that you’d never dream of in no time and Foxdot can do similar things but is more linear and easier to get your head around in terms of music creation (in my head) though there are some commands that produce similar results.

Maybe DJ Dave ?

1 Like

I didn’t hear of Foxdot before. It’s in Python, which is a plus, because it’s one of the languages I use.

I was kind of hoping there was some standard (like Ableton in the “DAW for electronic music production” category: some of us use other DAWs, but you can’t go wrong with Ableton), and I could get started without having to install and try a lot of different environments, which is the most boring part.

This might be the entry to Haskell I was looking for…

If you want the base : SuperCollider is on which Sonic Pi/Tidal/Foxdot are building on. Or you can also shift the paradigm and have fun with Pure Data. If you want an easy introduction, I would pick Sonic Pi or Tidal and stick to one for a few times. There is nothing wrong not trying everything directly :slight_smile:

1 Like

Quite possible, cool either way thanks for sharing!

TidalCycles has an excellent, well-paced tutorial that will suggest lots of fun tangents. It only requires about an hour but I probably spent 6 hours on it experimenting. It’s deep, it’s unique, it’s hackable (if you like) and it’s great fun. It’s a very fun MIDI sequencer too.

When you start looking under the hood at the SuperCollider bits, you can start rolling your own SynthDefs to control with it. This can be as gentle a transition as you like. After doing that for a while, I found that I just wanted to use SuperCollider by itself, which you can certainly live code with, especially with e.g. the NDef and ProxySpace constructs.

There is also Hydra for more visual live coding. That one is neat partly because it runs in a browser. It has a MIDI API as well.

2 Likes

For now:

  • Sonic Pi: easy installation, integrated environment, excellent documentation and tutorial.
  • TidalCycles: use your preferred editor, super fun rhythm patterns manipulation, recent video course available to learn the basics.

Another note on TC: check out kindohm (Mike Hodnik) on YouTube and Bandcamp. He is one of the most, if not the most, skilled practitioners of TidalCycles. He has tutorials, live sets, albums and EPs up, and it’s all good stuff for learning, listening, and inspiration, whether you want to dive into TC or are curious about this type of workflow in general.

1 Like

You can also use your preferred editor with sonic-pi with help from sonic pi tool.

If you’re having trouble with jack, check out pipewire. Solved all my jack/ALSA related issues, now everything just works

It eventually worked, but I’ll check pipewire for sure, because I hate fighting against jackd each time.

Last time I tried installing Supercollider on my machine, it completely hose my audio drivers… I oughta try again at some point; foxdot seemed fun.

I’m a big fan of SuperCollider. It’s pretty easy, especially if you know any object-oriented languages. It derives from Smalltalk, an OO language.

I don’t do live coding, but I have run some experiments through SC – things like MIDI sequencing for external hardware or actual audio processing… It’s really fun to play with FM synthesis in code, for example.

It wouldn’t seem all that intuitive for me to perform with code, but I know some people do it well.

I recently found a YouTube channel that teaches SC really well: https://youtube.com/c/elifieldsteel
I checked out some of his first videos and they’re very beginner-friendly and informative; all information, no fluff!

1 Like