Hanon-Style Patterns in Scale

Continuing the discussion from Turning boring piano exercises into music with Sonic Pi:
Those patterns can be useful for composition, including semi-generative ones (what I can “smidgen”, semi-gen).
I’m sure there’s an easier way to encode and play them.

What I have at this point, a simple scale in thirds (two degrees up, one down):

s = (scale :D, scale_names[2], num_octaves:2)
d=(ring 2,-1)
i=0
puts s
s.length.times do
  play s[i]
  i+=d[tick]
  sleep 0.25
end

I mean, it works. It’s not very flexible (say, to reverse it). And I guess it’s error-prone.

(Part of my inspiration for this is the Tessitura app. It applies patterns from Hanon and others to any scale in its (relatively extensive though not necessarily exhaustive) catalogue).

1 Like