Category: Android

Coroutines vs RxJava: The Way Forward with Asynchronous Programming for Android

So Google I/O 2019 just passed a couple weeks ago and to no surprise, in one of their very many talks, they brought up Kotlin’s new asynchronous feature: Coroutines. Coroutines in a nutshell for those who don’t know: They workaround the use of callbacks by making them into more sequential code through the use of…
Read more

Google I/O 2019 for the Android Developer in a Nutshell (Android Q Beta 3 and More)

Google I/O this year ended last Thursday and many exciting things were unveiled both for the end user and for the Android Developer. There were a few things for developers to meet that could mean more hours per app, but for the most part, tons of APIs were rolled out that makes development easier for…
Read more

Coroutine Basics: Asynchronous Programming with Kotlin

Exactly 21 hours ago from when I’m writing this sentence, I got a comment on my Essential Libraries February 2019 post telling me one of my entries was outdated for a 2019 list. If he said it was Butterknife, sure I’d probably agree (I admit that was an ass-pull). To my surprise however, he was…
Read more

Understanding RxJava Subjects and their Different Types

If you have any basic knowledge of RxJava, you’d know that an Observable is a stream ready to emit data when a Subscriber subscribes to it. A Subject is well, both an Observable and a Subscriber. It can subscribe to one or more observables, and can re-emit that data and possibly new data as well…
Read more

Android Architecture for the Simple Mind: MVVM (Model, View, View-Model)

If there’s one thing that had a drastic change in the way I develop apps, it’s learning about Android architecture. Sure, I learned a few libraries in my journey, RxJava, Firebase, Retrofit, and they all helped, but nothing completely changed the way I write code than, well, changing the fundamentals of how you write. Changing…
Read more

Android Q Top New Features (as of Beta 2) and what they mean for Developers

Android Q Beta 2 is out now for us to test with, see what new developments they’ve made to the ecosystem and how it affects our apps. Images are now available for us to run our emulators with, as for physical devices, it is already compatible with all the Pixel devices. Android Q introduces support…
Read more

Firebase ML Kit 7: Language Identification & Smart Replies

It’s been almost a year since the release of Firebase ML Kit and the team brought some neat changes to the package: 4 new AI models to do with Natural Language and Preparation for Production. Of course, as one who advocates the ease of use of AI so endearingly as long as it doesn’t destroy…
Read more

2-Factor Authentication (Email/Password & Phone with Firebase Authentication on Android

We’ve all seen it at least once before: that little extra layer of security when we create an account on Gmail, Netflix, and possibly on every login into our online bank accounts. A verification code is sent to our device which we have to enter to get past that glorious second layer. If you want…
Read more

Signing into Firebase Authentication with Facebook, Twitter, and Google

It’s probably common knowledge right now that doing a standard email-password authentication in Firebase is piss easy. The same can’t be said about using it’s various providers, Facebook, Twitter, Google, Play Games, Github, etc. and that’s because each one requires its own unique set up which isn’t always so straightforward. Today, I’m going to focus…
Read more

Top 10 Essential Libraries for any Android Developer February 2019

There comes a time in every Android Developer’s blog where they have to talk about LIBRARIES. Not just any libraries, but the libraries that you’ll see as an essential on pretty much every job you’ll be applying for. Even if this ain’t the case, it’s undeniably that these are the libraries that will help you out…
Read more

A Guide to Multithreading in RxJava

Following the finale of the Knowing your RxJava Operator Toolbelt series, you’d think that we’ve covered a huge part of the RxJava ecosystem, but well eurghuehue. C’est wrong! RxJava’s operators are only the surface of the library. Let’s go back to the roots of how RxJava describes itself on its website: A library for composing asynchronous…
Read more

Knowing your RxJava Operator Toolbelt 5: Utility Operators

Check out the rest of the series: Knowing your RxJava Operator Toolbelt 1: Creating Observables Knowing your RxJava Operator Toolbelt 2: Transforming Observables Knowing your RxJava Operator Toolbelt 3: Combining Observables Knowing your RxJava Operator Toolbelt 4: Filtering Observables RxJava is Java (and Kotlin’s) form of Reactive Programming, and thus Android’s too. It bestows the…
Read more

Knowing your RxJava Operator Toolbelt 4: Filtering Observables

Check out the rest of the series: Knowing your RxJava Operator Toolbelt 1: Creating Observables Knowing your RxJava Operator Toolbelt 2: Transforming Observables Knowing your RxJava Operator Toolbelt 3: Combining Observables Knowing your RxJava Operator Toolbelt 5: Utility Observables RxJava is Java (and Kotlin’s) form of Reactive Programming, and thus Android’s too. It bestows the…
Read more

Knowing your RxJava Operator Toolbelt 3: Combining Observables

Check out the rest of the series: Knowing your RxJava Operator Toolbelt 1: Creating Observables Knowing your RxJava Operator Toolbelt 2: Transforming Observables Knowing your RxJava Operator Toolbelt 4: Filtering Observables Knowing your RxJava Operator Toolbelt 5: Utility Observables RxJava is Java (and Kotlin’s) form of Reactive Programming, and thus Android’s too. It bestows the…
Read more

Knowing your RxJava Operator Toolbelt 2: Transforming Observables

Check out the rest of the series: Knowing your RxJava Operator Toolbelt 1: Creating Observables Knowing your RxJava Operator Toolbelt 3: Combining Observables Knowing your RxJava Operator Toolbelt 4: Filtering Observables Knowing your RxJava Operator Toolbelt 5: Utility Observables RxJava is Java (and Kotlin’s) form of Reactive Programming, and thus Android’s too. It bestows the…
Read more

Knowing your RxJava Operator Toolbelt 1: Creating Observables

Check out the rest of the series: Knowing your RxJava Operator Toolbelt 2: Transforming Observables Knowing your RxJava Operator Toolbelt 3: Combining Observables Knowing your RxJava Operator Toolbelt 4: Filtering Observables Knowing your RxJava Operator Toolbelt 5: Utility Observables So you’ve just read an introduction to RxJava (hopefully mine) and now you’re ready to get…
Read more