Cloud Development Environment (CDE)

This morning I had to restart Docker Desktop and the marketplace tab had a notification. There was a new extension available, “OpenVS Code for the Web.” So then I had to go find out what that even means and why I ought to want to install it. The answer is that I don’t.

It seems that all the exciting tool development these days is happening around what one company is calling “Cloud Development Environments.” The general idea is that the source repository sits on a server somewhere, and then there’s another server, the CDE server, that knows about the source repository and maybe all the other services you need in order to work on that source repository (a database, maybe an artifact repository, maybe a build server, probably some testing pipelines, whatever). Then, instead of pulling the source locally and firing up their own instance of whatever IDE they like to use, a developer will instead fire up a web browser and connect to that CDE server and they’ll be instantly configured and working on the project inside the browser window.

This is the thin client model that we’ve seen before. Things that lead to thin client are, generally:

  • really, really cheap network I/O
  • really expensive local storage
  • highly paranoid and proprietary engineering management who don’t want individual contributors to take any code out of the organization’s grasp

This is hardly an exhaustive list, but from here it gets less general. For instance, at Netflix, I had a Windows desktop and a MacOS laptop and, when I worked remotely, rather than run my dev instance locally and tunnel its connection to the dev database through the VPN and keep mentally current with all the stupid configurations necessary for both operating systems, I just used remote desktop software to use my laptop as a thin client for my desktop computer. It reduced my mental load and kept me productive.

Still, I am no longer in a situation where thin client makes a lot of sense. Well, sort of. I mean, I develop services that run in Docker containers on my laptop, so the shape of my environment looks kind of like the server side of a CDE. It’s not true, though, that I need to bring new employees onboard, and it’s not as though adding yet another piece of software to my system will reduce my mental load. Meanwhile, out here in the woods network I/O is the opposite of cheap. So, no, I don’t need to get smart or excited about whatever CDE gets thrown up in front of me.

Published by pirateguillermo

I play the bagpipes. I program computers. I support my family in their various endeavors, and I enjoy my wonderful life.

Leave a Reply

Your post must include a link to this post.

How does this work?
Write a response on your own website and include a link to this post. Then submit your response’s URL here. Your response may appear here after moderation. To update or remove it, edit or delete your original post and submit the same URL again. Learn more about Webmentions.

Discover more from Mechadarwin

Subscribe now to keep reading and get access to the full archive.

Continue reading