Microsoft Dev Box is now publicly available in 2023

Updated 2 years ago on July 11, 2023

Last month at the Microsoft Build conference, we talked about several new features of Microsoft Dev Box - cloud-ready workstations optimized for developer use and productivity. We talked about new integrations with Visual Studio, a preview of the ability to customize configuration as code, and our own Dev Box implementation internally, and the response to this news has been great. Today, I'm excited to share another announcement: the Microsoft Dev Box solution is now generally available.

Our path to developer-optimized virtual desktops

We first announced the Microsoft Dev Box at the Microsoft Build 2022 conference, but that's not where our journey began. For over seven years, we've been focused on improving developer productivity and satisfaction by leveraging the power of cloud computing. In 2016, we introduced Azure DevTest Labs, a service that allows development teams to create templated virtual machines (VMs) for various development and testing scenarios.

Over the years, we have helped many customers create their own solutions based on DevTest Labs that extend its core capabilities. Particularly popular is the use of DevTest Labs to create persistent, pre-configured development environments. However, creating such solutions based on DevTest Labs is a complex task that requires significant effort to create additional management and control features. The customers wanted a turnkey solution.

Providing fast, self-service development environments in the cloud

In response, in 2019 we introduced Visual Studio Codespaces - preconfigured container-based and Linux development environments that developers can launch in seconds directly from Visual Studio Code, giving developers a quick and easy way to work on their applications on the go.

Developers loved Codespaces for its speed and mobility, and the service still exists today in the form of GitHub Codespaces. However, software development requires a wide variety of tools. We originally created Codespaces to support Visual Studio Code and GitHub, but customers quickly began asking for support for other integrated development environments (IDEs), source code management, and tools.

As a first step, we began extending Codespaces to include support for Visual Studio. However, this presented more challenges than we anticipated, primarily related to enterprise-level management and control. Combined with the fact that developers wanted access to all of their tools in a cloud environment, it got us thinking about what we needed to do:

  • Safety, compliance and cost management capabilities at the enterprise level.
  • Cloud-based performance with high fidelity and built-in integrations with development tools.
  • Independently access pre-configured, project-specific resources.

Essentially, the solution was supposed to be a developer-optimized virtualization system. Microsoft already offers Windows 365-based cloud PCs that securely stream a personalized Windows desktop, applications, settings and content from the Microsoft cloud to any device anywhere. Crucially, Windows 365 is fully integrated with Microsoft Intune, allowing IT administrators to manage cloud-based PCs alongside physical devices. This was exactly what we were looking for, so we decided to use Windows 365 as the foundation for our new solution.

Transforming the developer workstation experience

When enterprise management was done with, we turned our attention to the underlying hardware. While powerful computing systems were an obvious necessity, we soon realized that storage could also have a significant impact on developer productivity. Large builds put a significant strain on storage, which becomes a bottleneck if read or write speeds can't keep up with the speed of the build. To account for this, we decided to include premium solid state drives (SSDs) in our product. However, we still haven't solved the main problem with developer workstations - long deployment times and configuration errors associated with complex projects and toolsets.

Solving these problems will require more fundamental changes in configuration and deployment management. Developers work on a wide variety of projects, many of which require specialized tools. For these developers, a generic role-based configuration would take time to set up a workstation and install additional tools once it was provisioned. IT administrators and developers needed a way to create different configurations so that a new workstation could be launched on demand, ready to work on the current project.

The first step was to integrate our solution with Azure Compute Gallery, providing a scalable way to share base images and manage image versions. We then created a new management layer that allowed teams to organize images and network configurations by project. Development managers and IT administrators can now set up multiple workstation configurations for a single project. Administrators can even define the Azure region in which each workstation will be deployed, ensuring high fidelity for developers around the world.

This pre-configuration of workstations saved developers from having to contact IT specialists every time they needed a new workstation. And because multiple workstation configurations could be used for a single project, developers were not tied to a single configuration - they could choose the right workstation, start it up, and get to work quickly. We even created a specialized portal for developers that provides quick and easy access to workstations used in projects. Developers can also use this portal to quickly deploy environments at any stage of development using Azure Deployment Environments, also available to the public.

Arriving at the Microsoft Dev Box

That's how we ended up with Microsoft Dev Box - cloud workstations optimized for developer use and productivity. Dev Box combines developer-optimized capabilities with Windows 365 enterprise management and Microsoft Intune. As we continue to enhance Dev Box, we continue to collaborate with other parts of Microsoft. Most recently, we worked closely with the Visual Studio team to add native integrations that optimize the Visual Studio experience in Dev Box. In addition, we're actively introducing a code-as-a-service configuration feature to Dev Box that will give developers even more control over configuring boxes for specific tasks and connect Dev Box provisioning to an existing Git stream.

But before we launched the Dev Box, we wanted to make sure it was truly enterprise-ready. At Microsoft, it is customary to test our services internally before releasing them. In this case, that meant stress testing Dev Box on products with repositories hundreds of gigabytes in size. It was a challenging but rewarding experience, and the insights gained helped us accelerate our transition to general availability. There are already more than 10,000 engineers using Dev Box at Microsoft, and several of our customers are using Dev Box in production environments.

Utilizing the best features of Dev Box with flexible pricing policy

During our initial work with customers, we learned a lot about their usage and possible applications. The Dev Box is great for replacing desktops on a regular basis or for specialized part-time use. You can use a powerful Dev Box for particularly heavy tasks or a second machine for isolated experimentation or proof of concept.

Initially, we planned to charge for Dev Box based on a pure consumption model - customers would pay for Dev Box only while it was running, and nothing more. Unfortunately, while this model was fine for part-time use of Dev Box, it left a lot of problems for administrators who wanted to pay the standard monthly cost for continuous use.

To meet the varying needs of users, we introduced a predictable monthly price for ongoing use of Dev Box, while maintaining consumption-based pricing with pay-as-you-go fees charged up to a monthly limit. This model represents a balance between the extremes of full consumption and subscription, allowing developers to optimize their costs for both continuous and partial usage.

Getting started with Microsoft Dev Box

Dev Box has already transformed developer workstations at Microsoft from inflexible, long-lived desktops to cloud-based, project-ready workstations. We look forward to seeing more developers leave the challenges of physical desktops behind and focus on writing code that only they can write. To see what Dev Box can do for your team, visit our website or start a trial today.

Let's get in touch!

Please feel free to send us a message through the contact form.

Drop us a line at mailrequest@nosota.com / Give us a call over skypenosota.skype