【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

云开发的崛起和 localhost 的终结

  • 2022-11-15
    北京
  • 本文字数:1935 字

    阅读完需:约 6 分钟

云开发的崛起和localhost的终结

开发者正在将他们的整个工作流转移到云端,我们距离 localhost 的终结只有十年之遥。


开发者布道师 Shawn Wang(@swyx)拥有对 Web 技术做出深思熟虑、前瞻性预测的本领。最近,他写了一篇文章,认为开发者距离完全丢弃桌面文件还有大约十年的时间——根据 Shawn 的说法,这将是“localhost 的终结”。为了了解更多信息,不久前我在克罗地亚扎达尔举行的 Infobip Shift 开发者大会上采访了他。


localhost 原本指用户本地机器的计算机网络,在这里指的是开发人员将他们的文件存储在本地设备上。默认情况下,大多数开发人员将他们的工作内容保存在本地,然后上传到应用程序环境。实际上,这就是 Git 的工作方式。它为开发人员提供了完整开发历史的本地副本,然后将变更同步到存储库(通常位于云端)。


然而,正如 Shawn 在六月份所说的那样,像 GitHub、Etsy 和 Shopify 这样的科技公司已经将所有或大部分开发环境迁移到了云端。


他指出,云 IDE 的发展趋势以及允许在本地编码并在远程服务器运行产品的开发方式是 localhost(最终)消亡的另一个迹象。


不过,在 Infobip Shift 演讲接近尾声时,他小心翼翼地对自己的理论补充了一句——“我们还没到达那一步”。延迟仍然是在线编码的一个问题,他还提出了对数据库分支、隐私、安全等方面的担忧。



除此之外,Shawn 还告诉我,对 100% 云开发环境的需求实际上被压制了。


他说:“我认为人们想要用强大的云计算机器进行编程,这将使大型机回归。特别是如果他们处理的是复杂的东西。例如,如果他们正在使用 Stable Diffusion(最新的生成式 AI 程序)或运行 Kubernetes。”


他的主要论点之一是——“云已经吞噬了外部开发循环”。外部开发循环指的是在开发人员将代码提交到版本控制系统之后所发生的一切。



谈到外部开发循环时,Shawn 继续说道:“我们在云端做所有的事情,包括一起向 GitHub 提交代码。但内部开发循环在本地设备上存在的时间太久了。不过,电子邮件的内部循环已经转移到了云端,也就是 Gmail。媒体娱乐的内部循环——无论是流媒体电影、音乐还是游戏——也转移到了云端。它们都只是代码。”


他的观点是,我们现在几乎所有的事情都在网上做——从电子邮件到看电影——那么为什么不把编码也转移到网上呢?


云 IDE 还没有完全被开发人员接受


在 Shawn 看来,开发人员采用 100% 在线编码的速度之所以相对较慢,原因之一是云 IDE 还不够流行。他现在使用的一个云服务是 Gitpod,这个服务提供了所谓的“基于云的临时开发环境”。但 Shawn 告诉我,他花了一段时间才意识到这种开发方式的好处。


“我花了一年时间才整明白为什么我需要 Gitpod——我总是可以把代码克隆到我的代码库。我花了一年时间才意识到,每次拉取请求来的时候,我都想预览一下。我可以点击一个按钮并进行实时预览。我花了一年时间去尝试并接受了它。”



他还提到了 Replit(https://replit.com/),一个针对年轻编程学习者的在线编程平台。Replit 将自己描述为一个“可以用 50 多种语言编写代码的浏览器嵌入式 IDE——不占用任何安装和配置时间。”


Shawn 说:“Replit 基于一个非常纯粹的前提,也就是说,一旦进入 Replit 的世界,你就只在云端做事情,你不知道还有其他的方式,因为你只有十多岁。你在 Replit 上学习编程,并一直这样……但我们大多数人是在本地开发中长大的,可能会不习惯这样的环境。”


开发人员不愿意放弃 localhost


Shawn 在六月份发的推文收到了许多来自开发者的负面反馈。实际上,他自己仍然喜欢在工作流程的某些部分进行本地编码。他在六月份的博文中写道:“使用 Netlify Drop 部署一个前端预览只需要一秒钟,使用 Netlify CLI 大约需要 10 秒钟,但我仍然习惯使用 localhost,因为我的迭代周期以毫秒为单位。”


但他认为延迟等问题最终会得到解决,这将使开发人员越来越没有理由继续使用 localhost。他把“localhost 终结”的时间点定在十年后,尽管其他人声称这可能在五年内发生。


如果 Shawn 说的是对的,那就意味着基于云的开发工具有很大的机会。像 Gitpod 和 Replit 这样的公司已经在这一领域做了创新性的工作,Shawn 还提到了 Brev、Coherence 和 Railway。


也许上述公司中的某一家会成为 Web 开发领域的 Figma——我们可以五到十年后再回头看看。我也欢迎大家在此留言,告诉我你对当前使用或正在测试的云开发工具的看法。


原文链接:


https://thenewstack.io/the-rise-of-cloud-development-and-the-end-of-localhost


今日好文推荐


再不拥抱Serverless就晚了 | Q推荐


和Rust一样好,编程更安全?三年实践、员工态度反转,英伟达用 SPARK 换掉 C


反转!马斯克正在求被裁工程师复职,尤其是Android和iOS开发


苹果暂停除研发外岗位招聘,市值一夜蒸发7160亿元;腾讯和联通合资公司因为云计算;国美停发工资,要求员工签理解承诺书|Q资讯


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2022-11-15 17:243264

评论 2 条评论

发布
用户头像
因果倒置了吧。之所以不够流行,因为速度慢吧

在 Shawn 看来,开发人员采用 100% 在线编码的速度之所以相对较慢,原因之一是云 IDE 还不够流行

2022-11-27 11:22 · 北京
回复
用户头像
如果能把Android开发迁移到云端, 那么基本上也就够用了。
2022-11-17 20:09 · 湖南
回复
没有更多了
发现更多内容

自己手写一个redux

helloworld1024fd

JavaScript

React源码分析2-深入理解fiber

goClient1992

React

JavaScript刷LeetCode拿offer-栈相关题目

js2030code

JavaScript LeetCode

unittest中使用ddt后生成的测试报告名称如何修改?(如test_api_0修改成test_api_0_titile)

单元测试 自动化测试 unittest 参数化 ddt

写过vue自定义指令吗,原理是什么?.m

bb_xiaxia1998

Vue

建设 TiDB 自动化平台:转转 DBA 团队实践

PingCAP

数据库 自动化 TiDB

React源码解读之更新的创建

flyzz177

React

React源码解读之任务调度

flyzz177

React

万亿级对象存储的元数据系统架构设计和实践

百度开发者中心

对象存储 文件存储 百度沧海

谈谈Linux内核的噪声

统信软件

Linux 内核

SQL工具性能实测:居然比Navicat还快,数百万行数据导出仅51秒

雨果

sql 数据库管理工具 Web SQL sql studio

vivo x TiDB丨解决云服务海量数据挑战

PingCAP

TiDB

【立哥】【每日一个小知识】按照法律,遗产应该怎么继承?

Lee Chen

法律 知识

目前兰州市等保测评机构有几家?有新增的吗?

行云管家

等保 等级保护 等保测评 兰州

解读Teradata结束中国直营背后的原因!国产数据库能填补空缺吗?

雨果

数据库管理工具 国产数据库 teradata SQL工具

前端手写面试题总结

helloworld1024fd

JavaScript

React源码分析3-render阶段(穿插scheduler和reconciler)

goClient1992

React

JavaScript刷LeetCode拿offer-树的遍历

js2030code

JavaScript LeetCode

react hook 源码完全解读

flyzz177

React

LR性能测试常见问题及处理方法(二)

性能测试 问题排查 LoadRunner

美团前端必会vue面试题合集

bb_xiaxia1998

Vue

可视化分析能力MAX,瓴羊Quick BI带来全新数据分析体验

对不起该用户已成仙‖

腾讯前端一面经典手写面试题合集

helloworld1024fd

JavaScript

React源码分析4-深度理解diff算法

goClient1992

React

12大团队任务分配管理软件盘点

PingCode

项目软件管理 项目软件

Golang 编程“珠玑”

MatrixOrigin

golang 分布式数据库 编程语言 MatrixOrigin MatrixOne

关于这个“微信提现”的问题,太炸裂了,以至于我写了段代码来验证!

why技术

Java 算法

用javascript分类刷leetcode15.链表(图文视频讲解)

js2030code

JavaScript LeetCode

堡垒机行业标杆产品是哪家呢?有哪些功能?

行云管家

网络安全 信息安全 等保 堡垒机

LR性能测试常见问题及处理方法(一)

性能测试 问题排查 LoadRunner

假如问:你是怎样优化Vue项目的,该怎么回答

bb_xiaxia1998

Vue

云开发的崛起和localhost的终结_语言 & 开发_Richard MacManus_InfoQ精选文章