Key Programming: It's Not As Expensive As You Think