You certainly don’t have to learn all of this “reactive stuff” if you don’t want to. MVVM and Rx go quite well together but you can implement MVVM with delegates / callbacks. Learning Rx can be challenging but I’ve found it to be very rewarding. I’m definitely a better developer because of the time I’ve spent learning Rx. But to each their own :).