Hacker News简称HN,是由《黑客与画家》作者Paul Graham联合创始的Y Combinator旗下的新闻社区,它的界面虽然比较丑陋,但是社区用户质量、评论质量非常高。很多知名项目早起都会通过HN进行传播:比如TiDB早期就多次上过Hacker New的首页前10,国内七牛许式伟发起的Go+语言也多次进入过Hacker New的首页。
最近国内Gopher发起的面向WebAssembly平台的凹语言也首次登上了Hacker News 的首页(https://news.ycombinator.com/item?id=33544641)。如图所示:
图中蓝色框内是Go语言开源13周年的官方博文,红色框内是实时排名第26位的凹语言简介。目前凹语言新闻在Hacker News已经获得50+个point和40+个评论。
同时凹语言在GitHub 上也被推到了 Go Trending 的日关注头条(为Github仓库带来了单日超过4k的访问量):
作为一个由个人业余时间发起的国产通用编程语言项目,凹语言无公司资本加持也没有针对英文社区特别投入额外的资源。能取得被CSDN和Hacker News这样大平台的关注是一个非常大的惊喜,也是对开发组的一个鼓励。
作为中国的码农,我们在凹语言诞生之初就明确了:要平等对待中文编程和中文社区。因此凹语言支持中文和英文双语关键字编程,而Github仓库也是以中文为主,只在Readme做了简单的英文说明。受限于各种条件,凹语言社区也聚焦在中文用户的微信群。没想到在HN这样的平台引起最大的争议并非技术,而是因为凹语言没有首先支持英语社区:
该评论直言不讳:只要是我不懂的英语之外的方言土话,技术再怎么样也不会使用!当然评论者也说了,不仅仅是针对中文的凹语言;面对法语的OCaml和Coq项目也是这样(就是这么霸气)!
合着这个评论的意思是:不使用英语作为官方语言的项目不配被使用?OCaml不能用法语因为我不懂法语,凹语言不能用中文因为我不懂中文。我想问下国内的码农同仁:我们是否因为不懂英语就要拒绝全部的英文项目?
傲慢之情在这个评论中溢于言表:你们这些说着各种方言土话的乡下人,做编程语言项目竟然敢不以英语普通话为先,敢不提供英文社区和文档,真是好大的胆子!我当然也知道这个老外真实的愤怒原因:你们能看懂英语,但是老子看不懂中文(老子也不愿意学),岂有此理!
这个问题在当下的答案显而易见。导致该现象的原因,一方面是由于英语在信息科学中的首发优势,另一方面与国内的某种氛围不无关系:某些国内发起的项目中文文档就是二等公民,不仅没有中文名,甚至没有中文首页和中文文档,整个社区洋溢着“以不用中文为荣”的气氛:
中国码农自己都看不起中文,那还能指望谁来完善、改进、平等对待中文用户?
在这种风气下,国际友人自然也非常不待见中文需求。各种国际社区和平台对中文支持也是最差的,各大西方主流编程语言对中文需求也不做任何考虑。比如Go语言刚开源时输出的是日文的“你好,世界”——不是中文哦。在Go语言中,中文的名字不能被导出、不能被reflect包支持、不能用于ORM的结构图属性名字!
正是因为这些中文自卑的言论、思想和惯性,真真切切地带来了使用中文低人一等的恶劣结果。
其实Hacker News老外对非英文项目和社区的痛点我能理解。毕竟他们没有体会过我们在编程前学了多少年的英语。中国码农在检索到英语、日语等各种语言资料时各种困难他们完全没有经历过。因此我是理解他们的,同时也更坚实了我坚持用中文的决定。
国际空间站虽然排斥中国人,但是我们的天宫空间站并不排斥非中文国家和地区的合作。同样,作为中文母语的码农,我们并非要强制用中文而排斥英文,而只不过希望中文和英文能拥有平等的地位(比如中文名字也可以用于包名,中文函数/变量也可以被导出)。
因此,凹语言社区的一个新增的原则就是:中文是社区的标准语言之一。凹语言的网站就是中文为主(同时也不排斥多语言支持):
因为中文是我们的母语,凹语言的中文基因是无处不在的:语言的名字是中文、包路径和标识符可以是中文、社区和提交记录是中文,同时提供中文和英文双语关键字。
不仅如此,我们也努力向老外展示中文象形文字的魅力:
这个“凹”不是什么华盛顿的意思, “凹”字的一个古老读音“wā”是WASM的前半部分,形状跟WebAssembly的图标的近似,同时“凹”子还像一个逆时针躺平的C或者Coder。
对于最开始挑衅的老外我们也给出坚决的回应:
我们自己如果不去科普这些中文文化,老外怎么可能懂得东方象形文字的魅力?或许又是像另一个评论一样去日文区寻找答案了。但是我们同样欢迎英文社区的同学围观和参与,因为中国的码农都吃过英语学习的苦。
这个文章中有很多情绪的因素,我并不想回避。但是光靠煽动情绪并不能真正解决问题和提升中文的话语权。要做的和能做的只有扎实地做好自己的工作,我们计划在2022年底将凹语言推进到能用于开发简单的网页互动程序,通过行动来促进中文和英文文化的平等交流。
和所有认同中文需要平等地位的同学共勉。
延伸阅读:凹语言开源季度总结