«Datomic — the functional database», August Lilleaas
Datomic is a brand new kind of database. Queries runs on the client/app, not on the database server. It writes data to other databases, instead of implementing its own storage engine. It has a completely different API for reads vs. writes. And it's single threaded (and, believe it or not, this is an amazing idea). This will be a quick run-through of Datomic and why the aforementioned things are not just good, but great!
«Bring Functional Programming to production (Lightning Talk)», Yaroslav Hryniuk
Writing purely functional applications is hard. There are a lot of parts of the puzzle like typelevel/cats, typelevel/cats-effect, category theory, etc, but, unfortunately, there is no defined complete approach to do that. I am going to put all together and provide a set of rules for writing such kind of applications. Firstly, we are going to abstract over a container, and define code capabilities using typeclasses from cats and cats-effect. Then, I will show some practical problems we can easily solve using given approach. Currently, this approach is being adopted and used in WIX for production.
«Visualising IoT devices with Akka and Grafana», Willem Jan Glerum
Nowadays everything becomes smart at home, smart lights, smart thermostats, smart washing machines and even a smart coffee machine! Every device has its own manufacturer, protocol and API. To get a central monitoring dashboard, we will use Akka to collect different measurements and store them in InfluxDB to be visualised with Grafana. During this talk we will show you how easy you can add a new actor for a new device or protocol.
«Sangria — GraphQL APIs in Scala», Volodymyr Tsukur
REST-ish APIs have become the de-facto standard in the last 10 years. But is it always the right choice? Facebook, GitHub, and Pinterest challenge status quo in network communication and embrace GraphQL - query language for the APIs. This evolving standard also gives you runtime to execute the queries and enables comprehensive dev tooling, making it juicy for a developer to try and explore. That's what we, at Wix, did too! In this talk enriched with live coding, we will see GraphQL in real, practical action under Sangria sauce. We'll elaborate on our experience with GraphQL at Wix, see how it compares to REST, and, like with every other technology, understand its limits and shortcomings. So, is GraphQL right for you? Come by, and we'll see!
«Trembita library (Lightning Talk)», Vitalii Honta
Project Trembita is a library in active development. Modules and functions are designed due to experience of our company and our needs. There are a lot of boilerplate in production code that Trembita could eliminate. It have been started as lazy collections running sequentially, in parallel and on top of actor model. I see a big potential in this project so that we will use it in our production code.