Chapter 10: Math and Physics
Things are good, but they aren't what they used to be
Before we get started, I just want to say that revising this chapter was difficult. I found myself repeatedly reminiscing about the good old days when we still had SpaceWiz and Caelestis to play with. I reached out to the iPad Musician group and received lots of suggestions, but for me, many of the newer apps fall short.
Most of the apps from the original version of this chapter are dead and gone, so I was faced with pretty much starting from scratch, but not finding any golden unicorns to hold this updated chapter together. I finally put together a list of criteria, built a spreadsheet, and reviewed over 40 different apps to see which ones could make the cut.
Definitions
Purely generative apps produce musical notes based on rules defined completely by the developer. Algorithmic apps are similar, with the distinction that algorithmic apps provide some sort of user-defined control over a composition. This is the βmathβ part of this chapterβs title. While generative apps can be fun to play with, they are generally just a sound source to be manipulated. Algorithmic apps are much more useful.
βPhysicsβ is another attribute of generative or algorithmic apps, basically referring to apps where the music is generated based on balls bouncing off of walls, gravity, etc. I feel there is an important distinction to be made between apps that provide neat graphical representations of structured math operations, and those that generate musical events based on the motion of virtual objects. Most of the newer apps out there with fun geometric shapes are not physics-based, despite the use of virtual objects in their interface. They can still be useful, of course.
Golden Unicorn Requirements
I thought it might help to really nail down the specifics of what Iβm looking for, because honestly the search has been a bit frustrating. I may have to eventually become an app developer to achieve my dream of the perfect generative app, but hopefully Iβve just missed or overlooked the prized gem out there.
The app must be algorithmic, meaning it must generate musical notes based on parameters set by the user. There are some apps out there that can be nudged or even tricked into being generative apps, but Iβm only interested in purposefully built algorithmic apps.
The app must be stable, with all of the features functioning as expected while not crashing, stopping unexpectedly in the middle of a session, or taking up 85% of the deviceβs CPU.
The app needs to be AUv3 compatible, because this is 2023, Logic Pro is here to stay, and itβs the right thing to do.
The app needs to be able to send midi to other apps.
The app must support custom user scales. Arbitrary lists of scale choices are useless, short-sighted, and lazy coding.
The app should be efficient and quick to set up. If I have to dig through menus and tweak parameters for an hour to get a basic melody, itβs a no from me.
Based on these rules, these are the apps that made the cut.
Aphelian
Aphelian was definitely the most graphically compelling generative app to make the cut. Itβs a lot less spectacular in AUv3 mode, but it still does the trick. Itβs dead simple to define scales on the fly and thereβs simple randomization for the event distribution.
Cem Olcayβs apps
Cem Olcay is the developer of the βbudβ line of generative apps. This is a suite of apps that can work alone individually, but become more powerful if you use them together. Iβm going to talk about two of the helper apps first, and then the apps that meet the requirements of this chapter. All of these apps are solid, simple, and quick to use.
ScaleBud 2
ScaleBud 2 is how many of Cemβs apps achieve rule number 5. This app allows you to create scale-specific keyboards and chord buttons based on 110 built-in scales or custom scales that you build yourself. The important part is that the custom scales you build in ScaleBud 2 become available to use in many of the other apps, so you only have to define a custom scale once.
BrainBud
BrainBud is a simple controller app that allows you to send key and scale changes to the other apps via midi. You can can create patterns of key/scale combinations and send them to all the connected apps using βBudcastβ, or even randomize the key/scale choice. Of course, BrainBud makes use of the scale list from ScaleBud 2.
The generative apps
Auto Bass is specifically built to generate cool basslines, with a fully tweakable algorithm.
Binarhythmic seems a little more complicated than it is at first, but basically it counts in binary and sends out midi signals for each bit.
MelodyBud is a generative sequencer with lots of randomization features.
PolyBud is a polyrhythmic sequencer that can send notes or MIDI CC messages.
ShiftBud is a looping generative sequencer based on the Turing Machine eurorack module by Tom Whitwell.
SnakeBud is a 16-step sequencer with 56 different 2-D snake patterns for moving between the steps.
Hilda
Hilda was actually a pleasant surprise because Iβve owned the app since it came out but never realized it had a sequencer. I love that the scale customization is dead simple and that you can easily randomize both the sequence and the patch. I also appreciate being able to load just the sequencer functionality as a AUv3 MIDI plugin to cut down on processing.
Poly 2
Poly 2 is a polyrhythmic sequencer from James Milton, the same developer who built one of my favorite apps of all time, Caelestis. Itβs hard to totally slam him for letting that one die, because Poly 2 is a great generative app in its own right. Poly 2 has tons of randomization options and can play samples and/or send MIDI on up to 8 different channels.
Riffer
Riffer by Audiomodern is like Cem Olcayβs Auto Bass on steroids. This app ticks all of the boxes with style and has tons of randomization features. In polyphonic multi-riff mode, it can send different patterns on up to 4 MIDI channels. Infinity mode allows you to create a new pattern after a user defined number of steps for infinite variation.
TATAT
TATAT is a brilliant generative app for live playing. I almost didnβt include this app because you can only assign 4 notes at a time, which doesnβt quite meet the custom scale requirement. However, after playing around with it a bit, I figured out you can change the notes with incoming MIDI, which is actually pretty amazing for the free improv stuff that I do. TATAT has taken up an almost permanent spot in my AUM sessions.
I know what youβre going to say
Inevitably folks are going to say, βbut what about X appβ, and Iβm more than happy to field comments with other suggestions. Just make sure that they meet all of the 6 guidelines laid out above.
Hereβs a list of all the apps I reviewed that didnβt make the cut: Autony, Axon 2, Branches, Cality, ChordJam, Cykle, Different Drummer, Drambo, Droneo, Egoist, Enumero, Euclidean, Gestrument Pro, Hexaglyphics, iKaossilator, Mela Synth, MiRack, Model 15, Mozaic, New Path, NodeBeat, OODA, Physicles, Riffler, Ripplemaker, Rozetta, Ruismaker Noir, Senode, Wotja, and ZOA.
The end of the beginning
This is the official end of the Drone, Glitch, and Noise book, but as I mentioned in my article on my spiritual framework for making music, the aesthetic and practice of drone, glitch, noise, and experimental music are central to the way I think about and create music. And of course, Iβm fully invested in iOS as a platform. So I hope youβll continue to read as I move into showing how I use these concepts, techniques, and apps in my daily musical practice.