When to NOT use RxJava

RxJava is very powerful. It solves a great amount of tasks easily. But using it in wrong places can turn any codebase into an unmaintainable and buggy mess. Here I will try to explain where RxJava can help and in which cases it is better to avoid using it.

Read →

Managing state reactive way

RxJava nice and easily covers our multithreading needs. But it provides only a half of the solution. While we can compose functions with RxJava, there is no safe way we can have our state (field variables) handled without race conditions and low-level synchronization blocks.

This article describes a simple and practical way for solving multithreading issues that appear even when we’re using such advanced technology as RxJava.

Read →

Why lambdas matter (even on Android)

A little knowledge exchange from an active lambdas user.

Term: Lambda is an anonymous function.

Read →

RxJava magic (finally) goes away

There is too much “magic” inside of RxJava.

Docs and tutorials are either too shallow or too complicated.

Here is the middle ground that is essential to know before playing with RxJava.

In these tests we will take each RxJava part… apart and explore how exactly it works.

Read →

How to have 100% code coverage with tests and be sane

In this article I will discuss unit testing approaches, show a quick and elegant solution to unit tests complexity, benefits of having 100% code coverage with tests and how achieve it easily.

Read →