Required Reading
The following are required reading for all members of RC Devops and Ops:
- Release Engineering: A collection of essays that provide an entry point into this topic (release management).
User-facing software (such as many components of Google Search) is rebuilt frequently, as we aim to roll out customer-facing features as quickly as possible. We have embraced the philosophy that frequent releases result in fewer changes between versions. This approach makes testing and troubleshooting easier. Some teams perform hourly builds and then select the version to actually deploy to production from the resulting pool of builds. Selection is based upon the test results and the features contained in a given build. Other teams have adopted a “Push on Green” release model and deploy every build that passes all tests.
The most important problem that we face as software professionals is this: If somebody thinks of a good idea, how do we deliver it to users as quickly as possible? This book shows how to solve this problem.
- Modern Software Engineering: Doing What Works to Build Better Software Faster: Working Iteratively
Iteration is defined as “a procedure in which repetition of a sequence of operations yields results successively closer to a desired result.”
Fundamentally, iteration is a procedure that drives learning. Iteration allows us to learn, react, and adapt to what we have learned. Without iteration, and the closely related activity of collecting feedback, there is no opportunity to learn on an ongoing basis. Fundamentally, iteration allows us to make mistakes and to correct them, or make advances and enhance them.
This definition also reminds us that iteration allows us to progressively approach some goal. Its real power is that it allows us to do this even when we don’t really know how to approach our goals. As long as we have some way of telling whether we are closer to, or further from, our goal, we could even iterate randomly and still achieve our goal. We can discard the steps that take us further away and prefer the steps that move us nearer. This is in essence how evolution works. It is also at the heart of how modern machine learning (ML) works.
Recommended Reading
- Blah
Fun Reading
- Blah