CS Notes is now backed by Cloudflare!
Click ★ if you like the project. I really appreciate it 🙏🏻!
Each note is interconnected with other notes, just like how our neurons are interconnected with each other. This allows us to make more touchpoints to the concepts, having a deeper and clearer understanding. You can easily refer to other related notes on this same page or view the big picture with the Graph view!
I was unable to find high-quality visuals on the internet to better illustrate some of the concepts, so I created visuals for my notes 😃.
I am planning to work on my notes daily for the next 10 years, building a second brain as I learn from my mistakes and acquire new knowledge. I have made over 800 commits to this repository, totaling 150,000 words over the past 6 months.
Use the quick index below to jump straight to the topics you care about. Expand any domain to browse the underlying tags and linked notes.
| Domain | Focus |
|---|---|
| Architecture, Cloud & Operations | System design blueprints, observability, and cloud platform building blocks |
| Networking & Distributed Systems | Protocols, distributed primitives, and edge connectivity |
| Operating Systems, Hardware & HPC | Kernel internals, memory models, and digital logic |
| Programming Languages & Paradigms | Language idioms, paradigms, and ecosystem insights |
| Software Engineering & Tooling | Engineering workflows, CLI mastery, and productivity tooling |
| Algorithms, Data Structures & Math | Problem-solving playbooks, math fundamentals, and contest prep |
| Data Management | Relational theory, storage engines, and SQL patterns |
| Security & Identity | Security architecture, authentication, and enterprise trust |
| Past Job Experience | Highlights from Binance, Hacktron, and Opcode workstreams |
| Career, Finance & Academia | Professional growth, financial literacy, and academic references |
| NUS | School coursework, module notes, and academic projects |
| AI & Emerging Tech | High-performance AI workloads and modern ML infrastructure |
Architecture, Cloud & Operations
system_design · 24 notes
- Application Load Balancer
- Cache Eviction
- Cache Server
- CDN
- Compute Server
- Database Partitioning
- Database Replication (数据库复制)
- Database Scaling
- Deployment Strategies
- Event-Driven Architecture
- Forward Proxy (正向代理)
- Hub and Spoke Architecture
- Latency Number
- Load Balancer
- Message Queue (消息队列)
- Micro-servercies Architecture
- Monitoring
- Multi Data Center Setup
- Multipart Upload
- Network Load Balancer
- Redis Deployment
- REST API
- Reverse Proxy (反向代理)
- System Design
devops · 10 notes
aws · 22 notes
cloudflare · 12 notes
docker · 12 notes
Datadog · 4 notes
terraform · 4 notes
gcp · 1 note
fly_io · 2 notes
ngrok · 1 note
over · 2 notes
Networking & Distributed Systems
networking · 95 notes
- Access Control List
- Access Network
- Address Resolution Protocol
- API Notes
- AS
- AWS VPC Endpoint
- Bandwidth
- Border Gateway Protocol
- Communication Links
- Computer Network
- CSMA
- DHCP
- Digital Signature
- Digital Subscriber Line (DSL)
- DNS
- DNS Record
- DNS Server
- Docker
- Docker Network
- Dynamic Port Forwarding
- Dynamic Routing Protocol
- Email Routing
- Email Security
- End-to-End Service Access Troubleshooting
- Ethernet
- Exponential Backoff
- File Sharing
- gRPC
- Head-of-Line Blocking (队头堵塞)
- Host
- Hostname
- Hot Standby Router Protocol
- HTTP
- HTTP 1.0
- HTTP 1.1
- HTTP 2.0
- HTTP Headers
- HTTP Request
- HTTP Request Methods
- HTTP Response
- HTTP Status Code
- ICMP
- Internet
- Internet Protocol (IP)
- IP Address
- ISP
- Kubernetes Networking
- Link-layer switches
- Local Port Forwarding
- MAC Address
- Multicast
- Multipart Upload
- NAT
- Netfilter
- Network Bridge
- Network Firewall
- Network Interface
- Network Object
- Network Operations
- Network Packet
- Network Port
- Network Protocol
- Network Relay
- Network Router
- Network Switch
- OpenWRT
- OSI Model
- OSPF
- Port Channel
- QUIC
- Real-time Web Communication
- Remote Port Forwarding
- REST API
- Secure Tunneling
- SEO
- Server Mirroring
- Shadowsocks
- SOCKS
- Spanning Tree Protocol
- SSH
- Subnet
- TCP
- TCP Connection
- TCP Handshake
- TCP Tunneling
- Tethering
- TLS
- TLS 1.2
- Transmission rate
- TTL
- UDP
- URL
- VLAN
- VPN
- X.509 Certificate
distributed_computing · 5 notes
curl · 2 notes
Operating Systems, Hardware & HPC
OS · 109 notes
- Address Space
- Async IO
- Banker's Algorithm
- Barrier (屏障)
- Buffer
- Busy Waiting
- Cache Locality
- Computer Booting
- Concurrency (并发)
- Condition Variable (条件变量)
- Containerisation
- Context Switch
- CPU Cache
- CPU Scheduling Techniques
- Cron Job
- CS2106 Introduction to Operating Systems
- CUDA
- CUDA Synchronization
- Database Comparison
- Deadlock (死锁)
- Device Controller
- Direct Memory Access (DMA)
- Docker Filesytem
- DuckDB
- Event Loop
- File
- File Compression
- File System
- File System Hierarchy
- File System Link
- Filter File
- Flash Memory
- FUSE
- Garbage Collector
- GIL
- Global Interpreter Lock
- Goroutine
- GPIO Pins
- HPC AI
- Hybrid Thread
- Init System
- Inode
- Inter-Process Communication
- Interrupt Handler
- Interrupt Vector Table
- Interrupts (中断)
- IO Bus
- IO Device
- Kernel
- Kernel Space
- Kernel Thread
- Launchd
- Library Call
- Linux Address Space
- Linux Kernel
- Main Memory
- Memory Fragmentation
- Memory Page
- Memory Safety
- MMU
- Multi-core Chip
- Multi-processing
- Multi-Programming
- Multi-threading
- Multipart Upload
- Mutex (互斥体)
- Null Safety
- OS
- OS System Program
- Page Fault
- Page Table
- Pipe (管道)
- POSIX
- Privilege Level
- Process (进程)
- Process Control Block (PCB)
- Process File
- Process Hierarchy
- Process Operations
- Process Scheduling
- Producer Consumer Problem
- Python Behavior
- Python Iterable vs Iterator vs Generator
- Race Condition (竞态条件)
- Register
- RISCV CLINT
- Rust Ownership
- Segmentation Fault
- Semaphore (信号量)
- Serial Communication
- Socket
- Stack
- Swap Space
- Synchronisation (同步)
- System Call (系统调用)
- Systemd
- Thread
- Thread Pool
- Time Slice
- Timer Chip
- TLB
- Trap Interrupt (陷入)
- Unix
- User
- User Space
- User Thread
- VFS
- Virtual Memory
- Virtualisation
os · 4 notes
linux · 13 notes
macos · 5 notes
computer_organisation · 100 notes
- Adder
- ALU
- AND
- Assembly language
- Atomic Instruction
- Base 64 Encoding
- Bit Shifting
- Bitmasking
- Boolean Algebra
- Boolean Function
- Boolean Standard Form
- Branch Prediction
- Branch Prediction Strategies (Heuristics)
- C Array
- C Datatype
- C Function
- C String
- Cache Eviction
- Cache Locality
- Cache Miss
- Cache Strategy
- [Character Encoding (字符编码)](https://notes.yxy.ninja/Computer-Organisation/Number-System/Character-Encoding-(字符编码))
- Circuit Design
- CISC
- Clock Oscillator
- Combination Circuit
- Complete Set of Logic
- Computer Data Representation
- Control Unit
- CPU
- CPU Datapath
- CS2100 Computer Organisation
- Data Latch
- Decoder
- Direct Mapped Cache
- Endianness
- Flip-flop
- Floating-Point Encoding (浮点数编码)
- FPGA
- Fully Associative Cache
- GPIO Pins
- GPU
- Gray Code
- Instruction
- Instruction Execution
- Instruction Set Architecture (ISA)
- Instruction Stages
- Instruction-Level Parallelism
- Integer Encoding (数字编码)
- ISA Addressing Mode
- ISA Instruction Format
- ISA Storage Architecture
- Karnaugh Map
- Language Processors
- Latch
- Logic Gates
- Macro Expansion
- Main Memory
- Maxterm
- Memory Address
- Minterm
- MIPS
- MIPS ALU
- MIPS Control Flow
- MIPS Control Unit
- MIPS Data Memory
- MIPS I-Type Instruction
- MIPS Instruction
- MIPS J-Type Instruction
- MIPS Memory Access
- MIPS R-Type Instruction
- MIPS Register
- Multiplexer
- NOT
- Number System
- Operand Forwarding
- Operation
- OR
- Out-of-Order Execution
- Pipeline Branching
- Pipeline Flush
- Pipeline Hazard
- Pipeline Stall
- Pipelining
- Pointer Arithmetic
- Programming Logic Array
- Read-After-Write(RAW) Hazard
- Register
- RISC
- RISCV CLINT
- RISCV Instructure
- RISCV Kernel Deep Dive
- ROM
- Sequential Circuit
- Sequential Circuit Analysis
- Set Associative Cache
- Set Reset Latch
- Specialised Processor
- Transistors (晶体管)
- XOR
hpc · 5 notes
arduino · 4 notes
boolean_algebra · 11 notes
Programming Languages & Paradigms
c · 17 notes
cpp · 7 notes
java · 41 notes
- Access Modifier
- Address Space
- Boxing
- Common Data Structure Manipulation
- Common Programming Operations
- Common String Manipulation
- Competitive Programming Code Templates
- Cron Job
- CS2030S Programming Methodology II
- Datatype
- Dijkstra's Algorithm
- Duck Typing
- Dynamic Binding
- Exception
- Function
- Generics
- Hash Collision
- Hash Map
- IO Device
- Java
- Java Comparison
- Java Constructor
- Java Keywords
- Java Lambda
- Java Optional
- Java Sorting
- Java Sprintboot
- Java Standard Library
- Lazy Evaluation
- Linked List
- Memory Safety
- Method Overloading
- Method Overriding
- OOP
- Pointer
- SQL Batch Processing
- Type Erasure
- Type Inference (类型推断)
- Variance
- Web Scraping
- Wrapper Class
python · 20 notes
- AWS Lambda
- Common Data Structure Manipulation
- Common Programming Operations
- Common String Manipulation
- Duck Typing
- Event Loop
- Generics
- GIL
- Global Interpreter Lock
- Hash Collision
- HTTP
- Package Manager
- Python Behavior
- Python Iterable vs Iterator vs Generator
- Python Notes
- Python Snippets for Markdown Processing
- Python Toolset
- Pythonic Codes
- Timezone
- Union Find
rust · 18 notes
js · 13 notes
go · 7 notes
functional · 6 notes
OOP · 18 notes
oop · 1 note
programming · 25 notes
- API Notes
- Argument Pointer
- Clean Code
- Common Data Structure Manipulation
- Common Programming Operations
- Common String Manipulation
- Datatype
- Duck Typing
- Exception
- Expression
- Function
- Generics
- gRPC
- Immutability
- Null Safety
- Pointer
- Python Behavior
- Python Iterable vs Iterator vs Generator
- Pythonic Codes
- Statement
- String Interpolation
- Syntactic Scope
- Type Erasure
- Type Safety
- Web Scraping
Software Engineering & Tooling
software_engineering · 28 notes
- Abstraction
- Alert
- Application Performance Monitoring (APM)
- Code Bundling
- Code Editor Setup
- Code for Change
- Code Quality Assurance Tools
- Coding Convention
- Data Layer Abstraction
- Language Processors
- Liskov Substitution Principle (LSP)
- Middleware (中间件)
- Mono Repos
- Monorepo Build System
- nx
- Package Manager
- ReactJS
- ReactJS Common Mistakes
- Real User Monitoring
- Sampling
- Semantic Versioning
- Shim (垫片)
- Software Development Practices
- Span
- Terminal
- Trace
- Type Inference (类型推断)
- Type System
bash · 26 notes
- Asymmetric Cryptography
- Atuin
- Bash Script Parameter Handling
- Bash Scripting
- Cron Job
- DNS
- File
- File Compression
- File System
- File System Hierarchy
- File System Link
- Hash Digest
- Inode
- Instruction Set Architecture (ISA)
- IO Device
- IP Address
- jq
- netstat
- Network Port
- scp
- SSH
- Swap Space
- Systemd
- TCP
- Terminal
- Timezone
git · 3 notes
backend_dev · 1 note
wechat · 1 note
Algorithms, Data Structures & Math
dsa · 53 notes
- Abstract Data Type (ADT)
- Algorithm
- Algorithm Complexity Analysis
- Algorithm Content Page
- Array
- AVL Tree
- Backtracking
- Banker's Algorithm
- Bellman-Ford Algorithm
- BFS
- Binary Search
- Binary Search in Rotated Sorted Array
- Binary Search Tree (二叉搜索树)
- Binary Tree
- Binomial Coefficient
- Combinatorial Optimisation
- Complete Binary Tree (完全二叉树)
- CS2040S Data Structures and Algorithms
- Data Structure
- Data Structure Content Page
- Deque
- DFS
- DFS vs BFS vs Backtracking
- Dijkstra's Algorithm
- DSA Algorithm Template
- Dynamic Programming
- Full Binary Tree (完满二叉树)
- Genetic Algorithms
- Graph
- Greedy Algorithm
- Hash Collision
- Hash Function
- Hash Map
- Heap
- Interval
- Kadane's algorithm
- Kahn's Algorithm
- Linked List
- Memoization
- Minimum Spanning Tree
- Perfect Binary Tree (完美二叉树)
- Prefix Sum (前缀和)
- Priority Queue
- Pseudo-Random Number Generation
- Queue
- Quick Select
- Recursion
- Sorting
- Stack
- Sub-Sequence
- Tree
- Two Pointers (双指针)
- Union Find
cp · 28 notes
- (CodeForces) A Balanced Problem set?
- (CodeForces) All The Same
- (CodeForces) Almost Ternary Matrix
- (CodeForces) Divisibility
- (CodeForces) Equalize
- (CodeForces) Forming Triangles
- (CodeForces) Minimize Inversions
- (CodeForces) Non-coprime Split
- (CodeForces) Partitioning the Array
- (CodeForces) Rectangle Cutting
- (CodeForces) Rectangular Game
- Closest Cities
- Competitive Programming Code Templates
- Container With Most Water
- cp
- CP Tips
- Leetcode - House Robber
- Leetcode - Product of Array Except Self
- LRU
- Next Permutation
- Pasha and Stick
- Pending CP Questions
- Romantic Glasses
- Square Difference
- Valid Sudoku
- Word Break
- XOR
- YetnotherrokenKeoard
problem_solving · 2 notes
math · 3 notes
discrete_math · 44 notes
- Cartesian Product
- Combination
- Combinatorics
- Conditional Statement
- Counting
- CS1231S Discrete Structures
- Deductive Reasoning (演繹推理)
- Direct Proof
- Discrete Geometry
- Discrete Math
- Divisibility (可除性)
- Empty Set
- Equivalence Relation
- Existential Statement
- Fallacy
- Graph
- Indirect Proof
- Mathematical Argument
- Mathematical Function
- Mathematical Proof
- Mathematical Statement
- Mutually Disjoin Set
- Ordered Pair
- Partial Order
- Permutation
- Power Set
- Predicate
- Properties of Integer
- Propositional Logic
- Quantified Rule of Inference
- Quantifier
- Rational Number
- Relation
- Relation Composition
- Relation Property
- Rule of Inference (推理规则)
- Sequence
- Series
- Set
- Set Equality
- Set Notation
- Set Partition
- Set Theorem
- Subset
number_theory · 10 notes
probability · 3 notes
geometry · 2 notes
calculus · 1 note
graph · 3 notes
shortest-path · 1 note
optimization · 1 note
Data Management
database · 11 notes
sql · 2 notes
postgres · 1 note
Security & Identity
security · 33 notes
- Access Control List
- Asymmetric Cryptography
- Authentication
- Authorisation
- AWS ACL
- Ciphertext (密文)
- Cloudflare Access
- Common Security Attacks
- Computer Network
- Cookie
- Digital Signature
- Dynamic Secrets
- Email Security
- Encryption
- Hash Digest
- Hash Function
- HMAC (Hash-Based Message Authentication Code)
- HTTP Basic Authentication
- JWT
- Key's Randomart Image
- OAuth 2.0
- OIDC Authentication
- PEM (Privacy Enhanced Mail)
- Salting
- Security Group
- Session-Cookie Authentication
- Shift-left Security
- Single Sign-On (SSO)
- SSH
- Symmetric Encryption
- Token-Based Authentication
- User Principle Name
- X.509 Certificate

