14.02.2019 / By 

User Authentication with Keycloak - Part 1: React front-end

Providing authentication and authorization for the non-public-facing components of your application is an important part of many systems. But all major Scala frameworks come ready-equipped with some native tools for doing that, with complexity and comprehensiveness ranging from basic HTTP schemes with Akka HTTP’s SecurityDirectives to numerous Play plugins such as Deadbolt 2 or Silhouette.But it can be difficult to get what you need out of some of these. And if you have to relearn them for every new framework - it ain’t nice either.Learn how to overcome the additional overhead when moving to an unfamiliar tech stack!

24.09.2018 / By 

Storing files on Amazon S3 with Alpakka AWS S3 connector

S3 (Amazon’s Simple Storage Service) is a popular, widely used object storage service. Uploading a file and storing it on S3 in Akka Http traditionally involves temporarily storing a file before sending it to S3 service. This process can be simplified by using Alpakka AWS S3 Connector. In this post we will take a look at those two different […]

16.05.2018 / By 

Typelevel ecosystem: a high-level overview

In this post, we’ll look at what the Typelevel ecosystem looks like in 2018, and how its various libraries interact with each other. In particular, we’ll focus on how we can compose some of these libraries to build a complete application, in a purely functional fashion. This will not be a tutorial for Cats (there […]

12.10.2017 / By 

Introduction to Machine Learning with Spark and MLlib (DataFrame API)

A pretty hot topic lately is machine learning – the inter-sectional discipline closely related to computational statistics that lets computers learn without being explicitly programmed. It has been found to be of significant use in the field of data analytics – from estimating loan and insurance risk to trying to autonomously steer a car in […]

10.08.2017 / By 

Exploring Tagless Final pattern for extensive and readable Scala code

In this post, I will try to share with you all a functional pattern I stumbled upon recently – Tagless Final. This pattern tries to address a vital problem for every software engineer: how to make sure the programs we write are correct? I will try to explain how Tagless Final works and how it […]

20.07.2017 / By 

Improving Akka dispatchers

Introduction In this article, we will take a closer look at the core of Akka in an attempt to improve its overall performance. To begin with, we will provide a short overview of the Akka toolkit and the Actor system. Following that we will study the life cycle of a message in order to gain […]

13.07.2017 / By 

When old-school developer goes freestyle

This post is about creating relatively simple project with Freestyle, my adventures during this process and some afterthoughts.

05.07.2017 / By 

Making UI easily with Binding.scala

Binding.scala is a one-way data-binding library written in Scala. It lets you create reactive user interfaces by writing concise Scala code. In this post, I’ll guide you step by step through the basics, as well as creating a simple dynamic web page. On top of that, I will discuss some undocumented issues I faced, which might […]

29.06.2017 / By 

Reactive streams for RabbitMQ with Monix

In Why you should know Monix I’ve taken a brief look at some of Monix’s abstractions and utilities, but I haven’t dived into implementing reactive streams elements. This time I’m going to build Consumer and Observer for RabbitMQ message broker.

15.06.2017 / By 

Optics beyond Lenses with Monocle

If you are a Scala developer for some time you are probably familiar with the concept of Lenses. It got a lot of traction in the community as it resolves the very common problem of modifying deeply nested case classes. But what is not that universally known is that there are more similar abstractions. They […]