Blog and Notes
Search your notes quickly and filter by category for focused revision.
Understanding the Two Pointer Pattern in DSA
While solving array problems in Data Structures and Algorithms (DSA), I discovered a powerful technique called the Two Pointer Pattern. It helps reduce unnecessary work and often turns slow solutions into efficient ones.
Read nowPrefix & Suffix
I wrote this guide to help myself (and anyone else learning) understand the prefix/suffix technique — from zero to being able to recognize and solve it in an interview. I’ll keep it honest and practical: real intuition, traced examples, and...
Read nowPandas : Machine Learning
Pandas Pandas is a Python library for working with tabular data: think spreadsheets, but in code.
Read nowNumPy : Machine Learning
NumPy - Numerical Python
Read nowClient Side Programming
Behind the Browser: 5 Surprising Truths About How the Web Actually Works
Read nowDay 10 of DSA: LinkedList
A Linked List is a linear data structure, just like an array, but instead of storing elements in contiguous memory locations, it stores elements (nodes) connected using pointers.
Read nowIntroduction to Bash
As a beginner to Bash and Linux, I really felt it was difficult to learn at first. But after getting familiar with the syntax, I really liked it more than some of the boring programming languages out there. Bash scripting...
Read nowEssential Linux Commands
Linux is an essential skill for developers and computer science students. As a Windows user, it was a bit hard for me to start with Linux, especially when I wanted to copy, paste, cut, and perform other easy functions from...
Read nowHow I Built My Blog with GitHub Pages: A Beginner's Guide
As a Computer Science student learning in public, I wanted to create a personal blog to document my journey, share my thoughts, and build an online presence. After researching options, I decided to use GitHub Pages because it’s free, easy...
Read nowGit Basics Cheat Sheet
This post documents a simple and beginner-friendly Git cheat sheet created as part of my learning journey. It highlights commonly used Git commands with clear explanations and practical examples, and is intended to help newcomers understand basic version control workflows....
Read nowDay 9 of DSA: Sliding Window - Arrays
Sliding window is one of the most powerful techniques used in array and string-related problems. It helps optimize solutions by maintaining a subset of data and sliding it through the array to compute results efficiently.
Read nowDay 8 of DSA: Advanced Sorting Algorithms
Introduction
Read nowDay 7 of DSA: String
What are Strings?
Read nowDay 6 of DSA: Sorting
What is Sorting?
Read nowLinked Lists — Concepts and Implementation
Why linked lists matter
Read nowDay 5 of DSA: Binary Search
Binary search is an efficient searching algorithm that works on sorted arrays. Also known as logarithmic search, it dramatically reduces search time by repeatedly dividing the search space in half.
Read nowDay 4 of DSA: Searching
Searching helps us find whether an element exists and, if so, at which index. This post focuses only on linear search.
Read nowDay 3 of DSA: ArrayList
Today I learned ArrayList in Java. It is similar to Python lists in that you do not predeclare the size, and you can expand it with add() just like append() in Python. ArrayList is a dynamic array implementation, so it...
Read nowDay 2 of DSA: 2D Arrays
Today, I moved from 1D arrays to 2D arrays. it’s really just an array inside an array. Let me share what I learned today.
Read nowDay 1 of DSA: Arrays Fundamentals
Day 1: Arrays
Read nowMy Plans for 2026: DSA in Java and AI Fundamentals
Looking Back, Moving Forward
Read nowWhy I Started Learning in Public
Introduction As a Computer Science undergraduate, I realized that learning alone is not enough. What truly improves understanding is the ability to explain concepts clearly. This blog is my attempt to document what I learn and make my thinking visible....
Read now