Remote Development in the Cloud
Remote development has become increasingly popular in recent years. It allows developers to take advantage of powerful cloud computing resources and be available everywhere using a managed central configuration. There are several cloud-based solutions available for remote development, including Google Cloud Workstations, AWS Code Catalyst, and traditional virtual machines (VMs). In this article, we will compare the costs and advantages of each option.
Google Cloud Workstations
Google Cloud Workstations is a cloud-based development environment that provides a fully managed developing environment in the cloud, including popular tools like the JetBrains IDEs such as IntelliJ Ultimate, IntelliJ IDEA and PyCharm.
It is designed to offer a high-performance environment that can handle even the most demanding development tasks. Google Cloud Workstations come with a large amount of customization and control options that can help manage costs and productivity.
Advantages:
Fully managed and ready-to-use development environment
Full customization via container images
Accessible from anywhere with an internet connection
Automatic backups and updates
Integration with other Google Cloud services
All popular IDEs like IntelliJ Ultimate and IntelliJ IDEA
AWS CodeCatalyst
AWS Code Catalyst is a cloud-based development environment provided by Amazon Web Services (AWS). It is designed to help developers collaborate on code, automate workflows, and manage projects in the cloud. AWS Code Catalyst provides a wide range of tools and services that can help developers build, test, and deploy code.
Advantages:
Fully managed and ready-to-use development environment
Wide range of tools and services available
Scalable and customizable
Integration with other AWS services
All popular IDEs like IntelliJ Ultimate and IntelliJ IDEA
Disadvantages:
Only available in the US West (Oregon) region.
US West only availability causes higher latency if you are far away (EU / Asia).
Basic VM for Remote Development
Using a virtual machine (VM) hosted in either Google Cloud Platform (GCP) or Amazon Web Services (AWS) can be a great option for developers who need a flexible and scalable development environment. However, these basic VM options don’t come with pre-installed developer tools and other useful components and tools. This downside is compensated by the fact that they are generally cheaper than the Cloud workstations or CodeCatalyst options and can be made even cheaper when using the spot prices and discounts.
Advantages:
Flexibility: You can choose the amount of CPU, memory, and storage you need, as well as the operating system and software configurations.
Cheaper: The basic VM is cheaper than the other mentioned alternatives.
Disadvantages:
Management of the VM is manual; no easy broad management of all deployed VMs
The VMs aren’t pre-configured; all config and installation of software is manual. For example you will have to manually install all your favorite JetBrains IDEs and other development tools.
Pricing
To compare the pricing, I have added the following table. In this table the pricing is listed for a machine of 4 vCPUs and 16GB of memory. For each option, the hourly cost and the monthly cost is listed.
Free Tier
Base cost / hour
Base cost / month
Extra Fees
Example: Team of 5
Google Cloud Workstation
$0.32 / hour
$73.36
(22 workdays of 9 hours)
$144 / month per workstation cluster
$510.80 Including fees
AWS CodeCatalyst
(too low spec for development)
$0.02 / hour upto 200 hours, after that $0.46 / hour
$4 / user / month
$20 / month as long as the team stays within the dev hours
SSH VM
AWS: $0.1504 / hour
GCP: $0.21366 / hour
AWS: $30.08 (200 hours)
GCP: $42.73 (200 hours)
(22 workdays of 9 hours)
AWS: $150,40 GCP: $213.65
Connect using JetBrains Gateway
One way of connecting to one of the services is through JetBrains Gateway; here, I will go through the steps for AWS CodeCatalyst. The use of JetBrains Gateway is quite easy, just log in using the big login button and follow the steps shown on the screen. These steps include signing in to your AWS builder account and allowing JetBrains Gateway access to some of your information. After Signing in, you will see the following screen, which shows your projects and dev environments.
Here you can also create new dev environments through the “Create Dev Environment” button. Clicking this button shows you the same options you would have in the web interface. After configuring just click the button to create and a popup should show telling you its working on it. Once its done it opens the newly created dev environment.
To connect to your remote development environment, you just simply click on the environment you want to boot. This process can take a few minutes and goes through multiple steps.
Once the dev environment is ready, it will open the IDE just like it would do if you were using it locally. The only difference is that there is an extra menu at the top left showing the status and latency of the machine. Clicking on this menu opens the memory, storage and CPU usage.
And Done! You are ready to use your remote developing environment!
Conclusion
When it comes to remote development, there are several options available, each with its own advantages and costs. Google Cloud Workstations and AWS CodeCatalyst provide fully managed and ready-to-use development environments with a wide range of tools and services. They are designed for large teams and enterprise-level projects, but their costs can be significant.
Normal VMs provide a customizable and cost-effective solution for small teams or individual developers but don’t have some of the ease-of-use features that Google Cloud Workstation or AWS CodeCatalyst has.
One thing to note is that AWS Code Catalyst is significantly cheaper than most other options. However the limited available zones might make the working experience significantly worse and thus an alternative service could be of interest to use even though it might be more expensive.
Ultimately, the choice of which option to use depends on the specific needs of the project, the size of the team, and the available budget.
Optimize with ZEN's Expertise
Upgrade your development process or let ZEN craft a subsystem that sets the standard.
Read more:
Remote Development in the Cloud
Remote development has become increasingly popular in recent years. It allows developers to take advantage of powerful c...
LinkedIn, part of Microsoft, decides to ditch data centre migration to Azure
What went wrong? Microsoft owns both LinkedIn and Azure. :man_shrugging: ...
AI is the missing piece of the Productivity Puzzle
Today, I’d like to plea that Artificial Intelligence (AI) is the missing piece of the productivity puzzle, revolutionizi...
ZEN Software upgrades Wordpress Filogic.nl to Open Source Headless Cloud Solution for Unmatched Performance
Alkmaar, November 2023 — ZEN Software, a leader in innovative web solutions, proudly announces its latest success with F...
Cossacks Arjan
For hosting the ZEN Gathering in Alkmaar, Zoia & Dasha presented me with a classic Cossack shirt. Дуже дякую!...
Say Goodbye to Frustration: ZEN Software's Plugin Makes Picture Labeling a Breeze!
WordPress empowers businesses, creative enthusiasts, and content creators with its user-friendly interface and extensive...