1. An apparatus comprising: a processor; and memory storing instructions that, when executed by the processor, cause the apparatus to: generate a programming guide user interface comprising a menu that includes a plurality of levels arranged from general to specific, a first of the plurality of levels displaying a category of programming options, wherein the category of programming options is dynamically selected based on a category of programming associated with a program currently displayed, the program currently displayed having been selected by a user controlling the apparatus; overlay the programming guide user interface on the program currently displayed to allow for content selection by the user with continued viewing of the program currently displayed; and in response to a user selection of the category of programming options: regenerate the programming guide user interface comprising the menu, the menu simultaneously displaying the first of the plurality of levels and a second of the plurality of levels, the first of the plurality of levels displaying the category of programming options and the second of the plurality of levels displaying a subsidiary category of programming options, wherein the subsidiary category of programming options comprises a sub-category of programming options of the category of programming options dynamically selected by the processor based on a subsidiary category of programming associated with the program currently displayed; and overlay the regenerated programming guide user interface on the program currently displayed to allow for content selection by the user with continued viewing of the program currently displayed.