首页 > 其他分享 >行云洞见|为何行业权威都预测“云原生IDE 将成为常态”?

行云洞见|为何行业权威都预测“云原生IDE 将成为常态”?

时间:2023-02-07 16:01:59浏览次数:52  
标签:开发人员 环境 开发 开发者 行云 洞见 IDE 云端

原文:《The year of the Cloud Development Environment 》
作者:RedMonk创始人 James Governor

最近CNCF在2023年云原生预测中谈到“云原生IDE 成为常态”,让CloudIDE又成为了云原生的焦点,市场上对CloudIDE的态度以及发展趋势讨论也是众口不一。不仅如此,去年11月初GitPod、GitHub等公司的大动作让人感觉好像开发模式马上就迎来了“大变革”。编译器是所有开发者必不可少的工具,很多人也认为开发模式终会像应用程序一样迁移至云端,但是在实际推进过程中却遇到了很多困难。与CNCF的观点一致,知名软件行业分析公司RedMonk首席分析师和创始人James Governor最近也发表了关于“云开发环境之年”的精彩文章,下面就让我们一起从分析师的角度来阅读思考,为何行业权威敢于说我们即将迎来“云端开发环境之年”。

行云洞见|为何行业权威都预测“云原生IDE 将成为常态”?_IDE

RedMonk创始人 James Governor

正文内容

2023是云开发环境(Cloud IDE)之年。也许这看起来就像科技界中流传最久的笑话“这是桌面Linux的一年”一样,或者,我们终于迎来了云优先的开发者体验(DX)时代。

2022年11月,GitPod在A轮融资中获得了2500万美元,用以发展云端开发环境。GitHub联合创始人Tom Preston-Werner 以其对开发的经验领衔本轮投资。本轮投资还有 Shopify 创始人兼首席执行官 Tobi Lütke 、 Datadog 创始人兼首席执行官 Olivier Pomel及敏捷宣言的签署人 Kent Beck。GitPod致力于让软件开发变得更简单,减少开发人员的工作量。这与编译器无关,而与环境有关,此后一周,GitHub宣布CodeSpaces将面向所有的GitHub用户开发,每周免费试用60小时。GitHub最新数据拥有9400万用户,这对云开发环境来说是一个巨大的潜在增长。

云端开发环境不是仅仅是在线编译器,而是一个平台。AWS早在2016年7月就收购了Cloud9,鉴于其规模及影响度,大部分人都看好AWS会将在线编辑器作为成为一款成功的产品。但是开发人员更喜欢他们的MacBooks,喜欢高规格的本地性能。云端编译器带来的延迟,以及工具链和编译环境的变化对于开发人员来说都是大问题。因此,至今为止开发人员仍保持在本地开发。

但与基本的在线编辑器不同,云端开发环境创造了一个端到端的开发环境,利用云技术的优势,更好地与代码库、构建工具、数据库、Kubernetes工具和运行时间等集成,对开发人员的工作流程进行打包和交付,以提供更好的可重复的、安全的、自动化的、不可改变的开发环境。而且行业领导者现在一直在谈论Testing in Production,这也意味着Developing in Production,试想如果云端开发环境提供了更优质的环境,以及更合理的流程让每个人都可以获得即时的体验,那会怎么样。“云”丰富的优势,以及在“云”中做所有这些事情的能力,使开发者的日常工作更容易。只要连上云开发环境平台,开发者甚至可以不暇思索的运行容器,把远程API作为DX的一等公民来对待。

Vercel和Netlify已经展示了利用熟悉开发工作流开发相应产品带来的市场热度。那么,为什么不把这种方法应用于优化开发工具本身呢?究其原因还是本地性能与“云”的差异对开发者带来的影响。

很多开发者认为Macbook性能非常强大,可以完美的完成本地开发工作。但是,如果我们考虑云内存和计算能力,考虑到容器的优势以及不可变架构,那么我们会发现云的真正力量,因为没有一台本地计算机可以拥有像公共云那样丰富的存储和计算。那么API呢?这是一个无法避免的问题——您将如何测试调用远程API?为什么不将所有这些功能作为打包好的云服务提供给开发者呢?开发者体验(DX)的本质是消除无意义的繁忙工作,面向任务的端到端开发环境,随时可按需使用。

我对云端开发环境感兴趣的原因之一是渐进式交付Progressive Delivery,云计算能力让A/B测试、blue-green deployments 和feature flags等技术变得更加容易,因为我们可以复制任何环境。我们早已过了“不得不在硬件和软件上花费1000万美元,以便在开发过程中,使用高性能的开发、测试、QA和登台环境”的时代。

如果您可以拥有一个服务实例,为什么不拥有五个呢?如果你能运行一个容器,为什么不运行10000个?因此,渐进式交付在与CDE具有同样丰富资源的情况下,提供给我们一次重新思考开发人员工作方式的机会。

性能的另一个方面当然是网络,这是使用CDE的想法中经常遇到的障碍之一。但随着5G的发展,网络显然不是大问题。

我与Gitpod的CEO Johannes Landgraf讨论了他对市场的看法。他认为“当开发者真正感受到便利时,他们将开始改变自己的行为。就像Figma当时统治市场一样。”我完全同意他的观点。便利是促使人们改变习惯的有效方法。我们在很多领域都看到了这一点,我们总是会选择最简单的。即使它稍微贵一点,只要方便,我们就会使用它,喜欢它。但在DX中,我们仍然没有发生这种变化。兰德格拉夫说:该行业还没有迎来“菲格玛”时刻。开发人员将所有工作都迁移到云上,这是多么奇怪的事情。

不仅Gitpod一家在推进CDE的发展,我们了解到AWS Cloud在这一领域的重大投资,重新思考DX云服务。就在不久前,AWS在re:Invent发布了Application Composer(AWS服务的可视化低代码设计,本质上是AWS重新制作的Stackery)和Code Catalyst(云开发环境,统一软件开发和交付服务)。

GitHub在Codespces产品已经取得了进展,现在很多用户为Codespaces支付大量费用。微软有一个微软经典版版本,它实际上是在云上提供一个叫Dev Box(开发盒子)的开发机器,它将吸引那些容易引导员工上手及对公司有安全保障的Windows和.NET应用商店。如果我们将Dev Box与最近发布的Azure Automations集成,我们可以从DX的角度开始做一些强大的事情。

CDE致力于彻底改变开发模式,真正利用云服务和路由,而不是简单地考虑如何构建基于浏览器的IDE。一些云服务将由本地IDE(如JetBrains或VS Code)访问。这是一场对新的开发模式拥抱和延伸的比赛。协作应该容易得多。每次我们做一些工作时,它都应该有一个URL,Netlify和Vercel模型应该适用于后端开发和前端开发。无论是哪个产品为开发者或管理者解决了这些问题,都有可能打开市场成为热销产品。

Landgraf解释说,整合多产品是CDE的关键点之一。例如,当开发人员访问GitPod控制台时,他们应该已经通过PlanetScale或MongoDB进行了身份验证。

CDE是场“包装”的较量。正如我经常说的那样,任何科技浪潮中最好的包装商都会赢得胜利,并赢得巨大的胜利。我认为我们目前正在研究的是如何包装开发人员的工作,并试图使其变得非常非常简单。

我最近和一位老朋友进行了一次交谈,我们打赌是否真的迎来了云端开发环境的时代。我敢确信,大约25%的企业软件开发将在7年内使用CDE。可能部分读者认为这个时间过于激进了,但是一旦产品发展起来,市场拓展的速度会非常快。

我认为,我们将看到大量的开发人员工作转移到云环境中,因为无论本地开发环境有多好,都要考虑云服务带来的高效的开发、集成和自动化等优质的开发者体验和工作流程。云端开发环境解决了开发者体验差距,这就是我认为它们不可避免的原因,它会从根本上改变了科技行业。

行云观点

我们认为在数字化转型的大背景下,本来就应该将各个信息孤岛打通,IDE 作为开发者的日常使用工具,从未像现在一样受到大家的关注,CloudIDE 将开发者熟悉的 IDE 搬到云端,并且打通所有的工具链是未来的大趋势。

CloudIDE 是个非常重要的入口,正如当前被制造业推崇的 JIT(Just in time, 实时生产系统),整条供应链高效协同一样,高效研发的所有工具链也会随着 CloudIDE 搬到云端以对开发者提供最佳的使用体验:需求分析、软件设计、代码编写、软件构建、软件测试、软件发布、软件部署、软件运维等各个研发阶段所用到的工具链组成一站式的开发平台,这种协同开发体验在一台再高性能的笔记本都不可能实现的,因此 CloudIDE 才是数字化时代的未来。

不知您看完这篇文章之后有什么样的感悟呢?期待您体验我们的产品,也欢迎您留言评论!

行云洞见|为何行业权威都预测“云原生IDE 将成为常态”?_开发人员_02

TitanIDE(云原生集成开发环境)云原生时代您的首选Cloud IDE!

最少只需一台虚拟机,十分钟即可安装好,开启您的全云端开发之旅!(www.titanide.cn)


标签:开发人员,环境,开发,开发者,行云,洞见,IDE,云端
From: https://blog.51cto.com/u_13561855/6042228

相关文章

  • Identity Server 4到今年年底就停止支持了,试一下使用Orchard Core 作为认证服务
    IdentityServer4到今年年底就停止支持了,新的版本需要收费(好像目前是按企业规模,不过将来说不准)。我们需要为这种情况做一些技术准备,至少需要为用户多准备一些可选方案。......
  • 日常学习:override、verdi
    override不可重载的部分由于一些原因。变量引用本身依赖于一个路径,这个路径不可变更,因此,使用以下方法获取子类的变量:https://bbs.eetop.cn/forum.php?mod=viewthread&tid......
  • IDEA加载项目时提示Windows Defender might be impacting your build performance
    1.点击fix,弹出对话框,选择configureautomatically,选择ok2.出现以下提示表示成功 3.若不成功,可以手动设置防火墙白名单,添加排除项 ......
  • idea插件
    1.MybatisX快速开发插件(1)mapper文件和xml文件之间的跳转点击红色或蓝色头巾的小鸟即可  (2)生成映射代码mapper文件中定义好接口,直接alt+enter,对应的xml文件中会自......
  • Obsidian 插件(二):Advanced_Slides 的使用
    目录AdvancedSlides的使用一、概述1、简介2、特征3、第一个PPT二、基础语法1、水平垂直幻灯片2、元素注释3、幻灯片注释4、块注解5、元素动画6、内联样式7、......
  • ABP的IdentityServer4中使用自定义的claim声明
    ABP的IdentityServer4使用自定义的claim声明,我是想增加一个部门Id,登录用户的中文名称在IdentityServer项目的AbpModule中,context.Services.AddScoped<IProfileServ......
  • 【android 】Android 获取资源ID方法,SDK开发中利用getIdentifier()方法获取资源ID
    Android获取资源ID的两种方法一:常规的app开发中经常使用view=(View)findViewById(R.id.idname);二:通过动态的获取资源ID的方法,比较sdk开发,由于id经常会在三方使用的......
  • idea2020使用
    解决IDEA2020Plugins连不上、打不开的方法1.设置httpproxy—>勾上Auto-detectproxysetting,参照下图,加上地址http://127.0.0.1:1080或者选择File—>Setting—>Ap......
  • idea引入外部maven项目(非压缩)方式
    1、idea版本:2020.032、maven项目:springboot项目或cloud项目3、引入步骤:File->New->ProjectfromExistingSources...找到项目中的pom.xml引入即可4......
  • Idea 打包公共Jar包
    概述项目中很多Java服务的代码都是重复的,故需将公共部分提取出来,作为公共Jar包供大家使用。本文演示Idea打包公共Jar包的过程。过程一:打包公共Jar包1-创建普通Java项目2-编......