标签 Golang 下的文章

离了大谱!Go 一年之内从第 7 掉到第 16

本文永久链接 – https://tonybai.com/2026/01/10/go-dropped-from-7th-to-16th-in-one-year

大家好,我是Tony Bai。

新年伊始,TIOBE 发布了最新的编程语言排行榜。当我满怀期待地去寻找 Go 的身影时,差点以为自己眼花了:

Go 居然从去年的第 7 名,断崖式下跌到了第 16 名! 占比跌幅高达 1.37%,在这个榜单上几乎是“崩盘”级别的表现。

这是什么概念?这意味着在 TIOBE 的统计里,Go 现在的流行度还不如 Delphi/Object Pascal(第 9 名)和 Visual Basic(第 7 名)。

这就很离谱了。任何一个在 2025 年还在写代码的人,都不会觉得 Go 的生态已经萎缩到这种地步。

是 Go真的凉了吗?还是 TIOBE 的算法“疯”了?

img{512x368}

平行宇宙:稳如泰山的 Go

为了验证我的认知是否出现了偏差,我特意查阅了 2025 年其他的权威榜单:

全世界都觉得 Go 挺好,唯独 TIOBE 觉得 Go 要完。这种巨大的反差,逼得我不得不去扒一扒 TIOBE 的底裤——它的排名算法到底是怎么算的?

扒皮 TIOBE:一个过时的算法游戏

根据 TIOBE 官方公布的定义文档,它的算法极其简单粗暴,甚至可以说——在 2026 年显得有些可笑

它的核心逻辑只有一个公式:

在 25 个主流搜索引擎中,搜索 +” programming”,统计返回的页面数量。

就是这么简单。没有什么复杂的加权,没有什么开发者活跃度分析,就是数一数搜索引擎告诉你“有多少个网页提到了这个语言”。

这种算法在 20 年前或许有效,但在今天,它成为了导致 Go 排名暴跌的元凶。

元凶一:AI 杀死了“搜索结果页”

2025 年最大的变化是什么?是 AI Search

当我们遇到编程问题时,越来越多的人不再去 Google 翻阅那几百万个搜索结果页面,而是直接问 ChatGPT、Claude 或者 DeepSeek。
TIOBE 明确表示:ChatGPT 等 AI 工具不被纳入统计,因为它们没有“返回结果数量”的计数器。

这就导致了一个悖论:越是热门、现代的语言(如 Go、Python(得益于AI模型训练与应用开发)),其用户群体越年轻、越拥抱新技术,也就越倾向于用 AI 解决问题。 这直接导致了这些语言在传统搜索引擎中的“查询热度”和“新内容生成量”出现显著下降。

相比之下,那些老旧的语言(如 VB、Delphi),其用户群体相对固化,且维护遗留系统时更多依赖传统的文档和论坛搜索,因此受到的冲击较小,甚至在对比中显得“逆势上扬”。

注:Python的占比相对于2025.01也下降了0.68%。

元凶二:Go 的名字太“吃亏”了

TIOBE 的核心搜索查询是 +” programming”。

这对于 Python、Java 这种专有名词来说问题不大。但对于 Go 来说,这就是个灾难。

  • 通用词的悲剧:Go 是一个极其通用的英语单词。为了过滤掉“去(go)”的含义,TIOBE 必须强制加上 “programming” 后缀。
  • 搜索习惯的改变:但在 2025 年,开发者还会搜 “Go programming” 吗?不会了。大家搜的是 “Go generics”、”Golang k8s”、”Goroutine leak”。
  • 不成比例的过滤:随着搜索引擎算法日益智能,它开始更精准地理解用户意图,不再机械地匹配 “Go programming” 这个短语。这导致大量讨论 Go 技术的高质量页面(但没有显式包含该短语)被 TIOBE 的简单算法无情过滤。而像 “Python programming” 这种组合,因为 Python 本身的高辨识度,受到的影响要小得多。

元凶三:搜索引擎的“去水化”

Google 等搜索引擎在 2025 年大幅调整了算法,致力于打击 SEO 内容农场和低质量生成的页面。

Go 作为一个在云原生时代极速窜红的语言,过去几年充斥着大量的入门教程、培训班广告和搬运文章。搜索引擎的这一波“清洗”,可能不成比例地删除了大量包含 “Go programming” 关键词的低质、重复页面

虽然页面总量少了,但生态的“干货密度”其实更高了。 然而,在 TIOBE 这种只看“数量”不看“质量”的算法眼里,这就被简单粗暴地解读为“热度暴跌”。而那些生态早已固化、鲜有新内容产生的老语言,反而躲过了这一劫。

注:以上也是笔者的主观分析,不一定与事实相符!

小结:看个乐呵就行

把 Go 排在 Visual Basic 后面,这本身就是一个笑话。

TIOBE 的这次排名暴跌,反映的不是 Go 语言的衰落,而是 TIOBE 这种基于“网页搜索量”的统计方法,在 AI 和现代互联网面前的全面崩塌。

它就像一个依然在用“收音机收听率”来衡量流行音乐热度的老人,已经无法捕捉流媒体时代的脉搏。

所以,各位 Gopher,该写代码写代码,该摸鱼摸鱼。Go 好着呢,别被这个离谱的排名吓到了。


你的“体感”排名

TIOBE 的数据确实让人啼笑皆非。在你心目中,Go 语言现在的真实热度应该排第几?你觉得还有哪个榜单能更客观地反映编程语言的现状?

欢迎在评论区晒出你的“心选榜单”,或者尽情吐槽这个离谱的排名!

如果这篇文章解开了你心中的疑惑,别忘了点个【赞】和【在看】,并转发给那些正在唱衰 Go 的朋友,打脸要快!


还在为“复制粘贴喂AI”而烦恼?我的新专栏 AI原生开发工作流实战 将带你:

  • 告别低效,重塑开发范式
  • 驾驭AI Agent(Claude Code),实现工作流自动化
  • 从“AI使用者”进化为规范驱动开发的“工作流指挥家”

扫描下方二维码,开启你的AI原生开发之旅。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

谁才是 Go 生态的“幕后之王”?—— 深度挖掘 4000 万个节点后的惊人发现

本文永久链接 – https://tonybai.com/2026/01/09/the-most-popular-go-dependency-is

大家好,我是Tony Bai。

在 Go 的世界里,我们每天都在引入各种 import。但你是否想过,整个 Go 生态系统中,究竟哪个包是被依赖次数最多的“基石”?

通常,我们会参考 GitHub Stars 或 Awesome 列表,但这往往带有主观偏差。为了寻找最客观的答案,开发者 Thibaut Rousseau 做了一件疯狂的事他下载了 Go Proxy 自 2019 年以来的所有模块元数据,构建了一个包含 4000 万个节点、4 亿条关系的巨大图谱。

结果令人大开眼界。

img{512x368}

从“愚公移山”到“巧用代理”

Thibaut 最初的想法很直接:从一个种子项目列表开始,递归地克隆仓库、解析 go.mod。但他很快发现这条路行不通——克隆速度太慢,且严重依赖 GitHub。

于是,他将目光转向了 Go Modules 生态系统的核心枢纽 —— Go Proxy

  • index.golang.org:提供了自 2019 年以来所有发布模块的时间流。
  • proxy.golang.org:提供了每个模块版本的 go.mod 文件。

通过这两个公开 API,他成功地将整个 Go 生态的元数据“搬”到了本地,构建了一个全量的、不可变的本地缓存。

Neo4j:点亮数据之网

面对海量的依赖关系,传统的关系型数据库显得力不从心。Thibaut 选择了图数据库 Neo4j

  • 节点 (Node):代表一个具体的 Go 模块版本(例如 github.com/gin-gonic/gin@v1.9.0)。
  • 关系 (Relationship):代表 DEPENDS_ON(依赖于)。

通过简单的 Cypher 查询语句,复杂的依赖链变得清晰可见。例如,查询一个模块的所有传递性依赖(Transitive Dependencies),在 SQL 中可能需要复杂的递归 CTE,而在 Neo4j 中只需一个简单的 *1.. 语法即可搞定。

数据揭秘:Go 生态的真实面貌

经过数天的处理和导入,这个庞大的图谱终于呈现在眼前。让我们看看数据告诉了我们什么:

1. 绝对的王者:testify

在“被直接依赖次数”的榜单上,github.com/stretchr/testify 以 259,237 次的惊人数量遥遥领先,是第二名的两倍还多。这再次印证了测试在 Go 社区中的核心地位。

紧随其后的是:

  1. github.com/google/uuid (10w+)
  2. golang.org/x/crypto (10w+)
  3. google.golang.org/grpc (9.7w+)
  4. github.com/spf13/cobra (9.3w+)
  5. … …

2. “已归档”库的生命力:pkg/errors

最令人玩味的数据来自 github.com/pkg/errors。尽管这个库多年前就已宣布“归档”(Archived)并停止维护,且 Go 1.13 已内置了类似的错误包装功能,但数据却显示了截然相反的趋势:

  • 它的使用量不降反升!
  • 2019 年仅有 3 个依赖它的模块,而到了 2025 年,这个数字飙升到了 16,001

这揭示了软件生态中一个残酷的现实:旧习惯难改,且“足够好”的库拥有极其顽强的生命力。 哪怕官方已经提供了替代方案,开发者们依然倾向于使用他们熟悉的工具。

小结

Thibaut 的这个项目不仅仅是一次有趣的数据分析,它为我们观察 Go 生态提供了一个全新的上帝视角。

  • 平均依赖数:Go 模块平均拥有 10 个直接依赖。
  • 数据开源:作者不仅开源了爬虫代码 github.com/Thiht/go-stats,还大方地通过 BitTorrent 分享了 11GB 的 Neo4j 数据库转储文件。

你可以下载这份数据,自己在本地运行 Neo4j,去挖掘更多有趣的洞见。比如,看看你最喜欢的某个小众库,究竟被谁在使用?或者,去探索一下 Go 生态中那些隐秘的“单点故障”?

在这个由 4000 万个节点构成的宇宙中,还有无数的秘密等待被发现。

资料链接:https://blog.thibaut-rousseau.com/blog/the-most-popular-go-dependency-is/


你的依赖清单

testify 的霸榜并不意外,但 pkg/errors 的顽强生命力确实让人深思。在你的 go.mod 中,是否也有那些“虽然已归档,但真的很好用”的库?或者,你有什么私藏的冷门好库推荐?

欢迎在评论区晒出你的“宝藏依赖”! 让我们一起发现更多 Go 生态的秘密。

如果这篇文章让你对 Go 生态有了全新的认识,别忘了点个【赞】和【在看】,并转发给你的 Gopher 朋友!


还在为“复制粘贴喂AI”而烦恼?我的新专栏 AI原生开发工作流实战 将带你:

  • 告别低效,重塑开发范式
  • 驾驭AI Agent(Claude Code),实现工作流自动化
  • 从“AI使用者”进化为规范驱动开发的“工作流指挥家”

扫描下方二维码,开启你的AI原生开发之旅。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

如发现本站页面被黑,比如:挂载广告、挖矿等恶意代码,请朋友们及时联系我。十分感谢! Go语言第一课 Go语言进阶课 AI原生开发工作流实战 Go语言精进之路1 Go语言精进之路2 Go语言第一课 Go语言编程指南
商务合作请联系bigwhite.cn AT aliyun.com

欢迎使用邮件订阅我的博客

输入邮箱订阅本站,只要有新文章发布,就会第一时间发送邮件通知你哦!

这里是 Tony Bai的个人Blog,欢迎访问、订阅和留言! 订阅Feed请点击上面图片

如果您觉得这里的文章对您有帮助,请扫描上方二维码进行捐赠 ,加油后的Tony Bai将会为您呈现更多精彩的文章,谢谢!

如果您希望通过微信捐赠,请用微信客户端扫描下方赞赏码:

如果您希望通过比特币或以太币捐赠,可以扫描下方二维码:

比特币:

以太币:

如果您喜欢通过微信浏览本站内容,可以扫描下方二维码,订阅本站官方微信订阅号“iamtonybai”;点击二维码,可直达本人官方微博主页^_^:
本站Powered by Digital Ocean VPS。
选择Digital Ocean VPS主机,即可获得10美元现金充值,可 免费使用两个月哟! 著名主机提供商Linode 10$优惠码:linode10,在 这里注册即可免费获 得。阿里云推荐码: 1WFZ0V立享9折!


View Tony Bai's profile on LinkedIn
DigitalOcean Referral Badge

文章

评论

  • 正在加载...

分类

标签

归档



View My Stats