crypto news

Distance development has become simple with Devpod – a free and open source tool

It has relatively late to the topic of development environments (also known as cloud development environments). The main reason is that I have not worked on a development team for more than six years. However, I am now working on Loft Labs, and we have a remote development environment product: Devpod. I wanted to understand our value suggestion as I will be in the Fosdem that works in the DevPOD booth.

The problem

As a former developer, I clearly remember the pain of creating a development environment for each developer. At the beginning of my career, the architect had a painful development machine painfully, so it was similar to its preparation. Later, I did the same for my team members again and again. The scope of potential contradictions that affects almost endless development: the operating system, of course, version and SDKS flavor, For exampleEclipse Temurin Vs Java’s Eclipse Vs Sapmachine, Hooks Git, etc. Sweat, slander and blood were in every project.

Over the years, I saw some interesting methods for the multiplication of development environments. Initially, I grew up from VMS, then from the containers. I think Vagant was the first tool that caught my attention: I recently attended in 2012, when the spokesman stated that he used it to create machines before his training sessions.

The applications of the application have evolved greatly over the years, and have become more complex and developed. Years ago, there were possibilities that the only infrastructure dependence was a SQL database. In the JVM ecosystem, we were lucky to have JDBC, an application programming interface that will work in all SQL databases. All you need is to write a standard SQL, and you can configure the database similar to the time of operation. With built -in databases such as Apache derby and H2, you did not need an oracle -like orak for each developer.

The times have changed. It is not uncommon for applications to need a SQL database, the Nosql database, the Kafka group, and some additional application services. Institutions that develop such applications already use some container -related technology, For exampleOr docker or kubernetes, to manage this complexity.

The initial problem is not solved, although: How can you align IDE, additional ingredients, SDK (S), GIT hooks, and everything else? You may consider the title address development environments.

Development containers

In the foreground, I mentioned that RDES is called cloud development environments. The main idea behind RDES is to store everything you can in the cloud and share it with all developers. In addition, you want them to work through the most prevalent cloud savings and the most common identifiers. When such a need appears, it is time for actors in the industry to gather around a standard. Microsoft has started the development container standard for VS Code Remove Plugin for this precise purpose.

The development container (or the DeV container in short) allows you to use a full -feature -to -use container. It can be used to run the application, separate tools, libraries or times needed to work with a code base, help in integration and continuous testing. DeV containers can be turned locally or remotely, in a special or public cloud, in a variety of supportive tools and editors.

The specifications of the development container seeks to find ways to enrich existing formats with specific settings, tools and composition for joint development while continuing. In addition to the basic descriptive data of the specifications, the specifications also enable developers to share and reuse the container preparation steps through features and templates.

What are the development containers?

The composition file is devcontainer.json. You can find the scheme reference here. Vs Code, Visual Studio and Intellij products can benefit devcontainer.json file. On the provider side, GitHub Codespaces, CodesandBox and DevPOD Swort.

Devpod introduced

Devpod is the solution that calls devcontainer.json. It carries out three main characteristics:

  • Open source: There is no dress. 100 % free and open source built by developers for developers.
  • The customer only: No preparation is needed by the server. Download the desktop or CLI application to start.
  • Unspecified: Dave environment is repeated for any IDA, iDE, and any programming language.

Devpod is designed to be easy to use and direct, making it a breeze for use. I decided to write this post because I liked the product and to get my thoughts in order.

The first step is to install the DevPod itself. I’m on Mac. There is a beer recipe.

brew install devpod

Once installed, you can run it from the Cli or the graphic user interface. The best guis, at first, to help understand the options available.

Main DevPOD screenMain DevPOD screen

Devpod provides service providers: sites where containers are operated. The default is Docker. You can add additional service providers, including cloud service providers and kubernetes groups.

New Devpod provider compositionNew Devpod provider composition

For this post, I will keep Docker – I use Orbstack. Now, on meat. Let’s go to the work space list element. If you already create work spaces, you should appear here. Since it is our first visit, we will create one. Click BTN:[Create workspace] button. To try one of the such as Quickstart, anyRust. My IDE is IDE Inmerij, but you can choose for you. Once you specify an image, IDE, and supply, click Create a work space.

The start of a new DeVPOD work spaceThe start of a new DeVPOD work space

At this stage, Devpod will download the image and open the project that works in Orbstack in Intellij.

Play Intellij via Jetbrains GatePlay Intellij via Jetbrains Gate

From now on, we can start working happily on our RUST project, and I am sure that every team member uses the same RUST version.

Note that the first time that this setting is used, Devpod will also download the Jetbrains client. It is a one -time download delay.

Download Jetbrains customerDownload Jetbrains customer

The same applies to GIT hooks before commitment, for example. If you prefer to develop another IDE, define it at the time of launch, and you are good. Upon completion of your day’s work, stop the container. If you work in the cloud, it saves money. The next day, resume the container and continue your work.

conclusion

Devpod is a nice tool about your toolbar that allows the development team (team) to share the same configuration of the device without hassle. In this introductory blog post, I offered a small part of what you can do. I encourage you to take advantage of its power if you face heterogeneous development environments.

To go further:

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button

Adblock Detected

Please consider supporting us by disabling your ad blocker