Phase 2Days 6-10

Collections, Memory & Functional Building Blocks

Arrays, slices, maps, pointers, strings, closures, and recursion

Phase Goal

Model and transform real data while understanding what is copied, shared, or allocated.

Progress

Day 6: Arrays & Slices — Backing Arrays

Day 7: Maps, Sets & Deterministic Output

Day 8: Strings, Bytes, Runes & Unicode

Day 9: Pointers, Values & Escape Intuition

Day 10: Mini Project — Field Sensor Stream Summarizer

Capstone
Field Sensor Stream Summarizer

Read a large newline-delimited field-sensor export and produce deterministic station coverage, range, dropout, and malformed-record reports for a conservation team.

  • Bounded-memory streaming
  • Stable anomaly and dropout ranking
  • Rejected-record report with tests and benchmarks

Phase Complete!

After this phase, you'll be able to:

  • Arrays as fixed-size values
  • Slice header: pointer, length, and capacity
  • append growth, aliasing, and copy
  • Nil versus empty slices and API semantics
  • Map creation, lookup, comma-ok, and deletion
  • Zero values, nil maps, and mutation rules
  • Set patterns with map[T]struct{}
  • Random iteration order and sorted output

You can apply Phase 2 skills in a finished, explainable Go project.