Lucas Cavalcanti Clojure/conj 2016 Interview

Lucas Cavalcanti will be giving a talk at Clojure/conj 2016. He will be speaking about building double-entry accounting on top of Datomic and Kafka.

Follow him on Twitter and GitHub.

PurelyFunctional.tv: How did you get into functional programming?

Lucas Cavalcanti: At college I had Scala and Erlang in a Functional Programming course, but since I was mainly doing Java at the time, the only FP I was getting was some map/filter operations using Google Guava. One year later I started a project in Scala, tried to use every single one of its 9001 language features, but still too much OO from my Java background.

Only when I started using Clojure for real at Nubank I get to grasp the real power of functional programming on the most simple yet powerful language I know of.

PF.tv: What is your talk about?

LC: It is about a double entry accounting system built on top of Clojure, Datomic and Kafka, leveraging functional programming, declarative rules, event log processing and generative tests to guarantee correctness, auditing and extensiveness.

PF.tv: What do you hope people will take away from the talk?

LC: How to use the main advantages of Clojure and its ecosystem to solve problems in a domain that is close to math, financial services in this case.

PF.tv: What concepts do you recommend people be familiar with to maximize their experience with the talk?

LC: Some basic knowledge about accounting can help, besides functional and declarative programming, event sourcing and generative (property based) tests.

PF.tv: What resources are available for people who want to study up before the talk?

LC: The talk will be about Clojure, test-check generative testing, schemas, datomic, other than core concepts like event sourcing and declarative programming.

PF.tv: Where can people follow you online?

LC: I'm @lucascs on twitter and github.

PF.tv: Are there any projects you'd like people to be aware of? How can people help out?

LC: No, only the ones I mentioned earlier.

PF.tv: Where do you see the state of functional programming in 10 years?

LC: It will be the basic technique for most software projects, it will be taught in schools before any object oriented code, and will be the foundation of a more powerful and simple paradigm.

PF.tv: If functional programming were a superhero, what superpower would it have?

LC: It would have the power to transform matter, by reorganising its atoms without creating or destroying any of them.