Aditya Chatterjee's Blog, page 18
September 9, 2023
Dynamic Optimality Conjecture: Unlocking BST Efficiency
One puzzling idea stands out in the complex realm of computer science, where algorithms and data structures rule supreme: the Dynamic Optimality Conjecture. It's an intriguing puzzle that begs to be solved and holds the potential to completely alter how we store and access information. In this article at OpenGenus, we will examine Dynamic Optimality Conjecture, from its basic characteristics through its prospective applications and advantages in the actual world.
Index1. Origin of ...
Copy file from docker to local host
In this article at OpenGenus, we have explained how to copy a file from a Docker container to local host or system. This command is "docker cp container-id:/path/to/file .".
Table of contents:
Steps to Copy file from docker to local hostSteps to Copy file from docker to local hostThere are two steps to copy a file from a Docker container to the local host or system so that you can use the file outside of Docker:
Get the container ID of DockerTo get the list of ID of all Docker container i...
September 8, 2023
System design of a Grocery System (Amazon Fresh / BigBasket/ JioMart)
Table of Contents:
IntroductionSystem design of Amazon FreshRequirementsCapacity estimatesStorageBandwidthNumber of servers neededHigh-level designDatabase designAPIsAchieving other requirementsComponentsRecommended technologies and algorithmsDatabaseServerNetwork protocolLoad balancer routing methodGeo-hashingConclusionIntroductionThe topic of this article at OpenGenus is system design, namely the system design of a grocery system such as Amazon Fresh or BigBas...
September 7, 2023
CSS writing-mode explained
In this article at OpenGenus, we will discuss the CSS property 'writing-mode' and where we can use it.
Table of contents:IntroductionNeed of writing-modeValues of writing-mode propertyExample with codeConclusionIntroductionThe writing-mode property is like a secret language for web developers. It helps them decide how text should look on a web page. You know how some books are read from left to right, while others are read from top to bottom? Well, this property lets web developer contr...
September 4, 2023
Efficiency Paradox: Understanding Brooks' Law in Software Engineering

Have you ever found yourself in a situation where you're working on a project that's already running late, and you think that adding more people to the team will speed things up? It might seem like a good idea, but it can actually make things worse and delay the project even more. This idea is known as Brooks' Law, named after a computer scientist named Frederick Phillips Brooks Jr., who said that "adding more people to a late software project makes it even later."
In this article, we will delve...
Introduction to Tauri [with practical WebDev project]
In this article on OpenGenus, we will explore an introduction to building lightweight and secure desktop applications using Tauri.
Table of contents:
IntroductionFeatures of TauriInstallationCreating the ApplicationQuizIntroductionTauri is an open-source framework that empowers developers to create native desktop applications using familiar web technologies such as HTML, CSS, and JavaScript. It presents a unique approach to application development, merging the cross-platform capabilities...
September 3, 2023
Command Query Separation

In the broad world of software development, our primary goal is to create applications that work well, are easy to maintain, and can grow as needed. One important principle that helps us achieve this is called Command Query Separation (CQS). In this article at OpenGenus, we will explore CQS, its practical benefits, and how it can help us build software systems that are not only effective but also strong and adaptable.
Table of contents:
Unpacking Command Query Separation (CQS)Commands: Making ...17 Raspberry Pi project ideas
A Raspberry Pi is a compact single-board computer that's about the size of a credit card. Despite its diminutive form factor, this single-board computer boasts the capability to host and run a complete operating system. Notably, it possesses the versatility to execute a wide array of tasks that are traditionally associated with conventional laptops and computers.
Thanks to its user-friendly interface and affordability, the Raspberry Pi has garnered substantial attention across a diverse range o...
Go Interfaces : A beginner's guide

An interface at its best, is an interaction point where two different systems meet in order to interact with each other.
Interfaces in Go are none different, they can be understood as interaction points for two or more apparently unrelated types.
The interface in Go language is a built-in construct to introduce custom types. Interfaces are abstract which means that we are not allowed to instantiate them. For some type to be compatible with an interface, it has to implement the metho...
Mastering Multi-Label Classification

In the ever-evolving landscape of artificial intelligence, where data rules and algorithms reign supreme, one particular challenge stands out: multi-label classification. Imagine a scenario where you need to classify an image not into a single predefined category, but into multiple relevant ones. This intricate task finds its application in diverse domains, from image recognition and medical diagnosis to text categorization and recommendation systems. Delving into the intricacies of multi-label ...


