<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>wrk.suroh</title> <!-- styles --> <link rel="stylesheet" href="/assets/css/master.css"> <!-- javascript --> <script src="/assets/js/script.js" type="module"></script> </head> <body> <div id="wrapper"> <nav id="primary"> <span data-link="~"><~</span> <span data-link="work">█</span> <span data-link="audio">█</span> <span data-link="teach">█</span> </nav> <span id="audioToggle"></span> <nav id="sub"> <ul id="work"> <li><a href="/work/container2mvmnts/">A Container in Two Movements</a></li> <li><a href="/work/euclid/">euclid</a></li> <li><a href="/work/fragile-mastery/">fragile mastery</a></li> </ul> <ul id="audio"> <li><a href="/audio/andoror/">&//</a></li> <li><a href="/audio/post-toast/">post toast</a></li> <li><a href="/audio/solo/">solo</a></li> </ul> <ul id="teach"> <li><a href="/teach/">teach</a></li> </ul> </nav> <section style="position: fixed; bottom: 0; left: 0; margin: 0; padding: 0; width: 100vw; height: 50vh; z-index: 100;"> <div style="position: relative; width: 100%; height: 100%;"> <h1 id="menuItem" class=""></h1> </div> </section> <div id="content"> <h1>Anomolous Faces</h1> <p>Anomolous Faces embraces the unstable nature of improvisation in software and in music. I aim to examine the agency that improvisation can provide in the context of creative software and performance. I build custom software that acts both as an instrument and collaborator which I perform alongside with a combination of digital hardware and traditional musical instruments. Through the employment of these tools I challenge my ingrained jazz improvisational training, and examine creative relationships we can have with machines.</p> <iframe scrolling="no" allow="autoplay" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/471930894&color=%23333333&auto_play=false&hide_related=false&show_comments=true&show_user=true&show_reposts=false&show_teaser=true" width="100%" height="166" frameborder="no"></iframe> <p>My improvisations to date have included hacking MIDI controllers and playing with audio analysis. Such approaches deconstruct my traditional musical training on the saxophone as I find myself attempting to embody routines as defined by software. It is either the programming of my years of formal music training, or a conceived imposition by the "perfection" of technology that makes me question my agency, and even my role as an interactor.</p> <p>My performance practice is coupled with research that takes many other forms, where I engage in discussion around agencies a wider adoption of improvisation could provide. Building these instruments is an extension of my improvisational method, which acts as a form of liberation against the standardisation of both musical practices and software development. By employing improvisation towards the development of my tools, I expose the agencies that it might afford us in realms outside of creative practices, and how they might be used to combat outdated structures of hierarchy and value.</p> <p>All of the code is freely accessible on my git repository here : <a href="https://git.suroh.tk">git.suroh.tk</a>.</p> <iframe scrolling="no" allow="autoplay" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/476223060&color=%23333333&auto_play=false&hide_related=true&show_comments=false&show_user=true&show_reposts=false&show_teaser=true" width="100%" height="166" frameborder="no"></iframe> </div> </div> <!-- Matomo --> <script type="text/javascript"> var _paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function () { var u = "//analytics.suroh.tk/"; _paq.push(['setTrackerUrl', u + 'matomo.php']); _paq.push(['setSiteId', '1']); var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0]; g.type = 'text/javascript'; g.async = true; g.defer = true; g.src = u + 'matomo.js'; s.parentNode.insertBefore(g, s); })(); </script> <!-- End Matomo Code --> </body>