2004-03-23 · in Ideas · 345 words

Players of guitar-like instruments need to know which notes to play to produce a desired chord or scale. For any chord, there are a number of ways of playing it, and the most appropriate depends on the desired sound and the surrounding chords. Most players use lists of common chords as a starting point and then modify them by hand.

This becomes less convenient when you want an unusual chord, or you're playing an instrument with an uncommon tuning. An automated tool could suggest ways of playing chords based on a few simple heuristics: a player can reach N notes at once spread over N positions on the neck of the instrument, and can pick 1 to N contiguous strings to play.

Features that would be useful in chordtool:

chords.py is my partial implementation of this; it's able to automatically find how to play chords for a few instruments. Fretboard is a PalmOS tool that knows about more instruments and chords, but doesn't try to find hand positions.