Mike Hodnick on Live Coding with TidalCycles
In this episode, Matthew Tift talks with Mike Hodnick (aka Kindohm) about live coding, TidalCycles, performing with other live coders, creating new sounds, what separates TidalCycles from other live coding environments, and much more
Episode Guests
Mike Hodnick (aka Kindohm)
Mentioned in this Episode
Transcript
Transcript
- Matthew Tift:
- It's July 2018, Mike Hodnick on live coding with TidalCycles. Welcome to Hacking Culture. Recently, I attended my first live coding event in Saint Paul, Minnesota and it was a pretty exciting experience for me. I wrote a blog post about that experience and I'll link to it in the show notes. One of the people who is performing that night at the live coding event was Mike Hodnick, also known as Kindohm. Now, according to the announcement for that event, Mike has performed his unique brand of live coding rhythmic permutation, angled sonics and textures at Algoraves worldwide. There's a lot of words in there that you might not know, but that's part of the goal of this episode is to talk a little bit about some of those terms. It just so happens that the main software that Mike uses for his performance is a GPL license Haskell library called TidalCycles, so there is the connection to free software. Welcome to the show, Mike. How are you doing today?
- Mike Hodnick:
- I am very well. How are you?
- Matthew Tift:
- I'm doing great. Thank you for taking the time to come on the show and talk a little bit about live coding. I wonder if we could start off with you talking about how you would explain what live coding is.
- Mike Hodnick:
- Yeah, let's get right into that. It's a big question. I think I can distill that down into what I think it is pretty easily. It's an academic definition that I've picked up over the years, which is that it's really about making a live change to a live running process. It can involve something creative or musical or visual, but it could also be for something non-creative or non-musical or non-visual, but kind of in the context of music or art or some creative activity. You're making a change typically in some environment where there's a running process and every change you make is changing how that running process is executing for the better or for the worse. The results can be surprising or they can be deliberate and planned, sometimes both. I guess at a high level that's how I describe it is that you got a running process and you're making changes to it in real-time, typically using code as an interface.
- Matthew Tift:
- That topic of just trying to describe what live coding is is a challenging question. I apologize for starting off with something like that, but I think it gets to one of the interesting aspects of live coding is that it can mean quite a bit of different things to different people and they can attach different meaning to the idea of live coding. For example, last night, I was having dinner with a group of Drupal developers and I brought up the topic of live coding and none of them had heard it. Just trying to describe it, it's easy to fall back on something like making music with my computer or something like that, but your answer gets to the fact that it can be other things like art or visual art and not just music.
- Mike Hodnick:
- That's right.
- Matthew Tift:
- That aspect of it, is what drew you to live coding the music part or is there something else about that?
- Mike Hodnick:
- That's a good question. I think that when I learned about these tools that you can use, it wasn't so much the really knowing or putting a lot of thought into specifically that this is live coding. It was more that, "Hey, there's a code-based interface I can use to make music." That sounded really cool to me and having a background being an instrumentalist, play percussion and drum set, so this idea of playing and performing music being is kind of it's a live real-time experience to me. I've produced electronic music and I love electronic music, but I'd never really been comfortable performing it because to me I didn't really know of a live way to do it.
- Mike Hodnick:
- When I came across TidalCycles and a code interface, I thought, "Okay. This is something that could really work." Me also being a programmer was a natural fit. It was this intersection of programming and music which are two things that I really love. It was this weird thing that I knew I would be interested in as well. That's a perfect storm of a few things that made me realize it was possible. It wasn't so much that kind of more of the formal definitions about what live coding is. I didn't really pick those things up until later on and getting into some of the research that's been done around it. It's more of just, "Hey, this is a cool tool I can use and looks fun."
- Matthew Tift:
- Is it fair to say that your day job is coding, but then live coding is something you do? Would you describe it as a hobby?
- Mike Hodnick:
- Yeah. I am definitely a computer programmer, software developer, software engineer. That's my main profession, line of work, and music making is really just ... it is a hobby, but I don't know. I take it a little more seriously than a hobby. Sometimes I feel like the word hobby means I never come out of my basement. I love performing and I love producing and putting music out and I'm trying to continuously get better at those things too, but I really like sharing what I do too. It's a hobby because it's not the main thing I do, but it is a significant thing I do also. It's still something I take seriously, but it's not my means of paying the bills.
- Matthew Tift:
- When people ask a question Mike, "So what do you do?" They're usually referring to how you are economically productive in our society.
- Mike Hodnick:
- Sure.
- Matthew Tift:
- I'm a live coder isn't really an answer to that question, but it seems like you have actually done quite a bit in terms of performing as well as releasing albums and being involved in the live coding community. Could you talk a little bit about some of the albums that you have put out and maybe how some of those things came to be like how you made that transition from doing this thing live and in the moment to releasing an album?
- Mike Hodnick:
- Yeah, sure. It kind of tied in with another thought I have as you're talking. To me, live coding is a tool or a process that I use. I don't really think of it as an exclusive way or the only way that I do produce or perform music. It certainly is probably the most significant way or the most significant tool or technique I use. Sometimes there's this other little tricks or skills or other things that I've got to introduce in order to get to where I'm trying to go from a creative perspective. In any case, yes, I wanted to try and perform with TidalCycles, writing live code in front of an audience and even before I'd really produced anything with it in terms of an album and had been very fortunate to the schedules and shows at some venues in Saint Paul, Minnesota. It was really fun where I would actually start from a blank text editor and completely improvise anything and everything I can think of and just really have a lot of fun.
- Mike Hodnick:
- I think that producing music with it was never a question if I was going to, it's more a question of when. I always knew in the back of my mind that I'm going to at some point figure out how to take this coding technique, but use it more as a compositional tool and make some recordings and just see what happens. Eventually, those ideas materialized and little experiments seem to succeed and turn those things into tracks and put a lot of polish on them and eventually released those things as albums. I don't know album is the right word, but digital releases on Bandcamp. I've also been fortunate to release a few physical things as well in the form of Vinyl LP. I guess that's the main audio format that's out there, but I've done some other things with USB drives that you can buy and things like that. That's kind of the journey that I went on from starting with a live improvisational approach to trying to make some compositions and tracks I guess you would say.
- Matthew Tift:
- Do you have any strong preference for live coding by yourself or live coding with an audience or live coding to create an album?
- Mike Hodnick:
- Yeah, it's a great question. It really depends on the particular setting or the venue or the audience or the purpose of the event. There have been performances I've done where improvisation is really the focus or improvisation is the expectation or the venue is really a setting where improvisation and mistakes are encouraged or expected. Then I feel very free to kind of perform that way, start with a blank text editor and just go for it. If I'm playing in a place where there is food and drinks served and people are paying a $10 cover to get in and it's more of a ... The music may not necessarily be the focal point where people are listening critically and giving 100% attention to the performer. It may be more of people are going to be talking or socializing or whatever.
- Mike Hodnick:
- Then, in those cases, I'm going to prepare more ahead of time and perform more compositions that I've put together beforehand. I may actually perform things that I've recorded or things that I've not been recorded, but are still ready to go because in those cases I feel like it's just a different set of expectations for the audience as well as the venue and why everybody is there and that's okay, that's cool. I like being in a setting where I'm able to take some more risks. There's kind of even some middle ground between complete improvisation and complete preparation. There're those cases where I'll have a skeleton of things ready to go, but there's a lot of room for improv and weird things can happen and I can type code that create something unexpected that's surprising, but the audience is still into it. It just really depends on what the particular setting is.
- Mike Hodnick:
- Another thing I wanted to mention though to you just briefly because you were getting into it, which is using live coding as a compositional tool. Even though there's no audience when I'm writing stuff in my own house, it's still a live process where through code as an interface I'm experimenting and trying to come up with something that's kind of fun and interesting. Even though there's no audience, I still feel like it's a very live process rather than using buttons or a nice user interface and how polished program might just sequence something or come up with an idea. I'm typing code and continuously improvising and coming up with something that makes me happy or something that I think sounds good. It's still a very live process even though it's during the composition part rather than the performance part.
- Matthew Tift:
- That's pretty interesting this aspect of performing by yourself suggests like you're just doing this thing, but there is the sense still like when you're performing, you're also performing with the algorithms. Because live coding is code, you can fairly easily say, "I'm going to create a little melody and then I'm going to try and play it twice as fast or 10 times as fast or a thousand times as fast or see what happens. You don't always know what's going to happen. It does feel like there's the sense that when you're performing, you're creating these patterns and they're repeating especially if you're using TidalCycles and that you're performing with a set of algorithms. Could you maybe say a little bit about how you kind of build things up?
- Mike Hodnick:
- The way TidalCycles works is you're given a unit of time called the cycle and if you have a musical background you could think of that like a measure or a beat I guess you could say, but it's a unit or a loop. It's a unit of time or something happens and then it repeats infinitely. By default, TidalCycles functions at one cycle per second. You got a 120 bpm loop that you're able to work with. Within that cycle, you can put whatever you want. You can divide it up into four equal chunks and then end up with like a 4/4 beat so you can play four bass drums or bass drum, snare drum pattern.
- Mike Hodnick:
- Basically, you define what goes into that cycle with a string of code and there's a little syntax for that string needs to look like. You can use multiplication symbols and division symbols and some other square braces and some other things to define how different events in the cycle need to be spaced out or what content they include. That pattern string can apply to sample names or MIDI note values or different pitches or different volumes. You can use that same syntax in TidalCycles to control all kinds of different parts of that that unit of time it's always repeating.
- Mike Hodnick:
- When you start typing some code, you are defining really a trivial little loop. I think one of the things that makes TidalCycles so great is that with a very little amount of code and through its features you can type just a little bit of code to start causing some very large changes. You can use those functions to completely reverse a pattern. You can do some sample manipulation by chopping the samples up like doing some granularization. When a certain number of cycles go by or have played, so on the third cycle do this, it maybe reverse the thing or change how fast something is playing. You can start to develop a lot of logical variation that way and start to layer a lot of logic on top of what you're doing. It's hard to explain without actually seeing something visual, but that's how you start is you just start putting things in the cycle like note values or sample names and what rhythm they should play in and then start. Where the power comes in is really getting creative with some effects or the logic of how to manipulate that rhythm as the cycles go by.
- Matthew Tift:
- That's a great description and like you said it seems hard to describe what live coding is. On your recent album on Bandcamp, the description said, "Kindohm signature sound combines pin-sharp, icey synths, butting heads with corkscrew, heavy abstract percussion, coded in TidalCycles. This all sounds hella technical, but what it basically means is that this guy is creating a truly original sound that pushes the boundaries of both techno and extreme computer music."
- Mike Hodnick:
- Oh, my.
- Matthew Tift:
- Does that sound to you like what you do?
- Mike Hodnick:
- Gosh. I mean, those are some really nice words. If people are hearing that in what I do, that's really cool. I guess my interest in music change over time, but I think that description is fairly accurate because it's a style that I've been developing from years and years and years ago I've always loved more complex and chaotic music. I've been interested in synthesis and creating my own patches and complex rhythms. I think that description and that music that that description is made for I think it's accurate because it's what I have subconsciously in my brain about what I'm doing.
- Mike Hodnick:
- I've got sharp synthesis, very clean, weird, almost alien sounds that sound like they're just not natural things that should be coming out of electronic instrument and strange rhythms that you can nod your head to and have a grove, but then they surprise you and start to twist around. I think because of the logic you can put in TidalCycles as a sequencer, you start to end up with things that don't repeat as often or things that repeat in unexpected ways. I try to do things that I think nobody has done before. I don't know if I'm always very successful. It's really cool if somebody perceives that it's a unique sound or unique way of recording. I guess I like that description.
- Matthew Tift:
- Do you feel like that's one of your goals then when you're live coding is to continually find something new and unique?
- Mike Hodnick:
- Well, it's a tool that enables me to find something new and unique. I think that as an artist that's my goal. I think as a live coding as a tool it is something that can get me there very easily. It's the thing that's got me there the most easily so far. I believe that I could use nearly any ... well, not any technology, but many technologies whether it's traditional software or modular synths or anything off of a shelf in the store. The creativity will hopefully come through and I'll arrive at a similar outcome. Through live coding and through a code based interface, I think that there are just certain features available that get me to where I want to go faster just creatively or the way I can experiment with stuff. It's a tool that is just much more productive I think for how I think about music or for the place I want to go to musically.
- Matthew Tift:
- One of the interesting things about live coding is that it is just a skill I guess you could say just like any other programming that you could learn and get better at and you've released a number of tutorial videos and those are very helpful for people like me that are learning. I know that sometimes I try these things and it just makes me giddy when I do something and like, "Whoa! What happened there?" There's like a great deal of surprise. What you've been doing this for few years like you have, do you still feel like when you're live coding that you're doing things in a way that surprises you or creates like not just something new and unique, but something you weren't expecting when you wrote it?
- Mike Hodnick:
- Yeah, it does still happen. I think that is more of a subjective goal I have. We were talking about musical output as a goal just a second ago, but I think ultimately I do just wanted to keep being surprised and that's what's going to keep me doing this. When I was first learning TidalCycles, the surprises were frequent and every day I was trying to learn something new and do different things. It always surprise me. I've been using TidalCycles for, I don't know, at least four years probably, maybe a little bit more. I'm not sure. The surprises are harder to come by because I know what's going to happen if I use a certain function in a certain way.
- Mike Hodnick:
- That being said, that doesn't mean I've done every combination of things you can possibly do in TidalCycles. There's still are surprises to be found and that's the goal now is what other aspect of Tidal can I use today to do something I haven't thought of yet. Even though there's a lot of things I accustomed to and familiar with that do the things I like, it's always still a fun creative activity and a challenge to find the new things, find the things that I haven't really discovered yet or certain combinations of things I haven't tried. The surprises are still there, but I have to dig a little bit harder for them now.
- Matthew Tift:
- Sure. Do you get much of a chance to do live coding with other people?
- Mike Hodnick:
- In terms of just maybe whether it's a performance or a meet up or something like that, I guess I've been very fortunate to travel to some places where I've been able to be a part of these things called Algoraves and live coding exclusive performances where you may have five to 10 people who are all using live coding techniques to perform music or to display visuals, things like that. Otherwise, there's also some specific things where you can ... When you said multiple people or perform with others, the first thing I thought was being able to share the same musical process with somebody, so at the same time maybe synchronized in time and you're able to perform together or there's some tools that allow you to share your text editor with somebody else at the same time and you can even manipulate the same code together. There are those possibilities as well.
- Mike Hodnick:
- In terms of just performing or getting together with other live coders, it's been rare for me. I've been fortunate to travel a bit and perform and meet a lot of my live coding peers, which has been really fun and really great. Locally, there's a small and growing interest. I've been pretty terrible at trying to get meetups together or to try and get us all locally who where we live by each other to try and get together and make some stuff happen. I feel like I could do a lot better on that. We have gotten together a few times in the past. There's a few of us. We did a performance in Hopkins, Minnesota a few years ago. Kind of a rumbling response there, but yeah, there's been opportunities to get together with other people.
- Matthew Tift:
- It seems like there's a strong sense that live coding should be done with other people or for an audience or something like that and some other things I've read about it. I just wondered if that matches up with your experience that there is an emphasis placed on doing this activity with other people or with an audience as a social type of thing.
- Mike Hodnick:
- I think there's like three parts to that answer I want to give. Yes, I think there are opportunities to do so and I think live coding can and has been a very communal type of activity in a way that other electronic music is not able to be. For example, I forget what it was called like pub coding where you have TidalCycles running on a computer and you meet up somewhere and you project the codes somewhere in a backroom and you just pass the keyboard around so everybody gets to write a little bit of code for 30 seconds or 60 seconds and then you just pass it around, and it's a very social activity.
- Mike Hodnick:
- When you mentioned doing it with people, that's the first example I thought of. You can't do something like that with traditional music making software at least very easily. You certainly could pass around a MacBook with Ableton Live running and people could DJ in real-time as you pass the keyboard around. That would certainly be possible. I don't mean to say that you couldn't do it with anything else. With a little bit of code and a text editor, I think the interface affords itself to something like that. I don't think that live coding has to be social. One of the things I like to talk about with others is that we think of programming typically as something you do for your job or to solve problems or to build software.
- Mike Hodnick:
- You sit in a chair, sit at the desk and you have to write software and to get a paycheck, but coding can be for yourself too and not just for writing software. For example, with creative live coding whether it's something musical or visual, you can let your mind meander and just you can continuously improvise and create without any end goal because you can certainly write software by yourself for fun, but you're going to stop once you get to a point where you've learned what you want to learn or you've built a program when it's ready to be used by somebody else or maybe you're doing it as a side project.
- Mike Hodnick:
- With creative live coding, you can just code by yourself. You don't need an audience or other live coders with you. You can just do it. It's kind of almost a meditative activity. There's really no end point. You can just stop when you're ready to stop so there's that aspect as well. A long response, but the third part I wanted to mention is I think that the live coding community has been very, very ... It's a very, very strong community and very supportive. There are a number of email lists and forums where new users can ask questions and everybody is very supportive and very eager to give answers and help folks learn. There's not a lot of protection of skills or knowledge. I think everybody has been very welcoming.
- Mike Hodnick:
- It's also a community where diversity is I guess kind of a very prominent thing that's supported as well, making sure that there's no discrimination regardless of gender, sexual orientation or race or any factor at all. Events are very open and welcoming and the stage has been equal as well to make sure that you don't have a stage of five white males as the only performers. It's a proactive community where diversity is practiced and not just talked about.
- Matthew Tift:
- Yeah, I've noticed that too. That's a great aspect to it the community part. I think for me one of the things I like about live coding is like you said the meditative aspect to it because you can take just any sound you want or music or sound file and you can just play around with it. You don't have to do it because you want to do it because it needs to be just right. There's a playful aspect. After spending decade or almost two decades now for me writing code for other people with a purpose, writing test, making sure it works, there's always this sense of I'm doing something for the future, for someone else, for requirements, for acceptance criteria.
- Matthew Tift:
- Live coding feels like it's such a different thing to just be there in the moment and I feel like that's even helped me on my day job doing coding where I try at least to pay more attention to like, "Am I enjoying this right now as much as I ..." Maybe not as much as I would do in live coding or not, but do you think your experiences with live coding have affected your professional life as a coder?
- Mike Hodnick:
- That's an interesting question. I don't feel like it has. It feel like a very separate activity to me. I feel like I have to turn on a very different part of my brain in order to do my job and write software as opposed to TidalCycles and that that's exercising a much more creative part of my brain. Of course, it's still a technical activity, but even the technical things that I'm exercising when I'm live coding are very different than the technical things at my day job. I feel like as a live coder, kind of the technologies and things I have to know that surround live coding like being a part of the open source community, trying to get a number of libraries running on windows.
- Mike Hodnick:
- Windows is my main operating system. I guess there's kind of some technical skills that I've gained by just using a live coding tools that have helped me in my day job, but not in terms of the code writing part. It's more in terms of crazy, super niche things just trying to get something compiled because I think a lot of the open source tools that live coders used are they're not mainstream. There are things with audio or with graphics. It's not for web development. A lot of these tools are a little more obscured and they're harder to get running. It just keeps me sharp in general, but in terms of the coding itself, I feel like it's a very separate activity to me.
- Matthew Tift:
- I see. When you decided to use TidalCycles rather than live coding languages or libraries like Sonic Pi or FoxDot or Chuck, there's a huge list of them, did the fact that it was free software affect your decision to say, "This seems like the one for me" or was it mostly the efficiency and the quickness that you can use TidalCycles to get going?
- Mike Hodnick:
- I think it was definitely the efficiency and the quickness and the features that TidalCycles had to offer. When I saw those things, I immediately thought I have to do that right now. It really wasn't the fact that it was free software. I guess that was a nice side benefit, but it wasn't a driving factor for me. For me, it was just looking at the code being written and instantly recognizing that it was something that I knew I would have fun with and something I could use.
- Mike Hodnick:
- I remember the first time I saw TidalCycles code. I looked at it and I recognized that it was very much a rhythmic pattern based tool, which with me being a percussionist and a drummer that certainly made sense. I think that was really what the main driving force was for me. I did check out a number of other live coding tools. Some of them were just harder to for me to get started with and just get running. Others were just didn't quite do everything that ... It wasn't so much that things weren't capable, but TidalCycles I looked at it and I instantly recognized it as something great. The free software side of it was a nice side benefit.
- Matthew Tift:
- Now, do you think if somebody is listening to this and thinking, "That sounds like fun. I'd like to try that." Do you think it is necessary to know programming or to know how to create other kinds of music to do live coding?
- Mike Hodnick:
- No and no. I've seen it both ways. I think a lot of programmers come across live coding creative tools and a lot of live coders do not have a musical or artistic background and they're able to dive in. If they have any kind of interest in music, they're able to just start because the programming comes a little more naturally and they are able to make connections with, "When I type this code and it does this and it's something I recognize in terms of a rhythm or a melody." Then they can kind of make those relationships in their brain and be on their way.
- Mike Hodnick:
- I have seen artistic folks who do not have a programming background also get started. With TidalCycles specifically, I think it's a little easier. The coding is not quite as hardcore. I'm thinking of doing WAPP development or learning JAVA or C++. TidalCycles is based in Haskell, but you don't have to know Haskell to write TidalCycles code. The way TidalCycles was designed allows you type as little as possible for a maximum results, so a non-technical person can read into it and just go. There can be some barriers with the technology in terms of ... There's a lot of things you have to get accustomed to in terms using a terminal and using service control systems like Git and just getting things installed. A lot of those are pre-requisites.
- Mike Hodnick:
- You have to do those things in order to just get running at least today and those can be a little daunting. Once you get things running, I've absolutely seen folks who do not have programming experience. They can still get it done and still use it as a really cool creative tool. I think non-programmers in a way have a weird creative advantage where they don't have preconceived notions of what code should look like or what looks correct and they're almost more willing to try things that I would never do and the results are just that much more unique. That's an interesting part of it as well.
- Matthew Tift:
- That's for sure. Coming from a background with C based languages or JavaScript or something like that and then coming across Haskell, it does look like it's a completely different mindset but also quite fun. You would recommend TidalCycles for somebody who didn't know programming or have a musical background if they wanted to give live coding a shot?
- Mike Hodnick:
- It's one option. I would recommend it, but I wouldn't say that it is the first one they should start with or it is the best.
- Matthew Tift:
- Sure.
- Mike Hodnick:
- It's a very personal choice I think in terms of the coding and the language and the syntax. TidalCycles seems to resonate with a lot of people, but that doesn't mean it will with everybody. Right now, the installation experience for TidalCycles is probably the most challenging part of it just getting it running. It can be a little daunting. There is no just single installer for it. You have to, as of today, install a number of separate things and get things connected and get them working. As opposed to Sonic Pi which has a single installer that you can just run and then you just run Sonic Pi by itself. If you're on Mac or Windows or Linux, you just start it up and it has its own dedicated editor and it's already to go. That's a goal of TidalCycles is to get to that point, but the community just hasn't gone that far yet. Sonic Pi I think is easier to install and just start using. You can do that probably within a minute. TidalCycles will take you more than one minute to get install. It depends. I think it depends on your level of familiarity with your operating system and computer and then also looking at the code and seeing what kind of make sense to you and what's fun to use.
- Matthew Tift:
- There's definitely something alluring for me about TidalCycles. I did go on and try a few those other ones that like you said are easier to install, but it's kind of tricky to explain, but there definitely are different goals with each of these kinds of programming languages. There certainly seems to be something unique about Tidal and that probably has a lot to do with the fact that it's Haskell.
- Mike Hodnick:
- Yeah, for sure. It allows a certain way of making music and performing and I think the way it was designed to it was designed with making musical patterns and rhythm. We mentioned Sonic Pi. Sonic Pi have the same idea of a loop, but the way it's constructed and built is different. It's based in the language of Ruby and there's a grade school curriculum around Sonic Pi, so it can be simple for kids to pick up. You mentioned FoxDot which is in Python. I've not used it myself. There's another one called Gibber. It's a browser based tool so it doesn't require any installation at all. It's a JavaScript coding tool that works really well. There's also a graphics visual component of it as well if you want to do combine audio and visual work in it.
- Mike Hodnick:
- I'm forgetting a whole bunch of others. There's also SuperCollider, which is a lower level environment, but it's easy to install, maybe takes a little bit more digging into the docks to know how to write code for it. SuperCollider is actually the foundation for TidalCycles sample sequencing as well as I think Sonic Pi uses it as well for all of its synthesis. It can be used by itself as a live coding environment, but it's also the foundation for other things which is interesting. Lots of choices available.
- Matthew Tift:
- If somebody was interested in pursuing those other choices, do you point them to any particular resource such as toplap.org or do you have any other suggestions for where people might look?
- Mike Hodnick:
- Yeah. TOPLAP is a great one. I think TOPLAP has a number of pages of just list of links and things like that. The other resource that I think is great is it's just a single read me page, github.com. The organization account is TOPLAP, so github.com/toplap. The repository name is awesome-livecoding, so github.com/toplap/awesome-livecoding. It's a curated list of everything from languages and environments, also videos and training resources. Maybe training isn't the right word, but tutorials and videos you can watch or even performances and demonstrations, list of conferences, community links. I guess it's a concise page. It's very similar to the information that's on toplap.org, but it's all presented in one single document which is pretty handy, so I'd recommend that.
- Matthew Tift:
- Great recommendation. If anyone wants to find out more about what you've been up to or find more about your work, where would you suggest they go?
- Mike Hodnick:
- I've got my main website which is pretty small. I don't have a blog or anything on it, but it's kindohm.com, K-I-N-D-O-H-M.com. From there, I have a number of links, two releases and upcoming performances as well as links to Twitter account and YouTube page and Instagram and some other stuff like that, so that's the place I would go. Otherwise, you just search for that moniker, K-I-N-D-O-H-M. You'll come across all of the main spots on the internet to find out what I'm up to.
- Matthew Tift:
- Sounds great. Is there anything else that you wanted to share before we sign off?
- Mike Hodnick:
- If I had to think of a closing remark, it would that live coding to me is a great technique that opens a new dimension for creative coding or for any creative output, musical or visual or other. It's certainly not the best way that it's going to work for everybody, but it's a technique that I think especially on the creative side, any artist, it's a tool you can put in your tool belt to use live coding based tools and practices to expand whatever your creative format is. Code as an interface can just introduce some nice creative options in addition to existing tools that you're familiar with. That's how I look at live coding. It's not the future. It's not the one thing that everybody is going to be doing, but it has so much to offer and I think it certainly is growing and how many people are aware of it. You can do so much with it. I love doing it. Certainly, I would recommend folks take a look into it.
- Matthew Tift:
- Those sound like good words of wisdom. Thank you very much for joining me, Mike, and have a great day.
- Mike Hodnick:
- All right. Thank you very much.
- Matthew Tift:
- Thank you for listening to this episode of Hacking Culture. All of the music used in this episode is music from Mike. You can find more information about the topics we discussed such as links to TidalCycles, Sonic Pi, FoxDot and more at hackingculture.org/episode/17. Thank you for listening.