>>547867
Python is a poor choice of language for GUI programming.
PyQt is probably the best balance of easy to program for and fully featured, but on some distros (CentOS 6) PyQt applications will just crash with no warning.
PyGTK is deprecated and replaced with the seemingly infinitely more complex pyGObjectIntrospection or whatever the fuck it's called, and it doesn't seem nearly as easy to use as PyQt either way. The python 3 version (you ARE using python 3, right?) removes the deprecated pygtk namespace which is the final nail in its coffin IMO. It looks like they made little to no effort to make gtk more usable to python developers than to C developers, and you only get gtk3.
tkinter is under-featured and horrendously ugly, and keyboard input is very very second-class. The only thing it has going for it is that it comes with Python, except if you didn't install tk on your distro in which case it doesn't. It has infuriating quirks, like the inability to create dialog boxes without having a root window, and the unbelievably loosely typed (and often poorly documented) use of keyword arguments leading to very hard-to-solve bugs in the program.
I would recommend PyQt unless you want to target the kind of windows user who doesn't want to have to run your installer followed by a python installer followed by a PyQt installer (and windows users wonder why we like package managers)!
Otherwise, I would recommend C++ with Qt if you have the effort to put into it, but be very wary that Java programmers tend to write horrible C++ code, so you can't just coast along on your existing knowledge from other languages.
Wildcard options:
- learn vala and write vala with GTK. It's a very specific language, but it seems a good way to stay sane while writing for GTK. I don't think it will get you employed though.
- Java is okay for cross-platform GUI. Not the best, because it's clunky and takes a year to start up, but it's okay. If you are going to deal with the Java virtual machine, make sure to write in a worthwhile language like Scala.