Quantum Computing: Qubits and Superposition

Computing is evolving beyond traditional bits and bytes. Quantum computing, based on quantum mechanics, has the potential to solve problems much faster than today’s computers. But how does it work, and what does it mean for data processing and speed? I will explore qubits and how they differ from classical bits, highlighting their unique properties. … Read more about “Quantum Computing: Qubits and Superposition”

Federated Query Engine: Real-Time Optimization with Trino

The Growing Need for Federated Query Engines Have you ever encountered a use case where you need to gather data from multiple databases to arrive at a solution? For instance, analyzing sales across different categories or calculating revenue flowing through multiple channels —such cases often involve data may be residing in different data storage solutions. … Read more about “Federated Query Engine: Real-Time Optimization with Trino”

Vector Databases: Data Storage, Querying, and Embeddings

In the AI space, vector databases are emerging as essential tools for handling unstructured data, such as images, audio or even text. These databases leverage vector representations of data to facilitate efficient searching, retrieval, and analysis. This blog delves into how vector databases operate, the process of generating vector embeddings, the models used, and the … Read more about “Vector Databases: Data Storage, Querying, and Embeddings”

Build Neural Network : Feedforward and Backpropagation with NumPy

Understanding the inner workings of Artificial Neural Network (NN) is crucial for anyone delving into the field of deep learning. This post will explore forward propagation, backward propagation, the critical role of weights and biases, and positive vs negative gradients. Using Python libraries like PyTorch or TensorFlow makes building a neural network architecture seem straightforward—until … Read more about “Build Neural Network : Feedforward and Backpropagation with NumPy”

CQRS : Schema Design , Synchronization and Consistency Considerations

This blog post is an extension of my previous article on Event-Driven Architecture (EDA) with Event Sourcing. In this post, I will make an attempt to delve deeper into the CQRS (Command Query Responsibility Segregation) pattern, exploring its components and flow, and various considerations in terms of schema design, command and query model synchronization and … Read more about “CQRS : Schema Design , Synchronization and Consistency Considerations”

Boosting EDA with Event Sourcing for Improved Reliability

Event-driven Architecture (EDA) needs no introduction, as it’s increasingly being adopted across various domains. However, there are key enhancements that can further bolster the resilience of EDA systems. In this blog, I will explore how the reliability and auditability of an Event-Driven Architecture (EDA) system can be enhanced by leveraging the Event Sourcing architectural pattern. … Read more about “Boosting EDA with Event Sourcing for Improved Reliability”

Distributed Tracing: A Powerful Approach to Debugging Complex Systems

Modern applications are increasingly built using microservices, where hundreds of small, independent services work together to handle user requests. While this architecture brings scalability and flexibility, it also introduces significant complexity. When a service slows down, fails, or when pipelines take an excessive amount of time, pinpointing the root cause across a complex web of … Read more about “Distributed Tracing: A Powerful Approach to Debugging Complex Systems”

Building Resilient Software: Key Fault Tolerance Strategies

In today’s interconnected world, software systems are expected to deliver uninterrupted services despite inevitable failures. With increasing demands for availability, reliability, and scalability, designing systems that can gracefully handle failures is paramount. In this blog post, I will explore how fault tolerance can be implemented at various levels of a microservices-based system architecture. Understanding Fault … Read more about “Building Resilient Software: Key Fault Tolerance Strategies”

Exploring Explainable AI: A Deep Dive into SHAP

We see AI models excelling at complex tasks and delivering impressive predictions. While this is undoubtedly remarkable, it raises an important question: how can we ensure the predictions are unbiased and trustworthy? This is where Explainable AI comes into play What is Explainable AI ? Explainable AI(XAI) is a critical field in artificial intelligence which … Read more about “Exploring Explainable AI: A Deep Dive into SHAP”

Latent Factors – The Hidden Structure

Latent factors are hidden building blocks that shape user preferences and item characteristics. They are not directly observable but are inferred from the data through a process called dimensionality reduction. These underlying characteristics or hidden dimensions explain the patterns in the interactions between users and items.Furthermore , they also influence the user interactions (like ratings, … Read more about “Latent Factors – The Hidden Structure”

Apache Spark — Job monitoring

For the most part the primary reason why we want to use Spark is to accomplish optimal runtime performance from big data workloads. Given that is accepted motivation, how do we actually verify if performance is what is expected to be or see what is going on at basic level of task ? We can do that … Read more about “Apache Spark — Job monitoring”