avoid solving same subproblems What is Dynamic Programming “Dynamic Programming was basically a phrase made up to confuse the government about what RAND was doing.” - Richard Bellman, ‘father’ of dynamic programming
all other problems, the key is to recognize common patterns Continuous practice is critical - you’re probably not going to master dynamic programming in 2 weeks. Why is Dynamic Programming so difﬁcult?
an array to store solutions to ‘subproblems’ - what would be the solution up to ‘this’ point? - Use stored solutions to populate future elements of the array - writing out the arrray and populating it by hand often helps you come up with the algorithm later
half does the other problem - 30 minutes, everybody tries to do their own problem - 10 minutes - group 1 explains their problem - 10 minutes - group 2 explains their problem - Last 10 minutes - everybody talks about the last problem and brainstorm what the dp array would look like
team ﬁgure out what to work on in the next 3-6 months? - How does the team tackle tech debt? - What is a typical release process? - Weekly? Biweekly? - How does the team prepare for releases? - How is the release monitored afterwards? - Are there oncall schedules?