Measure, do not guess

Performance work starts with a measurement

PawWalk feels fast today, but "feels fast on my phone" is not evidence. Every module so far has been about making something work β€” this module is about making it work without wasting the learner's time or battery. The rule that separates real performance work from guessing: measure first, then fix the heaviest thing you found. Optimizing code you assume is slow, without a profiler telling you so, routinely makes the wrong line faster while the actual bottleneck sits untouched.

Instruments (part of Xcode) is where that measuring happens. Three templates you'll reach for constantly: Time Profiler (where does CPU time actually go?), Allocations (what's using memory, and how much?), and the Hangs / Animation Hitches template (is the UI freezing or stuttering?). Each attaches to a running build β€” simulator or device β€” and samples it while you use the app.