Category: Blog
-

How to Learn Concurrent Algorithms: Linearizability, Compare-and-Swap, Lock-Free Progress and Memory Reclamation
A beginner-to-professional learning manual for concurrent algorithms: races, atomicity, linearizability, compare-and-swap, lock-free progress, ABA, memory ordering, reclamation and adversarial testing.
-

How to Learn Distributed Algorithms: Logical Clocks, Leader Election, Consensus and Failure Models
A beginner-to-professional learning manual for distributed algorithms: causality, logical clocks, leader election, quorums, consensus, Raft/Paxos ideas, failure models, retries and fault testing.
-

How to Learn Graph Coloring Algorithms: Greedy Ordering, DSATUR, Backtracking and Chromatic Number
A beginner-to-professional learning manual for graph coloring algorithms: greedy ordering, smallest-last, DSATUR, bounds, backtracking, pruning, chromatic number, hardness and real-world modelling.
-

How to Learn Parsing Algorithms: Grammars, Recursive Descent, LL/LR Parsing and Abstract Syntax Trees
A beginner-to-professional learning manual for parsing algorithms: grammars, recursive descent, LL and LR parsing, AST construction, ambiguity, error recovery and parser-engineering trade-offs.
-

How to Learn B+ Tree Algorithms: Pages, Branching Factor, Splits, Merges and Database Indexes
A beginner-to-professional learning manual for B+ tree algorithms: page-aware search, branching factor, linked leaves, splits, merges, occupancy invariants, database indexes and real-system trade-offs.
-

How to Learn Numerical Optimisation Algorithms: Gradient Descent, Newton Methods, Line Search and Convergence
A beginner-to-professional learning manual for numerical optimisation: gradient descent, line search, conditioning, Newton and quasi-Newton methods, stochastic gradients, convergence, tolerances and numerical reliability.