Is it better to do it all at once? I'm very new to wxPython and I'm thinking it would be better to write the program in a way familiar to me, then apply the wxPython gui to it after I'm satisfied with the overall design of the app. Any advice?
What level of interactivity do you need? If you need rich feedback and interaction, then you need an OO program model, then you can ad the GUI on top of the objects.
If you just have filters and functions (no real feedback, or just a results window) than a library or component model would be better.
Either way, you are better off coding your logic separate to the GUI, so you can test it more easily.
Is it a bad idea to design and develop a python applications backend and then once finished try to apply a GUI to it?