MacMusic  |  PcMusic  |  440 Software  |  440 Forums  |  440TV  |  Zicos
development
Search

Cloud development environments for the win

Wednesday February 5, 2025. 10:00 AM , from InfoWorld
About 30 years ago this week, Delphi 1.0 was released. Many of you probably have no idea what Delphi is, but it was a revolutionary rapid application development environment tool. Delphi made developing Windows applications orders of magnitude faster than it had been before.Delphi wasn’t a trivial application itself, and it was decided to deliver it on a CD-ROM (remember those?). As far as I know, Delphi was the first major software application to be shipped on a CD-ROM instead of on floppy disks, though floppies were available for purchase — all 32 of them. There were, of course, protests about it, because at the time, CD-ROM drives were fairly new and not ubiquitous.Delphi continued to grow in complexity and capability. Eventually, the installation filled a DVD, but Delphi outgrew that and required a long download process to install.That complexity was made even greater because the IDE could be configured with components, code libraries, and IDE plugins. Eventually, it wasn’t uncommon for things to become so complex that it could take a week to install and set up a new developer. There were packages to install, directory paths to set, code to be properly located, relative paths to be configured, and many, many other small details to consider and set. Other development environments like Eclipse or Visual Studio were no different. There were enough variations to all of it that no two development environments were precisely identical. The saying has been around for a long time, but this complexity is the root of the infamous saying “But it works on my machine.” (To which the response is, “Well, let’s ship your machine, then!”)

A significant advancement

But that was the bad old days. Today, things are very, very different. That is not to say that “package hell” isn’t a thing. Package managers like npm and brew have made things much better, but even they can lead to problems with versioning and other challenging complexities. 

One of the differences today is that the notion of developing in a browser is a real thing. Because the most popular coding tool — Visual Studio Code — is written in TypeScript, it can rather easily be modified to run in a browser. And because it can be configured with code, and because modern development languages are configured in code as well, it becomes relatively easy to deliver a specific configuration with a specific version of an application to you in a browser. This is a significant advancement in how software development is done.

The first thing this enables is for a software developer to work anywhere on almost any computer that has a browser. You can, if need be, go to any public library and fix a production bug in your application. You can log in, bring up a cloud development environment of your project, and work on it, all in a browser. No more spending a week to get set up. And instead of lugging around a heavy laptop, developers can work on something light like a Chromebook.

Beyond that, the ability to take a snapshot of “my machine” so that it can be shared and leveraged in different scenarios is incredibly powerful. Consider this scenario… You are assigned a bug, and in the bug report is a link to the exact, precise environment in which the bug was reproduced. You click on that link and the development environment is immediately configured, enabling you to reproduce the bug in minutes instead of hours or days. 

Or maybe you want to pair program with a junior developer to help her fix an issue, but you live six states apart. With a cloud development environment, you can both look at — even share — the same development environment. And because the bug is easy to reproduce, you can find a fix much faster. That same feature can get a brand new employee up and running in minutes, not days.

Upsides and a few downsides

And if you are concerned about the security of your code base, imagine a scenario where that code base never resides on a laptop that leaves your building. Leaving a laptop in an Uber no longer becomes a worry.  

Software supply chain security becomes much easier to manage as each development environment is approved and provided to each team member. You don’t have to worry any longer about a team member installing a malicious package via typosquatting. 

While all this is great, there are a few things to be concerned about. First, cloud development environments can make it hard to set up customizations and special, one-off solutions that some developers may require. If you depend entirely on browser-based development environments, you may find yourself at the whim of a sketchy airline internet service and other internet access struggles. If network latency is a problem, it can make working online sluggish and frustrating.

There have been a few changes in how software development systems function since the days of buying development tools off the shelf and installing them from floppy disks. Cloud development environments have made things vastly easier to set up while increasing productivity and flexibility. Developing in the browser is only going to get better as innovations continue to bring new features and ideas to the table.
https://www.infoworld.com/article/3816715/cloud-development-environments-for-the-win.html

Related News

News copyright owned by their original publishers | Copyright © 2004 - 2025 Zicos / 440Network
Current Date
Feb, Wed 5 - 16:56 CET