写点什么

2022,云上开发新纪元

作者:Geek_4acff1
  • 2022 年 6 月 14 日
  • 本文字数:1457 字

    阅读完需:约 5 分钟

2022,云上开发新纪元

社交网络上风云再起

最近,K8s 圈知名网红 Kelsey Hightower 发的一条推特再度引爆全网。他表示,本地资源的限制和外部依赖的复杂,使得远程开发趋势升温。

 


这推虽然话短,但力量可不小。一下子各路大 V 上百条跟推,大家疯狂宣泄对本地开发的不满。比如:

 


无独有偶,来自 Temporal 的 KOL @swyx 也发表了一篇文章表示“远程开发是大势所趋”。

 


为什么各路大 V 都开始热捧远程开发 (Remote Development)?下面我们来仔细分析其中缘由。

开发者工具的云化之路

 


软件开发周期常常被划分为两个流程: 内循环 (inner loop) 和外循环 (outer loop)。内循环包括编码、测试、构建等。而外循环则涵盖了从代码提交到线上发布的所有步骤。

 

在过去,内循环阶段的开发者工具基本都是本地的。这是因为用户无法忍受网络的高延迟,希望能快速得到反馈。

 

但是,这个边界逐渐被打破,越来越多的开发者工具被云化。因为开发者发现他的大部分时间不是花在写代码上,而是去寻找解决问题的方法上。如果今天一个云服务能够帮助他更快地解决问题,那么这 100ms 的延迟就不再是问题。举几个例子:

  • Github Copilot 通过 AI 算法自动预测提供给用户代码补全提示。它有多厉害?有了它,开发者甚至连 StackOverflow 都可以不用上!

  • Sourcegraph 提供了搜索代码的云服务。许多开发者用了它之后都说比本地搜索还快。

  • Cloud Shell 是各个云厂商提供的包含全套开发工具 (如 awscli) 终端环境,帮助用户快速上手使用云资源。

 

云上开发的新体验

在整个内循环阶段,最复杂的莫过于配置开发环境。这是因为开发环境往往有众多依赖难以管理,以及基础组件配置极其复杂。而且现在讲究敏捷开发、开源协作等,很多开发者都是第一次接触项目,不懂如何配置环境。最后,哪怕用户在本地配置起来开发环境,它跟云上的生产环境差距还是很大,最后上线难免遇到新的问题,导致上线失败。

 

为了提升开发者效率,越来越多的公司选择将开发环境搬到云上:

  • 大公司:像 Google、FB、Etsy、Tesla、Shopify 等巨头为工程师按需在云上拉起开发环境。他们的工程师直接在云上完成编码、调试、构建、测试、发布全流程。

  • 中小企业:越来越多的中小企业购买像 Github Codespace、Gitpod、StackBlitz、Okteto 等公司的服务来管理远程开发环境。

  • 基于开源自研:像 Nocalhost 这样的项目提供了基于容器的云原生远程开发体验。不少企业基于 Nocalhost 搭建远程开发环境管理平台。

 


提供远程开发环境,让开发者不用操心如何配置环境、能够直接上手开发,才能有效提高开发者效率。这个在许多公司里得到了验证,也是一个逐渐被越来越多人认可的趋势。

 

今天,一个好的云上开发体验应该长这样:

  • One-click deploy:开发环境都是预定好的,可以被一键拉起。用户只需要选择编程框架和所依赖的后端服务 (如 MySQL、Redis、Prometheus) 就可以拉起开发环境来使用了。

  • Cattle, not pet: Dev environments should be cattle, not pet. 每一个环境都将是可代码化的、可复制的、不可更改的基础设施。

  • On-dema: 通过 Branching 等贴近开发者使用习惯的方式来按需拉起开发环境 (如下图),在分支合并到主干后自动删除。

  • Integrated experience: 基于 VSCode、Jetbrains 等搭建更贴合开发者使用场景的 IDE,可以分享开发环境、一键为问题代码创建 issue、图形化分配流量到不同环境等。

 


Heighliner 即将推出 Cloud 版本,满足上述场景,提供给用户丝滑的云上开发体验。未来已来,云上开发将是下一个十年的重点趋势。想要了解更多关于 Heighliner 的信息,欢迎点击我们的主页: heighliner.dev

 

以及加入我们的微信群:

 


发布于: 刚刚阅读数: 3
用户头像

Geek_4acff1

关注

一款打造Stack as code体验的开发者工具 2022.05.19 加入

Heighliner 是一个开源的、易用的、高度灵活可扩展的云原生应用开发平台。Heighliner 可以集成任意开源、商业开发工具和服务,并组装成行业最佳实践 Stack,大幅降低开发者掌控云原生应用架构的门槛,大规模提升效率

评论

发布
暂无评论
2022,云上开发新纪元_云原生_Geek_4acff1_InfoQ写作社区