There's a lot I want to learn, and a lot I've learned and yet to be documented. Here's where I list both.

I will check the checkbox only after writing about it.

Computer Science

Algorithms

  • Basic Foundation
  • Asymptotic Notation
  • Complexity (Big O notation)

    • Size complexity
    • Time complexity
  • Recursion and Backtracking
  • Greedy Algorithms
  • Divide and Conquer Algorithms
  • Dynamic Programming
  • Sorting

    • Bubble
    • Insertion
    • Selection
    • Merge
    • Heap
    • Quick
    • Tree
    • Counting
    • Bucket Sort
    • Radix Sort
  • Searching

    • Binary search
  • Pattern matching
  • Hashing

Data Structures

  • Strings
  • Lists

    • Arrays
    • Linked lists

      • Singly linked lists
      • Doubly linked lists
      • Circular linked lists
  • Stack
  • Queue
  • Hash tables
  • Trees

    • Tries
    • Binary tree
    • Segment tree
    • AVL tree
  • Priority Queues & Heaps
  • Graph

Computer Networks

  • Basics

    • Basic terminology to get started with networks
    • Internet: Behind the scenes
    • Unknown things about networking
    • Network topologies
    • Types of networks
    • TCP/IP Model
    • OSI Model
  • Data link layer
  • Network Layer
  • Transport Layer
  • Application Layer
  • Network Security and Cryptography

Operating Systems

  • Basics

    • What is Operating System?
    • Boot Block (What happens when you press power on in operating system?)
    • Types of Computer Memory
    • Difference b/w 32-bit and 64-bit OS
    • UEFI
  • System Architecture
  • CPU Scheduling
  • Process Synchronization
  • Deadlock
  • Processess & Threads
  • Memory Management
  • File and Disk Management

Database Systems Concepts and Design

  • Fundamentals of Databases

    • Models
  • Entity Relationship Model
  • ER Relational Mapping
  • Normalization
  • Functional Dependencies
  • Transactions and Concurrency Control
  • Indexing, B, B+ Tress
  • SQL
  • NoSQL (MongoDB, Firebase)
  • GraphQL

Data Analysis

Information Visualization

JavaScript

Language Concepts

  • Scope & Closures

    • Scope
    • Lexical Scope
    • Function vs. Block Scope
    • Hoisting
    • Scope Closures
  • this & Object Prototypes

    • this
    • objects
    • Prototypes
    • ES6 class
  • Types & Grammar

    • Types
    • Values
    • Natives
    • Coersion
    • Grammar
  • Async & Performance

    • Async
    • Callbacks
    • Promises
    • Generators
    • Program Performance
    • Benchmarking & Tuning
    • Async Patterns
  • ES6 +

    • Updated Syntax
    • Async Flow Control
    • Collections
    • API Additions
    • Meta Programming
  • Cookies
  • File Handling
  • Below Javascript (JavaScript Engine)
  • How browser works!
  • Scrolling
  • Drag n' Drop

Frameworks/Libraries

  • React

Python

Language Concepts

  • Basics

    • Python data types
    • What is the importance of indentation?
    • Comments and Documentation
  • Operators
  • Variable scope and binding
  • List and its methods
  • Dictionary and its methods
  • groupby()
  • Iterables and Iterators
  • Functions
  • Decorators
  • Classes
  • String and its methods
  • Diff between Module and Package
  • Math Module
  • Complex Module
  • Collections Module
  • Operators Module
  • JSON Module
  • The os module
  • locale module
  • Itertools Modul
  • Asyncio Module
  • Functools Module
  • tkinter
  • Generators
  • regex
  • Context Managers
  • Subprocess
  • Type Hints
  • Garbage Collection
  • Multiprocessing
  • Sockets
  • Websockets

Frameworks/Libraries

  • Flask
  • Django
  • Celery
  • RabbitMQ

DevOps and CI/CD

  • Docker
  • Creating a Pipeline
  • Kubernetes