Reactive Extensions 2013 Year in Review
This past year saw a number of changes with the Reactive Extensions (Rx). The team, with the help of the community, MS Open Tech and others, we have been super busy. We thought we’d take a little bit of time to recap the year, what we did and what we plan to do.
Of course, it cannot be said that there wasn’t change with the Reactive Extensions Team, as Erik Meijer, the founder of the Reactive Extensions, LINQ and many other contributions, left Microsoft so that he could work on Rx on the outside, helping with adoption. We continue as a team to work closely with him and the community on the future direction of Rx.
Going Open Source
- .NET (CodePlex | GitHub)
- C++ - WinRT, MSVC and Clang (CodePlex | GitHub)
- Python 3.x (CodePlex | GitHub)
- Ruby (CodePlex | GitHub)
Some are more complete than others, but we’d love the community’s support with making these libraries better. Contributing has never been easier to the Rx projects has never been easier. You can contribute to Rx with examples, documentation, code, tests. Simply sign the CLA and be a part of Rx!
Another great result of our open source work has been the collaboration with such companies as Netflix. The Netflix engineering team are big fans of the Reactive Extensions, and decided to port the Rx to the JVM in a project called RxJava so that their engineering teams can use Rx on both the client and the server. It currently supports Java 5+, Clojure, Scala and Groovy. The Netflix API takes advantage of RxJava, exposing all service methods to return Observable<T>, which allows for flexible composition, and concurrency safety.
The RxJava project has enabled Netflix developers to leverage server-side concurrency without the typical thread-safety and synchronization concerns. The API service layer implementation has control over concurrency primitives, which enables us to pursue system performance improvements without fear of breaking client code.
Late 2012 and through 2013 was a busy year for the Reactive Extensions team for presentations. In addition, we’ll also be making an appearance at CodeMash in Sandusky, OH.
- CascadiaJS – Don’t Cross the Streams
- Strange Loop – Curing Your Event Processing Blues with Rx (demos)
- QCon San Francisco
- NDC London
The Netflix team has also been quite busy giving presentations not only on RxJava, but also RxJS, which they frequently use as well. These are great presentations that show how a company with scaling needs such as Netflix uses Rx across all platforms and both on the client and server.
- LambdaJam Chicago – Functional Reactive Programming in the Netflix API (Ben Christensen)
- QCon San Francisco
Release of Rx v2.2
Promises for the New Year
This year, 2014, promises to be another great year for the Reactive Extensions team with a focus on many things such as:
- Version 2.3 with ideas around backpressure and other concerns
- Language parity with Python, Ruby and C++ versions
- New languages supported
- And yes, more blogging
Although we don’t blog as much, you can always catch us on Twitter at @ReactiveX! We publish lots of information about Rx and what we’re up to, so follow us!