This semester will definitely be, um, "experimental". The plan is to teach how to develop music/audio apps for iOS and Android mobile computing platforms. The "experimental" aspect is that we will not be assuming any deep programming knowledge to do this. Having programming knowledge will certainly help, but our approach will be to show from a musical perspective how to build and create mobile apps.
RTcmix music-DSP programming language in conjunction with the OpenFrameworks development environment that should be fairly easy to negotiate. We'll have a number of 'templates' that can be used and modified to accomplish particular tasks. Or at least that's the idea...
Interested students have asked me if they could take the course without a strong technical or programming background. I've said "yes", and my hope is that we can present the material in a fashion that will validate that response. We will be doing a fair amount of coding in the class, but (hopefully) this will be a learning-by-doing experiment that works. If you do have a decent amount of programming experience, then the class should still be informative because of the specific tools and techniques we will be covering.
One potential problem is that we will be doing all of our examples and coding using Macintosh/OSX computers, not on Windows or Linux machines. For iOS, this is a requirement. For Android development, we will be using the Eclipse IDE on Mac/OSX. The good news is that the code we will be writing is virtually identical for both iOS and Android -- this is the big win with using OpenFrameworks. I don't know if the Eclipse/Android/RTcmix projects will function properly under Windows or Linux. I believe that it might work on these platforms, but you will have to figure out the appropriate installation and setup yourself. OpenFrameworks does support Windows and Linux, but the RTcmix library is only set up for Android within Eclipse on OSX. Eclipse runs on Windows (I think on Linux too), but I'm not sure how friendly the Windows or Linux compilers will be to the underlying RTcmix source files. If you have these computers and the above several sentences make no sense at all to you, then you may have difficulties in the course. We will be setting up several of our Macintosh workstations at the CMC for classwork, however.
We hope the course isn't derailed by the emphases on coding
this year. If you are having serious problems, please come to
talk to Chris or me so that we can adjust the syllabus to make
it work. And if you do manage to develop the One App to Rule Them
All, then we get 10%.
Here are a few links to software that we will be using in class:
We will also have several guest speakers in the class during the term.
Watch for announcements on the
Please let us know if you are having problems getting equipment or
software to work for you. In general, if you are having difficulty
understanding the programming paradigms
we are using or the applications and information we are covering.
be sure to talk to us. We'll be happy to sit down and work through
any issues with you.
Each week we do will become a link to information relating to that
class. We'll try to keep up with linking in class patches, examples
and information, but we may fall behind. Yell at us when we do.
It's always a good idea to make an appointment to see me, even during my purported office hours, because I often have to run around campus like a maniac doing strange, computer-music stuff. If you need to contact someone at the CMC or Music Department using your actual voice, the relevant phone numbers are:
I say this every year, and generally people believe it (I think): by this point in your career the last thing you should be worrying about is a grade. The main thing is to find something that you'd really like to do and then do it. Please don't try to impress us with your consummate knowledge and skill, we are more impressed by people who do things. Honest!
Hope you enjoy the class!