FIELD LOGS
Operational Reports
Declassified insights on engineering challenges, system architectures, and deep dives into backend technologies.
Nine Years in the Making: The JSON Index Feature SQL Server Developers Have Been Waiting For
Nine Years in the Making: The JSON Index Feature SQL Server Developers Have Been Waiting For
The Hidden Complexity Behind Math.random(): What Every Developer Should Know About JavaScript's Most Deceptive Function
The Hidden Complexity Behind Math.random(): What Every Developer Should Know About JavaScript's Most Deceptive Function
Mutex Locks: The Unsung Heroes of Concurrent Programming
At its core, a mutex lock (short for mutual exclusion) is like a special token in a complex digital workspace. When a thread wants to access a shared resource, it must first grab this token. Only one thread can hold the token at a time, ensuring that critic.....
Understanding SQL Server Error Codes: Common Issues and Fixes
When working with SQL Server, you may encounter various error codes that indicate specific issues in database transactions. One of the most common errors is Error 208: Invalid Object Name, but there are several others....
How Domain Name Resolution Works for Hindi Domains – Understanding गृहमंत्रालय.सरकार.भारत/hi
Have you ever wondered how a website opens when you type its name? It’s all the magic of domain name resolution, which connects your browser to the right server in seconds. In this article, we will understand this process in simple terms and uncover the story behind this invisible yet powerful mechanism of the internet!
Electronic Data Interchange (EDI): Revolutionizing Document Communication
Revolutionizing document exchange with seamless, automated EDI—where speed meets security in the digital era!...
Understanding Server Certificate Pinning
In today's microservices architecture and data-driven applications, JSON Schema has become an essential tool for validating data structures, ensuring API consistency, and maintaining data.....
Class Imbalance: A Deep Dive into Solving Uneven Data Distribution
Class imbalance is one of the most significant challenges in machine learning and artificial intelligence, particularly in real-world applications where the distribution of different classes in the training data is not equal. This comprehensive guide explores the nature of class imbalance, its impact on AI systems, and practical solutions to address this challenge....
Understanding Data Seeding in Entity Framework Core
In today's microservices architecture and data-driven applications, JSON Schema has become an essential tool for validating data structures, ensuring API consistency, and maintaining data quality. However, as systems grow and evolve, managing JSON schemas at scale presents unique challenges. This comprehensive article explores best practices, common pitfalls, and practical solutions for maintaining JSON schemas in large-scale applications...
Scaling JSON Schema
In today's microservices architecture and data-driven applications, JSON Schema has become an essential tool for validating data structures, ensuring API consistency, and maintaining data quality. However, as systems grow and evolve, managing JSON schemas at scale presents unique challenges. This comprehensive article explores best practices, common pitfalls, and practical solutions for maintaining JSON schemas in large-scale applications...
Understanding SQL Window Functions: A Practical Guide
SQL window functions solve a critical challenge in data analysis: performing calculations across specific rows while keeping row-level detail. Unlike regular aggregate functions that collapse results into a single row, window functions maintain granularity while providing powerful analytical capabilities..
Unlocking Performance with Object Pooling in .NET
Tired of watching your high-performance .NET applications crumble under memory pressure? I've been there – watching CPU spikes and garbage collection thrashing our production servers during peak loads. But everything changed when I discovered the magic of object pooling, a game-changing pattern that slashed our application's memory usage by 70% and cut response times in half. Let me show you how to master this powerful technique that leading tech companies use to build lightning-fast, scalable systems.
How Low Gravity Messes With Your Satellite Signal: A Down-to-Earth Explanation
your GPS suddenly thinks you're swimming in the ocean while you're cruising down the highway. No, it's not a glitch in the Matrix – it's the mind-bending effect of low gravity playing tricks on satellite signals miles above Earth. Every day, these invisible cosmic forces are secretly warping the very signals we depend on.
Integrating Python with .NET
Ever found yourself stuck between the elegant simplicity of Python and the robust enterprise features of .NET? You're not alone. Imagine combining Python's rich data science ecosystem with .NET's powerful framework - it's like giving a Formula 1 car a rocket engine. Whether you're a seasoned developer looking to leverage Python's machine learning capabilities in your .NET...
The Lock Pattern in .NET 9: A Deep Dive Into Thread Synchronization
In the high-stakes world of concurrent programming, a single misplaced lock can be the difference between a smoothly running system and a catastrophic deadlock that brings ..
Under the Hood: Confluence's Page Versioning System
Every time you hit that Publish button in Confluence, you're not just updating a page - you're creating a new version of it. This system allows you to track changes over time, compare different versions, and even restore old versions if needed. But how does Confluence ..
Replication Logs: The Unsung Heroes of Database Caching
Imagine a world where your data dances at the speed of thought..
Understanding Confluence Macros: The Swiss Army Knife of Content Creation
macros are XML elements in the Confluence Storage Format. When a page is rendered, Confluence processes these XML elements and replaces them with the appropriate output.
A Deeper Dive into Heaps: Binary, Binomial, and Fibonacci
Imagine a world where finding the biggest, smallest, or just-right item is as easy as plucking the top apple from a perfectly stacked pyramid of fruit. Welcome to the world of heaps – nature's own data organizers! These clever structures are like the Marie Kondo of the digital realm, keeping information tidy and accessible in ways that would make any neat freak proud. Whether you're sorting through millions of numbers faster than you can blink, managing who gets to ride the roller coaster first, or finding the quickest route through a maze of city streets, heaps are the unsung heroes making it all possible. So, let's dive into the heap heap (pun intended) and uncover the secrets of these mathematical marvels!
Diving Deep: How Confluence Manages Your Pages Behind the Scenes
Hey All, tech enthusiasts! Ever wondered how Confluence, that collaborative workspace we all know and love (or love to hate, no judgment here), actually stores all those pages, comments, and cat GIFs you've been uploading? Well, grab a coffee and get comfy, because we're about to take a deep dive into the world of Confluence's storage system.
Supercharge Your SQL Server with .NET Superpowers!
Imagine giving your database the ability to leap tall buildings in a single bound. Well, maybe not buildings, but certainly complex computations and advanced operations! Welcome to the world of CLR functions in Microsoft SQL Server – where your database gets to wear a cape and save the day.
Ref Structs vs Traditional Structs in .NET: The Performance Differences
Dive into a world of unboxed efficiency, where performance reigns supreme and garbage collection fears to tread.
Space Technology: The New Frontier of Innovation
Private space exploration, satellite internet constellations, and plans for lunar and Mars missions are advancing rapidly.
Embedded Databases: Powering Local Data Storage in Applications
Zero config, maximum impact: Discover the hidden gem of modern app development using Embedded Databases
Why Databases Loves B+ Tree
B+ Trees are beloved by databases for their efficient range queries, disk I/O optimization, and self-balancing structure. These properties enable consistent performance for various database operations, regardless of data size or distribution. The combination of high fanout, minimal disk access, and versatility in handling both point and range queries makes B+ Trees a cornerstone of modern database systems.
Upsert vs. Separate POST & PATCH: Choosing the Right API Design
Deciding between an upsert endpoint and separate POST and PATCH operations for your API hinges on several factors. Upserts offer a convenient single endpoint for creating or updating resources, simplifying client logic. However, they can be less flexible and potentially less performant than separate endpoints. Separate POST and PATCH provide granular control over resource creation and modification, aligning more closely with RESTful principles. Ultimately, the best choice depends on your specific use case, considering factors like data consistency, performance requirements, and API complexity.
Inline SQL vs. Stored Procedures: A Balancing Act
Inline SQL or Stored Procedures? It's a classic developer dilemma. While inline SQL offers simplicity and flexibility, stored procedures excel in performance and security. The optimal choice hinges on factors like query complexity, performance needs, and security risks. Striking the right balance between these two approaches is crucial for building efficient and robust applications.
Shared Memory State in Distributed System
Distributed Shared Memory (DSM) is a technique to simulate shared memory across multiple computers in a distributed system. It involves managing a virtual address space shared by all nodes, handling memory mapping, and using consistency protocols to ensure data integrity.
Crafting Readable Code with Fluent Design in C#
Struggling with messy C# code? Fluent Design offers a solution! Chain methods together like building blocks, creating clear and readable code that flows like a natural language sentence. This approach promotes better code maintainability and makes your projects a breeze to understand!
SQL Searches with Fuzzy Search: Finding What You Need, Even When It's Not Quite Right
Data disasters strike faster than lightning! Don't let a single hardware hiccup bring your entire business crashing down. Data replication is your digital shield, deflecting downtime and ensuring continuous access to your critical information. Get a grip on your data destiny – replicate your way to peace of mind!
Data Replication: Your Digital Lifeline in a Chaotic World
Data disasters strike faster than lightning! Don't let a single hardware hiccup bring your entire business crashing down. Data replication is your digital shield, deflecting downtime and ensuring continuous access to your critical information. Get a grip on your data destiny – replicate your way to peace of mind!
Choosing the Right Collection: Lists vs. Linked Lists for Frequent Add, Find, and Delete
Stuck choosing between lists and linked lists? Need lightning-fast searches and frequent updates? Lists are your champion! Dive in to learn why they conquer for these operations.
Why Your Login Endpoint Should Always Be a POST
Don't let your login be an open book! Using GET for login exposes credentials like leaving your door wide open. Switch to secure POST requests and keep your user data under lock and key!
The Single-Threaded Powerhouse: Why Redis Reigns Supreme
While the code itself can be multi-threaded, the beauty of Redis lies in its single-threaded nature. This simplifies the codebase and avoids complex synchronization overhead. Instead...
Retrieval-Augmented Generation: Boosting Large Language Models with External Knowledge.
Retrieval-Augmented Generation (RAG) is an innovative approach that elevates Large Language Models (LLMs) by incorporating external knowledge sources. This empowers AI systems to process and generate human-like text with
Benchmarking in Depth: Unveiling Performance Bottlenecks with Edge Cases
Benchmarking is a critical practice in software development, providing a quantitative assessment of an application's performance under various conditions. It allows you to identify performance bottlenecks, compare different implementations,
Taming the Machine Muse: Guardrails for Safe and Ethical Large Language Models
Large Language Models (LLMs) are revolutionizing the way we interact with machines. From composing captivating stories to translating languages with impressive fluency, these AI marvels hold immense potential. However, like any powerful tool,"
Code Flexibility with the Strategy Design Pattern
Ever feel stuck with an algorithm baked into your code? What if you needed a different approach later? The Strategy design pattern is your knight in shining armor, offering runtime flexibility....
Choosing the Right Engine: MySQL vs PostgreSQL vs SQL Server
Picking a database can feel overwhelming! There are two main categories: SQL and NoSQL. Usually, the choice boils down to how your data is structured. But when you're looking at different SQL options, things can get trickier. Let's ditch the tech jargon and break down the key features of the three most popular relational database choices: MySQL, ...
Circuit Breaker Pattern for Error Handling and Dependency Failures
In the fast-paced world of distributed systems, errors and dependency failures are inevitable. These glitches can cause cascading effects, bringing down entire applications. The circuit breaker pattern emerges as a robust technique to gracefully handle such situations and...
Talking Through Pipes: TCP/IP Connections in Golang
Talking Through Pipes: TCP/IP Connections in Golang
Don't Let Planned Downtime Fool You
Don't Let Planned Downtime Fool You!
Untangling the Web: A Look at Topological Search
Untangling the Web: A Look at Topological Search
Don't Get Hacked! Why API Keys Might Not Be Enough for Secure Access
Don't Get Hacked! Why API Keys Might Not Be Enough for Secure Access
Dapper vs. Entity Framework: Micro-ORM Showdown! Performance vs. Productivity - Who Wins?
Dapper vs. Entity Framework: Micro-ORM Showdown! Performance vs. Productivity - Who Wins?
The Adaptable Watchdog: Unveiling Phi Accrual Detectors for Distributed System Health
The Adaptable Watchdog: Unveiling Phi Accrual Detectors for Distributed System Health
ETL vs. ELT: Choosing the Right Path for Your Data Journey
Need data insights in a flash? ELT might be your champion. Prioritize watertight data security? ETL could be your knight in shining armor.
Exploring the Architecture of Azure Service Bus: A Guide for Developers
Exploring the Architecture of Azure Service Bus: A Guide for Developers
From Scans to Text: Unveiling the Magic of OCR
More than just copying, OCR is a detective story! Witness the intricate dance of algorithms as they analyze, dissect, and identify characters, transforming images into editable text.
Thread Pools: Enhancing Concurrency in C#
Thread Pools: Enhancing Concurrency in C#
Penny Perfect:Storing Prices the Right Way in Your SQL Database
Ditch the decimal drama: Store prices like a pro and stop your data from going bananas!
Data Durability in In-Memory Data Store
In-memory databases: Speed demons with a data durability dilemma. Conquer crashes with snapshots, logs, or hybrids, but choose wisely - speed or safety first?
The Duel of Data Structures: LSM Tree vs. B+ Tree
The Duel of Data Structures: LSM Tree vs. B+ Tree
Mixing .NET Frameworks in One Solution: A Balancing Act with Workarounds
Cross-framework fusion: Can two worlds of .NET collide and create a masterpiece? Read on for the recipe (and the workarounds).
Mediator in C#
Mediator in C#
Share Memory in Distributed Systems: No more lonely data!
Share Memory in Distributed Systems: No more lonely data!
Concurrent Thread Safe Queue
In the Land of Data Walls: A Journey Through CORS and the Preflight Call
In the Land of Data Walls: A Journey Through CORS and the Preflight Call
In the Land of Data Walls: A Journey Through CORS and the Preflight Call
The Enigmatic Absence: Why Can't Dictionary Keys in C# Be Null?
The Enigmatic Absence: Why Can't Dictionary Keys in C# Be Null?
Index on a SQL View
Index on a SQL View
Method Behaviour Parameters in .Net
Method Behaviour Parameters in .Net
Schedule Cron Job with .Net core
A cron job is a task that is scheduled to run periodically at a fixed time, date, or interval. Cron jobs are often used to automate system...
Route Short Circuit middleware in ASP.NET Core
Bots and browsers frequently search servers for popular routes like favicon.ico. The middleware pipeline typically completes a request before returning a 404 error.
Dijkstra Algorithm
Dijkstra's algorithm is a game-changer in the world of data structures and algorithms (DSA). It's a greedy algorithm that helps in finding..
Time Series Database (TSDB)
Looking to ingest, store, and analyze large volumes of time-stamped data in real-time? Consider using a Time-Series Database (TSDB).
Storage Mutator in Knowledge Graph
Storage Mutator in Knowledge Graph
Major Pain Points in DDBS Design
Major Pain Points in DDBS Design
Query Execution Plan
Query Execution Plan
Performance Improvement in Distributed DBMS
Performance Improvement in Distributed DBMS
Error Handling in GO
Error Handling in GO
Bun ORM with Golang
Bun ORM with Golang
Context Switching
Context Switching
Cryptographic Hash Function
Cryptographic Hash Function
AlphaZero - as an RL
AlphaZero - as an RL
Writing efficient and fair multi-threaded programs !!
Writing efficient and fair multi-threaded programs !!
Breaking Changes in C# 10.0
Breaking Changes in C# 10.0
Database Indexing
Database Indexing
All About Message Queue
All About Message Queue
IBM Db2
IBM Db2
Design Key-Value [KV Pair] Based Cache System
Design Key-Value [KV Pair] Based Cache System
Understanding Monorepos
Understanding Monorepos
Distributed Transactions: 2 -Phase Commit Protocol
Distributed Transactions: 2 -Phase Commit Protocol
[Tech] Design of Kavach (Train Safety System)
[Tech] Design of Kavach (Train Safety System)
Importance of Model in Domain-Driven Design
Importance of Model in Domain-Driven Design
How Database Indexes make Read faster
How Database Indexes make Read faster
API Designing is an Art
API Designing is an Art
Caching in .Net using IMemoryCache & IDistributedCache Interface
Caching in .Net using IMemoryCache & IDistributedCache Interface
Amazon Prime Video reduced their cloud expenditures by 90% by switching from serverless to a traditional containerized design.
Amazon Prime Video reduced their cloud expenditures by 90% by switching from serverless to a traditional containerized design.
API Composition Pattern in Microservice
API Composition Pattern in Microservice
[Preview] Now you can Edit data models in the Power BI service
[Preview] Now you can Edit data models in the Power BI service
Write-Ahead Logging
Write-Ahead Logging
Upcoming features in EF8
Upcoming features in EF8
BloomFilter in .NetCore
BloomFilter in .NetCore
Designing A Consistent Hashing
Designing A Consistent Hashing
Creating Idempotent API Endpoints at [Stripe] for Payments
Creating Idempotent API Endpoints at [Stripe] for Payments
Creating Dummy Data using Bogus in C#
Creating Dummy Data using Bogus in C#
Docker File Explained!
Docker File Explained!
Rate Limiter in .Net 7
Rate Limiter in .Net 7
[System Design] Review Service of Booking.com
[System Design] Review Service of Booking.com
Rolling Deployments
Rolling Deployments
How Shopify Rebalances Shards without any Downtime
How Shopify Rebalances Shards without any Downtime
Implementing Vertical Sharding
Implementing Vertical Sharding
Hyper Personalised Type Ahead Search
Hyper Personalised Type Ahead Search
Rate Limiter
Rate Limiter
How to Calculate Performance or Capacity of System
How to Calculate Performance or Capacity of System
Scaled to Millions with Google Sheets as Backend - levels.fyi
Scaled to Millions with Google Sheets as Backend - levels.fyi
Scaled to Millions with Google Sheets as Backend - levels.fyi
Scaled to Millions with Google Sheets as Backend - levels.fyi
Message Splitter Pattern in Microservice
Message Splitter Pattern in Microservice
LINQ: Understanding the Performance and Capabilities
LINQ: Understanding the Performance and Capabilities
Sharing Database among Microservices
Sharing Database among Microservices
API call got failed....? still you want to re-try
API call got failed....? still you want to re-try
Database per Service
Database per Service
Proxy: Let's Choose Forward or Reverse
Database per Service
SQL- Avoid the over-optimization pitfall.
SQL- Avoid the over-optimization pitfall.
Let's Decode Buy Now Pay later (BNPL)
Let's Decode Buy Now Pay later (BNPL)
Orchestration or Choreography- A Microservice Game Play
Orchestration or Choreography- A Microservice Game Play
CDN: Exquisite Manifestation of Engineering
CDN: Exquisite Manifestation of Engineering
Un-Layering MFA (Multi Factor Authentication)
Un-Layering MFA (Multi Factor Authentication)
Date-only with (in) .Net6 😉
Date-only with (in) .Net6 😉
Don't get Catch While Designing Cache
Don't get Catch While Designing Cache
Go features helped me to #cut down from 2 hrs to 17 minutes
Go features helped me to #cut down from 2 hrs to 17 minutes
GraphQL vs REST: Which one is better for #Application
GraphQL vs REST: Which one is better for #Application
Decode the Enigma of SQL Isolation Levels: Ensure Data Integrity and Prevent Transaction Anomalies
Decode the Enigma of SQL Isolation Levels: Ensure Data Integrity and Prevent Transaction Anomalies
TPC-C Benchmark
This is about database Benchmarking .
Trade-Offs while making Database choice
Things to consider while making database choice.