Blog Post

Web Algorithmic Composition Software for Music Educators

Web Algorithmic Composition Software for Music Educators

My interest in algorithmic composition software started about 3 or 4 years ago. I have been a long-time Queen fan, and I used to play electric guitar when I was a teenager. Now, as a grad student, I played the horn. I liked to play new music, but at some point I decided that I wanted to include some rock elements into my repertoire. I bought a delay pedal and started to experiment imitating Brian May's solo for Brighton Rock (a Queen song). Then and there, I realized I wanted to experiment more with sound processing.

Someone mentioned Miller Puckette's Pure Data to me. I immediately downloaded it and started to watch YouTube tutorials to learn how to use it (for anyone interested, Dr. Rafael Hernandez has a great playlist with tutorials on Pd here). Then, I decided to take whatever course I could to learn faster. I ended up taking classes with Dr. James Paul Sain. With him I learned to use Max/MSP, which is very similar to Pd in terms of concept and functionality.

As I started to use both programs, I realized that they have a lot to offer to music education. Among other things, they offer an interesting approach to composition and music production that is less conditioning than other music and audio software, they can be used as tools to explore sound, and they can be used as tools to learn specific musical concepts. I noticed, however, that the courses I took to learn these software were composition courses, and I was able to take them because the instructor was OK with it (he was actually very nice with me), but there were not classes for music education majors. I also noticed that, when I would talk to my colleagues about these software, they would be totally thrown off, as they had never seen something like it. They would ask, however, so... How can I use this in my classroom? Also, I realized that it took me, a student with some spare time, considerable time and effort to feel comfortable using them. I asked myself, would a music teacher be willing to use this type of software considering the time and effort needed to learn the basics?

Around this time, I started to learn about Web Audio, and I got all excited on its possibilities. You can actually process audio on you everyday web browser!!!!! (See some examples here, here, and here). I was lucky enough to attend to the 2nd Web Audio Conference in Atlanta, GA, on 2016, and I was impressed. The only thing I missed was other music teachers, despite the conference info that stated that the conference wanted to attract composers, engineers, and educators. Web Audio, to me, is a tremendous advance, because it expands the access to audio software by eliminating the barriers of having to download, install, and configure software.

I was already thinking on how a web app could make it easier for teachers to use... well anything! But still, that did not solve the problem of the learning curve (time and effort!). One of the apps that addressed this issue, but because it is oriented to children, is Scratch. Scratch is an object oriented, graphical interface, much like Max and Pd, but in which there are no wires. Objects connect like legos, depeding on their shapes. Here is an example I made in my son's account. You can look inside to see the 'code'. The issue with scratch is that it is based on Flash, and does not support important audio features like oscillators and filters as web audio does. While at the Web Audio Conference, I actually saw a project which was similar to my own. Scott Fradkin was working on a music module for Snap, a JavaScript version of Scratch which can access web audio capabilities. You can see Frank's project here. The problem I see with this approach is that to someone like me, who is not a programmer, working on a complex framework looks like a recipe for bugs (bugs are errors in the program that would make it stop working). That is why I wanted to be able to create a new app.

I started learning JavaScript and Web Audio, and some other programming elements, but soon I realized that I was trying to reinvent the wheel. I needed a programer. I tried to establish some contacts with the computer science people at UF, but everybody seemed to be too busy to colaborate. I was hoping to be able to make this project my dissertation, but because of time projections, I had to pass.

I still want to work on it though, and I think I have plenty of good ideas on how such an app should work. I even have a framework within which I can make this project work as music education research. Perhaps, if the project looks promising, I can even try to apply for some grant.

I will leave it there, in case someone will be interested in further discusion.....


No comments