Software design is what separates the amateur from the professional. Certain things are easier to do in certain ways. Those certain ways are known as Design Patterns and represent a distillation of the experience of many programmers. Time invested in learning Design Patterns always pays off.
Main source of Patterns is: http://c2.com/cgi/wiki?StartingPoints
Patterns related to GUI design
Model View Controller
Implementation in wxPython : ModelViewController
Model View Presenter
MVP is an evolution of MVC.
Implementation in wxPython : ModelViewPresenter