API design should be an alternating optimization · HackerTrans