关于什么是云开发环境(CDE),大家可以到Gitpod官网了解。
2023年是云开发环境(cloud development environment简称CDE)年。类似科技界流传最久的笑话之一——今年是桌面Linux年。或者,云优先的开发者体验最终会成为一种正常的工作方式。
去年11月初,GitPod获得了2500万美元的A轮融资,以兑现CDE的承诺。GitHub创始人汤姆·普雷斯顿-沃纳(Tom Preston-Werner)领投本轮融资,他对开发者体验有所了解。我们再看看这一轮的其他投资者,会令人印象深刻。例如,Shopify和Datadog的首席执行官。还有一个叫肯特·贝克的人。GitPod决心使软件开发更容易,减少开发人员的工作量。这与编辑器无关,而是与环境有关。
GitHub宣布CodeSpaces将对所有GitHub用户开放,每周免费使用60小时。GitHub的最新数据显示,它拥有9400万用户。这是CDE的巨大增长潜力。该行业仍在努力应对本地开发VS远程开发的挑战。这还不是板上钉钉的事。
云开发环境并不是简单的在线代码编辑器,这是一个我们已经讨论了很长时间的平台理念。早在2016年7月,AWS就收购了Cloud9,考虑到它的规模,你可能会认为,如果有谁能让在线编辑器成为一个产品,那一定是AWS。但开发人员还是喜欢他们的macbook。他们喜欢高规格的本地性能。延迟是最大障碍。他们喜欢现有的工具链和编辑器。所以开发还仅限于本地。
但与基本的在线编辑器不同,CDE是关于创建端到端的开发者体验,利用云技术更好地集成代码仓库、构建工具、数据库、Kubernetes工具和运行时等。打包并交付以提供更好的体验。可重复的、安全的、自动化的、不可变的,无需担心变更。行业领导者现在不都是在讨论在生产中进行测试吗?这意味着也要在生产中进行开发。如果CDE提供了更好的开发体验和更多的流程——每个人都可以获得即时体验,会怎么样呢?
CDE这个术语并不完美,但目前还可以。我们谈论的是云丰富的优势,以及在云中完成所有这些事情的能力,这让开发人员的工作更轻松。建立平台连接,允许开发人员毫不犹豫地启动容器,将远程API作为DX的一等公民处理。
Vercel和Netlify已经展示了理解开发人员工作流组件并相应地组装产品的能力。那么,为什么不将这种方法应用到开发人员工具本身呢?快速的本地性能与云计算能力之间的问题导致了意想不到的竞争。
所以现在基本上是苹果电脑和GitHub对比,想想就觉得有点疯狂。CodesSpaces和M1的对比。就在在线编辑似乎要进入高速发展的时候,苹果推出了世界上有史以来最荒谬的本地处理。
基于arm的苹果架构是如此强大,可以让开发人员在本地机器上的工作如此美好,以至于本地编辑和处理作为日常工作的支柱似乎比以往任何时候都更加合理,也可能更加根深蒂固。
但是,任何本地机器都不可能像公有云那样拥有如此多的存储和计算。那么API怎么样呢?这是一个永恒的问题——你将如何测试调用远程API的应用程序?那么,为什么不通过将所有这些功能作为打包良好的云服务提供给开发人员,使其更接近开发人员呢?
我对CDE的想法感兴趣的原因之一是渐进式交付,这也是云支持的。丰富的云计算和路由使A/B测试、蓝绿部署和功能标志等事情变得更加容易,因为我们可以毫不犹豫地复制任何环境。我们早已经过了“天哪,我们将不得不在硬件和软件上花费1000万美元,以便在我开发应用程序时,使用复制的开发、测试、QA和staging环境来支撑一个应用程序实例”的时代。
如果您可以拥有一个服务实例,为什么不拥有五个呢?如果你能启动一个容器,为什么不启动10000个呢?我们可以做实验。因此,渐进交付有一些与CDE相同的基础,就其丰富性而不是稀缺性而言,这是一个重新思考开发人员如何工作的机会。
使用云开发环境的一个很大问题就是网络性能。开发者总是会抱怨在飞机或者不在办公室就无法使用云开发环境工作。但是你别忘了现在是5G时代,网速将会变得非常快。
在Gitpod首席执行官看来,云开发环境的市场是很有前景的。他表示:当CDE对他们来说真的很方便的时候,开发人员将开始改变他们的行为。我认为这是完全正确的。便捷性是杀手级应用程序的必备特征。在很多领域都看到了这一点,我们总是选择最容易的。即使它有点贵,只要它方便,我们就会使用它。
CDE是关于如何进行革命性的开发,并真正利用云服务和路由,而不是简单地考虑如何构建一个基于浏览器的IDE。一些云服务将由本地IDE(如JetBrains或VS Code)访问。这是一个拥抱和延伸的游戏。
合作应该会容易得多。每次我们做一些工作时,它应该有一个URL, Netlify和Vercel模型。这不仅适用于前端,也适用于后端开发。因此,无论谁为工程师和工程经理解决了这些问题,都有可能在销售中找到一扇敞开的门。
我认为我们将看到大量的开发工作转移到云环境中,因为无论笔记本电脑有多好,我们将看到云服务,集成和自动化将使开发人员更加高效。CDE解决了开发者体验差距的问题,这也是我认为CDE不可避免的原因。我们可以很容易地想到iPhone时刻,它从根本上改变了科技行业。