On the bright-side, these things provide a nice barrier-for-entry that makes it easier to find jobs. But I agree it does feel quite 'broken' a lot of the time. I've been trying out jQuery-ahm, which lets you reduce ajax calls to one line, and send everything else back from the server - the data and the logic/functions/instructions. I'm not sure how well this scales (debugging could be a problem), but I'm using it for simple things like tooltips. I feel that writing all the normal ajax code for a simple tooltip (for instance the example given in the Rhino book) is preposterous.