I love Python the language. I love the Python community - it's one of the most helpful, civil bunch of techies I've ever come across. But what I don't love are the options available if you want to develop web applications in Python.
That's not to say that there aren't options - there are loads of options (Webware, Twisted, Quixote, Zope, etc.). The problem is that each option has its own little way of doing things that is completely incompatible with the other's way of doing things - which might be ok if there were a couple of dominant, well-documented frameworks. But there aren't. (Zope comes close in terms of usage, but is so un-Pythonic that it barely counts.)
The Python web application arena is a mess - it's fragmented, disorganized and (for the most part) poorly documented. Some have pined for a standard Python servlet implementation along the lines of J2EE only to have others dismiss the notion as something that should be restricted to the "proprietary world" (whatever that means). Arrgghh ... it kills me.
To have a language that is as elegant and fun to use as Python fail so spectacularly to deliver an equally elegant solution in the web app arena just befuddles me.
Maybe I'm being a bit harsh. I'm not trying to imply that Python web app solutions are terrible. I like what I've been able to prod out of Webware. But when you hit a wall, there's no where to turn for help - the documentation stinks (they suggest you read the code and figure it out yourself?!?); the user base is relatively small so there are few to ask questions of; and other web frameworks aren't much better off.
I like Python and am quite content with it's performance as a client side development platform. But if you want to do anything remotely complex while interacting with a browser, watch out. I know - use the right tool for the job. But sheesh - I'm this close to throwing in the towel and slinking back over to Javaland.