点击看第四范式、百度、Zilliz、火山引擎公司的AI基础设施变革之路>> 了解详情
写点什么

GitHub 官宣“报废”Atom,创始团队表示正用 Rust 重写一个编辑器

  • 2022 年 6 月 09 日
  • 本文字数:2997 字

    阅读完需:约 10 分钟

GitHub官宣“报废”Atom,创始团队表示正用Rust重写一个编辑器

GitHub 有 Atom,微软有 Visual Studio Code,但向来一山不容二虎。


近日 GitHub 公布计划,将在今年 12 月 15 日正式关停 Atom 项目。作为一款开源文本编辑器,Atom 启发并影响了众多商业应用程序,包括微软 Visual Studio Code、Slack 以及 GitHub Desktop 等等。


GitHub 方面表示,这样做是为了集中精力打造云软件产品。


在周三的公告中,GitHub 解释称“虽然发展软件开发者社区的目标从未动摇,但我们还是决定让 Atom 退役。未来,我们将继续通过微软 Visual Studio Code 和 GitHub Codespaces 践行为云环境提供快速可靠软件开发体验的承诺。”GitHub Codespaces 是一套集成有 Visual Studio Code 的云托管开发环境。


2018 年 6 月,在微软决意收购 GitHub 时,时任 CEO 的 Nat Friedman 曾向 GitHub 社区做出保证,表示 Atom 不仅还在、而且活得很好。Nat Friedman 在 Reddit 论坛的讨论帖中表示,“Atom 是一款出色的编辑器,拥有健康的社区、坚定的粉丝、出色的设计,并在实时协作方面做出了相当亮眼的尝试。在微软,我们也一直在使用 Atom、VS Code、Sublime 乃至 Vim 等各种编辑器,希望开发者们也能在 GitHub 上根据喜欢随意选择编辑器工具。”


“因此,我们将继续开发和支持 Atom 与 VS Code。”



为什么微软有 VS Code 还让 Atom 继续存活?这没道理。


经过短短四年时光,Atom 就陷入了停滞。据 GitHub 称,除了维护和安全更新之外,Atom 项目几年来没有发布过任何重大新功能。在此期间,社区参与度有所下降,本地安装软件业务的吸引力看起来确实不如云应用程序——毕竟后者不仅有望提供稳定的经常性收入,还能锁定供应商、收集用户信息。


Atom 的故事


Atom 作为 GitHub 创建者 Chris Wanstrath( @defunkt )的编外项目,起源于 2008 年中期。当时,Chris 称之为 Atomicity,其初衷是利用 Web 技术来设计一个像 Emacs 一样可定制化的软件,为新一代的开发者提供一个具有完全控制权的编辑器。但是,与很多其他编外项目的命运相同,Chris 在看到 GitHub 成功的希望之后,就搁浅了 Atomicity。


到 2011 年 8 月,GitHub 把 Ace 加入到 github.com 中用于文件的编辑工作,再次激发了 Chris 对于 Atomicity 的兴趣。三天后,Chris 用 Ace 编写了一个运行在原生 WebView 空间内的 OS X 应用。由此,Atom 项目的代码编写工作正式启动。在之后的 3 个月内,Chris 开始在闲暇时间致力于 Atomicity 的工作。到 11 月份,Atomicity 正式更名为 Atom,并升级为了官方的 GitHub 项目。12 月份,treetop 的作者 Nathan Sobo(@nathansobo) 加入了 GitHub,全职进行 Atom 的开发。


2015 年,GitHub 发布了 Atom 1.0 版本。在此前的 18 个月里,Atom 预览版的下载量超过了 130 万,每个月服务超过 35 万活动用户。Atom 允许用户安装第三方包和主题来自定义编辑器的功能和外观,在 1.0 版本时其用户社区发布了 2090 多个 Atom 扩展和 660 个主题,用户可以根据自己的喜好轻松设置它。Atom 1.0 版本实现了 Chris 的初衷——开发者拥有编辑器完全的控制权,成为未来很多工作的基础。



在微软 Visual Studio Code 流行起来之前,Atom 的发展还算正常。Stack Overflow 2016 年开发者调查报告称,根据超过 46,000 人的反馈,12.5% 的软件开发人员使用 Atom。2017 年,Atom 被 20% 的 Web 开发人员、20.7% 的系统管理员和 15.9% 的数据科学家所使用。


Atom 是一个开源项目,因此也有企业根据 Atom 为自己量身定制自己的编辑器,Facebook(Meta)是其中之一。


此前,Facebook 使用 Apple 的 Xcode 软件来构建应用程序。但其代码库几乎与微软的 Windows 操作系统一样大,以至于 Xcode 无法真正处理它,在整个公司范围内,Xcode 每天都会崩溃 50 次左右。


“Xcode 无法满足我们的需求,”Facebook 的 Mike Bolin 说。“它适用于小型开发团队,甚至是中型团队。” 因此,该公司基于 Atom 构建了自己的集成开发环境 (IDE)。这也就是 Nuclide 和 Atom IDE 的起源,它们为 React Native、Hack 和 Flow 项目提供了一流的开发环境。


随后 Nuclide 被 Facebook 开源:https://github.com/facebookarchive/nuclide。用开源来构建更好的产品,而后用开源回报社区,是一个非常好的良性循环。


微软的策略


Visual Studio Code 于 2015 年推出,它或多或少是 Atom 的官方继任者:由 GitHub 的所有者微软开发,并具有许多集成的 GitHub 功能。


这一年,GitHub 将 Atom shell(用于同 Chromium、Node.js 和本机 API 相集成的独立组件)更名为 Electron(基于 Web 技术的跨平台应用程序框架),微软则以 Atom 和 Electron 为基础配合 GitHub 开发出了 Visual Studio Code。


有评价说:“这就是微软臭名昭著的经典套路:接纳、技术扩散,然后……就没有然后了。但此次对 Atom 的下手还是过狠,搞得根本不像常规的项目退役,而是雷霆手段下的排除异己。”


巧合的是,2018 年 12 月,在微软收购 GitHub 半年后,Facebook 决定退出 Nuclide、Atom-IDE 的开源工作,并将 Nuclide 项目进行了归档。


对于 Atom 的退役决定,GitHub 公司一位发言人在邮件采访中表示,“我们希望在未来几年投资于核心业务,也就是专注于增强开发者的云端体验。目前已经有很多强大的 Atom 替代方案能满足用户的各种需求,而且 VS Code 也获得了可观的市场份额,所以我们对此次调整充满信心。”


“Atom 的退役对 GitHub 开发者生态应该不会造成太多影响。GitHub 的 API 仍将得到支持,允许开发者在数千种其他产品中顺畅实现 GitHub 集成。我们还维护有自己的应用程序套件,包括 GitHub Desktop、GitHub Mobile 和 GitHub CLI。”


根据 Stack Overflow  2021 年开发者调查,有 13% 的开发者使用 Atom 作为他们的主要环境,71% 的人使用 VS Code。GitHub 给这些 Atom 用户留下了 6 个月的时间进行迁移。


尽管终期已定,但 Atom 巨大的影响力从 Electron 框架身上就可见一斑。时至今日,Electron.js 仍然是 Discord、Skype、Slack、Trello 和 Visual Studio Code 等应用程序的基础。但技术变化总是说来就来,微软之前就曾表示打算在 Teams 中摆脱 Electron。未来,Flutter、Tauri 以及微软刚刚公布的.NET Multi-platform App UI (.NET MAUI) 等跨平台框架也可能彻底取代 Electron。


另外, GitHub Atom 编辑器的同一团队正在创建一个新的名为 Zed 项目,由核心贡献者 Max Brunsfeld 和创始成员 Nathan Sobo 领导。


Nathan Sobo 表示, Zed 作为 Atom 的继任者,用 Rust 编写,自定义原生 UI 框架,设计为“协作”产品,将于本周推出 Private Alpha 版。



无论如何,2022 年 12 月 15 日“金盆洗手”之后,Atom 应该也不会立马退出江湖。GitHub 倒是打算把 Atom repo 归档封存,但这毕竟是款开源编辑器,只要愿意继续支持,大家还是可以随意使用。


参考链接:


https://www.theregister.com/2022/06/08/github_atom_dropped/


https://changelog.com/podcast/241


https://www.infoq.cn/article/2015/07/atom-history


https://www.wired.com/2015/06/github-atoms-code-editor-nerds-take-universe/


https://news.ycombinator.com/item?id=31668426


今日好文推荐


印度萌新令人绝望的操作:提交PR“轰炸”近40万开发者,GitHub负责?


我用一个跨平台 Web 应用替换了原生 iOS 应用,竟没人发现


腾讯薪酬大改革:升职不直接调薪;马斯克称特斯拉需裁员10%,暂停全球招聘;华为成立第三批军团|Q资讯


成为函数式编程工程师四年,我为什么说它既“流氓”又“可爱”

2022 年 6 月 09 日 15:374516

评论

发布
暂无评论
发现更多内容

与其思考公司该为员工提供什么福利,不如思考有哪些 “福利” 不应该提供!

非著名程序员

个人成长 管理 福利

企业级RPC框架zRPC

万俊峰Kevin

RPC microser Go 语言

技术实践丨PostgreSQL开启Huge Page场景分析

华为云开发者联盟

数据库 管理 内存

如何获取变量token的值

测试人生路

软件测试 接口测试

架构师训练营 - 第二周课后练习

joshuamai

真香!天天996进不去阿里?看5年苦逼程序猿怎么逆袭阿里P7

小Q

Java 学习 架构 面试 程序猿

DeFi流动性挖矿系统开发技术方案

薇電13242772558

区块链 defi

《Linux学习笔记》从常用命令、常用操作到网络管理、性能优化,无论是Java开发或是运维都可以学习!

Java架构之路

Java 程序员 架构 面试 编程语言

区块链将构建数字社会高效的全球网络

CECBC

数字经济 数字时代

测试悄然扩围 千万元红包搅活数字货币江湖

CECBC

数字人民币

架构师训练营第二周课后作业

天涯若海

极客大学架构师训练营

零基础IM开发入门(三):什么是IM系统的可靠性?

JackJiang

网络编程 即时通讯 IM

gRPC服务注册发现及负载均衡的实现方案与源码解析

网管

负载均衡 gRPC etcd 服务注册与发现 Go 语言

Java程序员必须人手一本的《码出高效:Java 开发手册》,免费分享PDF文档

Java架构之路

Java 程序员 架构 面试 编程语言

刚从蚂蚁金服Java研发岗面试回来(三轮游),我总结的面试经历(附面试题+答案)

Java架构追梦

Java 架构 面试 蚂蚁金服

LeetCode题解:78. 子集,迭代+位运算,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

十八般武艺玩转GaussDB(DWS)性能调优:总体调优策略

华为云开发者联盟

数据库 性能 调试

问题篇:附源码询问Pageable实现分页无法使用原生sql

小Q

Java 学习 架构 面试 springboot

架构师第一期作业(第 6 周)

Cheer

Vidyo独特的互联网适应性

dwqcmo

音视频 集成架构 解决方案 智能硬件

深度对比Apache CarbonData、Hudi和Open Delta三大开源数据湖方案

华为云开发者联盟

hadoop 开源 数据处理

JAVA稳定底层,快速开发首选,XJR智能化客户关系管理

Marilyn

敏捷开发 快速开发 软件架构 客户关系管理

区块链是连接传统经济和数字经济的桥梁

CECBC

区块链 数字经济

面试官问我:看过sharding-jdbc的源码吗?我吧啦吧啦说了一通!!

冰河

分布式事务 微服务 分布式数据库 系统架构 中间件

在阿里内部,做Java到金字塔顶端的人平时都如何学习源码?

小Q

Java 学习 架构 面试 程序猿

Netty源码解析 -- 零拷贝机制与ByteBuf

binecy

Netty 源码剖析

天呐!价值2980元Java成神面试题竟在Github开源了

996小迁

Java 学习 架构 面试

解惑“高深”的Kafka时间轮原理,原来也就这么回事!

华为云开发者联盟

中间件 消息队列

GitHub官宣“报废”Atom,创始团队表示正用Rust重写一个编辑器_开源_Tina_InfoQ精选文章