Hi! Glad you asked!
- Here is no contradiction. IMHO in many cases it’s better to wrap observable in class that would contain additional data and logic. It’s good for two reasons. If logic will change you’ll change it in one place and it would be easier to replace rxJava in future 😊
- I faced a lot of issues with Retrolambda, mostly with 3rd party Gradle plugins, this problems take time to solve and for large projects that have complex Gradle configuration Retrolambda just don’t worth it. Btw Intellij folds anonimus classes so well that I don’t see much difference any way.
- You are right Constraints layout is not for everyone and it still in alpha, but from my experience you’ll have problems mostly with editing, not in compiled project. IMHO you could use it now to speed up your complex layouts, but not as main layout for development.
- Databindings is stable at least since Android Studio 2.0 release. Using it in production for few months already for very complex layouts👍