README.md
November 1, 2025 · View on GitHub
CS Notes is now backed by Cloudflare!
Click ★ if you like the project. I really appreciate it 🙏🏻!
Why these CS Notes deserve your attention?
Second Brain Structure
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!
Hand-crafted Diagrams
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 😃.
A Ten-Year Project
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.
Project Stats
Notes Navigator 🧭
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