Controllers and methods for programming configuration information are disclosed. An illustrative controller can include an interview question generator adapted to generate questions relating to the installation or setup of the controller and/or one or more components controlled by the controller, a user interface including a display screen adapted to display interview questions to a user along with at least two answers for each interview question, and a memory unit for storing operational parameters of the controller based at least in part on user responses to the interview questions.