Day 1 - Vec<int>: growable array; doubles then copies. Day 2 - Rule of Five Vec: copy clones, move steals. Day 3 - Vec<T>: templates; begin/end are pointers. Day 4 - UniquePtr<T>: one owner, move-only, auto-delete. Day 5 - Mystring: SBO; short inline, long on heap. Day 6 - FixedRing: circular queue; power-of-two wrap. Day 7 - Matrix: flat row-major; reorder loops for cache. Day 8 - FlatMap: sorted vector; lower_bound finds keys. Day 9 - Arena: bump-allocate; reset frees everything.