F(by) is the only functional programming conference in Belarus.
This year we have decided to focus on web development with functional programming. Presentations will be divided into 2 blocks: backend и frontend.
In the backend-part we'll see how tasks, that are standard for web, are being solved on such languages as Clojure and Scala, we'll also talk about functional approach in Kotlin.
VP Engineering at Toptal, Bulgaria
Pierre-Yves is CTO and co-founder at Exoscale where he is responsible for architecture and strategic technology choices, relying on experience in the architecture of very large corporate system as well as technical product design in several startups. Pierre-Yves is an active member of the open-source community with key contributions to OpenBSD, collectd, and riemann amongst others.
Malcolm Sparks is the principal author and maintainer of yada, bidi and a number of other Clojure libraries. He is a founder of JUXT, a software firm working exclusively with the Clojure stack.
Matthias is a software engineer and author from Hamburg, Germany. He has worked in different domains over the years, including healthcare, e-commerce, and finance. Currently, he is focusing on a Clojure and ClojureScript stack. He is also writing a book about building systems with the systems-toolbox.
Mario Arias is a programmer with more than 10 years of experience, mostly on JVM languages: Java, Groovy, Scala and Kotlin. An active member of the Kotlin community from the very first days, he created and maintain several Kotlin libraries. On his free time he trains BJJ and enjoy long cycling trips.
Jon has been involved in the Scala community for over a decade, having launched the first commercial and open-source Scala software back in 2005. Since then, he has successfully deployed Scala projects into small, medium and large businesses, and UK government, but is best known these days for his work on Rapture, the Scala World conference, and as chair of the Scala Center Advisory Board.
Engineer, SoundCloud Ltd.
Nikita has been working with web for more than 10 years now: back-ends on Java, Python, Erlang, Clojure, front-ends on ClojureScript, distributed systems, interfaces and UX. He's the author of DataScript, Rum, Fira Code and AnyBar.
Curiosity is my use case. Clojure developer. Author of Clojure's liberator. Father of four. Creating web services since 1996.
Haskeller, FP evangelist, tech saneness advocate, CTO at Antorica
With the release of Scala 2.12 and work on dotty, things, that were possible only in runtime, become more realistic during compilation. In this presentation we'll consider classic practices of type level programming in Scala, as well as we'll learn how they will be influenced by new progress in compilers technologies that are worked at in EPFL.
Most people are familiar with the `s"Hello, $name"` syntax for composing strings, but that only touches the surface of what is possible in Scala. By combining it with other advanced Scala features such as implicits and macros, we open ourselves up to numerous powerful opportunities with applications in domain-specific languages and type-level programming.
A fast introduction to Kotlin programming language and its functional features alongside with funKTionale library * A tiny introduction to Kotlin * Function types * Extension points * Function composition, currying and partial application * Option, Either and Disjunction * Future developments
Liberator is a clojure liberator to create web services that fully embrace the REST architectural style. In this talk you will learn about the motivation to create liberator and how it's very declarative style allows you to build resources that strictly conform with the HTTP semantics and leverage the full potential of HTTP.
Riemann is a specialized stream-processing engine, dedicated to monitoring distributed systems. Built on top of Clojure, it provides a comprehensive syntax for dealing with events. In this talk we will walk through the underlying concepts and the benefits of internal DSLs in Clojure.
Few inventions have brought the world closer together than HTTP, and what HTTP did for humans back in the 90s it's doing for machines today. Yet most developers only scratch the surface of this crucial protocol, why is that? One possible answer is that it's a tooling problem - we haven't yet developed sufficiently capable tools, tools that can industrialize the creation of APIs, powering the integration of the digital economy. By doing so, we might start to harness the full value of the protocol in helping our software to scale and adapt to change. This talk will provide a full tour of the features offered by yada and bidi, and what the libraries offer a web developer working in the Clojure language.
The systems-toolbox provides a thin layer on top of core.async for building distributed systems in both the browser and the backend. This talk will introduce the library and show how to build real-world applications with it.