- Sorting Algorithms
Comparison table of common sorting algorithms with when to use each, stability trade-offs, and Big O complexity.
- Big O Notation
Short note defining Big O notation as the number of operations relative to input size and how to simplify a complexity function.
- Computational Geometry
Introduces the convex hull problem in computational geometry and lists the common algorithms for computing it.
- Bloom Filter
Overview of the Bloom filter probabilistic data structure, its false-positive behavior, and common applications.
- Post Score Algorithm
Weighted scoring formula for ranking trending posts, with a variable glossary and a worked numeric example.
- Algo Arrays Searching Sorting
TypeScript walkthrough of array internals (ArrayBuffer, array lists, ring buffers), linear and binary search, the two crystal balls problem, and bubble, quick, and merge sort.
- Algo Heap Trie Graphs
TypeScript notes on heaps and priority queues, tries, graph representations and traversals, maps, and LRU cache design.
- Algo Linked Lists
TypeScript implementations of a queue, a stack, and a doubly linked list built on linked nodes, with notes on their trade-offs.
- Algo Recursion
TypeScript examples of recursion covering the base case, the recursive step, and classic recursive problems.
- Algo Trees
TypeScript notes on tree terminology, traversals, and binary search tree operations.
- Learning Resources
Curated list of articles, videos, courses, and practice sites for learning algorithms, data structures, and cryptography math.
- 1M CCU System Optimization
Summary and best practices for optimizing a system serving 1M+ concurrent users, covering custom trace IDs, async rate limiting with Kafka and Flink, minimal Go architecture, and community Q&A.
- 1M RPS Voucher System
Case study of issuing vouchers at 1M req/s by pre-distributing them into pod RAM, with the trade-offs and the comment Q&A on fraud, Redis HA, and history.
- Algorithms Behind Algolia
Overview of the algorithms that make Algolia a fast real-time search engine, covering inverted indexes with tries, typo tolerance, ranking, bitset filtering, and index compression.
- Optimization Techniques
Techniques and lessons learned for tuning a local in-memory cache synchronized by Redis Pub/Sub, covering serialization, native HTTP, ETags, eviction, race conditions, and pod lifecycle.
- Concepts Notes
Notes on the Go runtime scheduler and the operating-system scheduler article it builds on.
- Layered Design In Go IRI
Explains layered package design in Go, why it follows from the ban on circular imports, and a prioritized list of refactorings for breaking circular dependencies.
- Race Conditions In Go
A Go race condition is shared state whose result depends on unsynchronized interleaving; a data race is the memory-access case, and the usual fixes are a small mutex, an atomic, or a single owner behind a channel, checked with go test -race.
- Scalable Golang Course Notes
Curriculum outline of Viet Tran's scalable Golang course, covering language features, APIs, databases, async jobs, deployment, gRPC, microservices, and DevOps.