Reactive programming is considered difficult to learn, but it should not be. You have just grasp the very basic idea, and after you do, reactive programming becomes a more natural way to build data processing chain than the traditional procedural way.