That I'm from New Zealand. From my accent I'm not from Australia New Zealand different countries turns out and so I have been. Making music with computers now for about ten years or so of and most of that time I've been using. Traditional sequences style applications used in live Most recently I've been using able to live before that I was using if else studio which is actually really right you know I can't you can't. Really well it's pretty good but he was able to be. A few other things but anyway they all have the one thing in common and that is. You're in total control of every single event that happens over time. And that's really great when you were starting out making music because you don't actually have to be able to play any instruments you can just stop plucking notes and and you can tweak to your heart's content and make three things sound effect. But I started in countering problems when I wanted to move from. Making compositions in the studio. To actually. Performing live and so the problem for me isn't so much that there aren't existing tools to take your studio compositions and play them live it's just that the process is completely different how you make a song when you're in total control of time versus how you make a song when you are in the moment and performing it's it's different and you're just in a completely different mindset when you're actually playing and I just didn't feel like I was in control it's like it was just totally different paradigms and so what I wanted to do was just simplify and. Only play live music and so even when it's a very much like a a rock band. The band they just they just jam together and they come up with music that they like and then they can record that and capture that performance and then when they actually play that music live they just go back and back to when they originally were playing and they can play a little different kind of play the same way as it was on the album whatever but they've got that kind of flexibility and I wanted to have that so I decided that I was just going to change the way that I play music so that I start the live way. But the problem was I just couldn't quite find a tool that let me. Do it quite the way I wanted to and able to push didn't exist at the time probably if it existed I wouldn't have bothered with any of the stuff but. Yes So now this is the part where I have to actually get everything working again so I can show my slides. Like this and. I had everything set up before and that just ruined it. So. There we go I think we sort of know OK so that's my next slide yet so I. Started building my own application and it's called Loop drop and it's what I was using last night so I thought I'd show you first of all just a little bit of what I was actually doing last night because it may have been a little hard to tell with all of the darkness and the loud noises. So this is the user interface here. So the idea behind it is that there is no actual sequence. Every event that happens is something that you decided it should happen when you're playing live. However you do see how your sounds up before so I've got a drum kit here. And that corresponds to this. Is something you. And. I love happy and I love happy accidents and so that's like the primary design goal of this is to let me just mention keys and while I'm still in control of everything it's not like anything random happens but it empowers that kind of interplay you get between. Yourself and the physical instrument that's what I'm really going for here anyway so that's the primary mode of input is. I don't actually it's the first level of input as you can just trigger things stright So all your sound you have so. You can just play things straight like that but it gets quite difficult to actually play in time. When you try to play a whole bunch of different instruments unless you're like well as amazing thing the drums which I most certainly am not so I. Repeat which is. I I want to look to the current which is one hundred twenty six B.P.M. right now and on every beat I want to just keep triggering the sign instruments. And I can. Thank you and everything but I just. And that's pretty much all that's to it just those things. So what you've seen. However it's not running in the browser it's not a Web site it's actually. It's a compiled application that actually has an executable that you run and gets all the wonderful luxuries of the dock. And on and a nice place an application folder and it's also a multi-platform electron basically lets you compile. Executable file but not only do everything. So you have access to. This. You can mess with files you can create watches you it's kind of really amazing. So you should differently check out electron if you're interested in building a decent application with any web technologies but why on earth did I choose to build this with what you know I should have actually probably done this and that if I would have been able to get top performance but I'm not actually interested in the web technologies here. So for me it was because I could leverage an existing skill set. But along the way I discovered the job script is actually really good for this particular task but only when you use it with a really good module system because things can just get crazy if you're trying to global javascript and run this kind of this complex app where I've got you know multiple levels of interface and it's just you know it's not so differently use javascript with some kind of module language. Module system and when using electron you get require for free you get is six before you get all the good stuff and I think for a lot of people this is the big feature is you get all the things you can. If you write in Java Script you get every platform you get you get my bile you get up and it's just one codebase and it's amazing so. Why did I choose to just make that with all that. And really it's just because I don't actually like the web. I think it's incredibly restrictive. And I don't need any of the networking stuff and it's just like too much responsibility I don't like OK if I make this application I want to sell it to a customer and they buy it and then I don't want to hear from ever again I don't want to have to be responsible for like going into business and killing their entire career because they can't use their favorite suffer anymore if I just decide one day I'm not going to make my suffer anymore they don't lose anything they might not get any updates about yeah. Do you mind if I just go into the questions a little bit because I I I so you know I mean this is the important when I talk about this real time scheduling. In javascript is just you can't do it. But you can do things that like real time so. Yeah everyone's heard it all the stories but you know I just keep coming up with this against this issue where I I have to do all sorts of crazy time haps text to get around garbage collection issues and so that's the thing you're going to have to accept if you if you do anything with javascript is you are going to have to respect that javascript is javascript and get on with your life but we would you know it's great because it's not it doesn't actually you don't get dropouts when you when you have garbage collection it's just you've got to make sure messages have gotten to the Web video and time from the play otherwise you get time travelling which means you don't hear any sound. And there's no way of getting perfect just a free medium put at the moment. And that no one cares about that. So. This thing here is actually being controlled directly from. And I can do that because I'm using electronic. So. Actually I've got a native ed on which leads me to speak to this little serial to U.S.B. to serial converter and it means that. Because I restart it but you saw it last night you know it was pretty. And I also have wi version of it as well so that you can. You can host a site directly out of loop drop. Sorry. This is the last thing for us. Thank you so what that means you can stream you visualize it to a different computer on the network so you can have a laptop on the projector and. So that's that's that's why electrons Coke is just made to do all the crazy things that you just can't quite do and you want yes so that's pretty much all I'm going to talk about the join the slack you've got to get on that it's great. And we want you know school is one thing that I've been developing that teaches. People that don't know anything about. Javascript how to use it as an indirect of tutorial so check that out some might get help and that's way more than I had time for so thanks. Thanks. Thanks Matt thanks for getting all the troubleshooted to share with us time for question. Yeah I was curious about some of the performance bottlenecks you might have with something like electron Yes So I was going to talk about that so with a little. You mean as opposed as opposed to a night of application or as opposed to the browser. Yeah as a standalone I wasn't sure last night you had some moments where it was right for me like you OK I wasn't sure if it was related to be so I'm going to do my explanation of what happened last night and I think will answer your question. OK so. There was a. Catastrophic dropout last night when I was performing and that was actually caused not by Javascript but by me set. Through it and that was because I was trying to do too many things at once and the reason that was doing too many things is because I didn't realize I still had my last song playing so I had it turned it down and I hadn't Tim and I had it and it was still remembering a whole bunch of stuff and so once I mean I was doing about maybe a third. At that moment. Freaked out and. I was on every channel running it just it. But I didn't actually have any. Question.