This is a series of lessons on algorithmic composition by means of computer programming.
Since this series is being developed as a web blog over an extended period of time, the lessons will not necessarily be linearly progressing or well organized until a fairly full first edition of lessons has been completed. As the collection of lessons grows, I will try to provide an organized table of contents.
To run these examples, go to the Max download site and download the version of Max Runtime that is appropriate for your computer.
The examples are shown as a graphic image to reinforce the text. Nearby the program images is a link to a copy of the program in JSON format. Right-click (in Windows) or control-click (in Mac) on the link to download it to your computer, then run it in Max Runtime.
The purpose of this blog is to present various ideas and methods of algorithmic composition, both in terms of the philosophy behind the ideas and in terms of the practical techniques of implementing them as a computer program. Because the programming examples are almost all in Max, it is sometimes necessary to discuss characteristics or idiosyncrasies of Max itself and its subsets MSP and Jitter. However, this blog is not intended as a thorough tutorial on Max programming. It assumes that the reader has some familiarity with Max or at least enough familiarity with programming to understand the examples shown in Max. General instruction and tutorials for using Max, MSP, and Jitter can be freely downloaded from the Cycling '74 website as part of the Max download, or can be read online.