Yeah, I am a programmer and as such have a genetic predisposition to distrust mechanical systems.
A physical model would be simpler to do. Perhaps a compromise would work best, a mechanical model which could be used to train some buttons, yet would allow you to fine tune on the fly. Might be an interesting way of controlling a system.