Agents, brains, and flying robots

It's the year 2013, far into the future. And I'm finally building the software agent that I've been wanting for years. My online secretary, my extended brain, my... digital extension of the fallible, forgetful wetware between my ears.

I've been building IRC bots for a while now. It's not that difficult. But for my more ambitious plans, it always felt like I was missing some component, some piece of the design puzzle that would allow me to code put into code what I know I've always wanted in a software agent.

And earlier this year, I learned what it was: reactive programming. Besides being a talk about bots from the future, this is a talk about reactive programming, and how you can use it to decouple your software in new, interesting ways. A lot of technologies -- listeners, event loops, publish-subscribe -- fall into place when seen from the perspective of reactive programming.

The future is full of cleverly helpful bots, who fly in to simplify our everyday life. But only if we implement them.