revisiting interfaces