Duckula: Type Safe Backend Services with Clojure, HTTP & Avro
Duckula is a micro-framework for building backend services in Clojure. It provides metrics, logging and input/output validation to ensure correctness of operations by leveraging Avro & HTTP
In this talk, Łukasz would like to walk you through how he and his team have evolved building services, how we started with Plumatic/Prismatic Schema, how that didn't quite work and why we chose to use Avro+JSON and abandon REST-ish approach to building our APIs.
Duckula solves a lot of problems of building a complicated system with a small team: removing boilerplate, automatic documentation generation, observability and integration with other languages.
Łukasz will explain basics of Ring, some of our early approaches to standardize our codebases, how our frontend application communicates with our backend and how we arrived at the design of Duckula. Also, where did the name come from.
Łukasz is an experienced Clojure, Ruby, and Bash developer. In his professional career he has worked on client side projects (starting with old school tools like Prototype through Backbone to React), back-end applications (written in Clojure, Ruby and Go).
Most recently Łukasz co-founded EnjoyHQ and works as a CTO, meaning he does everything from coding, managing the team to filling out 300-question-long spreadsheets for security reviews.