Reactive Programming
In computing, reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change. This means that it becomes possible to express static (e.g. arrays) or dynamic (e.g. event emitters) data streams with ease via the employed programming language(s), and that an inferred dependency within the associated execution model exists, which facilitates the automatic propagation of the change involved with data flow.
Reactive Programming, in Wikipedia. Retrieved 2/24/2018. https://en.wikipedia.org/wiki/Reactive_programming
Position on the Adoption Curve
Presentations about Reactive Programming
High Performance Actors
Actors or Not: Async Event Architectures
RxJava 2 For Beginners
Interviews
Actors or Not: Async Event Architectures
What is the focus of your work today?
I work on a large-scale data pipeline at Activision. We consume various telemetry information from Call of Duty games. Currently I'm mostly focused on ingestion and stream processing. Actually, stream processing is a pretty big area of interest for me recently and I'm trying to learn and absorb as much available information as possible. My background in event-driven systems really helps here.
What’s the motivation for this talk?
I'm constantly amazed how elegant event-driven systems can be: low coupling, expressive failure handling, location transparency... And still, we're so used to building synchronous request/response services. I think that ~90% of all inter-service communication can be made asynchronous. I'm excited to share my knowledge and convince people to try.