Software development is saturated with frameworks, methodologies, and processes; most of which come with the promise of better development. Just ask any developer, and they will likely only be too happy to share their favourites or suggest which method you should use. Are you looking to implement a large project successfully? They could suggest a method. Are you trying to avoid discrepancy between design documents and what is actually implemented? They know a framework that’s perfect for that. And if you wanted to ensure your project has minimal regression and is maintainable over time, then they certainly know what process you should follow. But what happens when the complexity of your projects grow and faithfulness to just one method doesn’t provide the benefits and value your project (and the user) deserve? As we learned from the hybrid cloud, very often the best solution to a complex problem is a combination of several.