Training: Tweet"Principles of Reactive Programming"
One of the most hyped topics in our industry these days is "Big Data". After focusing on Volume, people are now recognizing that Variety and more importantly Velocity are as important, or in fact, even more important than just pure volume for application developers. All modern Desktop, Web and Mobile applications require sophisticated coordination and orchestration of asynchronous data and event streams originating from web services, UI elements, sensors, GPS, push notifications, etc. and hence developers need powerful tools to compose asynchronous data streams.
In this course, we'll examine how to apply Reactive Extensions (Rx) to manage and analyze events and real-time data streams and act on them in an asynchronous manner. This course will be largely hands-on and driven by practical and language independent examples using sample data sources from sensors, GitHub, Twilio and Netflix, and applying Rx to the Web via RxJS and HttpClient, as well as creating GUI apps using Rx.NET. We'll also look more data-analytical intensive, such as creating real-time data processing and aggregation of Twitter and stock streams in a clean, testable way.
Keywords: Big Data, velocity, streaming data, asynchronous programming, LINQ, complex-event processing, reactive programming.
Target Audience: Developers interested in real-time analytics over streaming big data and compositional event processing. Rx developers of all levels who would like to interact the inventor of the technology.
Requirements: We recommend attendees using Windows to install LINQPad and the reactive extensions for .NET and JavaScript from NuGet. For those on OSX and Linux, we would love you to play along using Xamarin Studio, using GitHub's ObjectiveC implementation, Netflix's RxJava, or Google's Dart. In case you do want to prepare yourself for this course, we recommend to have a look at Introduction to Rx. Knowledge of monads and category theory is not required.