<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ Gitpod - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ Browse thousands of programming tutorials written by experts. Learn Web Development, Data Science, DevOps, Security, and get developer career advice. ]]>
        </description>
        <link>https://www.freecodecamp.org/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ Gitpod - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Tue, 05 May 2026 16:59:44 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/news/tag/gitpod/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ How to Choose a Cloud Development Environment – Harness CDE, Gitpod, and Coder Compared ]]>
                </title>
                <description>
                    <![CDATA[ Cloud Development Environments (CDEs) have become essential tools in modern software development, offering enhanced productivity and streamlined workflows. This article compares three leading CDEs: Harness CDE, Gitpod, and Coder. My goal here is to o... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/how-to-choose-a-cloud-development-environment/</link>
                <guid isPermaLink="false">67a22fc0b7eb4acc424cb220</guid>
                
                    <category>
                        <![CDATA[ Cloud ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Gitpod ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Harness ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Cloud Development  ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Environment ]]>
                    </category>
                
                    <category>
                        <![CDATA[ coder ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Gursimar Singh ]]>
                </dc:creator>
                <pubDate>Tue, 04 Feb 2025 15:18:24 +0000</pubDate>
                <media:content url="https://cdn.hashnode.com/res/hashnode/image/upload/v1738612280310/a3e39db8-66e9-45f5-9bc1-60cfa426a001.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>Cloud Development Environments (CDEs) have become essential tools in modern software development, offering enhanced productivity and streamlined workflows.</p>
<p>This article compares three leading CDEs: Harness CDE, Gitpod, and Coder. My goal here is to offer an objective analysis to help you make informed decisions based on your specific needs.</p>
<h2 id="heading-what-is-a-cloud-development-environment-cde">What is a Cloud Development Environment (CDE)?</h2>
<p>A <strong>Cloud Development Environment (CDE)</strong> is a cloud-hosted workspace where developers can write, test, and deploy code without relying on local machines. Unlike traditional setups, CDEs provide pre-configured environments accessible via a browser or IDE, eliminating the "it works on my machine" problem.</p>
<p>How CDEs differ from traditional development environments</p>
<ul>
<li><p>CDEs are more consistent and help standardize tools, dependencies, and configurations across teams.</p>
</li>
<li><p>They’re also accessible from anywhere, enabling remote collaboration.</p>
</li>
<li><p>They’re more scalable, as resources (CPU, memory) scale dynamically based on workload.</p>
</li>
<li><p>And they’re secure, with centralized security controls and compliance adherence (for example, SOC 2, GDPR).</p>
</li>
</ul>
<h3 id="heading-common-cde-features"><strong>Common CDE Features</strong></h3>
<p>Most CDEs come with a variety of helpful features. They typically have pre-built environment templates (for example, Python, Node.js) and integrate easily with Git repositories and CI/CD pipelines. They also have various real-time collaboration tools, as well as the ability to automate backups and recovery.</p>
<p>You’ll learn more about specific features when we discuss each of our CDE options below.</p>
<h2 id="heading-the-case-for-cloud-based-development"><strong>The Case for Cloud-Based Development</strong></h2>
<p>CDEs can help you and your team solve some critical pain points:</p>
<h3 id="heading-cdes-make-setup-easier">CDEs make setup easier</h3>
<p>When using a CDE, you don’t have the hassle of setting up local machines. Instead, you have a pre-configured development environment that’s ready to go in minutes. With a traditional setup, you have to install dependencies, configure environments, and resolve compatibility issues – and this can take hours or even days. CDEs make this process much easier.</p>
<p>Let’s say a new developer joins your project that requires a complex stack – it needs a specific Python version, multiple frameworks, and environment variables. Instead of spending hours configuring their local machine, they can just launch a cloud-based workspace (like one of the tools we’ll discuss here), which comes pre-loaded with everything they need.</p>
<h3 id="heading-cdes-help-reduce-costs">CDEs help reduce costs</h3>
<p>CDEs can reduce your costs by making sure that development resources are allocated only when they’re needed. Unlike local machines, which require upfront investment in high-performance hardware, cloud environments help you scale resources dynamically and pay only for the compute power you and your team use.</p>
<p>Perhaps your team is developing a resource-intensive AI application. If you’re using a CDE, you’ll no longer need to provide every developer with an expensive workstation. Instead, you can just provision high-performance cloud instances when needed and shut them down when idle. This cuts down on unnecessary spending.</p>
<h3 id="heading-cdes-enhance-security">CDEs enhance security</h3>
<p>With cloud-based environments, code and sensitive data remain on secure, centralized servers rather than being stored on individual developer machines. This helps reduce the risk of data loss or theft. CDEs also provide audit logs, identity management, and automated backups, all of which help make things more security.</p>
<p>Let’s say a financial services company requires strict security controls over customer data. By using a CDE, the developers on the team can access code via secure connections without storing sensitive files locally. This helps ensure compliance with industry regulations like SOC 2 or GDPR.</p>
<h3 id="heading-cdes-enable-global-collaboration">CDEs enable global collaboration</h3>
<p>CDEs make collaboration among distributed teams much easier by allowing multiple developers to work in the same environment with shared configurations. Remote developers can contribute from anywhere without worrying about compatibility issues or inconsistent setups.</p>
<p>For example, perhaps your global development team is working on a SaaS product. They can use a CDE to collaborate in real time. A member of your dev team in India can start debugging an issue, and then a teammate in the US can pick up where they left off hours later without needing to set up the same environment locally.</p>
<h2 id="heading-methodology"><strong>Methodology</strong></h2>
<p>This analysis is based on official documentation, user reviews, and independent testing. All information is current as of the last update date. The article is focused on key aspects such as features, deployment options, security, pricing, and use cases.</p>
<h2 id="heading-overview-of-each-tool"><strong>Overview of Each Tool</strong></h2>
<h3 id="heading-harness-cde">Harness CDE</h3>
<p>Harness CDE is part of the broader Harness platform, designed to streamline software delivery with integrated CI/CD pipelines, feature flags, and cloud cost management. It provides enterprise-grade security, a user-friendly interface, and robust integration capabilities, making it ideal for large-scale applications.</p>
<p>With its comprehensive suite of tools and advanced cost management, Harness CDE helps enterprises efficiently manage their entire development lifecycle. Harness CDE's intuitive interface and detailed documentation further enhance its suitability for large-scale applications.</p>
<h4 id="heading-drawbacks"><strong>Drawbacks</strong></h4>
<p>Despite its many strengths, Harness CDE is relatively new to the market, meaning its features and capabilities are still evolving. Deep integration with the Harness platform could make switching challenging.</p>
<h3 id="heading-gitpod">Gitpod</h3>
<p>Gitpod is a SaaS solution that provides automated, ready-to-code development environments. It integrates seamlessly with popular version control systems like GitHub, GitLab, and Bitbucket, offering fast and consistent setups.</p>
<p>Gitpod is known for its user-friendly web interface and quick onboarding process, which significantly reduces setup times and lets devs focus on coding rather than environment configuration. This makes it ideal for agile development teams and startups.</p>
<h4 id="heading-drawbacks-1"><strong>Drawbacks</strong></h4>
<p>Gitpod's SaaS model offers limited control over infrastructure, which can be a disadvantage for teams needing more customization and control. Also, dedicated instances can be more costly, potentially offsetting some of the benefits of its free plan.</p>
<h3 id="heading-coder">Coder</h3>
<p>Coder is an open-source platform offering both free and self-managed (paid) options. It provides highly customizable, secure, and scalable development environments that you can host on your infrastructure. This makes it suitable for organizations needing tailored solutions.</p>
<p>Coder excels in environments where stringent security and compliance requirements are paramount, offering extensive control and customization.</p>
<h4 id="heading-drawbacks-2"><strong>Drawbacks</strong></h4>
<p>Coder requires more setup time and maintenance compared to Gitpod and Harness CDE. Its reliance on self-managed infrastructure can also increase complexity and cost, particularly for smaller teams or startups without dedicated DevOps resources.</p>
<h2 id="heading-detailed-feature-comparison">Detailed Feature Comparison</h2>
<p>Now let’s compare some basic features to see how these three tools stack up against each other.</p>
<h3 id="heading-deployment-and-scalability">Deployment and Scalability</h3>
<ul>
<li><p><strong>Harness CDE</strong>: Integrated with the Harness &amp; Gitness platforms, offering high scalability within the Harness ecosystem.</p>
</li>
<li><p><strong>Gitpod</strong>: SaaS model with easy scalability and options for managed dedicated instances.</p>
</li>
<li><p><strong>Coder</strong>: Self-managed deployment with full control over infrastructure, providing high scalability for tailored environments.</p>
</li>
</ul>
<h3 id="heading-integration-and-user-experience">Integration and User Experience</h3>
<ul>
<li><p><strong>Harness CDE</strong>: Comprehensive suite of development tools, intuitive interface, and detailed documentation.</p>
</li>
<li><p><strong>Gitpod</strong>: Seamless integration with GitHub, GitLab, and Bitbucket, featuring automated setups and excellent documentation.</p>
</li>
<li><p><strong>Coder</strong>: Integrates with existing infrastructure and various tech stacks, providing detailed documentation and customizable configurations.</p>
</li>
</ul>
<h3 id="heading-security-and-compliance">Security and Compliance</h3>
<ul>
<li><p><strong>Harness CDE</strong>: Enterprise-grade security features, including SOC 2 compliance, role-based access control, and advanced secrets management. Offers comprehensive audit logging and governance with policy-as-code support.</p>
</li>
<li><p><strong>Gitpod</strong>: Secure environments with data encryption, SOC 2 compliant.</p>
</li>
<li><p><strong>Coder</strong>: Focuses on security and compliance, supporting various standards like HIPAA and GDPR.</p>
</li>
</ul>
<h3 id="heading-costpricing">Cost/Pricing</h3>
<ul>
<li><p><strong>Harness CDE</strong>: Competitive pricing with integrated platform features. A lot of features are free to use. Pricing varies based on scale and needs – contact Harness for details.</p>
</li>
<li><p><strong>Gitpod</strong>: Varies with free and paid plans, limited customization based on SaaS offerings. The free plan includes 50 hours/month, while paid plans offer unlimited hours.</p>
</li>
<li><p><strong>Coder</strong>: Costs depend on self-managed infrastructure, offering high customization and control over environment setup. The tool is free for open-source use, and paid for self-managed deployments.</p>
</li>
</ul>
<h3 id="heading-setup-time-and-user-interface">Setup Time and User Interface</h3>
<ul>
<li><p><strong>Harness CDE</strong>: Fast setup with integrated CI/CD pipeline and modern, intuitive interface.</p>
</li>
<li><p><strong>Gitpod</strong>: Quick setup in minutes with a user-friendly, web-based interface.</p>
</li>
<li><p><strong>Coder</strong>: Setup time varies based on custom configurations, offering a flexible and customizable interface.</p>
</li>
</ul>
<h3 id="heading-availability">Availability</h3>
<ul>
<li><p><strong>Harness CDE</strong>: Part of the Harness platform, typically targeted at enterprise users.</p>
</li>
<li><p><strong>Gitpod</strong>: SaaS model with both free and paid plans.</p>
</li>
<li><p><strong>Coder</strong>: Open-source with both free and self-managed (paid) options.</p>
</li>
</ul>
<h3 id="heading-specs">Specs</h3>
<ul>
<li><p><strong>Harness CDE</strong>: Integrated CI/CD, feature flags, cloud cost management, enterprise-grade security, and so on.</p>
</li>
<li><p><strong>Gitpod</strong>: Automated setups, seamless integration with VCS, user-friendly interface.</p>
</li>
<li><p><strong>Coder</strong>: Highly customizable, secure, scalable, extensive control.</p>
</li>
</ul>
<h3 id="heading-additional-features"><strong>Additional Features</strong></h3>
<p>Here’s a detailed table that includes info on a bunch of other features that might help you make your decision as to which tool is best for you.</p>
<div class="hn-table">
<table>
<thead>
<tr>
<td>Feature</td><td>Harness CDE</td><td>Gitpod</td><td>Coder</td></tr>
</thead>
<tbody>
<tr>
<td><strong>Data Storage</strong></td><td>Integrated with Harness</td><td>External, cloud-based storage</td><td>On-premises, cloud options available</td></tr>
<tr>
<td><strong>Resource Management</strong></td><td>Automated scaling</td><td>Easy resource allocation</td><td>Customizable resource allocation</td></tr>
<tr>
<td><strong>Monitoring and Logging</strong></td><td>Integrated monitoring tools</td><td>External tools (e.g., Grafana)</td><td>Integrated and external options</td></tr>
<tr>
<td><strong>Performance</strong></td><td>High, optimized for enterprise use</td><td>High, optimized for cloud</td><td>High, depends on infrastructure</td></tr>
<tr>
<td><strong>Updates and Maintenance</strong></td><td>Automated updates</td><td>Regular updates, easy maintenance</td><td>Manual updates, customizable maintenance</td></tr>
<tr>
<td><strong>Community Support</strong></td><td>Growing community, active forums</td><td>Active community, strong documentation</td><td>Large community, extensive documentation</td></tr>
<tr>
<td><strong>Learning Curve</strong></td><td>Moderate, user-friendly</td><td>Low, easy to start</td><td>Moderate, flexible setup</td></tr>
<tr>
<td><strong>CI/CD Integration</strong></td><td>Built-in CI/CD pipelines</td><td>Supports CI/CD via third-party integrations</td><td>Requires custom setup for CI/CD</td></tr>
<tr>
<td><strong>Collaboration Features</strong></td><td>Integrated collaboration tools</td><td>Collaboration through VCS integrations</td><td>Customizable collaboration tools</td></tr>
<tr>
<td><strong>Container Support</strong></td><td>Native Docker support</td><td>Supports containerized environments</td><td>Full containerization support</td></tr>
<tr>
<td><strong>Cost Management</strong></td><td>Integrated cost management</td><td>No built-in cost management</td><td>Requires external tools for cost management</td></tr>
<tr>
<td><strong>Workflow Automation</strong></td><td>Extensive automation features</td><td>Basic automation through scripts</td><td>High customizability for automation</td></tr>
<tr>
<td><strong>Version Control Support</strong></td><td>Seamless VCS integration</td><td>Native support for Git-based VCS</td><td>Customizable VCS integration</td></tr>
<tr>
<td><strong>API Access</strong></td><td>Comprehensive API access</td><td>Robust API for integration</td><td>Full API support for custom integration</td></tr>
<tr>
<td><strong>Code Reviews</strong></td><td>Built-in code review tools</td><td>Code reviews through VCS integrations</td><td>Customizable code review processes</td></tr>
<tr>
<td><strong>Branch Management</strong></td><td>Advanced branch management</td><td>Supports branch management through VCS</td><td>Customizable branch management</td></tr>
<tr>
<td><strong>Testing Tools</strong></td><td>Integrated testing tools</td><td>Requires third-party testing tools</td><td>Full integration with various testing tools</td></tr>
<tr>
<td><strong>Data Backup and Recovery</strong></td><td>Automated backup and recovery</td><td>Limited backup options</td><td>Requires custom setup for backup and recovery</td></tr>
<tr>
<td><strong>Cloud Provider Compatibility</strong></td><td>Supports multiple cloud providers</td><td>Primarily cloud-agnostic</td><td>Fully compatible with various cloud providers</td></tr>
<tr>
<td><strong>Onboarding Time</strong></td><td>Fast, guided onboarding</td><td>Quick, automated onboarding</td><td>Varies, depending on custom configurations</td></tr>
<tr>
<td><strong>Multi-language Support</strong></td><td>Extensive support for multiple languages</td><td>Supports many languages</td><td>Full support for various programming languages</td></tr>
<tr>
<td><strong>User Authentication</strong></td><td>Integrated authentication options</td><td>Basic authentication options</td><td>Comprehensive, customizable authentication</td></tr>
<tr>
<td><strong>Secrets Management</strong></td><td>Built-in secrets management</td><td>Requires third-party tools</td><td>Full support for secrets management</td></tr>
<tr>
<td><strong>Pipeline Visualization</strong></td><td>Advanced, intuitive pipeline visualization</td><td>Basic pipeline visualization</td><td>Customizable pipeline visualization</td></tr>
<tr>
<td><strong>Environment Provisioning</strong></td><td>Automated, scalable environment provisioning</td><td>Fast, on-demand environment provisioning</td><td>Flexible environment provisioning</td></tr>
<tr>
<td><strong>License Model</strong></td><td>Open-source and commercial licenses</td><td>Open-source and commercial licenses</td><td>Open-source and commercial licenses</td></tr>
<tr>
<td><strong>Network Isolation</strong></td><td>Built-in network isolation features</td><td>Limited network isolation</td><td>Advanced network isolation options</td></tr>
<tr>
<td><strong>Role-based Access Control</strong></td><td>Comprehensive RBAC</td><td>Basic RBAC</td><td>Advanced RBAC</td></tr>
<tr>
<td><strong>Audit Logging</strong></td><td>Detailed audit logging</td><td>Basic audit logging</td><td>Extensive audit logging</td></tr>
<tr>
<td><strong>Governance with Policy as Code</strong></td><td>Supports OPA-based policies</td><td>Limited</td><td>Advanced governance features</td></tr>
<tr>
<td><strong>Feature Flags</strong></td><td>Integrated, robust feature flag management</td><td>Requires third-party tools</td><td>Full support for feature flag management</td></tr>
<tr>
<td><strong>Internal Developer Portal</strong></td><td>Comprehensive internal developer portal</td><td>Limited</td><td>Advanced portal capabilities</td></tr>
<tr>
<td><strong>Software Supply Chain Management</strong></td><td>Integrated, secure supply chain features</td><td>Limited</td><td>Requires custom setup</td></tr>
<tr>
<td><strong>Service Reliability Management</strong></td><td>Real-time insights and reliability</td><td>Limited</td><td>Requires third-party tools</td></tr>
<tr>
<td><strong>Chaos Engineering</strong></td><td>Built-in chaos engineering tools</td><td>Requires third-party tools</td><td>Full support for chaos engineering</td></tr>
<tr>
<td><strong>Self-Managed Options</strong></td><td>Available for enterprise</td><td>Not available</td><td>Available</td></tr>
<tr>
<td><strong>Code Repository Integration</strong></td><td>Seamless integration with Git-based repositories</td><td>Limited</td><td>Full support for various repositories</td></tr>
<tr>
<td><strong>APM Integration</strong></td><td>Comprehensive APM integration</td><td>Requires third-party tools</td><td>Full support for APM integration</td></tr>
<tr>
<td><strong>Artifact Management</strong></td><td>Integrated artifact management</td><td>Limited</td><td>Full support for artifact management</td></tr>
<tr>
<td><strong>Cloud Cost Management</strong></td><td>Advanced cloud cost management features</td><td>No built-in cost management</td><td>Requires third-party tools</td></tr>
<tr>
<td><strong>AI and ML Support</strong></td><td>Built-in tools for AI/ML workflows</td><td>Requires third-party tools</td><td>Extensive support for AI/ML</td></tr>
</tbody>
</table>
</div><h3 id="heading-how-to-choose-the-right-tool"><strong>How to Choose the Right Tool</strong></h3>
<p>As you can see, each of these cloud development environments has its strengths. It’s up to you to analyze them and decide which tool is right for you. Here’s a quick summary:</p>
<ul>
<li><p>Harness CDE offers the fastest startup times and a straightforward, performance-focused approach.</p>
</li>
<li><p>Gitpod provides the widest language support and a large community, with competitive pricing.</p>
</li>
<li><p>Coder excels in security, compliance, and customization.</p>
</li>
</ul>
<p>When choosing a CDE, consider the following factors:</p>
<ul>
<li><p>Team size and structure</p>
</li>
<li><p>Existing technology stack</p>
</li>
<li><p>Security and compliance requirements</p>
</li>
<li><p>Budget constraints</p>
</li>
<li><p>Customization needs</p>
</li>
<li><p>Scalability requirements</p>
</li>
<li><p>Integration with existing tools and workflows</p>
</li>
</ul>
<h2 id="heading-conclusion"><strong>Conclusion</strong></h2>
<p>In this guide, you learned about three CDE tools and their main features. Which of these tools you choose will largely depend on your specific needs.</p>
<p>Ultimately, I recommend that you take advantage of any free trials or demos offered by these platforms to get hands-on experience before making a decision. Consider your team's specific workflows, the technologies you use, and your scalability needs when choosing a cloud development environment.</p>
<h3 id="heading-references"><strong>References</strong></h3>
<ul>
<li><p><a target="_blank" href="https://developer.harness.io/docs/">Harness Docs</a></p>
</li>
<li><p><a target="_blank" href="https://www.gitpod.io/docs/introduction">Gitpod Docs</a></p>
</li>
<li><p><a target="_blank" href="https://coder.com/docs">Coder Docs</a></p>
</li>
</ul>
<p>Note: This article is for informational purposes only. Everyone should conduct their own thorough evaluation based on their specific requirements before making a decision.</p>
<p>I hope you’ve enjoyed it and have learned something new. I’m always open to suggestions and discussions on <a target="_blank" href="https://www.linkedin.com/in/gursimarsm">LinkedIn</a>. Hit me up with direct messages.</p>
<p>If you’ve enjoyed my writing and want to keep me motivated, consider leaving starts on <a target="_blank" href="https://github.com/gursimarsm">GitHub</a> and endorsing me for relevant skills on <a target="_blank" href="https://www.linkedin.com/in/gursimarsm">LinkedIn</a>.</p>
<p>Till the next one, happy coding!</p>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ ExamPro Cloud Developer Environment Certification — Pass the Exam with This 12 Hour Course ]]>
                </title>
                <description>
                    <![CDATA[ By Andrew Brown If you are a web-application developer looking to learn how to leverage the cloud or want to become a cloud developer, the ExamPro Cloud Development Environment (EXP-CDE-01) is the first step. What is a Cloud Developer Environment? A ... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/exampro-cloud-developer-environment-certification-gitpod-course/</link>
                <guid isPermaLink="false">66d45da6c7632f8bfbf1e3e1</guid>
                
                    <category>
                        <![CDATA[ Gitpod ]]>
                    </category>
                
                    <category>
                        <![CDATA[ youtube ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Mon, 04 Apr 2022 13:14:49 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2022/04/gitpod-1.png" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Andrew Brown</p>
<p>If you are a web-application developer looking to learn how to leverage the cloud or want to become a cloud developer, the ExamPro Cloud Development Environment (EXP-CDE-01) is the first step.</p>
<h2 id="heading-what-is-a-cloud-developer-environment">What is a Cloud Developer Environment?</h2>
<p>A Cloud Developer Environment (CDE) is a:</p>
<ul>
<li>code editor that can run in the cloud and</li>
<li>the underlying compute environment runs in the cloud.</li>
</ul>
<p>This is different from traditional environments, which run on your local machine and uses your local computing power.</p>
<p>A Cloud Developer Environment has many advantages:</p>
<ul>
<li>All you need a web-browser and an internet connection</li>
<li>Very easy to remotely collaborate in the same environment within a team</li>
<li>Reduce developer environment configuration for new team members</li>
<li>Well suited towards cloud technologies which require vastly different environments based on the use-case</li>
<li>and more...</li>
</ul>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/03/Screen-Shot-2022-03-26-at-12.56.45-PM.png" alt="Image" width="600" height="400" loading="lazy">
<em>A picture Gitpod, which is a Cloud Developer Environment</em></p>
<h2 id="heading-what-is-the-exampro-cloud-developer-environment-certification-exp-cde-01">What is the ExamPro Cloud Developer Environment Certification (EXP-CDE-01)?</h2>
<p>This cloud certification is designed to teach you how to leverage a Cloud Developer Environment for Web Developer, Cloud Developer or Cloud Engineer roles.</p>
<p>Acquiring knowledge about Cloud Developer Environments is the first and essential step towards becoming a Cloud Developer.</p>
<p>This certification is <strong>also known as the Gitpod Certification</strong>, because it strongly focuses on using the open-source and Software as Service (SaaS) known as Gitpod.</p>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/03/code-developer-enviroment.png" alt="Image" width="600" height="400" loading="lazy">
<em>A picture of the badge and certification for the EXP-CDE-01</em></p>
<p>The reason Gitpod was chosen was because:</p>
<ul>
<li>It's has a generous free-tier</li>
<li>It's open-source (MIT license)</li>
<li>It's vendor agnostic, (can work with Gitlab, Github, Bitbucket)</li>
<li>It's Code Editor is Visual Studio Code, the most popular code editor</li>
<li>It is the market leader for Cloud Developer Environments</li>
</ul>
<p>Cloud Developer Environments (CDE) have very similar feature sets so CDE concepts learned on Gitpod will translate to other CDEs.</p>
<h3 id="heading-what-is-an-exampro-certification">What is an ExamPro Certification?</h3>
<p>ExamPro is the company thats produced multiple free video study courses published to freeCodeCamp YouTube for popular Cloud Service Providers eg. AWS, Azure, GCP, Kubernetes for certifications such as the: CLF-C01, SAA-C02, SOA-C01, DVA-C01, AZ-900, DP-900, AI-900, AZ-104, GCP-CDL, the KCNA and more.</p>
<p>ExamPro is producing its own cloud certification that aligns to specific cloud roles. ExamPro is the issuing authority and intends to sharply reduce the cost of cloud certifications to make cloud knowledge more accessible.</p>
<h2 id="heading-what-is-a-cloud-developer">What is a Cloud Developer?</h2>
<p>A Cloud Developer is a web-application developer role that incorporates cloud-services when building web-applications.</p>
<p>Cloud Developers can make <strong>30% more</strong> than web-application developers because cloud-developers know how to take full-advantage of the cloud.</p>
<p>So web-applications built by cloud developers will be are more available, scalable, durable, secure and allows small organizations to compete in the global market against established tech giants.</p>
<p>The term cloud developer is becoming popularized, many job postings that are asking for web developers or full-stack developers are actually cloud developer roles. </p>
<h2 id="heading-is-it-is-hard-to-become-a-cloud-developer">Is it is hard to become a Cloud Developer?</h2>
<p>A Cloud Developer's skill set is similar to a Web-Application Developer however much of the web-application's functionality can be offloaded to cloud-services.</p>
<p>So a Cloud Developer has needs to the following knowledge:</p>
<ul>
<li><strong>Cloud Developer Environments</strong> - have a specialized ephemeral developer environment suited for working with many different kind of SDKs and development tools</li>
<li><strong>Cloud Programming</strong> - broader knowledge of multiple programming languages, since cloud-services SDKs language availability vary per service</li>
<li><strong>Application Integration</strong> - Cloud services needs to be integrated into your web-application or communicate with other services. A cloud developer writes code or configuration to integrates these together</li>
<li><strong>Cloud Deployment</strong> - A cloud developer has the added responsibility of understanding how deployment pipelines work in a cloud environment</li>
</ul>
<p>A cloud developer strongly benefits from having knowledge of the underlying infrastructure and architecture to which their application will be deployed. However a Cloud Developer is not responsible for for the lifecycle, automation or maintain of the infrastructure.</p>
<p>A Cloud developer benefits from knowing the following about cloud infrastructure:</p>
<ul>
<li><strong>Virtualization</strong> — The most common place to run a web-application is on a virtual machine and virtual environments is the basis for modern architecture such as containers and serverless.</li>
<li><strong>Linux</strong> — The most common operation system to run web-application servers, A Cloud developer needs to know basic Linux networking, linux troubleshooting</li>
<li><strong>Windows</strong> — Windows Server is very common in traditional IT, and having general windows knowledge alongside Linux allows a Cloud Developer to maximize the use of cloud services that run on Windows.</li>
<li><strong>Containers</strong> — The next step up from Virtual Machines, Containers allow for additional portability and isolation, and encourage micro-service architecture which is more aligned with cloud services.</li>
<li><strong>Serverless</strong> — A modern architecture where developers can focus on code, and everything else is handled by the cloud provider.</li>
</ul>
<p><img src="https://www.freecodecamp.org/news/content/images/2022/03/Screen-Shot-2022-03-26-at-12.05.57-PM-1.png" alt="Image" width="600" height="400" loading="lazy"></p>
<h2 id="heading-overview-of-the-exampro-cloud-developer-environment-certification">Overview of the ExamPro Cloud Developer Environment Certification</h2>
<p>The exam questions are divided into the following domains:</p>
<ul>
<li>7% Domain 1: Cloud Developer Environment Concepts</li>
<li>5% Domain 2: Gitpod Integrations</li>
<li>35% Domain 3: Gitpod Configurations</li>
<li>35% Domain 4: Gitpod Workflows</li>
<li>18% Domain 5: Gitpod.io, Gitpod Enterprise, Gitpod OSS</li>
</ul>
<h2 id="heading-how-do-you-get-certified"><strong>How do you get Certified?</strong></h2>
<p>The exam is delivered online via TeacherSeat Anchor on <strong>ExamPro platform</strong>.</p>
<p>You can find more details here:<br><a target="_blank" href="https://exampro.co/exp-cde-01">https://exampro.co/exp-cde-01</a></p>
<ul>
<li>The exam contains <strong>55 questions</strong>. </li>
<li>Questions are <strong>multiple-choic</strong>e and  <strong>multiple-select</strong> format.</li>
<li>The duration of the exam <strong>1.5 hours</strong></li>
<li>You need <strong>80%</strong> or higher to pass</li>
<li>The exam is <strong>proctored</strong> (Proctored exam means  someone will be watching you while you take the exam to ensure the integrity of the exam attempt)</li>
<li>There are no penalties for wrong answers</li>
<li>You get one attempt</li>
</ul>
<p>Head on over <a target="_blank" href="https://youtu.be/XcjqapXfrhk">to freeCodeCamp's YouTube channel</a> to start working through the full 12-hour course.</p>
<div class="embed-wrapper">
        <iframe width="560" height="315" src="https://www.youtube.com/embed/XcjqapXfrhk" style="aspect-ratio: 16 / 9; width: 100%; height: auto;" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen="" loading="lazy"></iframe></div>
 ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ GitHub Codespaces vs Gitpod – Full Stack Development Moves to the Cloud ]]>
                </title>
                <description>
                    <![CDATA[ By Nader Dabit Gitpod and GitHub Codespaces are cloud based developer environments that allow you to spin-up high-performance, automated dev environments in seconds. Over the past few months I have gone down the rabbit hole of cloud-based developer e... ]]>
                </description>
                <link>https://www.freecodecamp.org/news/github-codespaces-vs-gitpod-cloud-based-dev-environments/</link>
                <guid isPermaLink="false">66d46044ffe6b1f641b5fa3a</guid>
                
                    <category>
                        <![CDATA[ Cloud Computing ]]>
                    </category>
                
                    <category>
                        <![CDATA[ codespaces ]]>
                    </category>
                
                    <category>
                        <![CDATA[ GitHub ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Gitpod ]]>
                    </category>
                
                    <category>
                        <![CDATA[ ide ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Visual Studio Code ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ freeCodeCamp ]]>
                </dc:creator>
                <pubDate>Mon, 30 Aug 2021 17:10:36 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/news/content/images/2021/08/pexels-josh-sorenson-1154504.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p>By Nader Dabit</p>
<p><a target="_blank" href="https://www.gitpod.io/">Gitpod</a> and <a target="_blank" href="https://github.com/features/codespaces">GitHub Codespaces</a> are cloud based developer environments that allow you to spin-up high-performance, automated dev environments in seconds.</p>
<p>Over the past few months I have gone down the rabbit hole of cloud-based developer environments. I'm moving several of my projects to the cloud so that developers can deploy the projects with a single click, like <a target="_blank" href="https://github.com/dabit3/polygon-ethereum-nextjs-marketplace">this full stack NFT marketplace</a>.</p>
<p>This has been especially helpful for me, as a teacher and content creator helping developers learn how to code. Now these developers can deploy the example projects without having to set up their local environments so there's one less hurdle for them if they are just getting started. </p>
<p>It is also an overall productivity and efficiency boost as I don’t have to clone and set up projects anymore locally when making updates. Instead, I can just click a button and it’s ready to go.</p>
<p>In this article I'll share my view on the ecosystem together with a comparison of the two leading options in accomplishing this – GitHub Codespaces and Gitpod.</p>
<p>For transparency, Gitpod is also a sponsor of <a target="_blank" href="https://www.youtube.com/naderdabit">my YouTube channel</a>. That being said, I only choose to accept sponsorships from projects that I already enjoy using myself.</p>
<h2 id="heading-cloud-based-development-this-is-the-way"><strong>Cloud-based Development – This Is the Way</strong></h2>
<p>As developers, we like to automate things. We speed up our own workflows, automate infrastructure and CI/CD pipelines, and even create tools that <a target="_blank" href="https://copilot.github.com/">write code themselves</a>. </p>
<p>If you look at modern software pipelines, there is one area we have not automated: our developer environments. They are still brittle, tied to local machines, and require nerve-wracking set-up and maintenance efforts that distract us from being creative and productive. </p>
<p>Dev environments are a constant source of friction during onboarding and ongoing development (remember your last “works on my machine” discussion).</p>
<p>As a teacher and content creator helping new developers learn how to code, one of the most common issues isn't the tutorial or content itself. Rather, it's the developer's local environment not being set up properly, and it's often not even their fault. </p>
<p>There are countless variances of operating systems and application versions that have to be taken into account.</p>
<p>The pain that comes with local dev environments will only get worse over time: larger workloads, more data, more dependencies, more testing, multi-service and multi-track development are all things that are difficult to account for.</p>
<h2 id="heading-github-codespaces-and-gitpod-lead-the-pack-of-cloud-based-dev-environments"><strong>GitHub Codespaces and Gitpod Lead the Pack of Cloud-based Dev Environments</strong></h2>
<p>Some years ago, Cloud9 moved into the area as a first generation of browser IDEs. Though their ideas were going in the right direction, technology and community just were not ready (yet).</p>
<p>A lot has changed since then. In addition to the advent and meteoric rise of VS Code, there were big leaps in container and VM technology that made it faster, more secure, scalable, and practical to run developer environments in the cloud. </p>
<p>No surprise that we are seeing companies like Google, Facebook, Shopify and most recently GitHub fully moving software development to the cloud with internal solutions.</p>
<p>There are a few players in the area that have taken advantage of those developments – although some might argue that other existing solutions focus more on prototyping and playground work for specific languages and are not a full replacement for local development. </p>
<p>When it comes to cloud-based dev environments that work for day-to-day professional software development, there are two main options: <a target="_blank" href="https://www.gitpod.io/">Gitpod</a> and <a target="_blank" href="https://github.com/features/codespaces">GitHub Codespaces</a>.</p>
<p>So what do they do? Well, essentially they let you spin up <strong>task-based developer environments</strong> in the cloud from any Git context. Once you’re done, you just close them. </p>
<p>This is a huge boost for productivity. Think about multi-track development (no changing of dev environment settings when switching contexts to review pull-requests), onboarding, consistency or just working remotely. You can work from any computer, Chromebook, or tablet.</p>
<p>In this article we will take a look under the hood and assess and evaluate both products according to the following categories:</p>
<ul>
<li>Workflow and Collaboration</li>
<li>IDE</li>
<li>Runtime</li>
<li>Automation</li>
<li>Open Source &amp; Ecosystem</li>
<li>Availability &amp; Pricing</li>
</ul>
<p>Let’s dive into it!</p>
<h2 id="heading-github-codespaces-vs-gitpod-workflow">GitHub Codespaces vs Gitpod Workflow</h2>
<p>GitHub Codespaces and Gitpod are both services that allow you to do exactly the same as what you could do locally on a Linux machine with one major addition: your developer environment can be configured as code and hence is version controlled, reproducible and automatable. </p>
<p>GitHub Codespaces allows you to do that with a <a target="_blank" href="https://code.visualstudio.com/docs/remote/devcontainerjson-reference">devcontainer.json</a> file and Gitpod with a <a target="_blank" href="https://www.gitpod.io/docs/references/gitpod-yml">.gitpod.yml</a> file that you place into your repository (more on that later). Both do essentially the same thing, like define what Docker container to use, what scripts to run, and they control what extensions will be available in your Codespace (GitHub) / workspace (Gitpod). </p>
<p>Both products embrace a software development flow that enables developers to start a developer environment from any Git context (Issue, PR/MR, branches, and so on) with one-click for the specific task you are working on. </p>
<p>This task-based development flow is what ultimately sold me on switching from local dev for real world projects and, after using it, feels like it would be really hard to go back to not having it.</p>
<p>Developer environments turn just into some resource I can spin up on demand and close and forget about if I am done with my task. Gitpod is excelling at that workflow and built their product around it. </p>
<p>Reading the <a target="_blank" href="https://github.blog/2021-08-11-githubs-engineering-team-moved-codespaces/">blog post</a> from the engineering team at GitHub, it feels like they internally adapted a similar workflow, however this is not native with Codespaces right now.</p>
<p><img src="https://lh4.googleusercontent.com/q0xOqarPIMDK9-hcOLujGzXbJsrkFiFyNnGmGSpkqk4u4eKGbnoHmG7cNYQlLtm_58M7rkpZ_dgHuFHyAK6o3V2rL61hfk-r87NsYTPWJS_kLQW_L9LLo0Idwg_7pq-TXh-u9MK3=s0" alt="Image" width="600" height="400" loading="lazy"></p>
<p><img src="https://lh6.googleusercontent.com/8LIlWDgOmEO32gO9JSUYL_5tPKr-W9g3C0mnFTuefYVWpd3ppCI4IVT8ap5jkfb2HuhVcHb3LSqkBcGHQf7wnEFVeyN7Nl5Eph2a9VndnNMlkxQBbeaktYZWJS1RhKERq4tHU9Vg=s0" alt="Image" width="600" height="400" loading="lazy"></p>
<h2 id="heading-collaboration-with-codespaces-vs-gitpod">Collaboration with Codespaces vs Gitpod</h2>
<p>Both GitHub Codespaces and Gitpod offer ways to collaborate, but they differ in their approach. </p>
<p>On both platforms, when your development environment is running, you can expose any TCP port publicly or privately to the internet. This enables workflows where you can share links to a web-server or API server as standard URLs. </p>
<p>Gitpod offers functionality to share a snapshot of the workspace with a co-worker but GitHub Codespaces does not.</p>
<p>GitHub Codespaces offers the ability to interactively pair program when the <a target="_blank" href="https://visualstudio.microsoft.com/services/live-share/">LiveShare extension</a> is installed while Gitpod offers the ability to share the workspace itself with collaborators. </p>
<p>Once Gitpod enables local VS Code support (1-2 weeks from this writing) you can also use LiveShare with Gitpod.</p>
<p>Here are some further resources where you can read more about this.</p>
<ul>
<li><a target="_blank" href="https://www.gitpod.io/blog/i-said-goodbye-to-local-development-and-so-can-you#develop-a-new-feature">https://www.gitpod.io/blog/i-said-goodbye-to-local-development-and-so-can-you#develop-a-new-feature</a></li>
<li><a target="_blank" href="https://github.blog/2021-08-11-githubs-engineering-team-moved-codespaces/">https://github.blog/2021-08-11-githubs-engineering-team-moved-codespaces/</a></li>
<li><a target="_blank" href="https://visualstudio.microsoft.com/services/live-share/">https://visualstudio.microsoft.com/services/live-share/</a></li>
</ul>
<h2 id="heading-gitpod-vs-codespaces-ide">Gitpod vs Codespaces IDE</h2>
<p>Both Gitpod and Codespaces ship upstream, and stock VS Code as their default IDE running in the browser. It feels like, acts like, and is literally the same VS Code that you are used to from your desktop. Be aware of cmd+W however :). </p>
<p>As GitHub is owned by Microsoft, I understand that the VS Code team was heavily involved in building GitHub Codespaces. </p>
<p>The team behind Gitpod has a long background in open-source developer tooling, and they initially created <a target="_blank" href="https://theia-ide.org/">Theia</a> (which is also based on VS Code). |But recently, they switched to stock VS Code and maintain a very lightweight fork of VS Code that has also continued to gain adoption by other teams in the industry (<a target="_blank" href="https://github.com/gitpod-io/vscode/">https://github.com/gitpod-io/vscode/</a>).</p>
<p><img src="https://lh6.googleusercontent.com/F__NabACVugaw59_F56hT_7euuIyGyGo2gUYRo3tpcRWHZRHKQpomawaGJGph2scXTsD14G-PQwy3H71DKWTU0XQs03tJSENU4IeDRxh-lXL0G3_JB1C9CqWIqPxWFhlSQsKRpy1=s0" alt="Image" width="600" height="400" loading="lazy"></p>
<p><img src="https://lh3.googleusercontent.com/rIv3ade5u-A027pXxPZ7K-zn--ddFchT3EbjTS-XzYD35jFZ5E-MdefIc3gch2Y5xLvSy6udUuCfWkL-CFZvlvNSkjwrun3MqwjO7ZH98qHrcyQ1HcWm7P7obCqSwVZhulNd1pLS=s0" alt="Image" width="600" height="400" loading="lazy"></p>
<h2 id="heading-vs-code-extension-marketplace-for-codespaces-and-gitpod">VS Code Extension Marketplace for Codespaces and Gitpod</h2>
<p>Having the VS Code team behind the product and being able to access all proprietary extensions (like Liveshare, for example) through the Microsoft-controlled Visual Studio Marketplace is a plus for Codespaces. </p>
<p>As a response, Gitpod created <a target="_blank" href="https://open-vsx.org/">https://open-vsx.org/</a> (now hosted under the Eclipse Foundation), which is a vendor-neutral marketplace run by the Eclipse Foundation for VS Code extensions that is accessible through Gitpod. </p>
<p>Though there is almost extension parity for the most popular VS Code extensions, Microsoft’s (excellent) proprietary extensions have not found a way to OpenVSX. </p>
<p>In case you don’t find an open-source extension on OpenVSX, you can trigger the publish automation by sending in a pull-request to <a target="_blank" href="https://github.com/open-vsx/publish-extensions">https://github.com/open-vsx/publish-extensions</a>.</p>
<h3 id="heading-remote-development-from-desktop-vs-code">Remote Development from Desktop VS Code</h3>
<p>I am a big fan of being able to connect from my local Desktop VS Code into a dev environment running on somebody else's computer. </p>
<p>Both products offer that feature, but the flow that Codespaces ships out of the box is superior compared to the approach from Gitpod. </p>
<p>While you can achieve the same with Gitpod’s <a target="_blank" href="https://www.gitpod.io/blog/local-app">local app</a>, the setup involves more work and friction from a user’s perspective. Asking the Gitpod team about this, I received feedback that they will release a similar one-click experience at the end of August.</p>
<h3 id="heading-what-about-other-ides-than-vs-code">What about other IDEs than VS Code?</h3>
<p>For GitHub Codespaces I could not find any information for other IDEs than VS Code. And given that Microsoft is behind both projects, I’d expect that they'll probably focus on VS Code. </p>
<p>In contrast, Gitpod tries to stress that what they have built is, on an architectural level, IDE independent and allows you to run any IDE image you can run remotely in their container. </p>
<p>I found some templates in their GitHub Repo that allow you to run the Jetbrains product fleet (based on <a target="_blank" href="https://github.com/JetBrains/projector-installer">https://github.com/JetBrains/projector-installer</a>). </p>
<p>The developer experience there still feels a bit clunky. Digging a bit deeper I found this interesting <a target="_blank" href="https://youtrack.jetbrains.com/issue/IDEA-226455#focus=Comments-27-5125731.0-0">discussion</a> around one of the most requested features from the Jetbrains community that would enable remote support via SSH out of the box. I would love to see that supported by Gitpod and Codespaces.</p>
<p><img src="https://lh4.googleusercontent.com/rmSR14doieAaSg3SibqyU7LewYPc23SlZ6ntjhnAiczvd2zQZLVgwhlWsQ58z6Ax7Xbw3f0e_aUUQYSv8c6TezMwqMSR3usbAIWEezVerseZuHjLHZl3JBhxZ1JSuXxEucoRnVR_=s0" alt="Image" width="600" height="400" loading="lazy"></p>
<p>Here are some resources for further reading:</p>
<ul>
<li><a target="_blank" href="https://www.theregister.com/2021/04/08/gitpod_talks_up_importance_of/">https://www.theregister.com/2021/04/08/gitpod_talks_up_importance_of/</a></li>
<li><a target="_blank" href="https://www.gitpod.io/blog/local-app">https://www.gitpod.io/blog/local-app</a></li>
<li>https://www.gitpod.io/docs/integrations/jetbrains</li>
</ul>
<h2 id="heading-codespaces-vs-gitpod-runtime">Codespaces vs Gitpod Runtime</h2>
<p>GitHub Codespaces runs on virtual machines which come with great isolation out of the box and are easier to provision and manage. However, they also carry the overhead of the full operating system, making them larger and slower to start as well as more costly.</p>
<p>Gitpod runs on lightweight containers that spin up quickly and enjoy a far higher cloud density (as more processes can run in parallel on the same underlying hardware, there is less idle compute). This allows Gitpod workspaces to spin-up faster and be more resource – that is cost and energy – efficient.</p>
<p>The downside of containers is that, by default, they do not have the same isolation/security benefits as virtual machines provide. </p>
<p>Before last year, sudo-rights (and with that docker-in-docker) were not possible in Gitpod workspaces. Earlier this year they implemented namespace isolation features that made both of those things possible (see their <a target="_blank" href="https://www.youtube.com/watch?v=iYLCHQgj0fE&amp;t=274s">head of engineering explaining how they achieved that</a>).</p>
<p>Both Codespaces and Gitpod support docker-in-docker for Docker Compose scenarios and nested virtualization which enables running operating systems or appliances in your browser.</p>
<p>Here are some more resources for you on this:</p>
<ul>
<li><a target="_blank" href="https://www.gitpod.io/blog/root-docker-and-vscode">https://www.gitpod.io/blog/root-docker-and-vscode</a></li>
<li><a target="_blank" href="https://github.com/gitpod-io/template-nixos">https://github.com/gitpod-io/template-nixos</a></li>
</ul>
<h2 id="heading-automation-with-codespaces-and-gitpod">Automation with Codespaces and Gitpod</h2>
<p>Both heavily embrace the notion of dev environment as code that Vagrant first coined and Gitpod then further built out. </p>
<p>The basic idea behind that is applying ideas from Infrastructure as Code to dev environments. Codespaces uses a <a target="_blank" href="https://code.visualstudio.com/docs/remote/devcontainerjson-reference">devcontainer.json</a> format as a configuration file while Gitpod uses a .gitpod.yml.</p>
<p>Given the reach and distribution power of Codespaces and VS Code, my prediction is that the <a target="_blank" href="https://code.visualstudio.com/docs/remote/devcontainerjson-reference">devcontainer.json</a> format will win long-term as the industry standard for configuring developer environments. As listed on their <a target="_blank" href="https://github.com/gitpod-io/roadmap/issues/16">roadmap</a>, Gitpod plans to support that as well. Right now they don’t and run on a <a target="_blank" href="https://www.gitpod.io/docs/references/gitpod-yml">.gitpod.yml</a>.</p>
<p>Creating and setting up your dev-env-as-code is only the first step towards fully automated per-task developer environments. As you do not want to wait for dependencies to download and code to build every time you start a developer environment, the workspaces/codespaces need to be prebuilt before you even start.</p>
<p>Gitpod supports <a target="_blank" href="https://www.gitpod.io/docs/prebuilds">prebuilds</a> for that (think about them as a CI/CD server where Gitpod prebuilds the full workspace / runs the automation on every commit to Git). Automation only works if executed frequently. </p>
<p>Codespaces currently do not have prebuilds included in their GA, but internally they already use them. Therefore it should be a matter of months until they also publicly release that feature.</p>
<p>You can read more here:</p>
<ul>
<li><a target="_blank" href="https://www.gitpod.io/screencasts/continuously-prebuild-your-project">https://www.gitpod.io/screencasts/continuously-prebuild-your-project</a></li>
<li><a target="_blank" href="https://github.blog/2021-08-11-githubs-engineering-team-moved-codespaces/">https://github.blog/2021-08-11-githubs-engineering-team-moved-codespaces/</a></li>
</ul>
<h2 id="heading-codespaces-and-gitpod-open-source-and-ecosystem">Codespaces and Gitpod Open Source and Ecosystem</h2>
<p>The biggest difference between the two is that Gitpod is open source and everyone can contribute to the project. You can self-host it on <a target="_blank" href="https://www.gitpod.io/docs/self-hosted/latest/installation/on-gke">GKE</a>, <a target="_blank" href="https://www.gitpod.io/docs/self-hosted/latest/installation/on-amazon-eks">EKS</a>, and vanilla Kubernetes. </p>
<p>Their roadmap and development work is public and everyone can contribute to the project. In addition to this, maintainers and core contributors to open-source projects <a target="_blank" href="https://www.gitpod.io/docs/professional-open-source">get Gitpod for free</a>.</p>
<p>With GitHub, Microsoft owns the market leading social platform for developers and they integrated GitHub Codespaces as a first-class citizen into the developer experience on GitHub. This means that by default the UI in GitHub shows you an Open in Codespaces button, which nicely embeds into your development workflow. </p>
<p>For Gitpod to achieve the same level of integration you need to download either the <a target="_blank" href="https://www.gitpod.io/docs/browser-extension/">browser extension</a> or a <a target="_blank" href="https://www.gitpod.io/docs/browser-bookmarklet">bookmarklet</a>. GitLab has a <a target="_blank" href="https://about.gitlab.com/blog/2021/07/19/teams-gitpod-integration-gitlab-speed-up-development/">strategic partnership</a> with Gitpod and has on every repository and merge request an “Open in Gitpod” button built into the GitLab UI.</p>
<p>Contrary to Microsoft, Gitpod follows a strategy where it is neutral by default, not owned by big tech and designed in a way to integrate with whatever tooling developers want to use. </p>
<p>This means it not only works with GitHub but also other Git providers such as GitLab and Bitbucket and you can deploy it on your own infrastructure.</p>
<h2 id="heading-availability-pricing-and-specs-of-codespaces-vs-gitpod">Availability, Pricing, and Specs of Codespaces vs Gitpod</h2>
<p>Gitpod has been available for more than 2.5 years, while GitHub Codespaces came out of beta on the 11th of August 2021 for customers with a GitHub Team or GitHub Enterprise subscription. </p>
<p>Based <a target="_blank" href="https://twitter.com/natfriedman/status/1425508910476271624?s=20">on a tweet</a> from their CEO, Nat Friedman, we can expect that individual developers will have access to GitHub Codespaces at the end of the year.</p>
<p>GitHub Codespaces is currently free for all organizations on a GitHub Team or GitHub Enterprise subscription until September 10th. The billing increment is for the amount of minutes a workspace is active, and for the amount of storage used on disk for each workspace until a user deletes the workspace.</p>
<p>You can <a target="_blank" href="https://docs.github.com/en/codespaces/codespaces-reference/understanding-billing-for-codespaces">read more about that here</a>. </p>
<p>Gitpod is free for public and private repositories for 50 hours per month. Maintainers and core contributors of well-established open-source projects can apply for a voucher that upgrades their account to unlimited hours per month.</p>
<p>Read more about Gitpod pricing in these resources:</p>
<ul>
<li><a target="_blank" href="https://www.gitpod.io/blog/cloud-based-development-for-everyone">https://www.gitpod.io/blog/cloud-based-development-for-everyone</a></li>
<li><a target="_blank" href="https://www.gitpod.io/pricing">https://www.gitpod.io/pricing</a></li>
<li><a target="_blank" href="https://www.gitpod.io/docs/professional-open-source">https://www.gitpod.io/docs/professional-open-source</a></li>
</ul>
<p>To simplify comparing the offerings from GitHub Codespaces and Gitpod, here are three different scenarios using the same amounts of CPU, memory, and storage for each use case.  </p>
<table><colgroup><col><col><col><col></colgroup><tbody><tr><td><br></td><td><p><span>Product Manager</span></p></td><td><p><span>Developer</span></p></td><td><p><span>Power Developer</span></p></td></tr><tr><td><p><span>Working hours</span></p></td><td><p><span>2h per day, 21 working days per month</span></p></td><td><p><span>5h per day, 21 working days per month</span></p></td><td><p><span>10h per day, 21 working days per month.</span></p></td></tr><tr><td><p><span>Total Hours per month</span></p></td><td><p><span>42 hours</span></p></td><td><p><span>105 hours</span></p></td><td><p><span>210 hours</span></p></td></tr><tr><td><p><span>Amount&nbsp; of CPUs</span></p></td><td><p><span>8 cores</span></p></td><td><p><span>8 cores</span></p></td><td><p><span>8 cores</span></p></td></tr><tr><td><p><span>Amount of Memory</span></p></td><td><p><span>12GB</span></p></td><td><p><span>12GB</span></p></td><td><p><span>12GB</span></p></td></tr><tr><td><p><span>Amount of Storage</span></p></td><td><p><span>64Gb</span></p></td><td><p><span>64Gb</span></p></td><td><p><span>64Gb</span></p></td></tr><tr><td><br></td><td><br></td><td><br></td><td><br></td></tr><tr><td><p><span>Total Cost on GitHub Codepsaces</span></p></td><td><p><span>$30.24 USD/month compute and $2.24 USD/month in additional storage fees (first 32GB per workspace is free)</span></p></td><td><p><span>$75.6 USD/month compute and $2.24 USD/month in additional storage fees (first 32GB per workspace is free)</span></p></td><td><p><span>$151.2 USD/month compute and $2.24 USD/month in additional storage fees (first 32GB per workspace is free)</span></p></td></tr><tr><td><p><span>Total Cost on Gitpod</span></p></td><td><p><span>$9 USD/month</span></p></td><td><p><span>$25 USD/month</span></p></td><td><p><span>$39 USD/month</span></p></td></tr></tbody></table>

<p>The amount of CPU and memory for each workspace launched is configurable in GitHub Codespaces and they offer SKUs of up to 32 CPU cores and 64GB of RAM. Gitpod at this time does not yet offer a way to have more or less compute resources.</p>
<h2 id="heading-see-it-in-action"><strong>See it in action</strong></h2>
<p>I hope you’re as excited as I am after first hearing about the concept of dev environments as code in the cloud! Give both a try and see for yourself how you like them.  </p>
<p>Right now I prefer Gitpod as it’s free for my use cases, has pre-builds, is accessible to anyone who wants to use it, is open source, and can be used with any Git provider including GitHub.</p>
<h3 id="heading-how-to-get-started-with-gitpodhttpgitpodio">How to Get Started with <a target="_blank" href="http://gitpod.io">Gitpod</a>:</h3>
<ul>
<li>Prefix any GitLab, GitHub or Bitbucket URL with gitpod.io/# to dive right in</li>
<li>Or use their <a target="_blank" href="https://www.gitpod.io/docs/browser-extension/">browser extension</a> or <a target="_blank" href="https://www.gitpod.io/docs/browser-bookmarklet">browser bookmarklet</a> for starting workspaces from any git context</li>
<li>Or try their <a target="_blank" href="https://github.com/gitpod-io?q=template-">quickstart templates</a></li>
<li>Check out my guides <a target="_blank" href="https://www.youtube.com/watch?v=tXSF7lIQouQ">here</a> and <a target="_blank" href="https://www.youtube.com/watch?v=hUSzdIOrlY4">here</a></li>
</ul>
<h3 id="heading-how-to-get-started-with-codespaceshttpsgithubcomfeaturescodespaces">How to Get Started with <a target="_blank" href="https://github.com/features/codespaces">Codespaces</a>:</h3>
<ul>
<li>If you’re a GitHub Teams or Enterprise customer, look for an “Open in GitHub” button next to a repo</li>
<li>Individual developers need to wait until it launches more widely</li>
<li>Check out <a target="_blank" href="https://www.youtube.com/watch?v=dMs-8QY1URw">this</a> video for an overview.</li>
</ul>
 ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
