Cloud complexity may be inevitable, but a few strategies can help keep the chaos contained Credit: Thinkstock Cloud complexity is the number one reason enterprises experience failures with cloud. Cloud-based platforms become complex due to an excess of heterogeneity and fewer common services. The end result is negative cloud computing value. We all wish we had a formula to plug in a few data points and have a cloud complexity ranking pop out, but it’s not that easy. Many factors come into play when ranking your cloud complexity: number of workloads, databases, platforms, storage systems, security models, governance models, management platforms—this list goes on. Many popular approaches that deal with architectural complexity tell you to practice architectural discipline so your systems won’t be complex in the first place. The assumption is that you build and migrate cloud systems in short, disconnected sprints with little regard for standard platforms such as storage, compute, security, and governance. Most migrations and net-new developments are done in silos without considering architectural commonality that would drive less complexity. More complexity becomes inevitable. Although many are surprised when they experience complexity, it’s not always bad. In most cases, we see excessive heterogeneity because those who pick different cloud services make best of breed a high priority. Complexity is the natural result. A good rule of thumb is to look at cloud operations or cloudops. If you’re staying on budget, and there are few or no outages and no breaches, then it’s likely that your complexity is under control. Revisit these metrics every quarter or so. If all continues to be well, you’re fine. You are one of the lucky few who deal with a less complex cloud implementation—for now. The majority of enterprises have a complexity issue right now, or they will have one by the end of 2020, thanks to disconnected cloud builds or migration teams, and focus on best-of-breed and multicloud architectures. Typically, the drawbacks to this approach are, first, insufficient skills, tools, and budgets to keep a complex cloud deployment running. Later you’ll see outages, perhaps a breach, and high turnover in the cloudops team. The first step to address your complexity is to examine all the data, services, workloads, and platforms. Look for ways they can be managed using tools that support abstraction and automation. It’s not simple, but it makes sense that a process to solve complexity will be complex in itself. Watch this space for more steps and details in the near future. Related content feature What is Rust? Safe, fast, and easy software development Unlike most programming languages, Rust doesn't make you choose between speed, safety, and ease of use. Find out how Rust delivers better code with fewer compromises, and a few downsides to consider before learning Rust. By Serdar Yegulalp Nov 20, 2024 11 mins Rust Programming Languages Software Development how-to Kotlin for Java developers: Classes and coroutines Kotlin was designed to bring more flexibility and flow to programming in the JVM. Here's an in-depth look at how Kotlin makes working with classes and objects easier and introduces coroutines to modernize concurrency. By Matthew Tyson Nov 20, 2024 9 mins Java Kotlin Programming Languages analysis Azure AI Foundry tools for changes in AI applications Microsoft’s launch of Azure AI Foundry at Ignite 2024 signals a welcome shift from chatbots to agents and to using AI for business process automation. By Simon Bisson Nov 20, 2024 7 mins Microsoft Azure Generative AI Development Tools news Microsoft unveils imaging APIs for Windows Copilot Runtime Generative AI-backed APIs will allow developers to build image super resolution, image segmentation, object erase, and OCR capabilities into Windows applications. By Paul Krill Nov 19, 2024 2 mins Generative AI APIs Development Libraries and Frameworks Resources Videos