At this point in my programming education I feel like I can approach and solve most problems provided that I fully understand it and the classes available to me. CLI stuff is quite easy, however; I have hit a major brick wall when it comes to GUI programming.
I have been working on Android apps and have been able to define classes, methods, and use the classes from the SDK quite well. But for the life of me I cannot manage to design a good GUI. I don't seem to be alone in my distate for the GUI builder provided by Google, and the odd XML system is alien to me. It sort of breaks what I am used to seeing when I think "programming".
It's not only Android. I have no idea how to approach GUI programming for C++, Java, or anything else. For Java it seems that we have Swing/Matisse to help us, and that's cool. I don't really plan to make many Java applications for the desktop, but it's good that I know where to look for a GUI. For C++ I have no idea what to use or what the majority of others are using. So far I have found Qt and wxWidgets. Yesterday I downloaded the Qt builder and it seemed very nice. I wish that there was something like that for Android.
This thread is not just a bitchfest. To the seasoned programmers here, what should I do? What did you do if you had trouble with this subject or had to compensate for a half baked SDK? Are there any awesome practice resources online or any books that I could delve into? (I love books)
As far as Android, I'm going to try this. Dreamweaver + PhoneGap+JQuery. This set of tools is awesome for building GUIs because all you have to do is build an interface in HTML5 and CSS (something that I am familiar with and that I find VERY easy to use), and PhoneGap provides the "wrapper" for all of the Android OS functions that you would need in the GUI. Another benefit is that you can deploy the app on Android and iOS easily. All you have to do is copy over your HTML, and then set up the platform appropriate functions.
I'm at a moment and I want to have an moment.
Is the problem the actual coding - i.e. transformation of graphic design into identical but functional code - or is it in designing the functionality and looks of the interface? What's your work process when it comes to GUIs, do you or someone first make the design in Photoshop/Fireworks/SomethingElseApp and the code it up?
If not, could the problem be you're trying to solve two problems at once that are really quite separate tasks (and very separate competencies)?
Even when using GUI toolkits I think it's make much more sense to approach GUIs (more) like you would the web...