Testing MVP using Espresso and Mockito

As software developers, we try our best to do what is right and make sure that we are not incompetent, and try to have others and our employers trust in the code we write. We all try to follow best practices and apply good architecture patterns, but sometimes many of us find it difficult to actually test what we code.

Topics: Testing

The Art of Command Query Separation

Functions have side-effects. At times they change the state of the system when you least expect them to and wreak all kinds of havoc. It’s difficult to get rid of all side-effects in an Object Oriented programming paradigm. We just need to make sure to manage them so that they don’t bite us when we aren’t looking.

Topics: Tutorials

Introduction to Networking Using Kotlin

As an Android developer, it's highly likely that you have heard about Kotlin and all it's awesomeness :). For those who haven't heard about it, Kotlin is a relatively new programming language created by JetBrains(developers of the intelliJ IDEA).

Topics: Kotlin, Tutorials

Adapting Material Design to the hosting platform: Google has finally spoken

Cross-platform design is once again a hot topic - especially if who’s talking is Google and when Material is the key word coupled with design. But is it really a viable option?

Topics: Material Design

Reusing features in different flows of your app with Dagger

Problem Statement

Imagine that your app provides Fingerprint authentication. Your users will have to enable it manually. They can do it either after they register into your app (Registration Flow) or once they've logged in (In App – Settings).

Topics: Dagger, Tutorials

Death Blow Dealt to Cyanogen

Cyanogen exited the market over the holiday weekend, releasing a statement that nightly builds will be discontinued no later than New Year’s Eve 2016.

Topics: CyanogenMod

Implementing Android App Shortcuts

With every release of Android, there comes a myriad of new features and Android Nougat 7.1 is no different. One of these new features is App Shortcuts. App Shortcuts allow the user to access primary actions in your app straight from the launcher, taking the user deep into your application, by long pressing on your app icon. Users can also pin these shortcuts to the home screen for even quicker access to your app’s primary actions. In this tutorial, we’ll cover how to boost your user’s experience by implementing App Shortcuts in your app.

Topics: Tutorials

Publishing Android Libraries to Maven

If you have used any Android open source libraries (and you absolutely should since we should never reinvent the wheel), I’m sure that you’ve seen this before on Github.

Shameless self promo for my Ticker library

There are many documentations across the web regarding this topic, but most of them are geared toward general Java libraries and hard to decipher through since not all of the steps are necessary for an Android project. In this post I will try to simplify the process and outline the things specific to publishing an Android project so you can focus on the more important stuff.

Topics: maven

Leading Android Developers join the Fireside Chats: An Android Career Panel at AnDevCon

AnDevCon is loaded with special events, including, for the first time, Fireside Chats: An Android Career Panel. While the Fireside Chats aren't new to the program, the topic is and will highlight three leading Android developers in the community. The event will take place at the Hyatt Regency San Francisco Airport on Wednesday, Nov. 30, at 7:00 pm, immediately following the Networking Reception.

Topics: AnDevCon

'Rxify': The Anti Cache-then-Network OR Network-then-Cache Problem

By - @ragdroid (Twitter, Medium)

We all have heard about the classic “Cache-First then Network” problem. If not, then let’s discuss about it a bit. Cache-First then Network problem states that:

Topics: RxJava, Tutorials