Good practices and whatnot: callback interfaces