近期github发生了两件大事,一个是一名匈牙利的程序员吐槽github热搜榜被中文内容刷爆,十个内容九个中文的,甚至连教程攻略配图都是全中文的,甚至有的更是为中国人量身打造的专供程序(只有中国人自己在用的程序)。这让非中文国家的程序员感到不满,呼吁github改进热搜榜单按区域划分的机制。另一个则是最近为了纪念人类登月50周年,一名美国的开源人士在github上公开了当年美国宇航局NASA在1969年7月“阿波罗登月计划”登月时的火箭飞船的源代码,在Issues(纠错板块)被大量中文无意义水贴内容刷爆,被中国人当成了微博、推特、脸书和贴吧。一个纠错板块活生生被玩成了论坛,一个开源代码网站被国人玩成了github论坛,这引发了许多人的强烈不满。下面是相关的新闻报道节选,详细内容请看链接,关于本次事件的评论请关注近期阳光实验室的有关评论,敬请关注。
近日一名匈牙利开发者(Balazs Saros,下简称 Balazs)在个人博客发表(浏览需科学上网)了一篇看似是在“声讨”中国开发者的文章,标题起得有点唬人 —— "Chinese repos are ruining the Github trending page"(中国开发者创建的 repo 正在破坏 GitHub Trending 页面)。
文章开头处,作者写了一个旨在避免引起误会的声明,他表示自己不反对 GitHub Trending 上语言为非英语的 repo,因为这毕竟是一件好事,能保证英语水平欠佳的开发者也能在这个热门页面拥有一席之地。他主要是想指出 GitHub Trending 页面的用户体验设计存在缺陷,并希望 GitHub 能对此进行修复。
Balazs 说到,自己在任意时间打开 GitHub Trending 页面,很大概率会看到许多由中国开发者创建的 repo,甚至遇到过前 10 项目中有 9 个使用中文的情况,如下:
GitHub Trending 原本是一个十分意义的功能,于开发者而言,这是一个发现有趣和优秀开源项目的好地方,对开源项目来说,这也是曝光和获取关注的一个有效渠道。但 Balazs 表示自己越来越不愿意打开这个页面了,原因在于 GitHub Trending 基本是长期被中国开发者创建的 repo “霸榜”。
Balazs 表示虽然可以借助翻译工具对这些 repo 的 readme 文件进行翻译以了解项目,但项目的演示页面、截图中出现的文字都不是英文,甚至代码的注释也没有使用英语。此外,这些项目大多是面向部分特定群体而创建,例如为准备求职的开发者而整理的“面经”材料,或者是一些教程类的内容。
对于这个现象的出现,Balazs 给出了自己的分析,原因有三:
中国在软件开发/技术方面的实力正在追赶美国,并开始大力扩充人才库
投身软件开发行业是让“那里的人”摆脱贫困并拥有更多机会的一个最好的途径(有时甚至是唯一途径)
GitHub 正在迅速扩张市场并且在开发者群体中拥有非常大的影响力,所以这些人将 GitHub 视为一个获取资料和解决方案的地方就不难理解了(中国人可无阻碍访问 GitHub 也是重要的影响因素)
最后,Balazs 再次强调自己并非是在抱怨这些 repo 以及创建这些 repo 的用户,他认为总体来看这是一件好事,但却破坏了 GitHub Trending 的使用体验。为此,他提出了自己的想法:
GitHub 现在可通过 repo 包含的代码来判断项目使用的编程语言,然后在 GitHub Trending 提供依据语言来浏览项目的筛选项。因此,GitHub 可考虑根据 repo 的 readme/docs/etc 文件使用的自然语言来对这些项目做出区分。同样的,然后据此在 GitHub Trending 中提供一个与地区相关的筛选项,默认值当然是 “worldwide” —— 避免对排行榜造成影响。
参考 repo 的 LICENSE 文件,GitHub 可以考虑给 repo 创建者提供添加 LANGUAGE 文件的选择,这样无疑比自动判断自然语言更准确。
将上述两点结合起来是最佳的做法,也就是说在 GitHub 判断项目使用的自然语言后,repo 的创建者还能进行修改。
原文:
GitHub Trending 长期被国人“霸榜”,国外开发者 SAY NO
扩展阅读:
中文repo“霸榜”GitHub Trending,国外开发者不开心了
国外开发者发文“声讨”中国程序员,称其在Github上长期“霸榜”
GitHub Trending长期被国人"霸榜",国外开发者抓狂
Github Trending被中文项目“占领”,国外开发者不开心了!