Sunday, June 29, 2014

My takeaways from 'Creating Reactive User Interfaces with Adaptive Consulting's Reactive Trader'

I was listening to the Hanselminutes podcast the other day and the epsidoe featured an interview with a developer in the financial industry. They're making real-time interfaces and they posted a showcase project on github to demo the features.

They've used KnockoutJS + SignalR on the web side of the things and I got a few interesting takeaways from this talk:

  • You can use reactive extensions to treat configuration changes as streams. This allows you to easily push config changes to clients and trigger the re-configuration on their systems.
  • They're pushing out data as JSON right now, but in order to use less bandwidth, they'll move to binary JSON. Furthermore, they're going to push out delta values as in order to save even more bandwidth.
  • Using Reactive extensions on a stream of stock information is incredibly powerful.


Saturday, June 28, 2014

Reactive extensions ... I need to do something with that!

When I was at the Microsoft Techdays in The Hague, I attended talks by Bart de Smet. This guy is a brilliant programmer and brilliant speaker. He's working on amazing projects right now at Microsoft in Redmond.

Katana is one of the projects he is working on and it makes use of Reactive Extensions. I've known about this framework but to date I haven't yet done any work or personal projects with it. It's really cool though: it uses a new perspective on events. Here's what reactive extensions has to say about has to say about it:

The Reactive Extensions (Rx) is a library for composing asynchronous and event-based programs using observable sequences and LINQ-style query operators. Using Rx, developers represent asynchronous data streams with Observables, query asynchronous data streams using LINQ operators, and parameterize the concurrency in the asynchronous data streams using Schedulers. Simply put, Rx = Observables + LINQ + Schedulers.

By using reactive extensions you start working with events like streams that can be queried by LINQ. That makes things VERY easy that used to be tedious tasks.
It's available for all languages by the way!

I'll look into it and post it here as soon as I've got somehting.