We’ll meet on Monday 16th April, 7pm (doors open a little earlier, we aim to start by 7:05pm) at MadLab for a meeting about Real World uses of Functional Programming! Please register to let us know you’ll be attending.

Dan Meyers will be telling us about how his team at the BBC uses Clojure with the Kafka stream processing platform. Dan will be giving us an exclusive sneak preview of the talk he’s had accepted to the Kafka Summit in London later this month. Dan writes:

“In the beginning was PIPs, an API backed by a relational database used to store all the BBC’s programme metadata. But as more clients came, with more requirements and ever more complex queries, it became untenable to build one system able to service them all and maintain performance. Each client wanted a simple interface to be able to ask their specific complex questions, about subjects like availability and scheduling.

“The Programme Metadata team turned to a combination of Kafka and Clojure (a functional, immutable, Lisp dialect) running in AWS to produce multiple pipelines, one per client requirement. This setup turns the normal ETL pipeline on its head, with one homogenous backend and multiple heterogenous outputs. At each level you can see the same pattern repeated, which extends even into the structure of the Clojure code itself. In this talk we’ll go through some of the things we’ve learned, look at how the structure of Clojure mirrors and supports the way Kafka is used, and see how simple commodity microservices can be reused in multiple pipelines to rapidly satisfy new client requirements.”

Do you have a Real World use of functional programming that you’d like to talk about? We’ll have some time after Dan’s talk for you to talk about your project, either as an informal discussion or a 5 minute “lightning talk”! (We may be able to fit in a longer ~20 min talk if that’s preferred.)

Please let me know asap if you’d like to talk (contact the mailing list or ping @lambdamcr) but we may also be able to accept some short talks on the night. (We’re a very supportive crowd, do let us know if you have any questions!)

(Please register to let us know you’ll be coming!)