Product Comparison: TeamCode Pylon VS Docker Dev Environment
Tags: webdev, programming, productivity, opensource
Published: 2021-12-05 04:21:38

The emergence and popularization of cloud computing technology reduces the production cost of enterprises greatly. At the same time, more and more software companies started their digital innovations, exploring more efficient ways of remote development and work. For example, Microsoft released VS Code Remote in 2019, which supports remote development and ushered in a new era. According to StackOverflow's 2019 annual survey, VS Code has become the first choice for developers at that time. After that, Coder open sourced the code-server, allowing VS Code to run on any platform and access it through a browser, solving the problem of environmental inconsistency across devices, satisfying developer's needs for a more flexible, convenient, and efficient collaborative way of working. In this way, a remote development infrastructure has been created, many companies started to launch remote development tools, such as [Pylon](https://www.teamcode.com/docs/en-US/pylon/what-is-pylon/) of [TeamCode](https://www.teamcode.com) and Docker's Development Environments.

## Analysis of User Value
For developers - Difficulties with Environment Configuration
The first step to develop a project is to build a development environment on PC.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pje8e8c9irikq296a0v1.png)
Usually we will read the project documentation and configure the development environment according to the tutorial. However, in these seemingly most basic things that various problems may occur:
1. The installation environment reports an error and cannot continue;
2. The required environment conflicts with the local environment;
3. The project was finally succeed, but could not be started;
4. Different systems lead to installation failure. For example, some developers use Windows operating system.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/waeitza34zl8ru9agolh.png)

All those problems always make developers frustrated. Let's have a look at how these two tools help solve issues with environment installation and configuration.

**TeamCode**
To solve those development issues, TeamCode releases Pylon, which can automatically build a scalable cloud development environment.

**Functions**
1. Set up a development environment from a Git repository URL in seconds.
2. Provide a standardized development environment.
3. Support for mainstream IDEs and browsers, client IDE access, seamless connection with TeamCode Cloud-IDE.
4. Support multiple languages, including Java, Python, Go, Typescript, etc.

**Advantages**
5. Automatically manage the cloud dev environment which can reduce the cost of R&D.
6. All development data is stored in the cloud to enhance data security.
7. Manage the development process in the cloud, improve data transparency and management efficiency.

## Analysis of the Product Structure
The target users are developers, so it focuses on their needs, solving cumbersome issues during software development.

**
Scenario One: How to satisfy the demands of developers on building environment
Pylon**
It supports setting up a development environment from a Git repository.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v38avw6fb5h3lx6v0zgz.png)
Auto-testing and building the environment

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mu747zozq7lnxagi8b0w.png)
You can choose VS Code or Cloud IDE to connect the environment and develop your project.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7dk1jlp9upn6tg5jmm4v.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/umpmmnq7vhve7u4kw8rc.png)

**Dev Environment**
It supports creating a development environment from:
1\ Git repository URL
2\ Local files
3\ Docker images

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y7h9lq1ijamkp75pgnnu.png)
The environment will be created automatically.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3mufrduwmrdth9iu7buf.png)
Open the VS Code to access the environment.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/n8byal0a4q9mdbpxoo8b.png)
Then you can start your development.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6ezgs8m92tzb51w1wgql.png)

**
Scenario Two: How to satisfy the demands to preview the project before release**
**Pylon**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qx3qfk0u0re9if25ogr9.png)
You can preview the adjustments of the project via the URL, no need to go through the CI\CD process.
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pylon8f2j10owca681k92q.png)

**Dev Environment**
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m7008lahmz8pjx9h22y0.png)
You have to push your code through Git and implement CI\CD to preview.

**Future prospects and optimization suggestions for TeamCode Pylon
Advantages:**
I think that in addition to avoiding the cumbersome processes during software development, Pylon can also become an online preview test service, which can improve the efficiency of the whole team, and allow the product and operation team to preview code changes in time. Docker's Dev Environment still follows the traditional CI\CD path, which is relatively inefficient in this scenario.
**Suggestions:**
It is recommended to be able to create a development environment locally, because if users are forced to use the cloud development environment, it means that all the development infrastructure has to move to the cloud. Compared with local development, the cost is higher, which Docker's Dev Environment is better at this point.