Author: Vipul Kumar

Different log levels to explore

Reading Time: 2 minutes Introduction to Log Levels There are different ways to log messages. In order of fatality log levels have been defined as:Trace – Only when I would be “tracing” the code and trying to find one part of a function specifically. Warn – Anything that can potentially cause application oddities, but for which I am automatically recovering. (Such as switching from a primary to backup server, retrying an operation, missing Continue Reading

Scala

Why Prefer Scala Language

Reading Time: 2 minutes Learning languages is really about concepts and how to effectively use them in practice. Scala has a lot of great concepts that are way better than mainstream.This is the main reason to prefer scala. Scala was designed to look at how OO and functional could be combined in a language that started with the OO side. If you really want to do server-side work, Scala Continue Reading

Multiple Implementation of Actors in Scala

Reading Time: 2 minutes Actor in Scala have multiple way of implementations. Here we are going to discuss about multiple ways of actors implementations. Typesafe Stack combines the Scala language with the Akka framework. Nowthough Scala has actors in its standard library, Akka uses its own implementation. And, if we look for other implementations, We can find that Lift and Scalaz have implementations too! Design Philosophy of Actor Scalaz Continue Reading

scala

How to do Logging in Scala

Reading Time: 2 minutes What is Logging Logging helps us to monitor the activity of our application in case if any error occurs we can check it from the logs and fix it. It also keeps track of the unusual errors or circumstances which can lead down fall of our application. Logging in Scala is very easy to add and maintain. How to do Logging In scala we have Continue Reading

scala

Scala Futures: How to Use

Reading Time: 3 minutes Scala Future gives you a simple way to run an algorithm concurrently. Scala Future: Run and Block By following this approach, first create a future and then block to wait for its result. Future and ExecutionContext A Future[T] is a container that runs a computation concurrently, and at some future time may return either (a) a result of type T or (b) an exception. The Continue Reading

future to IO

Why use Cats IO instead of Scala Futures?

Reading Time: 2 minutes This article focuses on using Cats-Effects IO. Cats effects can be applied to other IO libraries as well such as Monix. We are discussing Future to IO conversion in this blog. Main benefits of using IO: IO is pure, immutable and referentially transparent. It makes it easy to control the execution of the effects. It’s currently the most common solution to reflect the pure and impure Continue Reading

Fibers: The Fundamental Abstraction in Cats Effect 3

Reading Time: 2 minutes Fibers are the fundamental abstraction in Cats Effect, similar to threads, they represent a sequence of actions which will ultimately be evaluated in that order by the underlying hardware. Fibers are very lightweight. Since fibers diverge from threads is in their footprint and level of abstraction. In thread each step is a statement, and defined in sequence by writing them in particular order within a Continue Reading

Cats Effect : Pure Functional way to code in Scala

Reading Time: 2 minutes Follow 5 Simple Rules with Cats Program written using Cats Effect provides incredibly strong guarantees and powerful functionality, performance, safety, and composability, provided you follow each of the following rules: Wrap all side-effects in delay, async, blocking, or interruptible (pro tip: try to keep the size of your delay blocks small; two delays with a flatMap is much better than one big delay) Use bracket or Resource for anything which must be closed Never hard-block a thread outside of blocking or interruptible Use IOApp instead of writing your own def main Continue Reading