the feature is basically replicated on android phones that have the google now launcher page that shows you customised results based on how you search.
I don't think so. Compilers may change the output binary drastically, due to optimisations and other things, despite the source changes being small and localised. I'd argue that such behaviour, while desirable when creating a new binary, is counterproductive when trying to make a "minimal diff" of an existing one to fix something and not make other unnecessary changes at the same time.
nah. java is actually slowly moving towards being a modern language and a reasonable choice for a wide variety of tasks. go is going to inherit ruby's place