on reacting to changes, such as data values or events. • Acting in response to a situation rather than creating or controlling it. • async** resonsive ui
pushed to it: 1. data via the onNext function 2. errors (Exceptions or Throwables) via the onError function 3. stream completion via the onCompleted function