The difference between IDEs, local development environments and remote development environments

In your daily work, you may use IntelliJ IDEA, Eclipse or Visual Studio. All of these tools offer different functions. For some years now, IDEs have also been available in the cloud. Some providers speak of remote development environments in this context. But what is the exact difference between IDEs and RDEs? What do we mean by this? And what does the local development environment have to do with it?

IDE and local development environment

For the sake of completeness, let’s briefly describe what makes up an IDE.

In a nutshell, it is a tool that helps to create, edit and check code. An IDE consists of an editor, syntax highlighting and auto-completion, among other things. A compiler/interpreter and a debugger are also included.

Some other tools may also be included: For example, a linter or connection to a version control system.

Traditionally, work is done locally with the IDE. For some time now, Web IDEs have also been available. In these Web IDEs, it is possible to make code adjustments quickly and easily. An IDE is a part of the local development environment.

In summary:

IDE Local Development Environment
Tool for creating, editing
and reviewing code
Collection of tools and resources
for the development of software
Normally includes an editor,
compiler/interpreter, debugger
Includes an IDE, compiler/debugger, version control,
database management systems
(if needed) and all resources needed for the development
and execution of the software.
Code creation in focus
Focus on overall development

Then there are also providers of remote development environments. What exactly distinguishes an RDE from a local development environment…and an IDE?

IDEs, local development environments and remote development environments

RDEs are remote environments in which developers have all the tools they need for their work. An RDE is a tool that makes remote development possible and easier. RDEs claim to make local development environments obsolete.

In our blog post “What are Remote Development Environments“, we explain in detail what we mean by this.

But beware! The term is not used consistently.

At Cloudomation, we talk about providing a complete remote environment that is comparable to a local development environment.

This brings us to the heart of the matter. An RDE is intended to replace the local development environment. The big difference between IDE and RDE is that the RDE is “more” than just the IDE, as a build is possible and the software can also be executed.

 The table gives you a quick overview of the differences. 

Feature Web IDE Local IDE Local
Development
Environment
(custom)
RDE
(according to our
definition)
Source Code Editor
Syntax Highlighting
Autocomplete
Source Control (integration)
Build: interpreting or compiling
and executing code
-
Debugging
-
Unit tests
-
-
Running full application
-
-
Integration tests
-
-
Packaging
-
-
-
-
Deployment
-
-
-
-

The advantage of RDEs

Take a leap back in time. Imagine the situation when you first joined your company. It was probably something like this: Let’s go, onboarding is coming up. In concrete terms, that meant setting up the development environment. Can you still remember how long it took?

Setting up a local development environment often takes some time. Sometimes a lot of time. And sometimes even a lot more time.

Besides the IDE and the version control system, other dependencies have to be installed. E.g. the software to be developed. And this is where it usually gets complicated. Depending on the complexity, setting this up can take days or weeks. Only then can the actual work begin. 

But then the “fun” usually begins: For example, 61% of the developers surveyed in a Github poll report that they are busy troubleshooting the local development environment once a month.

How was that for you? 

Here we come back to the promise of RDEs.

Imagine again the situation in the company: Onboarding. Setting up the development environment. Only now you are provided with everything at the click of a button. That means: working from day 1.

Remotely, you have all the resources you need at your disposal. This means: standardisation, less time needed for individual problem solving and flexible choice of equipment, because resource-intensive processes do not have to run on your own computer. 

Conclusion

IDEs are like toolboxes. They provide tools to write code, find bugs and make work easier. In contrast to remote development environments, however, they only represent a part of the entire toolset. Depending on the provider, an RDE offers the possibility of immediate access to all required resources. In addition, the application being developed is operated within RDEs. Building is also possible. This facilitates the set-up of the development environment, makes work easier and onboarding more efficient.

Subscribe to the Cloudomation newsletter

Become a Cloudomation Insider. Always receive new news on “Remote Development Environments” and “DevOps” at the end of the month. 




    johannes

    Written by

    Johannes Ebner
    Marketing

    5 Advantages of Remote Development Environments?

    What are Remote Development Environments?