Google Cloud has finally launched its own IDE -- or something that approaches it. On Wednesday, the company announced Cloud Code, which isn’t an IDE, but which integrates with certain IDEs to make it easy to write and deploy applications for Kubernetes.
An IDE (short for Integrated Development Environment) is a tool that helps programmers write code. It streamlines many of the tasks required to write out code, keep code neat and clean, test code and (in some cases) deploy code for real-world use.
Traditionally, IDEs were standalone software applications that ran on a developer’s personal computer. Although those are still widely used, over the past couple of years, cloud-based IDEs have come into vogue. Cloud-based IDEs are fully hosted software applications that run directly in the cloud. Not only do cloud-based IDEs save developers from the hassle of having to set up an IDE on their personal computers, but they also make it easy to deploy applications into the cloud, because the code is already in the cloud as it is written.
Of the big three public cloud providers, two have had cloud-based IDEs for some time. AWS added the cloud IDE Cloud9 (which was originally developed by an independent company) to its portfolio in 2016. Azure’s cloud IDE, which is known today as Azure DevOps, is even older; it originated as Visual Studio Online in 2013.
Google Cloud Platform has long stood out for not having a cloud IDE. Google has a variety of tools to help developers integrate their applications with its cloud services, but it has never offered a full-featured, cloud-based IDE.
Cloud Code, Google’s not-quite-IDE
Cloud Code, which Google announced at Google Cloud Next, doesn’t change that fact, because Cloud Code is not an IDE. Instead, it’s a set of plugins for IntelliJ and Visual Studio Code (also known as just VS Code), IDEs that are not owned by Google.
Despite not being an actual IDE, Cloud Code makes it easier than before for developers to write code with the help of Google Cloud. It does this in two main ways. First, it integrates certain command-line tools used to help develop containerized applications directly into the two IDEs that Cloud Code supports. This integration means that developers can more easily test -- right from within the IDE -- how their code will behave when it is run inside a container.
Second, Cloud Code simplifies the process of integrating Google Cloud APIs into an application that developers are writing in one of the supported IDEs. Instead of having to manage things like dependencies manually in order to make APIs work, the Cloud Code plugins automate much of that work for developers.
For now, the scope of Cloud Code is strictly limited. The command-line container tools (all of which are open source, but are developed with heavy support form Google) that it supports are aimed at helping to deploy applications to Kubernetes (another open source platform that receives extensive support from Google). That’s a common scenario today, but it falls short of making Cloud Code a general-purpose development resource.
However, Google has hinted that it plans to expand the Cloud Code integrations going forward, so expect it to cater to a broader array of use cases in the future. It’s also notable that Cloud Code can be used to help deploy applications to any cloud, not just Google Cloud.
Beyond playing up the Kubernetes-specific features of Cloud Code, Google is also pitching the offering as a way to help developers switch to a “cloud-native” development paradigm. Pali Bhat, VP of Product Management and Design at Google, said in a press conference at Cloud Next that “traditional IDEs like IntelliJ and VS Code work best for local applications and local code development.” They make it hard to detect problems that don’t become evident until you’ve actually moved your code into the cloud.
In contrast, he said, Cloud Code “lets developers build cloud-native applications, right from within” the cloud.
To a degree, Bhat’s remarks seem to disregard the new generation of cloud-based IDEs from other vendors that do let developers write and test code directly in the cloud. The core idea behind Cloud Code -- that it’s easier to write cloud-native apps when your IDE connects directly to the cloud -- is not as novel as Google’s announcement seems to imply.
Still, Google deserves credit for not simply trying to catch up with AWS and Azure by creating a cloud IDE of its own. The world already has enough IDEs. It’s a smart move by Google to extend existing IDEs in ways that make it easier for developers to do complicated but increasingly necessary things, like deploy to Kubernetes or integrate with cloud APIs.