Aditya Chatterjee's Blog, page 30
May 14, 2023
Serial Position Effect in UX
The serial position effect is a psychological concept that describes how people tend to remember the first and last things in a list better than the things in the middle. This phenomenon has been observed in various situations, including user experience design.
How it works and how it can applied?In UX design, the serial position effect can be u...
Convert C and C++ code to Assembly Code
In this article at OpenGenus, we have explained how to convert / compile a C or C code to Assembly code using GCC or G compiler.
Table of contents:
Convert C codeConvert C codeConvert C codeThe command to convert a given C code to Assembly code is as follows:
gcc -S opengenus.cThis command will save the assembly code in a filename opengenus.s. The filename syntax is ".s".
For example, if this is your C code:
int main() { int a = 5, b = -1; int sum = a b; return 0;}The corres...
May 13, 2023
Random Forest Classification
In this article at OpenGenus, we have explained the concept of Random Forest Classification in depth along with model implementation in Python.
Table of contents:
IntroductionModel workingsModel code using Python librariesModel code from scratch without using ML-based Python librariesSummary1. IntroductionRandom Forest Classification is a powerful machine learning algorithm used for classification tasks. It is an ensemble learning method that builds multiple decision trees and combines t...
Decision Tree Classification

In this article at OpenGenus, we have explained the concept of Decision Tree Classification in depth along with model implementation in Python.
Table of contents:
I. Introduction
II. Model Workings
III. Model code using Python libraries
IV. Model code from scratch without using ML based Python libraries
V. Summary
Decision Tree Classification is one of the popular and widely used machine learning algorithms that is easy to understand and interpret. It is a supervised learning alg...
A Comprehensive Guide to Git - All you need for VCS

Git is a powerful version control system that is widely used by developers to manage and collaborate on code. It provides a flexible and efficient way to track changes to files and directories, manage multiple versions of code, and collaborate with other developers.
However, with so many Git commands available, it can be challenging to learn and remember them all. That's why, in this article at OpenGenus, we've put together a comprehensive cheat sheet containing all the most useful Git commands ...
Comprehensive Guide to HTML tags

HTML, or Hypertext Markup Language, is the standard language used to create web pages and web applications. HTML provides a set of markup tags and attributes that define the structure and content of a web page. By using HTML, developers can create text, images, videos, forms, and other media, and define their layout and presentation on the web.
Learning HTML is a crucial first step for anyone interested in web development, as it forms the foundation upon which the rest of the web technologies, s...
Comprehensive list of commands for Windows PowerShell

PowerShell is a powerful command-line tool that is included with Microsoft Windows. It provides a flexible and efficient way to manage and automate tasks on your system, from basic file operations to complex administration tasks. PowerShell uses a command-line interface to interact with the system and execute commands.
For many users, however, getting started with PowerShell can be intimidating, given the vast range of commands and functionalities it offers. That's why we've put together a compr...
Comprehensive List to NPM Commands

If you're working with JavaScript, you've probably heard of npm, the package manager for Node.js. npm is an essential tool for developers that allows them to easily manage and share the packages and libraries that their projects depend on. It offers a vast library of over 1.5 million packages and makes it simple to install and manage dependencies.
With npm, you can easily install, update, and uninstall packages, as well as create and publish your own packages to the npm registry. It also provide...
Cluster Indexing

Cluster indexing is a technique used in database management systems (DBMS) to improve the efficiency of queries involving range searches and sorting. It involves organizing the data in a table based on one or more attributes, called the clustering key. In this article at OpenGenus, we will discuss the two approaches to cluster single level indexing in DBMS.
Table of contents:
Main file requirementsMethod 1: Continuous blocks referencing first occurrence blocks in main memoryMetho...The Lock Convoy Problem in OS

Table of Content
IntroductionCausesLimitation of resourcesBad synchonization mechanismsResource contentionPoorly Designed AlgorithmsOperating System LimitationsEffectsReduced ThroughputIncreased latencyCPU UtilizationDeadlocksResource StarvationScalability issuesSolutionsFine grained lockingLock-free algorithmsReader-writer locksSpinlocksLock StrippingAvoiding unnecessary lockingNon-preemptive schedulingChanging Thread prioritiesImagine a canal with few ships an...