
A high-level presentation about software for processing large quantities of data, it supports horizontal scalability, restarts during operation and is not using a database for tracking progress.
A high-level presentation about software for processing large quantities of data, it supports horizontal scalability, restarts during operation and is not using a database for tracking progress.
Dual Writes often happens in a microservices based architecture. Whenever a piece of data changes in one place, we need to persist or react on it on multiple places. Imagine a user bought a product on our website and we need to save order in the database and inform a delivery service that they should […]
Resources: Notes on structured concurrency, or: Go statement considered harmful Roman Elizarov — Structured concurrency KotlinConf 2017 – Deep Dive into Coroutines on JVM by Roman Elizarov Communicating sequential processes This blog post is in progress so I will update it gradually. There is a presentation that I have recorded:
This article describes how a Cloud Native application should look like, it is based on the well known 12 Factors. At the moment of writing this article, in my understanding, the Cloud Native is not only about code that developers write, but it is also a way of organizing engineering teams so that their work […]
I will start with a simple example where we want to have an AbstractBuilder for building Pet instances, in our example this will be a Dog. Here are the Pet class, and the Dog class that extends Pet Suppose we need a builder for building Dog instances and we know that in future there will […]
The Unit return type declaration is optional for functions. The following codes are equivalent. Single-Expression functions:When a function returns a single expression, the curly braces can be omitted and the body is specified after = symbol fun sum(a : Int, b : Int) : Int = a + b Explicitly declaring the return type is […]
Hello World Kotlin programs start at the main function. Here is an example of a simple Kotlin “Hello World” program: When compiled this code will be compiled into a file named after file name + ‘Kt’, if your file was named Main.kt, the compiled code will be in a file name MainKt. In the above […]
When writing software, it is important to keep you organized and focused, losing focus or vague understanding requirements will endup in a bad written system in the best case. If you have got a large body of work that needs to go into production there are lots potential things that can go wrong. When you […]
S3Fuse allows you to mount an S3 bucket to your local storage and interact with it like it was stored into your local storage. It is written in Java and it will be published to my github account soon. It allows to read data from S3 but it is not possible yet to write data […]
Recently I run into a problem where hashing some data had a big impact on the application performance. There are few factors that influenced this but it required 2.5x more instances, imagine when you have 15 instances of you application in production and it requires 38 to serve the same traffic. In order to understand […]