Audio Programmer Virtual Meetup - 13 July at 1830 BST

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
thank you so much for joining us tonight uh my name is timur i am your host tonight together with josh hi josh how's it going tonight i'm doing fantastic and i'm really i'm i'm feeling very humbled to uh to have some awesome guests with us tonight and really amazed uh by everybody that's joining us this evening as well so uh welcome everybody glad to be here yeah we have some uh wonderful guests tonight um but before we get to that josh do you want to say a few things about our sponsors yes so i'd like to give big thanks to our sponsors who have been supporting the meetup so thank you to juice sonax and focusrite for supporting the meetup every month and um thank you very much for joining us and also if you want to continue the conversation we have the audio programmer community on discord as well it's a great place where you're welcome to come and discuss all things audio programming and we have over 6 000 people from all different backgrounds and all different skill levels you can join us on theaudioprogrammer.comforwardslash community so come join us and let's talk audio programming right um i do have one more announcement the audio developer conference the adc is happening on the 15th and 16th of november with another day of workshops at on the 19th of november and it's going to be really exciting so this year we want to do a hybrid conference which means we're going to have an on-site event in london in the uk but we also going to have an online um kind of online experience like we did last year except we have to have an even better new platform for that and it's going to be fully integrated so you can join online you can join on site you can speak online you can speak on site and it's all going to be basically one integrated experience so i'm really really excited about that um and also you can still submit to talk um so that would be great um the deadline is actually monday the 2nd of august so it's just a little bit over three weeks if i'm not mistaken or just a little bit under three weeks actually so it's not that much time left so if you want to speak at the audio developer conference whether it's life on site in the uk or live online from wherever you are submit a talk wherever you are and if you're an experienced uh conference speaker that's great if you've never done a conference talk before that's also great because you explicitly support first-time speakers and every topic that has to do with audio software development is welcome so whether it's music tech whether it's dsp whether it's game audio whether it's you know vr ar or whatever other topic communication whatever other topic has to do with audio software development your talk is welcome and we would very much encourage you to submit a talk um yeah so i'm looking forward to that and uh with that i'll hand over back to josh who's going to introduce our first guest tonight yes before i introduce gerhard i just wanted to say a little bit more about adc i think adc is a really valuable experience if you're just getting started in audio development and really no matter where you may be in your audio development journey so it has a little bit of something for everybody and i know i say this every month when we talk about adc but it's been one of the most valuable experiences for me when i first started getting into audio development it was it was my first time really being around people who are actively in the industry so i hope for people that are thinking about joining or thinking about submitting a talk i really hope that you uh that you choose to say yes and and join us and if you can and uh if circumstances um work out that we'll be able to all meet in london for that and um yes so adc please come and uh come and hang out with us and with that i will uh i will introduce our uh first speaker or we're going to have a q a with uh gerhardt who is the ceo and co-founder of ableton and um and gerhardt is a person who has been um i would i would say revolutionary and very influential um on me and uh the the way that i tried to run the audio programmer and uh and i think that he has been influential as well and a positive influence for many people within the industry and i'm very privileged uh to have him here so welcome gerhard thank you for joining us today thank you for having me i'm uh excited to be here thank you very much uh i think a great place for us to to start would be for us to just discuss your beginnings how you got into music tech how uh how ableton started and how those first ideas formed could you tell us a little bit about that yeah i mean for me it's been always i think more about you know personally more about making instruments rather than making music somehow i think that's maybe more the engineering gene or something but i was lucky to be drawn into actual music making for real and quite intensely during the 90s that's after the wall came down in berlin and there was like ample opportunity for really everybody to do kind of anything they felt they wanted to do including like setting up a venue a club to play and um you know do do as you fail fit and so we we uh were lucky to be i guess thrown into this time and place and to have like that kind of liberty to play and and explore music and uh to not have a ton of of pressure in terms of you know career and so on but to essentially approach the whole thing from a completely naive place as in so this uh this thing electronic music let's do it and we were completely um un i think unblessed with uh deeper knowledge and quite sort of gang-how about it and you know made music and somehow got more into the process and uh introspecting on the process of how we did it and realized that a lot of what we were doing wasn't really well i guess matching the kinds of tools of the trade you know at the time that's basically pro tools that's what you use on a computer and uh we felt that somehow this paradigm that's implemented in like the traditional um dw uh is very close to well unsurprisingly you know the traditional studio so it's tape and mixed sports and so on and somehow that didn't have so much to do with how we happened to make music which was much more i guess improv improvisatory or jamming and essentially making the music while you listen to it and sometimes with an audience next to you and sometimes not but i think that whole process lent itself to a different kind of tool and so we ended up making these tools in max and we programmed our own way out of it so to say but um found traction like some people were curious like asking what are you doing there how do you do this and so it kind of became apparent that there was maybe more interest in this kind of way of making music and the tools that would be needed for it and i think then that kind of led automatically into becoming more interested in making a tour that has a more widespread audience perhaps and i think as so often a lot of a lot of what happens in life is accidental and it's typically about who you meet so i think for us a lot changed when uh i met band who is my co-founder who is a very straight up software engineer not from the music not from a music background but very excited about music and it was with band that i guess the whole idea of you know making a real serious software program became a more tangible reality and then we kind of clicked and decided to try this and you know venture into something new and you know we got a little government government grant to start and could start and one step led to another but so the genesis of it really is around a very personal need that we found in making music and then the kind of coincidence of other people also needing something like that and i think that's a common pattern that many many of you would have encountered too you start making something that you actually need and that's your motivation amazing and there are so many there are so many threads that i could go off on that one one thing that i wanted to step back to was talking about the situation in berlin with the fall of the wall and uh some of the way that you described it really made me think of new york city in the early 80s with with hip-hop and how there was maybe some social and political tension that was happening and that that caused some type of uh creative um creative about abundance uh that that sprouted into something new do you think that um that there's that there's something that's that's in that that these uh that these social tensions and political tensions uh really um really spark that creativity into into new realms yeah i guess that can happen i don't know if there's any like uh sort of deeper and and uh definite logic to it i can say for the one like serious revolution that i experienced in my lifetime what i can say is i think the vacuum that followed it was powerful it's not like you know people stage a revolution and then they have a plan that they pull out of the draw on what's going to come next and i think what we benefited from during this time after the wall fill with a lot of this like okay so so what now you know it's like a moment of limbo also the money doesn't know what to do with the situation yet the in the beginning berlin was quite poor and remained poor for quite a while and it wasn't like oh now capitalism is going to embrace this united reunited country and it's all going to be a party there was a lot of confusion and it took a lot of time like many years a decade basically for the money to figure out what to do about all of this and during the time there was a lot of vacancy and a lot of unclarity and you know a lot of unattended property also you could literally open up a club by just taking up the space and and doing it and maybe you would be thrown out a couple weeks later but never mind you open another one that was very much a playground really and it seems like you maybe you were looking to capture some of that essence perhaps in in in live when uh some of that unpredictability and some of that playgrounds and um and spontaneity that may be uh that may have been lacking in other uh daws at the time would you would you say that that was where you were looking to go with that i mean it's not like an intention that uh you know is foundational to what actually happened but i think in you know a post-hoc kind of way to way of explaining what happened it makes a lot of sense i mean it's also a characteristic time at least as we were concerned of utter disinterest in anything like you know doing doing the thing that you're supposed to do for example as a young person you know venture into a career or make some money or like all of these things were kind of completely irrelevant nobody nobody cared also in my circular friends i didn't know anybody who ever talked about money it was just some somehow you you made you made the ends meet and it always worked in some way with you know a little job here there and i have to say i was very privileged because i was on univer at university and at university i had a really nice job in the electronic music studio which existed but and take that i mean this is a technical university and they have an electronic music studio they still do that's berlin it's amazing we had like an incredible situation to be creative and explore so once you got your grant and you agreed to start this company one question that i've always thought about is expansion so have you had you ever run a business before had you how did you how did you learn i imagine there was a lot of on-the-job training there we had no bloody idea about business at all and i mean in many ways i still don't i can't read a balance sheet i'm totally dependent on people with economic expertise i think you learn on the job for sure it's crucial somehow in the beginning to find the right people who who mastered it and i think we were just really eminently lucky after band and i got together and we we found it it was very clear that we needed somebody who has economic expertise and we set out to find someone and found a friend basically jan and with jan started i guess the proper company as a economic entity you know with seeking investment and closing around et cetera and it became from there on like a real i guess workplace so that's essential it's something that i've always found a complimentary a need for a complementary competence that i know i don't have amazing and as you were starting the company and as you were starting to hire more people uh one thing that i think about when i think of ableton is a company that seems to be very in tune with a higher sense of purpose and values and responsibility is that something that you really thought about from the outset and how what were some ways that you were able to if so what were some ways that you look to instill that within the company from the very start i think um i i'll be careful in claiming a lot there i think again a lot comes from the blissful naivete and how we approach the whole thing and as i said earlier it was never about you know we we we will conquer our market like that whole paradigm was completely outside our scope of discussion i think it was always about music so we have this we've maybe we found a thing that actually works and it's it's inspiring to other people let's go there and let's explore and dig deeper and you know fail and try again and it was always about the actual thing that we do and the people that it actually serves so i think that came right from the beginning and maybe that ethos that i described earlier that we grew up in simply and i think it's a result of like a great place of privilege i should say and i think then furthermore i think we were incredibly lucky in how we how we were able to see the company grow and succeed to the point that it is now and i think that all confirms a sense of wow we have you know a great responsibility now we have a lot of people who look at us and who you know we should have we should have good answers for what they ask um we should have um we should we should live up to to this like big responsibility so this is a big part of our everyday conversation you know and it's difficult to it's difficult to even set clear boundaries to you know where does politics stop and what does the company begin these boundaries are not easy to maintain i mean in this day and age for sure they're not and well there's a lot of um i guess stance to be taken and we we try to you know to do the right thing basically yeah how do you when you're because ableton has over 400 employees now right and how do you keep pulse the pulse of uh the company with so many people working there how do you keep how do you keep a general direction and how are you able to um see if things are maybe going off course and course correct those things it's been very difficult during the pandemic i should say i think a lot of what you actually sense is between the lines and it's at the water cooler and it's even by just i realized even by just observing people walk by there's a deep communication going on in some way and it tells you something about where's this person at what's that what's that state of mind right now and all of this i think happens without a lot of conscious involvement i think a lot of this communication happens somehow uh subconsciously so that's been missing and i think we've we've also uh seen some consequences of that deficit you know like a typical kind of thing that then happens in and as a consequence is that a conflict blows up all of a sudden and one corner of a team where you never thought there might be one and it's just i think a result of this i guess lack of transparency that's been going on but i mean what you are raising that is a big issue there's among 500 people there's a lot going on and you cannot hope to know all of it and it's it's very uh it's a very special kind of challenge to still kind of tap the streams of information that are there it's necessary because these are essentially your sensors these are your eyes and ears and and there's all the information that you can possibly want available right there in front of you just taught you how do you get it how do you filter it how do you ask for it sometimes people are very forthcoming and sometimes they feel shy or they don't want to come out and say what they have to say even so it's so important so it's very tricky becomes naturally more tricky with growth so we do have a few quick questions from the um chat um about kind of the early days of ableton philippe gouda is asking is it true that the first version of life was written in max or is it just a legend it's a legend so the i think what this refers to is there was a patch called the px18 for some reason that robert henke put together and i think in some way it pioneered what became session view in life so the idea was okay we're going to play a show and we want to bring some materials unlike the shows before we didn't even bring materials we made them on the spot so this one was quite advanced to like hey will we prepare this time and now we need something that will let us perform with this material that we brought in a way that's not like playing back tape and so we came up with this with this idea of like these reconfigurable blocks clips basically but um if you look at the patch it doesn't look anything like it would be live they had somehow a little bit of a conceptual uh i guess it was a bit of a conceptual precursor to it right can i ask another quick question from the chat which is a little bit of topic but kind of touches on these early days in berlin i guess the question is whether you have any favorite early german edm tracks that still inspire you today kind of from that time okay so german actually i mean you know the the specific sub-community within the early berlin electronic music scene that i would say we grew up in was the basic channel community so that that's the kind of music that was was the reference for us and mark mark anesthetis and moritz and oswald basically the folks who did this music were our heroes total heroes and we were lucky to just know them through chance encounter and mutual friends and they were incredibly important and also supportive so they you know i'm so lucky that i knew these people and that they took the time to talk to us you know and and uh deal with us and put our records out under on a little label that they made for people like us isn't it incredible these were so important people and still are still do amazing stuff amazing um one question that i get asked quite often is about hiring so some people ask a lot of questions about how to get hired at a place like ableton uh we had uh spencer rudnick on the channel last year and they said that they didn't actually know c plus plus when they were hired for the live team and people hear stories like that and they wonder well what is it that makes an a person right for ableton and i'm wondering if i could ask you that i'm not sure i'm in a great place to answer that to be honest because it really depends on the kind of context that you know that the person is looking for so okay now this is a meetup for folks in audio programming and i think when it comes to basically everything around engineering and perhaps ux and design i think there's a few things that i can maybe shut it up generalizable i think nowadays teams uh looking much more beyond the actual uh how do you call it i guess the heart competency or something of course they will make darn sure that they actually hire the competency that they need but they will not stop there and then there's a lot of car taken for the other factors that play such a huge huge role in making this work work in light of the fact that it's always in some kind of group constellation there's really not a lot of things you can do entirely alone in ableton sometimes that's also been a problem that's been recognized because it can be stressful for people to not be left alone and do their thing it's a nut that we maybe can crack at a point but as it stands most of the work is happening in a team context and it's really important that you have you know a person who's i guess bringing the kinds of non-coding uh competencies that that calls for and it can be very different you know this could be also entirely dependent on what where that team actually is you know sometimes the team may say you know we need somebody who is very much unlike us in here because we are too homogeneous in this group and nowadays people have a lot of awareness of this kind of often sort of invisible limitation that they that they live it with and want to break through and you know open up to something new and some kind of different influence and then that can look many ways you know it could be you know looking for someone who has a different type of character or a different type of background or something and then all these factors then play into into the actual recruiting and how important do you think that it is to have that um different different viewpoints within within your company because i've seen so many times as a person who does recruiting for several for several audio music tech companies the profile is typically the same c plus plus five plus years you know experience with audio development frameworks um how do you how important is that in terms of the the ethos of your company and how does that manifest itself beyond just how well you can code i know that might be a very difficult question to answer in a couple words yeah it's it is indeed a difficult question to answer in a few words i think um maybe one aspect of this would be i think one has to watch out for like this these uh how do you call them folklore or something like about about the how many years of c plus plus somebody needs to have under their belt presumably maybe that's all just not true you know like as soon as spencer mentioned it didn't seem for some people that we know quite well to be that kind of limitation in fact it wasn't so hard for them to on board to i mean a different programming language it's just that it's only that it's a different programming language it's not a holy grail and then i i always felt there's a lot of emphasis on the these kinds of formalities when really what you're communicating in writing a computer program isn't in as i see it isn't so much an intention towards a computer you communicate an intention towards another human that's the person who comes after you or who wants to look at what you've done and make sense of it and that's the hard part so how can you be clear how can you state your intention as clearly as possible and that's i don't think so much uh dependent on whatever programming language is a play the the types of these types of uh difficulties of how to express yourself clearly are also found in you know written text i'll say if somebody is a fantastic writer perhaps they also somehow genetically disposed to be great programmers i don't know but i often found the focus on the machine is somehow [Music] wrong we should be focusing on the programming as a human inaction so it sounds like there's a common connection between what you may what your team may look for in engineers and what you look for as a company which is connection to other people the importance of teamwork the importance of seeking a connection in in other humans and uh and facilitating expression would that would that be fair to say it's uh i guess it's a quite a sweeping uh generalization but i buy in yeah i think there's something there i mean ultimately every organization is some kind of i guess miracle of communication and that that makes the whole i guess the whole topic of bringing people into an organization and somehow setting it up so that people can together make something awesome happen uh very much i guess about communication the ability to communicate the desire to communicate you know the the openness the the even this maybe the habitus the the assumptions that go into the communication is so so fundamentally important i'm so sorry can i just i think i have a question from the chat which i think works really well with this theme of um communication within the company uh that we were just talking about so um on the youtube chat ali somay asks were there actually any positive consequences for the whole company going remote obviously because of what we're going through right now definitely some people just totally loved it but other people really hated it uh from the depths of their gods it again is very a very different situation for you know folks who just moved from uh you know some different continent to berlin into a job that kind of is virtual and that's a terrible situation and for other people typically those who have been there for a while and who are you know have an established life somehow it's often been a dream like they rub their eyes and they can't believe how wonderful this is now and then sometimes the uh again some people found the communication easier this way they found it more effective more efficient more fun and others not it's it's very interesting do you think that uh heading into the future where do you where do you think companies like like yourselves are are heading uh is it going to be a hybrid between a remote and in-office approach is that where you're looking at going because it sounds like you've expressed a lot of value in being able to have those water cooler talks and being able to pass people in hallways yet there are definite advantage to remote working as well what are your thoughts on that yeah i think it would be a hybrid and i think the exact shape and the gestalt of this is something we have to figure out we haven't figured out i mean this is a it's a total work in progress like it is for everybody pretty much and i think will you know it will be a long learning process but for sure you know there's uh there's a great uh somehow a great uh juxtaposition of what was close became a little more far apart but what was far apart became much closer like for example our colleagues from cycling 74 who have always been working in a distributed manner have been part of our all hands meetings and it's wonderful and it's like kind of these boundaries became less of an issue so we welcome it very much amazing and do you do you have any advice that you would like to give for anybody who's seeking to start up their own company there are several people watching who i'm sure already run their own independent company or looking to start as independent plug-in developers would you have any advice that you could pass on to them any helpful hints there's many topics uh involved of course i think maybe i would be i would be trying to convey something that's important from my own uh reflection but again i can't know how generalizable it is to other people i think what i have somehow understood much later in the game is that there's a specific uh role to be understood as a founder which is kind of a vulnerable role where you are maybe a little bit like an artist a musician in complete charge of the the big question of why why are we doing all of this and this is nothing that i think in honest reality anybody ever really knows it's something that you find out and become ever better at knowing what it is that actually motif motivates you and what your actual idea is about you never know this completely well and then of course over time it also changes a little bit as you learn and as you grow and this is a very delicate vulnerable place that i think requires the founder or founders to be how do i say protective about in the right way so for example i have in the beginnings often been naive in putting a big responsibility on somebody who just came through the door and telling them hey you figure this out i'm sure you know and then then maybe that doesn't happen in the way you thought and i feel in hindsight i should have been much less confused about what it means to involve people in the right way and get their participation and even you know venture into a more democratic way of running an organization and the sense of authorship that you need and that is i think unique and special and something you have to be i guess uh treating with great care you are as a founder you're an author you write the book and if you write the book or if you write the symphony or whatever whatever it is that you're writing you will be always careful in when do you play the music to somebody else to listen to when do you give somebody the book the script to get feedback these are delicate things to be uh i guess yeah you have to you have to deal with these things with care it's like you have to be a bit watchful of your own psyche in this so i think i'm sorry go ahead no please go ahead i was i was going to ask um it sounds like a very big responsibility and uh one question that i had was about work life balance for you uh do you find yourself to be a person that sees the importance of that and being a nine to five person or do you feel that as a ceo that is your responsibility to be the first in the door and the last out the door do you work on weekends how do you how do you balance that for yourself now i think in the in the beginnings uh it was a situation like uh work was live and there was nothing else really i think this is also okay you can do that for a couple years if you are young i guess and healthy or something so there's a pocket for this in life somehow but then you have to leave the pocket and i think for me it's been it's been a decision really what uh coincided with having a child and it was very clear for me that i need to i want to be around and i limited my work times actually so i'm i'm not even full time these days i work 30 2 hours it's not always it's not always actually coming around to that so i'm not totally strict but i try you know and i have two afternoons in the week with my son it's not the weekend and i have a weekend too and i'll i'll make damn sure that that's how it continues to be and i will also i will also support everyone in my company who wants to take their path and just trust that it would be better for them and consequently better for everton amazing um and do you find um do you who do you look for for inspirations to grow as a ceo yourself do you read books do you do you look to certain resources to to grow and to keep expanding as a ceo and and if so where do you look too oh yes a lot a lot of reading indeed and the reading on men's and all over the place i'm a bit of a i guess um all over the place reader of philosophy but also i can see a lot of parallels with what's going on in politics in greater society with what's going on inside an organization and as mentioned before like these boundaries are really hard to maintain these days people are highly politicized so they they bring this in no matter what and i think it also is a i don't believe in keeping it out all the way it doesn't make sense i think organizations are part of societies and they have to play a role beyond their actual purpose like you know ours has a lot to do with music and culture and empowerment of creative people but beyond that we are also an organization where people go to work every day and that's part of the fabric of society and politics play into it and we play into the politics so i do a lot of reading of politics too these days and as for developing you know competencies as a ceo etc a lot of it comes down to coaching and i have been very lucky with having had great coaches all along and i also would advise everybody to to use that kind of resource amazing i have one more question then i'll turn it over to teamer because i know that he'll have some more questions as well in um in terms of politics within the workplace do you how do you handle that do you let that manifest itself autonomously and let that settle out organically or do you feel the need to step in and help manage that how do you how do you work with that it's a it's a dance i think uh neither i don't believe in either extreme so there are some companies that will say look our purpose is as follows and everything else is not our purpose and therefore to be kept out of the workplace i think that's one extreme that i find difficult and the other extreme would be whatever comes up whatever you know activism people bring in let them have it and let's see whatever happens as a consequence and i think that's wrong too and i think the how you go how you are on that side is that you can easily get to a place where people actually walk out with heart and i feel some responsibility for the well-being of people and you have to you have to stay on top of again the communication there and it's a it's delicate what's the kind of intervention from the top that makes sense what we are now trying to do is to actually learn as an organization the high art of dialogue and it's a you know it's like a thing we try to learn how to dialogue and with like it's a group setting and it's luckily you can read read up a lot about it it's something that people have tried for a long time and how can you you know how can you have as a as a group potentially large group a kind of exchange that goes beyond the exchange of arguments for the sake of winning the argument but that goes towards putting our brains together so that we can think better and that we can think in a way that we couldn't think alone and i can just say wherever i see that work that's the magic you know that's what that's why you have organizations actually so i think whatever people bring in from the outside if you can somehow make it part of a dialogue that makes everybody walk out smarter it's great but that's a challenge in itself like it's definitely nothing that i would claim we have cracked or solved but it's something we are entirely committed to learning to get really really good at and then limit is an infinite challenge it's an infinite challenge but i think also it's entirely in line with our purpose i mean mind you we are all about empowering people to be creative and to like develop blossom as humans and if you think about that how do you not make that political how how can you keep politics out of that is it possible so of course you can you could try to you know shut out the realities of of people who have been suffering or have been uh you know oppressed but you will also block out an important i guess source of energy for everybody who's when dealing with this can come up smarter and stronger so it's it's important to go there and deal with it sounds like it comes right back to the beginning which is that sometimes it's the tension and sometimes it's the it's that need to come out and to express that causes the biggest burst of creativity and the biggest burst of synergy in people not the not trying to dampen down uh the emotions and the uh trying to keep everything neat and uh and outside of the workplace that is true and i think it's uh a bit of a an ask on everybody to also just endure a little bit of the discomfort that comes with it and it the discomfort looks really different for different people who are involved but it's i think a bit like hey can we all try to be cool and and not get like totally excited about this now you know maybe resist the temptations to put whatever crosses our mind right now into the slack you know and i mean basically withhold from all the kinds of behaviors that uh have like terrible impact on on the social sphere and greater society and all that this stuff is happening within an organization just this way and it's a great great training ground like you know how do you contain your impulse how can you be staying moderate and reasonable and productive and constructive and how can you listen first and then be heard all of these things so i think everybody is called to up their game when it comes to that communication fantastic teamer uh i'm sure we have some more questions over to you do we do we have some more that you'd like to ask uh we have a couple more questions on the chat but i would also like to ask a question myself actually if i may so um first of all i actually also grew up in berlin in the 90s so all of the stuff that you said in the beginning kind of resonates with me that's that's really cool i actually uh never worked at ableton i worked kind of at the other uh big berlin music tech company but um i did meet a lot of people from from ableton uh i like at conferences or at meetups so i actually had friends whom i knew from before and later they joined ableton so i met quite a few abletonians uh you know both privately and professionally and i noticed something there which is um kind of from the outside view of just like meeting those people it seems to me that how welcoming basically the culture seems to be at ableton towards people from kind of underrepresented groups whether it's gender whether it's sexual orientation or things like that looks like you have actually successfully managed to grow a team which is kind of noticeably more diverse than i would say like the average music tech company and kind of even like embracing this diversity kind of as a core part of your culture and i know from my own experience that like growing a diverse team um can be very very difficult and and so i'm just really curious like how did you do it i think first things first i don't think we are anywhere where we need to be and want to be i think despite despite a lot of progress that's been made in the last so many years it still doesn't i mean in particular around engineering etc of disciplines it still doesn't look anywhere near as diverse as you would hope so that's uh it's not a done deal by any stretch and i think to your question specifically i think we particularly oh pioneers you know there's been like there's been a few people who had incredible courage to step into these roles as the first woman or as you know whatever the first the first gay person or i mean somebody's always first and they and they i guess pave the ground that's there's something there that is very difficult to uh overestimate what that kind of courage enables and then it's sometimes been like these bridge builders really like you have you just happen to find someone who is naturally able to connect like a different i guess background or different demographic that they represent with what's already there in like some kind of way that they can still put up with the pain because the pain is done it must be enormous and they endure and then at some point it changes the rest changes the breast wakes up a little bit too to that new normality and then that new normality seems to become you know an asset that people embrace and that they want more of and then and then it snowballs so we i think we owe much i would say we owe much more to those pioneers than you know the leaders the higher ups who you know made it happen that's not how it is i think we we in many cases followed the pioneers and i'm i'm very grateful to the people who took those pains now meanwhile there's a lot more going on that's you know educated informed and i guess more formalized around how to how to indeed grow diversity on a team and make teams more inclusive and so on i think we've also gotten better with i guess catching up with what the world knows about this because it's of course not a specific challenge to us it's a very common challenge and again i will not claim anything like we are there it's a long long long journey thank you very much gerhard uh are there some more questions from from the chat teamer yeah there are quite a few i don't think we have time for all of them so i'm just gonna pick out um pick out some so there's one um which kind of completely changes gears now and talks about technology again uh but i find that actually quite interesting so what does ableton think about uh the ipad um or like you know mobile platforms in general are we going to see ever something like ableton live for the ipad or something like that yeah you know we have like this uh kind of law that we don't talk about stuff that's coming out in the future and it's basically a result of learning it the hard way because we've some we've sometimes announced things and that not and then they didn't happen for one reason or another and it always felt like a bad taste in the mouth so we we don't do this anymore and therefore i'll have to pass that question i can't really go there in any in any like constructive way yeah thank you um i actually this is kind of the answer i expected but there are a couple more questions like that so now i can just skip all of them i'm really sorry i know this is boring but you know uh of course people want to know i guess they like your software um but yeah that's i totally understandable managing expectations yeah um actually one other question um is kind of about uh kind of what you kind of do day to day like what does a normal day look like for you is it mostly like meetings or is it mostly like other kind of stuff like most of the days meetings indeed zoom nowadays and um it's i'd say like a mix perhaps half of the meetings uh one to one i sometimes work for like even a stretch of you know three or four hours with just a single person on something together and i love this very much like i'm like i have been making music with robert henke one to one i can now work with other people and on a thing one to one it's like this creative dialogue that i'm really enjoying a ton and then we sometimes do this with the executive team so it's like five people where we like reserve like a block of hours to get into a topic into like this thinking with a few brains connected as one mode and that too when it when it works it's magical i think it's it's not always you can't always make it happen it's uh it's something that also isn't not every topic is conducive to that but that's a large part of my work and some of what i enjoy the the most the most profoundly you know and then there's a lot of writing i write a lot of uh communication but also a lot of like basically strategy stuff you know uh you write a document and then you get feedback on it and then you process the feedback and then and then you get a you get a communication from someone else like a proposal i love them in writing and then you think through it and you collect your thoughts and then you write your thoughts down and it's a bit like 19th century letter writing communication and i think somehow the pandemic has actually furthered that where a lot more of these types of interactions happen now in writing and i like it because it gives me more space to think and i'm i don't have to like have the ingenious response to the this complex topic on the spot i can mull it over a little bit thank you gerhard um i do have one last question for you um so you know it feels to me that sometimes the music tech industry is a little bit conservative in the sense that we have this paradigm of you know doors and plugins and it's been pretty much the same since the 90s you know but my question to you is what do you think of kind of new and exciting developments in music tech something some new direction that's coming from not maybe necessarily ableton but kind of elsewhere in the industry is there any particular kind of new development in music tech that you find like particularly exciting or particularly inspiring kind of going into the future i really find it difficult to point at like the one thing that's been happening lately that's like that's going to change everything you know that's the new paradigm or some some such not so easy for me to [Music] to single anything like that out i mean but there's a ton of exciting stuff everywhere it just feels like more on an equal ground so yeah i would tell you you know if i felt artificial intelligence is where it's happening now and that's the only place to look and that's i would tell you but i don't see it that way i think exciting stuff is happening in you know in a number of realms thank you yeah we do have quite a few um more questions on the chat but we just kind of don't really have time to ask all of them so i want to apologize to everyone who's um following us on the youtube chat and asking questions that we didn't quite have time for all of them um but yeah i hope we could ask enough of them and thank you so much gerhard for uh patiently uh answering all of these questions very very insightful been a total pleasure and i uh hope i didn't ramble on so much so we could have gotten two more of the questions but now timo i have a question for you you have to tell me what's on that poster back there oh yes so it's actually um i am not actually at home i normally live in london uk but right now i'm in germany visiting family and this is actually my niece's room she's 13 and she is this like massive star wars fan so she has this um like uh star wars themed wallpaper here and i can actually even switch on this like weird like red light here and there's other kind of star wars stuff going on it's actually funny because i then noticed that josh also has a lot of star wars stuff going on there in his room and actually our next guests also do have some star wars stuff going on there so it seems that we have a theme here tonight you know yeah absolutely star wars like a tie fighter up there and like a mandalorian helmet yeah yeah r2d2 star wars was a very big part of my youth uh yeah i love star wars what a fantastic story um yes thank you very much gerhard for your for your uh for your time and um yeah what a privilege this is uh it's been very insightful for me and i hope it's been insightful for people that have been watching as well and um thank you thank you once again my pleasure great um yes just wanted to uh give a quick reminder as well once again about the audio developer conference there's less than one month to be able to submit your talks if you wish to speak and once again you don't have to be the most experienced seasoned veteran uh in order to submit a talk for the audio developer conference uh teamer where where do they submit talks right so you can go to the adc website which is audio dot dev um and yeah you go there you find all the information there the dates of the conference then you click on submit the talk and then you have all the information about how to submit a talk and until when oh it's actually called call for papers if you click on that then you get there and yeah the call for papers is open until um second of august and uh one more thing i wanted to actually add to this is um if you maybe don't i'm not sure if you want to give conference talks yourself or um you're not sure if that's kind of your thing but you have a colleague or a friend who you think would be really great as a speaker you can also give them a little bit of a nudge as well encouragement is uh such a great thing within this industry and uh and i really hope that if you know somebody who's doing amazing work within uh within the industry or just doing it as a side project or an open source project that you encourage that person to submit a talk and if they don't feel confident enough to submit for adc they can also submit for one of these audio programmer meetups so once again you have them every month right so can you tell us how you do that yeah this is a great training ground for people who are looking to get into the industry it could be something interesting that you that you've made in university and you just want to show other people please don't feel that it needs to be the most impressive groundbreaking pioneering um invention and you can submit for the talk at the for the adc audio.dev or for the meet up at the audioprogrammer.com forward slash submit and with that i think it's a great time for us to introduce our next speakers all right so very excited to introduce our next speakers um tonight we have uh sam tarakagian and alex van gaals so sam is a developer at psyching 74 and um alex is a composer and generative video artist at cycling 74 and they're calling us today from brooklyn new york and we're really delighted to have you tonight um how are you doing over there hey we're doing great um thanks so much for inviting us josh and timor it's really great to finally get to participate in one of these and um thank you gerhart for that interview about it's so cool to get to hear about the early days at ableton and how you've cultivated culture there and just really really exciting to get to hear about all of that um inspiring yeah really inspiring um and some of the stuff you were you were talking about kind of early in that um in the story of ableton and in particular making something that's solved a problem or scratched an itch that you you know had yourself it really kind of segues well and so what um we wanted to come and talk about which is this thing that uh alex and i have been working on kind of through the the pandemic through quarantine this um this max for live device in this language for rhythms called uh called nesta it almost describes everything we've ever done together which is what is the problem what is the thing that we're not able to do what is the pain point and then in solving for that question ourselves maybe come up with something that's interesting for other people yeah exactly exactly um so should we just get into it all right let's go okay well with that let's uh share our screen and our sound so welcome to nest up a language for musical rhythms and we'll uh we'll play for you a little bit of music made with nest up yeah a little taste [Music] [Music] [Music] do [Music] [Music] so hello i'm alex van gils and i'm a sam tarrick agent as we mentioned before hopefully we're sitting on the correct sides of the screen and our work yeah so we're both uh kind of working at this well-worn territory at this point this intersection of art and technology um myself kind of more on the technology side and with some interest in uh art as well and i think you're probably more on the other end of the spectrum i think that that sounds about right um sometimes uh yeah i'm a composer i make art with with video with code and i would say that uh sometimes i even write things without a computer this is an example of that [Music] so and um i've been working for a number of years almost a decade at this point which is kind of crazy to think about but i'm working for a long time for cycling 74 the company that makes max msp some of you might be familiar with when i first started there i was working on an ipad interface for macs called mira a few years later worked on an interface for bridges max and node called nodescript lets you run node applications from macs and on this side i've also worked on some other art tech projects that i think are interesting for example this project from a few years ago called wiki sonnet that would find blocks of text on wikipedia that happened to be in iambic pentameter just by chance and then arrange them into elizabethan sonnets uh automatically so a little bit of our little bit of tech where can they find uh wikison well you can't anymore unfortunately because the server was really expensive to run but um you know it it exists imagine how cool that would have been yeah imagine how cool that would have been yeah uh so we work out of this space in brooklyn that we call cute lab our little you can see we're in the back corner here so i don't know how well anyway we're in that space right now um that's uh our co-worker david and you can see our gamecube as well but that's been replaced by a switch at this point don't worry yeah don't worry we're not living in the stone age like cavemen on our gamecube so like i mentioned cute lab is located in beautiful gowanus brooklyn you're looking at the scenic gowanus canal that you you know so many movies and songs written about the gowanus canal just the the height of uh um you know kind of new york tourism it's um also a super fun site uh so it's just one of the most contaminated places in the country but it has since gotten a lot cleaner they're actually doing a good job of cleaning up the the gowanus canal we hope that they don't clean it up too much we think maybe some of the ideas actually come from the the waste yeah there's like a there's kind of the charm when you see the oil glistening on it in the morning there's something there's something to it that's right um so alex and i have also been working together for a number for years on uh creative projects together and recently we've been working uh with our friend marina who's a violinist uh as part of a act called um called x bucket this is a little excerpt from one of our uh live performances mourinho's on violin alex is doing live audio processing in ableton and the visuals here are all done in jitter [Music] um here's another small excerpt this is actually in cute lab you can imagine before in the before times we actually had concerts and workshops here [Music] and finally um during the the pandemic we uh we did start to work on some remote performance projects here's an example of something we did from our various apartments and sam seems to have something stuck onto his face [Music] [Music] ultimately inexorably it has led to this project that we call nest up and uh that's what we'll be talking about for the rest of the time that we have yeah it's just kind of the latest thing that alex and i've been working on together so nest up the name nest up comes from a contraction of uh nested tuplets which is this particular rhythmic structure um imagine you a tuple is just a division of musical time into some number of um note events i guess so you can imagine a triplet quintuplet um quad what do you call just four quadruplets just quartet sure okay well anyway just groups of notes um and the idea with a nested tuplet it's a semi-esoteric rhythmic structure where within that division into notes one of those divisions itself is further subdivided so you can imagine this kind of nested structure it's something that's um we're really it's really fun to play around with and experiment with but in existing uh daws in live for example it's a little bit difficult to um to kind of work with so you could imagine if you wanted to uh create a quintuplet and then place a triplet inside of that quintuplet you could imagine a workflow like this where you put into your your clip the notes that you want in fact actually you need to put one more so that you get this handle that allows you to drag it to two lives credit it is at least possible to get off the grid in this in this precise way you add another um note now these we're going to drag into the space of the final two notes of the quintuplet to place a triplet there so now we have accomplished our triplet inside of the last two notes of the quintuplet and it will sound a little something like this so we wanted to create a different workflow maybe more experimental or expressive workflow where you could quickly say i want a quintuplet and then on the fourth note of that quintuplet stretching for two beats i want to place three notes and so that's how the dynasta language and interface works yeah and as for you know why we wanted to do this in the first place um it's basically because we think these rhythms are interesting um for me a lot of the stuff that i work on i'm just inspired by i i find not being very good at making or playing music very inspiring because it means that i have to build software to get around that kind of personal limitation and this kind of tool would let us kind of build these rhythms and experiment with them without needing to become expert drummers um you know uh and just to prove kind of how cool these rhythms are there's a really really great instagram account called wtf grooves um this guy door who's just a virtuoso playing with these kind of rhythms um does original compositions and transcriptions and here's a cool example of something that we found in this channel that we were really inspired by can't hear it so if you so if you check out this rhythm you can see that he's placed tuplets inside of other chocolates and also the meter itself is fragmentary it's not like an entire 2 4 meter or 3 4 meter it's some fragmentary piece of a meter we were inspired by this and wanted to see how could the creation of grooves like this be easy flexible fun yeah and just to take it even further like not only these rhythms sound interesting but also they just happen to arise all the time in speech for example so um this is uh uh it might be familiar to people help make the food and keep track of the sales now you need houses and now there's more people and they invent things which makes things better and more people come and there's more people to make more things for more people and now there's business money laws power so and it you can hear how just the natural prosody the way bill wert speaks has these kind of shifts in rhythm and these kind of um uneven distribution of nodes it's it's um you can tell that in order to really express his natural rhythmic flow you need to get off the grid and expand experiment with rhythms like this so we we really look to these as kind of um wanted to be able to do this kind of thing this was the goal and in fact these kinds of rhythms with like with nested tuplets with fragmentary meters etc they're all over the world of music you find them in armenian bulk rhythms you find them in the new complexity music you find them all over and uh so it's not just that we wanted to do something that was strange it's that we wanted to be able to express the musical idea um quickly and experiment with it yeah exactly i think that i think so too yeah yeah so you got a control arrow maybe there we go okay cool so um so that's wtf cruise so why right why make a whole so you might well ask yourself why i make a whole new thing there's already supercollider which is amazing it's already maximusp which is amazing there's already tidal cycles it was amazing no shortage of interfaces or environments that will let you do this kind of thing um we were kind of interested in three i guess particular um trying to design something for three particular uses or with three particular design goals in mind one was a very very flat learning curve we really wanted something that uh would take almost no time to learn super collider maximus p title cycles are very deep um there's quite a lot that you can do we wanted to make something simple purpose-built to this very particular use case another thing we were interested in is this kind of notion of um what we can call adjacency in creative spaces it's kind of like if you've got um a sound that you really like uh in live for example they're by just kind of by turning knobs or moving clips around or changing values in your live set you're adjacent somehow to other things that might be musically interesting and we wanted to set up a similar space but with respect to the kind of rhythmic structures that we've been talking about so i wanted to make a language that put interesting rhythms kind of next to each other in a creative space so to speak and finally we were really interested not in building something from scratch but in building something that would kind of plug into and hook into an existing daw so if you knew live which we both did and both really enjoy using um this would be something that could augment your um your abilities in life without requiring you necessarily to learn a whole new thing from scratch and so out of all that uh nest up was born and this is nestor uh the nest of robot messed up robot mascot which is also a valid nest up expression so you you could parse this as a rhythm right so the kind of um foundational philosophy with nest up it's a bit analogous to live or many daws in the sense that you have um well not clips we call them containers but basically these are all blocks of time that have been cut up and divided in some way and then filled with node events and it's by designing and moving these kind of containers around that you can build these really complex rhythms um so now we'll switch over to live and uh actually we maybe it's worth mentioning even before we switch to live that if you wanted to play with these rhythms there's both a max for live device and an online playground um to kind of listen to what some of these sound like and to experiment with them if you go to nest up.qlab.nyc um there's a yeah an online tool that lets you [Music] try the language and listen to to what these things sound like so um in addition to that though there's also this max live device like i was mentioning um and we'll show kind of some of the big features of the language now so just a quick word on how nest up the max live device works um there's a kind of center window where you parse nest up expressions and when you do those write midi notes to the first clip slot um in the track that nest stuff happens to be in and we we experimented with other ways of doing things and you know picking a particular clip slot to write into and this ended up just feeling the most natural and easy to use um so the way the language works the the like i mentioned the fundamental unit is this container um these square brackets if you just put square brackets in there and push parse that gives you a single container and a single note event because containers are filled by default where's that node it's in there somewhere there it is um so you can that's what onenote sounds like uh so containers can of course also sorry i should say containers can be fixed or flexible by giving putting a number at the beginning of the container that sets the length of the container so containers default having a length one and you can hear that's three times as long now because again a length of three um but you can also put child containers within that container um so if you have a container and you put others in it now this is one parent container with four child containers um each of which has a length of one so right now the parent container has a flexible length so its length is just the sum of all its child lengths but you can also give it a fixed length and then rather than the child containers um determining the size of their parents their size just determines how they share sort of so to speak the space that the parent has already reserved um might sound a bit technical once you play around with it it becomes pretty intuitive hopefully um so they're all evenly distributing that time now but if you gave one a different size say two the first one or something you can see that first one is twice as long you know the whole thing is still three beats long okay so uh this starts to get really interesting when you bring in the notion of subdivisions uh curly braces denote even subdivisions so this is a container of length three divided evenly into five parts so there's your quintuplet and once you've got a container divided like that each one of the individual beats in that quintuplet becomes an index where you can put more containers so for example this is saying at b3 put in another container that's divided into five so now i've got a quintuplet with another quintuplet on the third b and uh if you like you can get arbitrarily complex go in there put another something yeah take take the fourth and fifth beat and make a nut make those into a triplet or something so you can start to build um rhythms so really kind of whatever complexity you you like uh once you've got a container like this one thing that we thought would be interesting to try would be to add this idea of uh rotation to a container so what's the rotation imagine you have a container subdivided into say however many parts um you could imagine kind of setting an offset that pushes the whole rhythm back and then any events that get pushed back past the end get wrapped back around to the beginning so on its own this doesn't sound like much but if you have one beat playing against another beat rotations create a kind of offset that can change the character of the whole rhythm so if you have one straight beat for example and then another nest up expression playing on top of that a rotation lets you shift that b relative to the other i'm sorry are we supposed to um hearing sound coming out of life here because i'm not hearing anything oh i'm so glad that you stopped us yeah is there live is live i know what it is oh yeah of course all right let's try that again so there's the straight feet yes much better okay great now it all makes sense i was wondering hmm why is there no something it would have been a significantly more boring demo yeah that would have there was there was about to be a point where it was really going to be bad all right well i'm glad you catch the quarter now that's same so there's your straight beat and then a little rotation of course changes the whole character um so rounding out some of the language features there so all containers as you probably can tell are full they have events in them by default if you put a single tick after the length of the container um it's oh is it before before the length of the container that makes the container empty um so you can use this to insert rests and um dance to insert rests and if you take a container that's empty and then subdivide it you can put full containers into the kind of slots of that of that empty container so you can even kind of make sort of a step sequencer or a yeah some kind of sequencer like this [Music] and then the last language feature is this notion of a tie so very simply if you've got two adjacent containers you throw an underscore between them the tie will kind of glue the last event of the previous container to the first event of the next container so in this way you can build a note that's you know half of one eighth note and also half of one seventh note um i didn't say that right but it's it is composed of two of these notes uh stuck together so i know it sounds like a lot maybe but that is really literally it that's just about everything that the language can do and we we it's by design uh yeah that's true there's also this i forgot there's one other thing which is containers can have a length and also a scale so if you have a container of some length you can give it a scale that just stretches or contracts the whole thing by some amounts so like here we have the same container back to back um but the second one is going to be two-thirds as long so it has a kind of cool rhythmic quality [Music] um so by design we really so there's no notion of velocity no notion of notes the notion of probability um we kept all that out of the language for now although it'd be fun to think about adding it in the future all that is handled by the max for live device right now because we really wanted to focus just on the rhythms themselves um so with that i mean i feel like it would be cool to talk so so part of the reason that we were really interested in making this in live is because live is such a fun environment to do um live performance in obviously not only because of the the you know features that makes live live but also because of things like um midi uh midi effects that can shape and transform streams of midi um arpeggiators um sequencers this kind of thing and we really want it's having messed up means that we can use it in conjunction with those other things in a really seamless way so alex has gotten i think pretty good at um composing in real time or improvising i should say with messed up so would you would you favor us with a little a little demo let's do a short demo here um so just real quick what i'm doing um is i've got two basically just two tracks set up that are using nest up um uh one is using this granulator synth um from the the max for live uh packs and then this um 606 is just taking um the the midi from the same nest up expressions um and then um using i i really like to play with nest up with these sort of um the the midi effects so it's using random and scale to sort of distribute um the the mini events that come in from nest up uh over the the kit so let's see what we can do here [Music] foreign [Music] [Music] here [Music] [Music] [Music] [Music] [Music] [Music] [Music] [Music] so [Music] boom [Music] [Music] [Music] [Music] so [Music] do [Music] [Music] [Music] [Music] [Music] [Music] [Music] uh so there you go a little flavor the kind of thing you can do so yeah i mean i i don't know about you but i really love how um i love watching you compose that i love watching how um you kind of stack time on top of each of itself you know what i mean like adding more and more to this kind of loop and um achieving these kind of like it's funny because i don't i don't have a hard time feeling the beat in spite of the fact that the rhythm is kind of all over the place i still feel like the the jesus the stretches and contractions sometimes they feel like naturals i think that that's really the discovery for me with nasa as well is that um that these containers they create they help me feel natural about these different sorts of rhythmic configurations in the same way that i think the the wtf groups start to feel natural as you listen to them and enjoy them they don't feel like outside of some normal thing or um yeah yeah it's true yeah um so maybe it would be fun now unless um yeah and take some questions or do you want to jump in i mean i could just kind of go i would love to go and i could talk about the why don't i talk about the language a little bit and then um we'll come back but i'll talk a little bit about how we actually did nesta because i think it's kind of interesting so um the first thing to talk about is the language itself um so that's all there's this really amazing uh javascript it's all written in in javascript um in particular in this library called um why i won't look it up now but it's called neely nearly js and what nearly lets you do is it lets you write uh this is kind of the heart of the whole thing these like 130 lines um this is the nest up language and part of what was really fun about working on this project was getting to write from scratch your own language and it's kind of the thing that like um seemed really daunting to me as a programmer but uh it kind of turns out you know when you go a little bit deeper into it um it's kind of one of the things that people have been and it's like the first thing you do with the computer right is um write a language that it can understand and so the the tools for building this kind of thing are really really good and really really mature so this is the language um and you can kind of look at it and it almost looks like english in some places but these are basically the rules of what the anesthetic expression is allowed to look like um this is in something called bacchus nar form uh it's this way of defining a language where you have that's just a sequence of production rules so at the top you have the root rule which is just for dealing with nest up expressions and all this says you kind of learn to read this stuff over time it says a nest up expression is either totally empty or it's a list of containers if it is a list of containers well what's a what is a list of containers well a list of containers is a container followed by a smaller list of containers and you can kind of start to see how the whole thing comes together so rules like a container can be either sized or unsized well we have two different production rules for those and you see that sized container for example a size container will have a explicit size whereas an unsized container won't um and then their rules for how to deal with rotations how to deal with these the the range containers index containers on a subdivided container all those rules are kind of here so this is uh one really big meaty piece of the whole nest up thing and i should mention by the way this is all um this part of the project is open source um would chrome be the way to place the again you ever use someone else's computer and you feel like you're in another country um thank you so the uh this part of the project the language itself is open source and if you were really motivated and you wanted to write your own extension to the nest up language you could um you would just come into this repository make whatever extension you wanted and then put that library into the max for live device and you know you have your own dialect of nest up so one thing that i'd i really like to do is make this whole process document a bit better this whole process of how to actually write an extension um in order to make it a bit more a bit in order to kind of expand the scope of what um you're able to do in messed up uh so this is a big part and the other big important part of nest up itself the javascript part is this container class which just defines kind of how you go from this high level grammar to actually putting events into a timeline and nest stuff has a very very simple way of describing events in time you just have events events are on or off and they happen at a particular place in time although one thing that's interesting about nest up is it's very very careful not to use floating point numbers to represent time we only use fractions fractions of integers and that's deliberate that's really important because the kind of very small rounding errors that could pop up if you use floating point numbers to represent um your times would mean that when you actually went wanted to print those midi events to live they might be like off by one tick or something this could be really problematic because it could mean you're now your clip is like one tick too long so you loop the click uh loop the clip and it's slowly getting out of phase for the rest of you so it's just really important to use um rational numbers so an integer over an integer to represent time and only uh actually make that into ticks at the very last step when you go to write midi um i think that's basically and the cool thing about doing this in javascript was that um as i showed we have this online playground for experimenting with the language and then because of the way we did the max for live device we can use the same exact code um to build the device so would you open up the device really quick and i'll just talk about that so the max for live device is kind of interesting um because it's uh actually so there is a text edit object inside of macs but we're not using the textedit object to edit the text this is actually a [Music] web this is actually an instance of um oh this mouse is cool this is actually an instance of jwebs this is a web page embedded in this max or live device so when you what you're looking at here is actually a web view so this is running the same javascript code that runs on the website um and this would be if we one day ever port the thing to a vst or something this will be the really tricky part is figuring out how to embed a web view or writing our own text editor or something that will be the the tricky bit um so the kind of big high-level pieces of this thing there's that there's that web view and whenever you push parse this just sends the stream of midi events out into macs and then there's a object here another javascript uh bit of javascript code this just connects that stream of node events to uh actual events inside of live so one thing that's kind of cool about this is that it's aware of differences between um live 10 and live 11. so if you open this thing in live 10 uh you can kind of see down here there are these lock icons over next to the range and probability and if you open this in live 10 you actually won't see those so those lock icons decide whether the if you do apply some random velocity or some random probability to your notes in live 11 because live 11 supports per note velocity randomization i guess and per no probability um it will actually write to you can have messed up right to your clip um with the that probability attached to the notes so in live 10 you just won't see these and that functionality is not exposed uh so the device looks slightly different with the opening in live 10 or live 11. and of course there's some code here that talks to the uses the live api to figure out whether you're in live 10 or live 11. i won't be able to find it but it's in here somewhere um yeah so the other there's a there's a bunch of stuff here that talks to the live api in a really subtle way so for example once you actually write these notes out to your live clip there's a little button here that lets you so here's the notes in the clip and um there's a button here that will let you clear those notes out and you can see it's turned red because there actually are notes on that in c3 in the c3 pitch lane there are notes but if i change this to like c sharp three or b two or something you see the button goes back to being because there's no notes in that lane so whenever you change this it's actually asking the going out calling out to the live api seeing if there are notes in that lane and then changing the button accordingly and then when you clear it of course there's nothing left there um then the other interesting part of this i guess is this little thing down here the visualizer and the visualizer is written um also in javascript um using the uh where is it where is it where is it using yeah it's this this thing here is the visualizer this is written um using it's a custom it's a max object with a custom javascript interface so the interface is written in javascript as well um so that's basically how this whole object works um i'm trying to think of what else would be useful to say about this um i don't know can you think of something that i'm missing that i should talk about i think this is i think that's a good place maybe to see if people have questions we can go more into kind of how things work um i mean there's a there's a lot you know to explore with like the velocity ranges and the tabs and everything but maybe let's see if they if um people have questions yeah why don't we do that yeah yeah so i actually do have a question immediately um how long did it take you to develop this i don't know i mean we worked on and off on this for because i feel like there were two big spikes pushes yeah yeah i think it's it started you know mid pandemic we sam and i were really good about taking walks together even kind of at the height of lockdown um and i think during those walks we would kind of brainstorm about what our kind of music-making pain points were and this one this actually it started with metric modulation and then worked its way into nested tuplets um but this kind of question about rhythm and and defining rhythm in a more expressive way and then imagining could that be text could that expressive way be text um yeah i think it probably took us about um i think we were probably working on it for a total period of for like i think there was like an eight month window and we were working and then with a big gap in the middle so i would i would estimate like five months of work probably um in just total time yeah yeah and and those were like pretty hardcore periods and we're really working on it a lot of time goes into i just i don't know uh people are at all different levels of um development and for some people this will be obvious but the parts of this project that took the most time were the least interesting parts so there's uh a lot of stuff that tries to work with the uh with lives so if you change the live if you if you change the sorry i have to point this stuff out because like you only notice that it was broken right but if you go into live and you change the zoom level where's the flipping zone yeah yeah yeah right there zoomed oh thank you if you change the zoom you'll notice this text actually zooms in uh but of course that's not text in max right that's text in a web view inside of max so there's actually like a dance that has to happen there to make sure that text zooms in that's like a week two weeks maybe of work just to make that work like the colors or the colors which i'm not even sure will work until a new version of max comes out oh yeah the colors are the dynamic colors are kind of working so that also takes a bunch of time so all the details are kind of where all the time where all the time goes and also there was there was also like i mean the first few months were just figuring out what it what is the actual simplest way to describe these rhythms and we and in order to get there we actually had to go through all of the ways you would traditionally notate these rhythms yeah you know in in western music notation and then say okay where are where are these things actually like traditional kind of hang-ups that we don't need to replicate for our system letting go of those getting simpler and simpler in our minds even of how we would describe these rhythms that itself took several months yeah um it's interesting like really really i'm just going to say that really a really early version of the language looked a lot more like the notation that you see in in stores right that's right yeah when you have the kind of like um a bracket and you have a five colon four describing you know the way how you would put the quintuplet into the group of sixteenth notes um yeah it looked more like that so it was a fun challenge to kind of try to figure out what do you what do you want to import from the existing musical language so that it's accessible to people who are coming from a background in score writing for example um but then also how do you not pull in stuff that you don't need i guess or make your language clunkier than it needs to be um so yeah that was that was a a fun challenge actually tried to try to figure that out and then uh and then we had a a documentation adventure yeah uh just trying to figure out how we would actually communicate all this that we've created you know uh so that other people could possibly use it i think i'd say that's an ongoing adventure documentation is the kind of thing that you learn to enjoy you know yeah eventually i agree eventually you learn to have fun writing markdown documents yeah thank you so much this is so this is mind-blowing and inspiring spa stuff i just want to immediately go go in and play with this you know i'm a big fan of this like polyrhythmic stuff this is like just something fresh something cool you know i want to just play with it so i guess my next question is how can we do that where can we get this thing and play with it like how does this work is this going to be a product or is this like like how you know where can people get this great question so it is a product um we're selling the max for live device you can also go to nestup.qlab.nyc play with this um uh playground and this is a totally fully functional uh nest up this is this is as sam was showing it's actually the same messed up code you can also like find a bunch of presets of different kinds of rhythms different um instrument sounds a cheat sheet with rhythms you know so that you can kind of learn the language through playing with it um and uh you also by the way in this playground uh if you use the the export button you can take your your midi um expressions uh out into your daw of choice um and if you press share you'll actually get um a link that saves the state of the nest up site at that point so you can come back to the expressions you were working on this this site also has a you were just going to go there this site also has a link to the max for live device itself um which is currently available as a pay what you want i think it's yeah uh 29 but but pay what you want yeah um i don't i mean who knows how long that will but for now it's just you know whatever whatever you're comfortable giving is is is great um but yeah it's uh we i think we've had this out for two months maybe three months maybe um and uh yeah i don't know um what the what's next for nesta but um yeah we'll see we'll see this is so cool like i this is really really cool um i'm sure people have lots of questions on the chat josh do you have any anything on that i do uh so first question is from ali and he asks uh are the cells automatable or not great yeah it's on the short list of things we'd like to add in the near future would be that would be so cool right to have a container where instead of setting an explicit um dimension you set a dimension that's like dollar one or something and it's mapped to a dial not yet but you know it would be it's on the short list it's on the short yeah essentially variables yeah exact stuff exactly that's great the answer's not yet i mean there there's the reasons why that's the reasons why that's complicated right because like what happens if you automate a container that has children anyway it's just i agree it would be super cool and it's on the shortlist fantastic there's another question from pocket sounds music asking hearing he says hearing these rhythms makes me want to hear some micro tonal pitch stuff i guess to match the complexity are there any plans to extend this to pitch so also a great question yeah and one that we've um explored um that that is what i often what i do in my performances is um oh yeah great yeah um so in my performance that that's exactly what i do is i i kind of like associate these rhythms with um uh scents that are uh are playing microtunnel uh pitches and and and uh but the question of whether we're actually gonna like add a pitch dimension to the language i think is a really good question i also think it would be a really interesting thing to see someone uh contribute that edition um it you know in the in the repo and and see um what the people's solutions um look like because i think there's actually a lot of good questions about what does it mean to like you know split up the space in terms of dimension and then um find those ratios like in a just intonation sense um based on the same sort of uh um numerical expressions that we're using to split up dimension in the rhythmic sense so i i think it's very fascinating we we haven't done it yet i'm very interested in it and i'm actually really interested to see what users contribute yeah yeah i mean it's a whole other world micro tunnel music and and um once i don't know it's so easy to just say like micro tonal and then that could mean anything it could mean anything from we just happen to support midi events you just like have a drop down with different tunings or you could have a much more sophisticated idea of how to do that and i i just don't know enough about microtunnel music honestly to be able to to do it justice i think so what would be cool i think is uh if someone is out there would go and do something which is also outside of the box on this you know because you see microtunnel solutions but you still have like you know the 12 tones of the active and you can just kind of tuned in a little bit but it's still it's like you with the rhythms you're still being stuck in like you know writing those like 16th notes with the brackets but you know there's stuff like um yeah there's stuff like for example the bowling pier scale where you don't even have octaves right you have uh like the three to one ratio and you divide that into like 13 uh uh in like just intervals and it's completely different but it sounds really cool and you know it feels like something like what you've done there could be possible you know in that realm i think that's where people are maybe trying to together you know something which is just kind of more numeric more abstract more like playful and not stuck in this like western western music paradigm you know this is exactly right that's exactly what i'm yeah what i'd really love to see is some is a situation in which actually you could use these numbers in these containers as a sort of as the as like ratios um for creating the just in the intervals um i think that would be very very as you say playful i mean one of the things that was the basis of every change and every like commit that we made basically was with everything that we do is the language becoming more simple more expressive more easy to experiment with more easy to find rhythms that you wouldn't um dream up yourself and then notate um and i i'd be very interested to find a similar experience in the pitch dimension amazing um there are some more questions uh are there any plans for syntax highlighting in the max for live patch yeah yes um yes there yes it's a really it's a really good idea uh yeah also on the also on the short list it's not even that hard um it's just uh we're using code mirror to implement uh the text interface um and code mirror supports syntax highlighting and we already have i mean we already have this thing where it's like alex we need to share our screen oh yeah i'll just do it really quickly we do have support for if you do um you know something that's non-syntactic and then try to parse that it will at least show you where the error is um i know it's not syntax highlighting but it's better than nothing right and uh so code mirror supports all this stuff pretty easily it's just um a little bit of figuring out to move the pieces into place but yes yeah yes short list it's one of the things that we want to want to support amazing another question is did you work on did you work together on the max patch remotely and did you use git or another version control system yeah yeah we used git for everything and um i'm trying to think if we ever ran into some it was like really essential to use git uh just to have a way to um try out something on a branch fold it back in something doesn't work roll back to an old version hey sam colors are broken now and this whole thing looks like trash can we roll back to an earlier version um it would have been impossible i think to do it without something as a software developer i'm super comfortable with git um so that was a natural choice um i mean we probably could have done it with something else right i i think it was good to use git i mean for two reasons one i got to learn git through working on it which was great for me and and so now i would recommend anyone else trying to do something like this especially if they have like a you know experienced developer to work with just learn that tool because everyone uses it it's like a standard um or many people use it it's a standard but the other thing is now that it's done and we wanted to open source the language we our repo was basically it was almost ready yeah by the time we got to the at the end of that stage of working on the project we cleaned it up we made sure it was clear we made sure the readme was good we made sure everything was in the right place and then we were able to make the repo public so i think um that it sets you up for success in the future if you're able to do it on the in the beginning yeah for sure amazing and related to that do you have a strategy that you are satisfied with or five intuitive to work on these max patches together uh is there is there a workflow or is it just kind of free-for-all i mean it's interesting right because um you know [Music] a workflow i mean so there's there's maybe like there there things that we could have done but didn't do would be things like pull requests for example there there's all this um this kind of stuff that you can do in the space of once you work with a virtue control tool like it there's also a whole ecosystem of collaboration tools and techniques things like pull requests issues for example and we played around with some of this stuff a little bit i think we might have used issue tracking through github at some point just to be able to um keep track of things it's really easy to forget when you're working on a big project for a long time what's going on we didn't do anything like pull requests um or any kind of formal system for merging code back together honestly just because like that sounds like work and it's not fun but uh i just think we didn't need it it's a small enough project that didn't feel good it's a small project and we like just to you know to peek behind the curtain we're texting pretty much constantly um the only time when we are not texting is is when he is awake and i'm not awake yet because he wakes up really really early and i'm i'm just going to bed around that time so there's this little window so there's a pretty like you know there's a kind of an ongoing interchange in this particular situation that allowed for uh remote collaboration but if it was a more if it was a larger team a little more complicated um and we were all patching together and max that we'd want to come up with another system it would have been interesting trying to figure out how to do things like i don't know what uh i've never done a code review of a max patch before right it would be hard it would be difficult to the the tooling's not there right like you can't look at there's no tool that will show you two max patches and say oh this thing is green yeah this thing's red the same complex this thing has changed doesn't exist um so that would have been a challenge it's lucky it didn't come to that absolutely yeah um the person that asked about that wanted to uh just underline the emerging merge conflicts uh especially when we're working on max pat aisles um so yeah that's what that was related to um let's see yeah i had a feeling yeah yeah um so yeah that's that's all that's all the questions that we seem to have um yes thank you very much that was very awesome uh very intriguing i'm looking forward to seeing where that goes thank you it's really fun to have a chance to come and you know talk about it share it with your with your community thank you so much yeah thank you so much this is really inspiring stuff i really wanna can't wait to uh you know get my hands on this and play with it let us know what you think be very interested yeah can you give that i i put the uh the website in the chat a few times but can you just give another shout on the website for that again so it's nests.yeah.cutelab.nyc great and i'll be sure to put that in the video description afterwards as well for people who are looking to find it thank you very much alex and sam and now we are coming to the end of the meet up so uh so there are a few things that we would like to discuss so first thing is if you would like to submit a talk for the meetup we welcome all submissions no matter where you may be in your audio programming journey and you can submit on the audio programmer dot com forward slash submit once again uh only less than one month left to submit talks to the audio developer conference this year which will be on november 15th and 16th and you can come out and hang with us in london or uh you can also deliver your talk online and the place to deliver that uh that submission is teamer where is that again so you can uh go to audio audio.dev which is the adc website and there's going to be a link saying call for papers if you click on that that's where you can submit the talk basically and you have until the second of august to do so which is a monday yes and speaking of august uh we also wanted to talk about our next meetup so we meet up every second tuesday of the month from 6 30 to approximately 9 9 bst at the moment british summer time so we've had a lot of discussions about time zones uh lately and um and so the 10th of august 6 30 to 9 30 is the next meet up and we hope that you can join us and we will be announcing uh presenters for that very soon and with that uh we are finished anything else to add teamer uh no i think that's it thank you so much josh thank you so much for joining us to simon alex and also gerhard was a wonderful evening thank you all so much for joining out there on the internet and see you next time yes thank you very much everybody and we will see you next time bye bye great that's
Info
Channel: The Audio Programmer
Views: 1,079
Rating: undefined out of 5
Keywords:
Id: XXDudpTuHFg
Channel Id: undefined
Length: 127min 50sec (7670 seconds)
Published: Tue Jul 13 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.