At the very least, you'd benefit from using some type of interface builder to build a GUI program; it doesn't matter if it's for iPhone or Mac Desktop or Windows. You *can* learn to do this on other platforms, but they're generally pretty poor IDE environments compared to the ones available from commercial vendors like Apple and Microsoft, and it won't *force* you to think the right way about the problem space, if you use something like "Eclipse".
And what, exactly, does using an "interface builder" to build a GUI program teach you? Nothing. Respectfully, it seems that you seem to be part of the problem rather than the solution.
Commercial IDEs from vendors like Apple and Microsoft are "better"? Better for what? I think that after a statement like (in addition to the "gui builder") that you need to take a step back and consider what your stance is and how well you really understand things.
Tell me, what is the "order of the algorithm" that the gui builder generates?