Use a utility function to cleanly read input from the user

Is there any reason to define `read_response()` twice conditionally, as opposed to having 1 `def` and putting the condition into the inside?