What Are Cloud Development Environments?

Laurent Balmelli
strong-network
Published in
6 min readNov 24, 2023

--

A Cloud Development Environment (CDE) is an online container used for code development activities. Here is a brief history and account of the benefits of CDEs.. In this revised version, I include more details. Beside being a Medium blog, my day job is to manage product at Strong Network, the company that I founded and that develops a CDE platform with a security spin (my background).

A Brief History of Cloud Development Environments

Let me start with the end goal: the aim of Cloud Development Environments is to enable software development to move online. This approach to coding online has an interesting history that dates back to the mid-2010s when a handful of innovative startups stepped into this emerging field.

Cloud development environment allow organizations to migrate coding in the cloud
Bringing development online brings new benefits, from productivity to security aspects.

Some of these early ventures like Codeenvy and others were acquired by larger tech companies. For example, Amazon Web Services (AWS)’s Cloud 9 and Redhat’s Dev Ready Workspaces platforms stem from acquisitions.

So, when we talk about Cloud Development Environments today, we are actually looking at a concept that had its roots in the forward-thinking landscape of the mid-2010s.

After a Slow Start, Lift Off!

Fast-forward 6 to 8 years, i.e. early 2020s and the concept of remote development is now starting to reach the masses. Both Microsoft Visual Studio Code and IDE company Jetbrains provide a mechanism for that. Startup entrants in the field propose online or self-hosted CDEs and, until recently called themselves Cloud IDE companies, likely because a web-based IDE is the most straightforward mechanism to access CDEs.

Cloud development environments in a new technology category recognized by Gartner
Gartner’s Hype Cycle now features CDEs as an emerging technology

This year, in 2023, the industry finally settles with calling the technology for what it is, i.e a Cloud(-based) Development Environment likely because a Cloud IDE is just one mechanism to access CDEs, i.e. in addition to local IDEs and terminals. And now that Gartner has made CDEs a new category, the “what are we?”-discussion topics amongst industry players is closed. CDEs are at the beginning of the hype cycle according to Gartner’s analysts (see the famous curve in the above picture).

Grasping the Concept of a CDE

The simplest way to envision a CDE is to compare it to a remote machine to which you connect, in its simplest form via a terminal command window, e.g. using an SSH client.

Such a remote machine could be a physical host, but in the case of a CDE, it is technically a virtual process based on container technology or a virtual machine. For the sake of efficiency, running CDEs online might typically rely on technologies such as lightweight virtualization, e.g. Docker or Podman, but virtual machines are also viable candidates albeit slower.

Accessing a Cloud development environment online is similar to accessing remote machine or environment dedicated to development
A CDE is a container or virtual machine dedicated to development.

The typical specification of a CDE is typically a Linux OS with a series of applications and packages, with the goal to provide a ready-to-use, fully-configured development environment. Embed an IDE as a web application and you have all the components to start writing code online.

Using a web-based IDE (try Microsoft Visual Studio Code) a typical onboarding on the CDE goes like that:

The developer opens a URL that loads the IDE into the browser and, in addition, gets a terminal prompt to the online CDE. Source code and any data in the CDE is authored using the IDE’s editing functions. Code compilation as well as other operations occur using commands in the terminal. Beside the URL visible in the browser, there’s no notable difference with a local counterpart to this workflow.

What Are the Benefits of Cloud Development Environments?

Self-Serve, Centrally Managed Development Environments

I think that one of the most attractive aspects of managing developments online is that the organization can provide a self-serve mechanism for any developers to get access to fully configured, policy-compliant environments without the need for IT support.

Environment configurations do not only include authorized software and packaged, but also computational abilities of the workspace delivered by the CDE.

This mechanism can be used regardless of the type of developer, but the flexibility of a self-served environment is convenient for “badged”, i.e. internal employees. In contrast, a managed access to environments is also possible for contractors or temporary employees.

Here is a typical view of a dashboard from a CDE platform — I used a snapshot of the Strong Network CDE platform.

Cloud development environment activity can be monitored providing access to real-time insights
CDE platforms can be used as a self-serve mechanism for developers (here, Strong Network CDE Platform)

Improved Governance and Security

Because CDEs are running online, they can be essentially maintained, updated and upgraded without having access to the developer’s physical machine. They can also be inspected in real time in the same way a process running in the Cloud can be monitored, yielding Interesting metrics along the lines of productivity and security. It is a boon for workflow governance.

Lastly, there is an opportunity to handle security better from the standpoint of resource access control, network monitoring and data loss prevention. I actually write about CDE security in this article.

CDE platforms provide a unified and centralized online view of development efforts
A centralized view of running CDEs increases management efficiency.

Remote Onboarding

The online nature of cloud development environments make them very attractive to onboard developers regardless of their geographical location. In particular, using a browser-based IDE to access the CDE allows organizations to easily onboard remote developers on BYOD, i.e. no need to send over a laptop. This is really handy to lower both cost and technical inertia when implementing a “liquid workforce”.

A web-based IDE is ideal for BYOD onboarding of developers.

Automating DevOps Workflows

This brings us to the opportunity of automating DevOps and DevSecOps workflows. Bringing development environments online strongly benefits interactions with commonly used DevOps tools and applications. Most importantly, no existing tools can be hindered by the use of CDEs.

On the contrary, any communication is facilitated by the fact that CDEs exist online as do most of the existing DevOps and DevSecOps tools. This makes automation easy.

CDE platforms provide a substantial opportunity for workflow automation
Properties of CDEs brings opportunities for DevOps automation.

Building Modern, Distributed Cloud-Native Applications

CDE technology is driving the fastest DevOps transformation trend today with the entire cloud-native development industry moving development environments online. As mentioned at the beginning of this text, CDEs just became one of Gartner’s new technology categories.

In addition, Gartner predicts that by 2026, 60% of cloud workloads will be built and deployed using CDEs.

CDEs are best adapted to build modern, Linux-based, distributed, Cloud-native applications including front-end, back-end and anything in-between. It is also quite easy to develop mobile applications provided that they are based on a friendly framework, such as Google Flutter or React Native.

About the Design of CDE Platforms

In my role of product head at Strong Network, my goal is to deliver the industry’s most productive Cloud Development Environments with native Enterprise data security. The platform is self-hosted by organizations with on-prem servers or on any private Cloud, e.g. GCP, AWS, Azure, Huawei, etc. We are one of the CDE vendors recognized by Gartner in the latest Agile and DevOps report.

Security, usually a common hindrance for developers can become a shared benefit between them and the organization.

In this new framework, my goal is that productivity and security both become the roots of efficiency for the entire development process. I beliver that they both can directly contribute to accelerating application delivery, improving the security posture and reducing IT cost in a significant manner. This is my vision for the product.

Copyright © 2020–2024 Strong Network All rights reserved. Book a demo for our secure CDE platform, I would be thrilled to get your feedback.

--

--

Professional in cyber-security, innovation, life-long learner; startup with successful exit; Guest professor at Keio University Grad. School, Tokyo Japan