16 KiB
开源名称中有什么?
有没有想过您喜欢的开源项目或编程语言的名称来自何处?了解从 A 到 Z 的流行技术术语背后的起源故事。
GNOME、Java、Jupyter、Python。如果你的朋友或家人曾留意过你的工作对话,他们可能会认为您从事文艺复兴时期的民间文学艺术、咖啡烘焙、天文学或动物学工作。这些开源技术的名称从何而来?我们要求作者社区提供意见,并汇总了一些我们最喜欢的技术名称起源故事。
Ansible
“Ansible”这个名称直接来自科幻小说。厄休拉·勒古恩(Ursula Le Guin)的《鲁康农的世界》(Rocannon's World)一书中能进行即时(比光速更快)通信的设备允许被称为 ansibles(显然来自“ answerable”一词)。Ansibles 成为科幻小说的主要内容,包括在奥森·斯科特·卡德(Orson Scott Card)的《安德的游戏》(Ender's Game)(后来成为受欢迎的电影)中,该设备控制了许多远程太空飞船。对于控制分布式机器的软件来说,这似乎是一个很好的模型,因此 Michael DeHaan(Ansible 的创建者和创始人)借用了这个名称。
Apache
Apache 是最初于 1995 年发布的开源 Web 服务器。它的名称与著名的美国原住民部落无关;相反,它是指对原始软件代码重复的补丁。因此称之为,“一个修补服务器”。
awk
“awk(1) 代表着 Aho, Weinberger, Kernighan(作者)”—— Michael Greenberg
Bash
“最初的 Unix shell,即 Bourne shell,是以其创建者的名字命名的。在开发 Bash 时,csh(发音为‘seashell’)实际上更受交互登录用户的欢迎。Bash 项目旨在赋予 Bourne shell 新的生命,使其更适合于交互式使用,因此它被命名为‘Bourne again shell’,是‘重生’的双关语。’”——Ken Gaillot
C
在早期,AT&T 的 Ken Thompson 和 Dennis Ritchie 发现可以使用更高级的编程语言(而不是低级的、可移植性更低的汇编编程)来编写操作系统和工具是很有趣的。早期有一个叫做 BCPL(Basic Combined programming Language,基本组合编程语言)的编程系统,汤普森创建了一个名为 B 的简化版 BCPL,但 B 的灵活性和速度都不高。然后,里奇把 B 的思想扩展成一种叫做 C 的编译语言。”——Jim Hall
dd
“我想你发表这样一篇文章不能不提到 dd。我的外号叫 Didi。正确发音,它听起来像‘dd’。我第一次学的是 Unix,然后是 Linux,那是在 1993 年,当时我还是个学生。然后我去了军队,来到了我的部队中少数几个使用 Unix(Ultrix)的部门之一(其它部门主要是 VMS),那里的一个人说:‘这么说,你是一个黑客,对吗?你以为你了解 Unix 吗?好的,那么 dd 这个名字的原因是什么呢?’我不知道,试着猜:‘数据复印机?’所以他说,‘我要告诉你 dd 的故事。dd 是 convert 和 copy 的缩写(任何人仍然可以在今天从参考页中看到),但由于 cc 这个缩写已经被 C 的编译器占用,它被命名为 dd。’只有几年后,我听闻了关于 JCL 的数据定义和非统一、半开玩笑的 Unix dd 命令语法的纪实中的一部分都是基于这个说法的。”——Yedidyah Bar David
Emacs
经典的反 vi 编辑器,其名称的真正词源并不明显,因为它源自“Editing MACroS”。但是,它作为一个伟大的宗教亵渎和崇拜的对象,吸引了许多恶作剧般的缩写,例如“避开 Meta Alt Control Shift 键”(以调侃其对键盘的大量依赖),“8MB 并经常交换”(从那时起就有很多内存了),“最终分配了所有的计算机存储”和 “EMACS 使一台计算机慢”——改编术语文件/黑客的字典
Enarx
Enarx 是机密计算领域的一个新项目。该项目的设计原则之一是它应该是“可替代的”。因此最初的名字是“psilocybin”(著名的魔术蘑菇)。一般情况下,经理级别的人可能会对这个名称有所抵触,因此考虑使用新名称。该项目的两位创始人 Mike Bursell 和 Nathaniel McCallum 都是老一辈的极客,因此他们考虑了许多不同的想法,包括 тайна(Tayna——俄语中代表秘密或神秘——虽然公认的俄语并不是一门古老的语言,但你就不要在乎这些细节了),crypticon(希腊语的意思是完全庶生的),cryptidion(希腊中表示小密室),arconus(拉丁语中表示秘密的褒义形容词),arcanum(拉丁语中表示秘密的中性形容词)和 ærn(盎格鲁撒克逊人表示地方,秘密的地方,壁橱,住所,房子,或小屋的词汇)。最后,由于各种原因,包括域名和 GitHub 项目名称的可用性,他们选择了 enarx,这是两个拉丁词根的组合:en-(表示内部)和 -arx(表示城堡,要塞或堡垒)。
GIMP
没有 GIMP 我们会怎么样?GNU 图像处理项目多年来一直是开源的主要内容。维基百科指出,“1995 年,Spencer Kimball 和 Peter Mattis 开始开发 GIMP,作为加州大学伯克利分校的一个为期一个学期的实验计算设施项目。”
GNOME
你有没有想过为什么 GNOME 被称为 GNOME?根据维基百科,GNOME 最初是一个表示“GNU 网络对象模型环境”的缩写词。现在,该名称不再表示项目,并已被删除,但该名称仍然保留。GNOME 3 是 Fedora、红帽企业版、Ubuntu、Debian、SUSE Linux 企业版等发行版的默认桌面环境。
Java
您能想象这种编程语言还有其它名称吗?Java 最初被称为 Oak,但是遗憾的是,Sun Microsystems 的法律团队因其现有商标而否决了该名称。所以开发团队又重新给它命名。据说该语言的工作组在 1995 年 1 月举行了一次大规模的头脑风暴。许多其它名称也被扔掉了,包括 Silk、DNA、WebDancer 等。该团队不希望新名称与过度使用的术语“web”或“net.”有任何关系。取而代之的是,他们在寻找更有活力、更有趣、更容易记住的东西。Java 满足了这些要求,并且奇迹般地,团队同意通过了!
Jupyter
现在许多数据科学家和学生在工作中使用 Jupyter 笔记本。“Jupyter”这个名字是三种开源计算机语言的融合,这三种语言在笔记本中都有使用,在数据科学中也很突出:Julia、Python 和 R。
Kubernetes
Kubernetes 源自希腊语中的舵手。Kubernetes 项目创始人 Craig McLuckie 在 2015 Hacker News 回应中证实了这种词源。为了坚持航海主题,他解释说,这项技术驱动集装箱,就像舵手或飞行员驱动集装箱船一样。因此,选择了 Kubernetes 这个名字。我们中的许多人仍然在尝试正确的发音(koo-bur-NET-eez),因此 K8s 是可以接受的替代发音。有趣的是,它与英语单词“ governor”具有相同的词源,也与蒸汽机上的机械负反馈装置相同。
KDE
那 K desktop 呢? KDE 最初代表“ Kool 桌面环境”。 它由 Matthias Ettrich 于 1996 年创立。根据维基百科上的说法,该名称是 Unix 上 Common Desktop Environment(CDE)一词的调侃。
Linux
Linux 因其发明者 Linus Torvalds 的名字命名的。Linus 最初想将他的作品命名为“Freax”,因为他认为以他自己的名字命名太自负了。根据维基百科的说法,“赫尔辛基科技大学 Torvalds 的同事 Ari Lemmke 当时是 FTP 服务器的志愿管理员之一,他并不认为‘Freax’是个好名字。 因此,他在没有咨询 Torvalds 的情况下,将服务器上的这个项目命名为‘Linux’。”
以下是一些最受欢迎的Linux发行版。
CentOS
CentOS 是社区企业操作系统的缩写。它包含 Red Hat Enterprise Linux 的上游软件包。
Debian
Debian Linux 创建于 1993 年 9 月,是其创始人 Ian Murdock 和他当时的女友 Debra Lynn 的混成词。
RHEL
Red Hat Linux 的名字来自它的创始人马克·尤因(Marc Ewing),他戴着一顶祖父送给他的康奈尔大学红色软呢帽。红帽公司成立于 1993 年 3 月 26 日。Fedora Linux 作为一个志愿者项目而启动,旨在为红帽发行版提供额外的软件,它的名字来自红帽的“Shadowman”标识。
Ubuntu
Ubuntu 旨在广泛分享开源软件,它以非洲哲学“人的本质”命名,可以翻译为“对他人的人道主义”或“我之所以是我,是因为我们都是这样的人”。
Moodle
开源学习平台 Moodle 是“模块化面向对象动态学习环境”的首字母缩写。Moodle 仍然是电子学习的领先平台。全球有近 10.4 万个注册的 Moodle 网站。
另外两个流行的开源内容管理系统是 Drupal 和 Joomla。Drupal 的名字来自荷兰语,意思是“放弃”。根据维基百科,Joomla 是斯瓦希里语单词“jumla”的英式拼写,在阿拉伯语、乌尔都语和其他语言中是“一起”的意思。
Mozilla
Mozilla 是一个成立于 1998 年的开源软件社区。根据其网站,“Mozilla 项目创建于 1998 年,发布了 Netscape 浏览器套件源代码。它旨在利用互联网上成千上万的程序员的创造力,并推动浏览器市场上前所未有的创新水平。” 这个名字是 [Mosaic] 28 和 Godzilla 的混成词。
Nginx
“许多技术人员都试图装酷,并将它念成‘n’‘g’‘n’‘x’。实际上,很少的一部分人只做了一些基本的研究工作,就可以很快发现名称实际上应该被说成是“ EngineX”,指的是功能强大的 web 服务器,例如引擎。”——Jean Sebastien Tougne
Perl
Perl 的创始人 Larry Wall 最初将他的项目命名为“Pearl”。根据维基百科,Wall 想给这种语言起一个有积极含义的简短名字。在 Perl 正式发布之前,Wall 发现了现有的 PEARL 编程语言,并更改了名称的拼写。
Piet and Mondrian
“有两种编程语言以艺术家 Piet Mondrian 命名。一种叫做‘Piet’,另一种叫做‘Mondrian’。[David Morgan-Mar 写道]:“Piet 是一种编程语言,其中的程序看起来像抽象绘画。该语言以几何抽象艺术的开创者 Piet Mondrian 的名字命名。我曾想将这种语言命名为 Mondrian,但是有人告诉我这会让它看起来像一种很普通的脚本语言。哦,好吧,我想我们不能都是深奥的语言作家。”——Yuval Lifshitz
Python
Python编程语言的独特名称来自其创建者 Guido Van Rossum,他是喜剧团体 Monty Python 的粉丝。
Raspberry Pi
Raspberry Pi 以其微小但强大的功能和对钱包友好的价格标签而闻名,在开源社区中是最受欢迎的。但是它可爱(和好吃)的名字是从哪里来的呢?在 70 年代和 80 年代,以水果命名的计算机是一种流行的趋势。苹果,橘子,杏……有人饿了吗?根据创始人 Eben Upton 的 [2012 采访] 31,“Raspberry Pi”这个名称是对这种趋势的致敬。树莓也很小,但味道却很浓。名称中的“Pi”暗示着这样的事实:最初,计算机只能运行 Python。
Samba
Server Message Block 用于在 Linux 上共享 Windows 文件。
ScummVM
ScummVM(《疯狂大楼》虚拟机的脚本创建实用程序)是一个程序,可以在现代计算机上运行一些经典的计算机冒险游戏。最初,它旨在玩用 SCUMM 构建的 LucasArts 冒险游戏,该游戏最初用于开发《疯狂大楼》,后来又被用来开发 LucasArts 的其它大多数冒险游戏。目前,ScummVM 支持大量游戏引擎,包括 Sierra Online 的 AGI 和 SCI,但仍保留名称 ScummVM。一个相关的项目 ResidualVM 之所以得名,是因为它涵盖了 ScummVM 未涵盖的“剩余” LucasArts 冒险游戏。 ResidualVM 涵盖的 LucasArts 游戏是使用 GrimE(Grim Engine)开发的,该引擎最初用于开发 Grim Fandango,因此 ResidualVM 的名称是双关语。
SQL
“你可能知道 [SQL] 代表结构化查询语言,但你知道为什么它经常被读作‘sequel’吗?”它是作为‘QUEL’(查询语言)的后续(即续集)而创建的。”——Ken Gaillot
XFCE
XFCE 是由 Olivier Fourdan 创建的一个流行的桌面。它在 1996 年作为 CDE 的替代品出现,最初是 XForms 公共环境的缩写。
Zsh
Zsh 是一个交互式登录 shell。1990 年,普林斯顿大学的学生 Paul Falstad 写了 shell 的第一个版本。他在看到当时在普林斯顿大学担任助教的 Zhong Sha(zsh)的登录 ID 后,给它起了个名字,他觉得这个名字听起来像 shell 的好名字。
还有更多的项目和名称还没有包括在这个列表中。请一定要在评论中分享你的收藏。
via: https://opensource.com/article/19/10/open-source-name-origins
作者:Joshua Allen Holm 选题:lujun9972 译者:laingke 校对:校对者ID