Bobby Warner writes up his approach to introducing some "pjax" to a Grails app by extending the
GrailsLayoutDecoratorMapper. His approach is easy to understand and will probably work quite well for most projects.
That being said, I think that pjax is a great technique, but I've found that the jQuery.pjax library/plugin can be limiting in some scenarios. (In other words: it's probably fine, but do your homework on how pushState works so you can fill in the gaps if you need to.)
Josh Reed, writing at the refactr blog, presents an interesting "by convention" technique for "ajaxifying" controller actions in a Grails app. I can think of a couple other ways to do this (different solutions for different provlems) but this is certainly a nice reference for someone looking to do this kind of thing.
Tom Morris says it so well:
The idea that the almighty brains of hackerdom aren’t where they are solely based on merit but based partly on merit and partly on luck and/or privilege threatens the fragile geek ego and challenges the “bullied-to-billionaire” (Bill Gates, Mark Zuckerberg etc.) story the geek community likes to tell itself over and over. Again, guilt is not required. Just recognition that this is actually how the world works and having a go at actually fixing it.
Bottom line, really: you don't have to be ashamed of your privileges, but you better be real fucking ashamed if you haven't done some introspection on the matter and recognized it as such.
Interesting read at counternotions:
“Asian” is easy, as any restaurant-related service would make at least a rough attempt to classify eateries by cuisine. But what about “nice”? What does “nice” mean in this context?
Google has to accumulate domain specific data, knowledge and expertise to better disambiguate users’ intent in search. Terms, phrases, names, lemmas, derivations, synonyms, conventions, places, concepts, user reviews and comments…all within a given domain help enormously to resolve issues of context, scope and intent.
Knockout.js is awesome
Backbone.js is pointless
In my experience, it sounds to me like Hasen is trading one bit of low-level plumbing for another–replacing magic tricks with sleight of hand. To be totally fair, Knockout has some pretty powerful and compelling features, but you need to drink its Kool-Aid all the way or you're sunk. Having built a non-trivial component of a web app in Knockout, I can confidently say that it's not without its own set of problems, the biggest of which (for me) was not being able to reliably know the scope (i.e., the "this" value) within a given function at a given period in its execution. Also: if you've got a deeply nested and fairly sophisticated data model… Good luck.
Not that I'm saying don't use Knockout — just that it's not the picnic Hasen suggests it is.