The Changes Engine

A standard is a shape before it is a key. Three shapes are declared here bar by bar in degrees, five substitution rules are declared as conditions, and every chord symbol you will read is what the code got when it put one through the other.

Two things on this site are written down by hand, and this page is where both of them live. The first is a small set of forms: the bars of the tunes a group can call without anyone opening a book. The second is a smaller set of rules: the four edits this idiom habitually makes to those bars. Everything else you will read on these pages — every chord symbol, every Roman numeral, every count — was produced by putting one through the other.

Why the forms are written in degrees

A form is declared as scale degrees, never as chord names, and that is not a storage trick. It is the honest description of what a form is. When a horn player calls a tune, nobody hands out a different piece of paper for each key; the shape is the same shape, and the key is a decision made in the four beats before it starts. Writing the bars as degrees means this site cannot accidentally teach one key's version of a form as though it were the form, and it means the twelve realizations you can click through above are twelve views of one declaration rather than twelve transcriptions somebody had to get right twelve times.

Why the rules are data too

A substitution is usually taught as a sentence: swap this for that. But a sentence cannot be checked, and it cannot be run. Each of the five rules here is written instead as a condition and a transformation — what has to be true of a chord, or of a chord and the one after it, and what happens to it when that is true. The engine then goes looking. It finds three places in the blues where the backdoor rule applies and none at all in a plain turnaround, and it reports both, because a rule that fires nowhere in a form is as much a fact about that form as a rule that fires everywhere.

What is checked, and how

The site's own test suite recomputes all of it from raw semitone arithmetic before anything ships: every realization in every key, every rule application, every bar count. If a page and its data ever disagreed, the build would stop. That is the only reason a page like this is worth reading rather than a book — a book cannot re-derive itself when somebody edits one line of it.

Where each chord symbol appears it links to the seat that plays it, so a substitution you have just read about is one click from the voicing you would actually put your hands on.