Author: Rituraj Khare

woman sitting in front laptop

How to develop Event Driven Application using ZIO Actors

Reading Time: 5 minutes What is ZIO : ZIO is a cutting-edge framework for creating cloud-native JVM applications. ZIO enables developers to construct best-practice applications that are extremely scalable, tested, robust, resilient, resource-safe, efficient, and observable thanks to its user-friendly yet strong functional core. Difference between Akka and ZIO : Akka and ZIO are both the libraries in Scala for building concurrent, scalable, and fault-tolerant applications. Akka is a Continue Reading

woman using laptop computer with vr headset

Replacing type check by pattern matching in Scala

Reading Time: 4 minutes There are several benefits of using pattern matching instead of type checking in programming: Overall, pattern matching can provide a cleaner, more efficient, and more flexible way of handling values in your code, making it a powerful tool for many programming tasks. Example: Here’s a simple example in Scala that demonstrates the benefits of pattern matching: Suppose you want to write a function that takes Continue Reading

close up photo of gray laptop

Should implicit classes always extend AnyVal in Scala?

Reading Time: 3 minutes What are implicit classes? Implicit classes are a feature that allow you to extend the functionality of existing types by adding new methods. They are defined using the implicit keyword and have a single constructor parameter. We can use these class as if they belong to the original type without having to perform explicit type conversion. Implicit classes are particularly useful for adding utility methods Continue Reading

men working on a computer

How to use ZLayer in ZIO

Reading Time: 5 minutes What is ZIO: ZIO is a library for Scala programming language that provides a pure, composable, and type-safe approach to error handling and asynchronous programming. ZIO provides a lot of tools for developers to write applications in a clean, concise, and functional manner. Zlayer is a module in ZIO that provides abstractions for building and composing modular applications. In this blog, we’ll explore the basics Continue Reading

person controlling flight simulator

MapReduce vs Spark

Reading Time: 3 minutes What is MapReduce in big data: MapReduce is a programming model for processing large data sets in parallel across a cluster of computers. It is a key technology for handling big data. The model consists of two key functions: Map and Reduce. Map takes a set of data and converts it into another set of data. There individual elements are broken down into tuples (key/value Continue Reading

woman holding tablet computer

Zio Kafka

Reading Time: 4 minutes ZIO Kafka is a library in Scala, a distributed streaming platform for building real-time data pipelines and streaming applications. It provides a very high-level, composable API built on top of the Kafka Consumer and Producer APIs, allowing developers to write type-safe, functional code for working with Kafka. It is part of the ZIO ecosystem, which is a library for building concurrent, fault-tolerant, and high-performance systems Continue Reading

man working on laptop while woman takes notes

Joins in Spark SQL with examples

Reading Time: 4 minutes Spark SQL Spark SQL is a module in Apache Spark. It allows users to process structured data using a SQL-like syntax. It integrates seamlessly with the Spark ecosystem, including Spark Streaming and MLlib. One of the main benefits of using Spark SQL is that it permits to users to integrate SQL queries with the programming language of their choice, such as Scala, Python, or Java. Continue Reading

Businessman playing digital tablet in cafe

How to write unit test in Scala ZIO

Reading Time: 3 minutes ZIO is a Scala library for creating asynchronous, concurrent, and fault-tolerant applications. It is based on the concept of “effects” and provides a powerful and flexible way to express and compose computations that may have side effects, such as reading from a file, writing to a database, or making an HTTP request. ZIO offers a full-featured ecosystem for building applications, including libraries for common tasks Continue Reading

Open Systems Interconnection (OSI) Model

Reading Time: 4 minutes Open Systems Interconnection Model Introduction : The Open Systems Interconnection Model is a way to isolate communication problems between two remote computers. The abstract model have few layers, and each layer has certain functions. Those functions need to be performed by the services of the respective layer. Layers in Open Systems Interconnection Model : The process of communication between two endpoints in a network can Continue Reading

Grafana vs Prometheus

Reading Time: 3 minutes The open-source Prometheus monitoring tool offers a built-in instrument panel functionality. It considers Grafana its monitoring solution. Both the tools allow users to handle and monitor the data logs. For example, Graph time-series metrics, which are stored in the Prometheus database. So it depends on your monitoring requirements, and which tool you have to use. This article explains both of these solutions. It explains how they Continue Reading


Grafana and Metrics for Monitoring

Reading Time: 2 minutes What is Grafana? Grafana is a database analysis and monitoring tool. It allows you to create dashboard visualizations of key metrics that are important to you. Grafana is a substitute for people who share reusable dashboards. Grafana supports a huge number of sources of data. Since this tool is open source, when any new data has been received. Someone who is observing, is adding support for Continue Reading

Apache Spark

Brief Introduction to Apache Spark

Reading Time: 3 minutes What is Apache Spark: Apache Spark is an open-source data processing engine to store and process data in real-time across various clusters of computers using simple programming constructs. It supports various programming languages like Scala, Python, Java, and R. Spark Architecture: Uses of Apache Spark: It is used for- Applications of Data processing Batch processing Processing Structured data Machine learning Process graph data Processing Streaming data Features of Continue Reading

Method Invocation in Scala

Reading Time: 2 minutes Introduction: Method Invocation is a technique that shows various syntax in which, we precisely call methods of a class with an object. The naming conventions of Scala are the same as of Java, that is:- There should not be any space between the invocation object or target and the dot(.) nor a space between the dot and method name. Nor there should not be any Continue Reading