The following page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features or functionality remain at the sole discretion of GitLab Inc.
Section | Stage | Maturity | Last Reviewed |
---|---|---|---|
Dev | Create | Planned | 2022-03-02 |
This is the direction page for the Remote Development category, part of the Create stage of the DevOps lifecycle. This page is maintained by Eric Schurter (@ericschurter, eschurter@gitlab.com) Senior Product Manager for the Editor group.
Like most other category direction pages, this page will be continuously updated based on market dynamics, new data points, and customer conversations. Sharing feedback directly on the category direction epic or specific issues contained within is the best way to contribute to our strategy and vision.
One of the first barriers to overcome before contributing to a project is configuring your local development environment. The time-consuming task of managing related dependencies and troubleshooting incompatible versions can be discouraging, especially for someone working who contributes infrequently or works on multiple projects. In more advanced environments, a development team may even have a standard set of tools, extensions, and configuration files, adding to the delicate nature of the development environment.
The GitLab Web IDE allows for anyone to contribute to a project right from their web browser. This makes contributing simple fixes to an existing project or responding to feedback in a merge request quick and effective. However, without code linting, real-time rendered previews, or the ability to run tests, many developers are unable to complete meaningful work in the Web IDE. The Web Terminal and Live Preview features offer some additional functionality for a narrow set of use cases, and code changes in the Web IDE can trigger a pipeline, but that doesn't provide the immediate feedback necessary for efficient development.
Developers want to spend less time managing their development environment and more time contributing high-quality code. And at GitLab, we want everyone to contribute. Eliminating the responsibility of configuring and maintaining a local development environment frees up valuable development time and streamlines onboarding of new developers joining the team. For developers working on larger teams, or those contributing to multiple open source projects, the cost of switching contexts can be so high that it discourages collaboration. With an on-demand, cloud-based development environment code reviews are less of a disruption because developers can move more quickly from project to project and sensitive data is securely stored in the cloud rather than distributed across numerous local devices.
In addition, the global COVID-19 pandemic has accelerated the shift toward remote and hybrid workforces, increasing the emphasis on privacy and security. A cloud-based development environment enables organizations working in regulated industries to enforce a zero-trust policy that prevents source code from ever being stored locally while maintaining a high quality developer experience.
Remote Development, as the name suggests, directly targets software developers and those who manage or support teams of developers. However, a mature remote development offering lowers the technical barrier to collaboration and enables non-developer personas to effectively and efficiently contribute. As a result, we are able to target all the user personas we describe in our handbook, with a particular focus on:
Sasha (Software Developer): targets full time contributors to all types of projects (commercial, OSS, data science, etc.). These users expect and need a high level of reliability and speed in their interactions with both project files and Git.
Delaney (Development Team Lead): targets users who often times have elevated roles which allow for the management of project settings, such as access control, security, commit strategies, and mirroring.
Devon (DevOps Engineer): targets engineers tasked with supporting and enabling software teams. Their tasks often revolve around platform creation and maintenance, where GitOps] workflows are crucial.
This category is currently Planned
with no specific date for moving to Minimal
.
As part of the Web IDE strategy, the Editor group is investigating an approach that would replace the existing Web IDE with a browser-based instance of VSCode.
Watch here as Paul Slaughter and Eric Schurter from the Editor group discuss the proof of concept and the various user experience benefits it provides.
Parts two, three, and four of the VSCode demo focus on extensions, performance, and customization, respectively.
A more mature browser-based IDE is the first step toward a mature remote development platform. One potential path we may take would be:
The three most relevant competitors in this area are GitHub Codespaces, Gitpod, and Coder. Each one offers a slightly different take on remote development environments but aim to solve very similar problems.
These companies and projects are also related to the remote development space:
Several analysts have recently published reports highlighting the rapid adoption of cloud-based development workflows.
Gartner report titled, Hype® Cycle for Agile and DevOps, 2021 discusses "Browser-based integrated development environments (IDEs) are consumed “as a service.” They enable browser-based remote access to a complete development environment, which obviates the need for local installation/configuration."*
Further, it states "Browser-based IDEs provide consistent, secure access to preconfigured development workflows to developers. This frees them from setting up their own environments, eliminating the need to install and maintain prerequisites, software development kits (SDKs), security updates and workstation plug-ins."*
"Gartner predicts that, by 2026, 60% of cloud workloads will be built and deployed using browser-based IDEs". The report adds, “Five factors are driving their increased adoption":
*Gartner, Hype Cycle for Agile and DevOps, 2021, George Spafford, Joachim Herschmann, 12 July, 2021. GARTNER and HYPE CYCLE are a registered trademark and service mark of Gartner, Inc. and/or its affiliates in the U.S. and internationally and are used herein with permission.
GitLab's Web IDE already addresses some of Gartner's recommendations, by providing a platform from which anyone can contribute. By migrating the Web IDE to VSCode, we can rapidly increase the complexity of work and meet the needs of more serious development tasks. Pairing that with a Server Runtime, GitLab is positioned well to meet our customers' expectations when it comes to security, agility, and flexibility.
451 Research published an analysis of Coder and their approach to moving development workspaces to the cloud. 451 Research recognizes that "by moving developers, IT operators and others to the cloud, organizations can drive faster releases, productivity and efficiency by automating and abstracting IT environments and their management. The idea is that developers have more time to focus on new features, applications and innovation when they are unencumbered with setting up and running their own environments."
In the analysis, 451 Research cites results from their 2021 report, Voice of the Enterprise: DevOps, Workloads & Key Projects, that reveal a significant shift in the primary DevOps implementation environment, moving away from On-premise and Hosted Private Cloud workspaces to SaaS and Public Cloud over the next two years.
451 Research's recommendation to stay competitive in this space is to "focus on enabling simplicity, speed and productivity for developers," something GitLab's single platform for DevOps is positioned well to deliver.
Source: 451 Research, a part of S&P Global Market Intelligence, Coverage Initiation: Coder moves development to the cloud with workspaces-as-code, September 2021, All Rights Reserved