Presumably some of these apps built with urwid have *automated tests* of UI functionality; in order to accelerate development progress we write the program to test the program: the other half - or better - of the actual program is the executable test specification.