This conversation with Dorien Schampaert (aka Belisha Beacon) upturned all of my preconceptions about live coded music – crucially, my assumption that I wasn’t technically qualified enough to take part. Her first exposure to live coding was back in December 2015 through a workshop on the ixi lang platform, with the first Belisha Beacon show taking place only five months later. “This Is Fine”, released on Graham Dunning’s Fractal Meat Cuts, is her first record: five improvisations of mutating electronic loops and polyrhythmic shifts, with sheets of minimal techno sliding across eachother, falling in and out of alignment, disappearing and reappearing. Within an hour of my chat with Dorien, I was successfully coding my own beats in ixi lang. It’s absolutely addictive, and I can’t thank Dorien enough for inspiring me to get stuck in. Below, we discuss algoraves, improvising with code and her relationship with perfectionism.
I was doing some research for this interview earlier today, and I saw that you’re doing a PhD on the Ondes Martenot. That looks like quite an adventure.
Yeah. The main hubs of activity for that instrument are in Paris and Montreal. Not really in the UK as much, but there’s interest for it in the UK.
Don’t Radiohead use one? I think I’ve seen Jonny Greenwood playing it.
Exactly. He’s obsessed with it. That’s how I got into it – I used to be a big fan of Radiohead when I was younger and got into all of the technical details of what they were interested in. I got into the Ondes Martenot and fell in love, basically.
You say you used to be a big fan of Radiohead; is that not the case anymore then?
You know, when you’re younger you have that one band that you’re obsessed with and you go see them all the time. That was Radiohead for me. I feel like my interests in music have diversified – they’re not as strongly focused on one band anymore.
I can empathise with that. I think Radiohead were one of those bands for me too. There’s a point in your life where you can comfortable recite a “top five” of your favourite artists.
So I see that you’ve been to Japan for this Ondes Martenot project?
Just for a few days. I talked to Takashi Harada, who is one of the main Ondes Martenot players. He also teaches on the instrument. He used to tour all across Europe and the US in the 90s, playing Messiaen and other big composers who had written work for the instrument. And then I went to talk to one of the founders of Korg who still repairs Ondes Martenots. That was really interesting as well.
Repairing those instruments can’t be a particularly lucrative job. Are there that many units in existence?
No, it’s more of a hobby of his. He’s actually the instrument technician for Takashi Harada. You find those instrument repairers in every city where there’s a lot of Ondes Martenot activity – you need them. [laughs] If you’ve got an original instrument from the 60s or something, you need someone who can repair it every single time, because things will break and go wrong. It’s a very technical instrument in that way. You need to know a lot about the mechanics behind it, and you need to repair it when you’re touring with it as well. It’s a very intense instrument.
The results are worth it though, right? Christine Ott used it on her recent record Tabu. I wasn’t certain on what it sounded like prior to listening, yet the moment I heard it I knew what it was. It’s really striking.
Absolutely. The possibilities it gives you…it’s almost as though it’s an acoustic instrument. There’s so much room for error. It’s very organic in that way. I don’t like using that term for electronic instruments as it’s a bit naff, but it is quite human; you can hear mistakes in it and that makes it really natural-sounding.
The other part of my research I really enjoyed this morning was reading about your experiences with live-coding. I understand that you first got into this through a workshop on ixi lang back in December 2015?
Yes, and by April 2016 I was playing my first gig.
That’s insane. Had you done any coding before?
Not at all. I was an absolute beginner.
ixi lang is such an entry-level language that anyone can do it. It’s what they use at kids’ coding workshops. It’s a bit like learning music on a tiny Casio toy keyboard. You can do brilliant things with it once you learn some technique – some people are virtuosos on keyboards like that and you can get really groovy with it – but it’s also good to learn very simple things to start out with. That’s what ixi lang is for me. It was good for a non-coder to learn live coding.
Why did you want to learn live coding in the first place?
A couple of my colleagues here [Joanne Armitage, Ryan Kirkbride] were into live coding and were going to all of these conferences and doing papers on it. I hadn’t really listened to any of it. When that ixi lang workshop came up, Joanne [one half of AlgoBabez] – who you might have read about – said, “come to this workshop. It’s women-only. You’re going to learn two different languages: a simple one and a slightly more technical one. It’s for beginners and you don’t have to worry about asking any silly questions.” So I wanted to try it.
When I started to learn what ixi lang was like, the things I was coming up with were instantly minimal techno-ish and I really liked that. I hadn’t realised that that was what I was doing; I was just making some beats that I really enjoyed and that could loosely be termed minimal techno. I wanted to do more of it, so I just hopped on board. They were very welcoming of young people and early-starters. They said, “why don’t you come and play – we can give you a slot early on in the evening. Just 20 minutes of improvisation”. So that’s what I did.
So that was your first show as Belisha Beacon?
I’d love to know more about what these algoraves entail. The ones I’ve seen seem to involve someone live coding music with their code projected on a screen behind them, often with some other sort of visual projections happening too. How much of the coded material is prepared beforehand? Or is it all made from scratch?
People do it in different ways. I always work from scratch. I might have some ideas of things I’ve tried before that worked. Sometimes during the soundcheck I’ll get something started that sounds nice, and I’ll build on that. Usually I just start with one line of code. People working with something like SuperCollider might have some pre-written code to start off with: a synth sound they designed or something. It’s a bit like having pre-patched sounds that you do something with on stage. There’s a wide variety of approaches there.
I’ve heard of some people doing a lot of things beforehand and arriving at the live setting with a file containing some ideas, yet they still do all of the improvisation live. You’re still changing values and bringing sounds in and doing away with others. All of that is entirely improvised.
“Improvising” is an interesting way to think about it. The improvisation I’ve seen has largely been with “conventional” instruments that utilise some sort of physical trigger, and I suppose that’s easier to comprehend as a reflexive or improvisatory action. When you’re up there coding, how spontaneous does it feel? How easy is it to respond to and elaborate upon ideas moment-by-moment? Does the coding instrument an element of deliberation to what you’re doing?
It’s very interesting. I think there are two things that happen when you try to improvise with code. Every time you live code with your program, you learn more about what things sound like: what works, what doesn’t. You learn to navigate that and you get a bit better at thinking something and immediately typing it and, in that way, adding something to what you’re listening to. It’s always a loop of listening to what you’re doing and adding something else or changing something. That’s the improvisation aspect. But what I really love about live coding is that you can do things that surprise you. You don’t have to know everything about your code to do a fun improvisation. Sometimes you might not be familiar with a sound that’s available, so you type it and add some parameters and go from there. Sometimes it sounds great and sometimes it really doesn’t.
That’s what I do sometimes: I key-smash a little bit, and whatever tone or volume it has will be fine. I don’t really want to know too much in advance. “Let’s just go with this, press enter and see what it sounds like.” Maybe it’s a little too loud or too melodic, so you take some tones out so that it becomes a little bit simpler, and then you go from there again. The more you learn about the code you’re working with, the fewer incidents you’re going to have, because you can read the code and know more about what it’s going to sound like.
A lot of people end up practising to get more familiar with the code, and sometimes they simultaneously lose the element of surprise a little bit. You can keep that element of surprise going by moving on to a different programming language, or adding some live synths to code with, or playing with someone else. The surprise is in the code you type without fully knowing what it’ll sound like.
There’s also the fact that a code ceases to be a vacuum-sealed set of computer logic once you’re using it over speakers. Are the sounds – and by extension, your approach to improvisation – shaped by the environment in which you’re playing?
A little bit. I find that when I do things at home, I tend to focus on one idea. For example: I’m going to make a really cool bass sound and throw some melody on top of it, and I want it to sound a bit funky or something. Then I tend to surprise myself and I’m relaxed about that. When I’m playing in a room over giant speakers with a crowd in front of me, I feel more of a need to do things faster and keep the momentum going. The sound system helps quite a lot. The sounds I’m using in ixi lang are very simple and not really intended to be used live. They sound better over a big system as you can bring some really great bass to it. I think that it’s much nicer to play live and work with “good sounds”, but ultimately I think that the people in front of me make more of a difference in the way I play.
When I’ve seen pictures of people live coding with their output projected in large type behind them, I’m reminded of my day job as a software analyst. During major incidents, there’s often three managers crowded around my computer watching what I type, and suddenly I become hyper-conscious of every typo and backspace and coding fumble. How does it feel to have your code on show during live performances?
It’s actually quite liberating for me. Previously I’d been um-ing and ah-ing about playing live and doing music in general. I’ve never really found my way. I don’t want this to sound too braggy because it really isn’t, but I’m a bit of a perfectionist in my head in the worst way. I don’t want to spend too much time trying things; I only want to see and hear great results that I’m happy with. It meant that I never really went into music or played it, apart from a few projects that I did earlier on. Instead of bypassing the process, live coding was a way of standing in the middle of the process and not really thinking about the result too much.
Making mistakes during live coding is part of it. It’s fine – even the best people go “whoops!” [laughs]. I think it’s one of the reasons I stuck around, as I felt that it was so much nicer to accept that it doesn’t have to be perfect, that you’re going to make mistakes, that the program is going to crash on you. Just roll with it. As a natural perfectionist, it’s very freeing to let all of that go and accept it.
I understand that the album title is partly a nod to the idea of just accepting the outcome of what you’re doing. Were there means by which you reframed your relationship with music to ease your perfectionist tendencies? How did you come to be able to say “this is fine” and believe yourself when you said it?
It was partly the people around me who assured me all the time when I was starting out, which was lovely. I hadn’t been sure on what to do and had felt out of the loop with performing live. I’m a bit of a singer so I’ve been doing bits here and there, but I don’t have a great technique. I’m not much of a piano player or a guitar player…I dabble a bit in theremin, but you can never really be good at that either. I felt as though the people around me had found their instrument in a way, and had found a level of performance that they were happy with and wanted to keep perfecting. I was nowhere near that with any instrument, and I felt a bit sad about that. Yet my perfectionist nature didn’t allow me to a pick up an instrument and start practising, because I knew that it was going to take three to five years to get to a level where I was actually happy with my skill. I ended up just doing nothing for a while.
With live coding you have instant results, and you’re not “playing” the sounds – they play themselves. You just have to tell them what to do. It was more about learning a language. I’ve always enjoyed the process of learning languages and wasn’t so much interested in knowing the language. The process is very similar to live coding. That allowed me to calm down a little bit [laughs]. The people around me – from the live coding workshop, to the people at my first performance who asked me back – all made me realise that I’m a bit shit still, but that’s fine. I’m playing a type of music that not a lot of other people are playing, because they can do much more complex things. But I was playing stuff that was being enjoyed by people who don’t know a lot about live coding, because it was simpler and more accessible. You could follow it on the screen. Tapping into a different type of audience gave me a little bit of confidence as well.
It’s nice that your own narrative is the opposite to what I’d expect, in that it was live coded music that provided you with the instant satisfaction that you were looking for.
Yeah, it’s crazy.
I’ve seen people refer to ixi lang as having a “looping nature”. Could you elaborate on that?
When you start typing a line, you say, “this sample will be played at this volume with this rhythm and this melody”. On each line of the score, each space counts as one beat. You set the amount of beats in between brackets, and then once you activate that code, it goes from the first beat to the last and then immediately back to the first.
If you type “12345678” in between brackets, it’s going to play a scale for eight beats and then start over again. It loops by itself. Everything you add is going to be played according to those beats in between the brackets, so if you type something that has eight beats and another line that has five beats, it’s going to create a polyrhythm.
There also seems to be moments where the rhythm of certain layers changes, thus “reframing” the material around it. Is ixi lang particularly conducive to that kind of thing?
Absolutely. That’s the whole improvisation process. Everything you typed is still there. You’re not going to delete a line once you’ve typed it, so you end up creating a file that you have to scroll through because there’s so much text on it. You can change some values within the loop while it’s playing and then activate it again, and it’ll change. If you have 10 lines going and then you change the first line, it’s going to sound like it’s slowly shifting. And then you change some of the melody on the third line, or you shift the beat slightly.
Do you have a background in working with rhythm?
I guess it’s something I’ve always wanted to do but couldn’t, so I’m letting it all out here [laughs]. I played the flute for about seven years and I got so sick of it – by the time I got to 16 I just never played it again. I did a little bit of piano and guitar as well. When I was 13, I asked my parents if I could play the drums and they said, “we’re not going to put an entire drum set in the house. You can do it if you can put it somewhere else.” I didn’t really feel like doing that whole thing, but I did have a desire to learn more about rhythm.
So I never got that out of my system. I moved to the UK when I was about 24, and I learned so much more about electronic music: the difference between house music and techno, which I hadn’t known before…
I still struggle with that.
Exactly. I learned a lot about drum and bass and different styles of rhythm, yet I still wasn’t doing anything rhythm-based in a practical setting. I think that this is a really good way of letting it out. I used to be all about melody, what with singing and playing flute and piano and guitar. It was so nice to feel like that wasn’t the direction I needed to go into when doing something live. I never imagined that this is what I would be doing; I always imagined myself producing my own tracks that had singing on them and the other things I was able to do, and then I’d have to call in someone else to play bass or drums. Now I’m doing something which is almost the opposite of what I intended. It’s really nice to just surprise yourself sometimes.
So how did the album come together compared to a live set?
The pieces were all improvisations on the fly. Graham [Dunning] from Fractal Meat Cuts was interested in putting out some of my music, and he asked whether I had any live stuff that you can put on a tape. I actually didn’t. I wasn’t keeping a record of the live sets I was doing, but I said, “I can make you some tracks and you can see what you think”. Instead of being in a live setting and playing in front of people, I just played around with stuff for myself for a while. All of the tracks had a bit of a practice session where I’d play around with ideas and stuff, and then I’d pick something that worked – maybe it was a starting rhythm or the way of manipulating one of the samples, just something I liked – and then I’d record it. And then I’d look back and go “okay, how many minutes was that? 15, okay”. [laughs] That’s how I pieced together the 40 minutes that were allowed.
The shorter tracks were pieces that were needed to fill in the rest of the tape, but in exactly the same way, I’d just choose a starting idea and then work from there and see where it went. I think there was four or five tracks that I ended up not using, because something went wrong or it was going nowhere or it sounded too similar to something else, but it wasn’t a lot. It was just the improvisations I could do at that time with the skills that I had.
That’s a really good hit rate for successful tracks. Particularly compared to my own music, where I nowadays assume it’s going to be an addition to my personal archives and won’t ever be released. Do you think that’s anything to do with finding your flow through live coding?
Definitely. This isn’t something I ever saw myself doing. But with playing live so much in 2016, I started trusting my judgement and my confidence a little bit more, as I was getting so many good reactions from people – even from really talented live coders from Japan [Renick Bell] and the US [Kindohm], who came up to me after I opened an algorave, saying, “I really loved your stuff. It’s really different.” I would just go, “are you joking?” They loved it because I was really into what I was doing.
I basically made a choice to trust myself a little bit more, and that’s where my process came from: it doesn’t have to be 100% perfect. If I like how it sounds, let’s see how it goes and what other people think. If I like it, that’s good enough.
Do you have a particular environment or set of rituals that are particularly conducive to making your music?
I always thought I’d have a bit of a ritual to get into a headspace, and have a favourite chair and everything. It’s really not like that. Again, I’m surprising myself. I can live code on someone else’s kitchen table, or in bed, or on the sofa…I’ve got a really light MacBook Air that I can just take anywhere. It’s very portable and I can do it when the mood strikes.
That’s great. So you can do it on a train or something!
Exactly, yeah! That’s what I’ve done before a gig – I’ll warm up a little bit and re-familiarise myself with some of the code. I’ve had an instance where a guy was sitting next to me on the train, and he actually took a photo of my computer as I was live coding. He didn’t say anything. It was very awkward. If he’d actually started talking I would have told him about the whole live coding thing. But no, he just took a photo.
[laughs] He didn’t ask for permission?
No, not at all. Very strange.
If he was someone without a background in live coding…their imagination must explode with thoughts of what you could be doing.
[laughs] I think so.
So where are you heading next with this? It looks like you’ve got some really exciting live shows coming up.
Yeah, some really exciting stuff. I’m playing in Belgium for the first time in April, which is a bit of a homecoming gig [laughs]. We’ll see how that goes. I’ve never done live coding in Belgium before. I’ve given workshop but that’s not the same. That’ll be fun – I can get some of my old friends to come over.
We’re also doing another big Leeds algorave at the end of April, which I’m really excited about. It’s kind of my one-year anniversary of live coding. We’re playing Bluedot festival which is great, and I’m playing a small gig at Wharf Chambers in June with some other female artists [Silver Dick, Ocelocelot and Anna Peaker]. So yeah, lots of really exciting stuff coming up.
In terms of live coding, I think I’m ready to move onto something else. I feel like I know ixi lang so well that I can no longer be surprised as easily. It was so much fun writing without knowing what it was going to sound like and just hit “send”. I’m not sure if I should be introducing new samples into ixi lang or moving onto a language like TidalCycles or Sonic Pi, or introduce a live synth to code with. I’m not sure about that yet, but I’m ready to explore other possibilities.
I guess that when you move to another coding program, you’re shifting to an entirely new mechanism for making music; it’s like moving from piano to guitar. If your next record is built upon another coding language, it could have absolutely no basis in This Is Fine whatsoever.
It might sound very different, but I’m still interested in creating dance music. I love the four-to-the-floor beat. I love creating things that people can nod their head to or dance to if they like. I’ve got some music that I like listening to that I would be thrilled to create through live coding; I’ve been listening to Modeselektor for ages, and they always seem to make things that you just have to dance to. Being able to do that would be brilliant.
Does being part of the algorave community inform your preference for material with a 4/4 beat as well?
Yeah, I think so. A lot of live coders are so experienced – they code by day, etc – and they can do really intricate stuff. It’s great, but that’s not something I’m going to be able to do for a long time. I’m just having fun with a more straightforward type of music and that seems to be something that a lot of people can enjoy as well; even those professional coders find it a nice change of pace, and that’s just lovely.