Aditya Chatterjee's Blog, page 153

September 26, 2021

Backpressure and Exponential Back-off to handle overloaded systems

In this article, we explored how overloaded networks are handled using techniques such as applying back pressure and exponential back-off. Let us first begin with the reasons for overload and congestion, after which we will learn how to mitigate it.

Table of contents:

How Systems get overloaded?Mitigation of Overload: Congestion ControlBackpressureExponential Back-off

Let us get started with Backpressure and Exponential Back-off to handle overloaded systems.

How Systems get overloaded?

Some...

 •  0 comments  •  flag
Share on Twitter
Published on September 26, 2021 14:12

Different Normal Forms / Normalization in DBMS

In this article, we have explored Normalization in Database Management System (DBMS) in depth along with different normal forms like first normal form, second normal form, boyce codd normal form and others.

Table of contents:

What is Normalization?Levels of NormalizationFirst Normal formSecond Normal formThird Normal formBoyce-Codd Normal formFourth, Fifth Normal form

Let us get started with Normalization in DBMS.

What is Normalization?

Normalization is the process of organizing data in ...

 •  0 comments  •  flag
Share on Twitter
Published on September 26, 2021 14:03

Different Caching Strategies in System Design

In this article, we have explained different Strategies to update Cache in a System such as Cache Aside, Read Through, Write Back and much more. This is an important topic to design efficient system.

Table of Contents:

IntroductionDifferent Strategies
i. Cache Aside
ii. Read-Through
iii. Write-Through
iv. Write-Back
v. Write-Around

Caching(pronounced "cash") is a buffering technique that stores frequently accessed data in a cache. A cache is a temporary storage area with high retrieval speed....

 •  0 comments  •  flag
Share on Twitter
Published on September 26, 2021 12:19

September 25, 2021

Single Shot Detector (SSD) + Architecture of SSD

Single Shot Detector (SSD) + Architecture of SSD

In this article, we will be discussing Single Shot Detector (SSD), an object detection model that is widely used in our day to day life. And we will also see how the SSD works and what makes the SSD better than other object detection models out there.

Table of contents:

Introduction to Single Shot Detector (SSD)What makes SSD special?Structure / Architecture of SSD modelYOLO vs SSDPerformance of SSDConclusion

Let us get started with Single Shot Detector (SSD) + Architecture of SSD.

Introd...
 •  0 comments  •  flag
Share on Twitter
Published on September 25, 2021 03:59

Architecture of YOLOv3

In this article, we have presented the Architecture of YOLOv3 model along with the changes in YOLOv3 compared to YOLOv1 and YOLOv2, how YOLOv3 maintains its accuracy and much more.

Table of contents:

Introduction to Object DetectionOverview of YOLOv3A walkthrough of YOLOv3 architectureYOLOv3 high accuracy secretWhat after YOLOv3?

Let us get started with Architecture of YOLOv3 model.

1. Introduction to Object Detection

In the field of computer vision, object detection is considered to be th...

 •  0 comments  •  flag
Share on Twitter
Published on September 25, 2021 03:44

Object Oriented Programming (OOP) in Rust

In this article, we have explored Object Oriented Programming (OOP) in Rust and covered topics like Object, Encapsulation, Inheritance, Polymorphism and others along with Rust code examples.

Table of contents:

Introduction to OOPWhat is Rust?Objects and EncapsulationInheritance and Polymorphism

Let us get started with Object Oriented Programming (OOP) in Rust.

Introduction to OOP

Object Oriented Programming (OOP) is a term that exists since 1967, coined by Alan Key. In OOP Architecture, the...

 •  0 comments  •  flag
Share on Twitter
Published on September 25, 2021 02:08

September 21, 2021

Longest Increasing Consecutive Subsequence

In this problem, we have to find the Longest Increasing Consecutive Subsequence in N elements. We can solve this problem efficiently using Dynamic Programming in O(N) time.

Table of contents:

Problem Statement: Longest Increasing Consecutive SubsequenceBrute Force approachImproved Naive approachDynamic Programming approach

In summary, the approach are:

Sorting AlgorithmTime complexitySpace complexityBrute Force approachO(N * 2N)O(1)Improved Naive approachO(N2)O(N)Dynamic...
 •  0 comments  •  flag
Share on Twitter
Published on September 21, 2021 11:27

Introduction to Vue

Vue is a progressive JavaScript front-end framework which was developed for creating user interfaces and it could be effectively used to develop Single Page Applications (SPAs).

It is an open-source framework and follows model-view-viewmodel (MVM) pattern architecture where the data is binded two-way to views and components. The popularity of this framweork could be attributed to its easy integration and prototyping, and its small size (~ 20 KB). In this article, we'll understand the working of ...

 •  0 comments  •  flag
Share on Twitter
Published on September 21, 2021 02:32

September 20, 2021

Context Switching in OS

In this article, we have discussed about Context Switching, which is one of the most important and fundamental topics in Operating Systems.

Table of ContentsIntroduction
1.ContextWhat is Context Switching?The need for Context SwitchingPreserving StatePriorityI/O Resource AllocationHandling InterruptsEfficiencyContext Switching triggers
1.Multitasking
2.Interrupt Handling
3.User and Kernel Mode SwitchingWhat is the PCB?Steps for Context SwitchingThe disadvantage of Context Switchi...
 •  0 comments  •  flag
Share on Twitter
Published on September 20, 2021 12:16

Find Peak Element in an Array

In this article, we have explained the problem of finding Peak Element in an Array along with different approaches to solve it efficiently.

Table of contents:

Problem statement: Peak Element in an ArrayThe Linear Search ApproachDivide and Conquer Approach

Let us get started with Peak Element in an Array.

Problem statement: Peak Element in an Array

The peak element in an array is an array element which is not smaller than it's neighbours. For example, given an array of {6,7,10,12,9} 12 is the...

 •  0 comments  •  flag
Share on Twitter
Published on September 20, 2021 09:46