Image for post
Image for post
Photo by William Daigneault on Unsplash

Preface

Last year, there was a hot topic on Twitter about how relevant RxJava was with modern Android development, which garnered a pretty interesting debate with some convincing arguments from both sides.

The claim was that given the popularity of modern frameworks, RxJava is too bloated and should be removed. The debate was even given a catchy title, which prompted a panel discussion at Droidcon Berlin last year, with Hasan, Ivan, x, and myself.

The purpose of this article isn’t to go into detail on how to migrate from one framework to the other, or whether one is better than the other, but rather to emphasise the situations that might require one over the other, and where the strengths of utilisation differ. …


Image for post
Image for post

Much of our responsibility as software engineers is based upon problem solving, we are required to use the our knowledge of available tools, and our experience, to find the most appropriate solution to a given problem.

That’s what I’d like to focus on here, on finding the most appropriate solution.

More often than not, the solution to a problem can be quite simple and doesn’t require overengineering, which is perhaps where the age-old KISS and YAGNI principles come from.

But quite often, we can feel like the solution might not be “clever” enough, and this urge to show off a little, or even just to flex our creative muscles, causes us to miscalculate the problem, or even worse, write solutions to problems we didn’t even have. …


droidconBerlin, June 27, 2018

Android Data Binding is a support library that allows us to bind UI components to data sources declaratively rather than programmatically, it’s potentially really powerful and complex, but used effectively it can really cut down on presentation boilerplate.

We started off with Data Binding beta in 2015 when Google announced it after Google IO as a support library that can be used right back down to Android 2.1 which is API version 7, to write declarative layouts and minimise the glue code required to use your application logic in layouts.

With the Android Gradle Plugin 3.1, it includes the new Data Binding Compiler v2, this includes incremental class generation, so this means that it will speed up your build times a little bit, and it will include precompilation of classes, this means that your Data Binding classes will actually be available prior to your first build. If you’ve used any annotation processors that generate classes that you rely on at runtime you’ll know that this is an absolute pain, so it’s nice to have these even if your build buggers up! …

About

ashdavies ™

@GoogleDevExpert for Android, enthusiastic speaker, lead engineer @Scout24 , Kotlin aficionado, spends more time travelling than working (he/him)

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store