Interface learning