Using multicloud to avoid lock-in and going cloud native are on everyone’s list of what will be important this year. But misinformation is everywhere. Credit: MatDesign24 For some reason I’m on the list of every PR firm with a client that needs to have its predictions for the upcoming year heard. Mostly their guesses are obvious and unhelpful, such as “cloud computing will continue to grow” or “cloud security will continue to be a concern.” People are really going out on a limb. However, I see a few predictions over and over again. I suspect that many out there in the cloud computing market are beginning to believe them, so I need to point out some realities that are often overlooked or misunderstood. The rise of multicloud to become “cloud agnostic” is the most common—and most concerning—prediction. I especially worry if the perceived benefit is that being cloud agnostic refers to environments that are capable of operating with any public cloud provider with minimal disruptions to a business. The idea seems compelling, considering that you can leverage best-of-breed public cloud computing services, such as choosing storage from two or more public cloud providers. Unfortunately, the reality is that applications and data must be localized to a specific cloud provider to be of true value to the business. This means that you’ll have to lock in to a cloud provider to take true advantage of that cloud provider’s capabilities. So if you leverage multicloud, and at the same time attempt to be cloud agnostic, you’ll have to take the least common denominator approach to building applications and connecting data storage. This means that you won’t be optimized for any public cloud platform, or that you won’t run well anywhere. I’ll also mention that you’re missing important native features such as security, governance, management and monitoring, etc. If you do use these features, that application and data won’t be cloud agnostic since they’re no longer portable between public cloud platforms because of the coupling of cloud services optimized for those platforms. No good cloud architect will take this approach given the negative trade-offs. I push back on them weekly. Of course, emerging technologies such as containers and container orchestration engines do provide cross-cloud portability. The compromise here is that you’ll have to port your applications and data to containers, which adds cost and risk. But it’s an option. A second prediction concerns the building of “cloud-native” applications. Simply put this means that you’ve refactored or purpose-built applications and data storage to take advantage of native or proprietary features of specific public cloud platforms. The applications have been coded to take advantage of the native services provided by a single public cloud provider, such as native security, native management, or native databases. Cloud native is a good thing in that it allows developer and architects to optimize applications and data storage using services for the cloud provider they run on. You’re building and deploying applications that are almost 100 percent optimized, and thus provide better performance, security, and reliability. The price is public cloud provider lock-in. Port the applications and data to another public cloud provider and you’ll need to do some major surgery to make them cloud native to the new provider, such as AWS or Google. I don’t mean to be the designated buzzkill here. It’s just my reaction to the amount of misinformation out there right now and the need to push back on some of it. I would rather you move to multicloud or cloud native with your eyes open, ready to make some tough choices. 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