ComplexitySprint 2SuccessCompiled Learning ObjectivesCaching (Prep)Identify and explain how web browsers benefit from cachingDemonstrate how caching can trade memory for CPUCache Invalidation (Prep)Identify and explain staleness risks with caching, and the difficulty of invalidationMemoisation (Prep)Define memoisationPre-computing (Prep)Identify a pre-computation which will improve the complexity of an algorithmTrade-offs (Prep)Give examples of trading off memory for CPUGive examples of choosing where work is done in system designOptimise a system design to minimise the cost of operationsUser Needs and Acceptance Criteria Workshop (Day Plan)Identify user personas.Define user needs for different user personas.Identify the benefits of using Who/What/Why in user stories.Write acceptance criteria in Given/When/Then format.Identify the benefits of using Given/When/Then in acceptance criteria.Clean Code Workshop (Day Plan)Identify properties which make code easier to read and modify.Compare the cleanliness of code.