Kotlin User Group Berlin: Everything is an API

Everything is an API

When creating a new app module, or modularising an existing one, it becomes easy to forget who might be consuming it. It becomes easy to forget that every decision you make will affect how it is used, or in the worst case, abused. We’re told that code should document itself, but how do these design decisions reflect in the understanding of intended use? Just because we might not be exposing a module as a public or open-sourced library, doesn’t mean we can’t benefit from making good decisions towards an effective and sensible API....

Chicago Roboto: Everthing is an API

Everything is an API

When creating a new app module, or modularising an existing one, it becomes easy to forget who might be consuming it. It becomes easy to forget that every decision you make will affect how it is used, or in the worst case, abused. We’re told that code should document itself, but how do these design decisions reflect in the understanding of intended use? Just because we might not be exposing a module as a public or open-sourced library, doesn’t mean we can’t benefit from making good decisions towards an effective and sensible API....

Droidcon London: Everything is an API

Everything is an API

When creating a new app module, or modularising an existing one, it becomes easy to forget who might be consuming it. It becomes easy to forget that every decision you make will affect how it is used, or in the worst case, abused. We’re told that code should document itself, but how do these design decisions reflect in the understanding of intended use? Just because we might not be exposing a module as a public or open-sourced library, doesn’t mean we can’t benefit from making good decisions towards an effective and sensible API....

Droidcon Berlin: Everything is an API

Everything is an API

When creating a new app module, or modularising an existing one, it becomes easy to forget who might be consuming it. It becomes easy to forget that every decision you make will affect how it is used, or in the worst case, abused. We’re told that code should document itself, but how do these design decisions reflect in the understanding of intended use? Just because we might not be exposing a module as a public or open-sourced library, doesn’t mean we can’t benefit from making good decisions towards an effective and sensible API....

Android Worldwide: Everything is an API

Everything is an API

When creating a new app module, or modularising an existing one, it becomes easy to forget who might be consuming it. It becomes easy to forget that every decision you make will affect how it is used, or in the worst case, abused. We’re told that code should document itself, but how do these design decisions reflect in the understanding of intended use? Just because we might not be exposing a module as a public or open-sourced library, doesn’t mean we can’t benefit from making good decisions towards an effective and sensible API....

Android Makers: Everything is an API

Everything is an API

When creating a new app module, or modularising an existing one, it becomes easy to forget who might be consuming it. It becomes easy to forget that every decision you make will affect how it is used, or in the worst case, abused. We’re told that code should document itself, but how do these design decisions reflect in the understanding of intended use? Just because we might not be exposing a module as a public or open-sourced library, doesn’t mean we can’t benefit from making good decisions towards an effective and sensible API....

April 20, 2020 · Android Makers (Online) · 1 min · Ash Davies
Android Dev Podcast: Activity Lifecycle Under the Hood

Activity Lifecycle Under the Hood

So many candidates nowadays are using live data on interview but less than half of them know how it works and what exact a problems with activity destroy during rotation and keeping activity in the backstack. We have GDE from Berlin Ash Davies to solve that puzzle and show clear picture what to do to deal with the state.

Photo by [Goh Rhy Yan](https://unsplash.com/@gohrhyyan) on [Unsplash](https://unsplash.com/photos/FFgcWvplwsc)

The Dangers of Language Abuse

Much of our responsibility as software engineers is based upon problem-solving, we are required to use 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 over-engineering, which is perhaps where the age-old KISS and YAGNI principles come from....

March 9, 2019 · 4 min · Ash Davies

Leveraging Android Data Binding With Kotlin

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....

November 12, 2018 · 17 min · Ash Davies
Droidcon Berlin: Leveraging Android Data Binding with Kotlin

Leveraging Android Data Binding with Kotlin

Android Databinding is considered as both a powerful toolchain, empowering your views with access to view data without the necessity to build cumbersome presenters, and conversely as an overly complex, convoluted mess of binding statements opening the door to unnecessary, irresponsible domain logic in your view layouts. Whilst the latter of these statements can be true, Databinding offers a very powerful code generation syntax, allowing you to utilise the power of the compiler to ensure that your binding statements are runtime safe....

July 27, 2018 · Droidcon (Berlin, Germany) · 1 min · Ash Davies