GNOME、Java、Jupyter、Python。如果您的朋友或家人曾经偷听您的工作对话,他们可能会认为您从事文艺复兴时期的民间传说、咖啡烘焙、天文学或动物学。这些开源技术的名称从何而来?我们向我们的作者社区征求了意见,并整理了一些我们最喜欢的技术名称起源故事。
Ansible
“Ansible”这个名字直接取自科幻小说。厄休拉·勒奎恩的书《罗卡南的世界》中有允许瞬时(超光速)通信的设备,称为 ansibles(显然源自“answerable”一词)。Ansibles 成为科幻小说的主要内容,包括奥森·斯科特·卡德的《安德的游戏》(后来成为一部流行的电影),其中该设备控制着许多远程宇宙飞船。这似乎是控制分布式机器的软件的一个很好的模型,因此 Michael DeHaan(Ansible 的创建者和创始人)借用了这个名字。
Apache
Apache 是一个开源 Web 服务器,最初于 1995 年发布。它的名字与著名的美洲原住民部落无关;它指的是对其原始软件代码的重复补丁。因此,称为“A-patchy server”。
awk
“awk(1) 代表 Aho、Weinberger、Kernighan(作者)”——Michael Greenberg
Bash
“最初的 Unix shell,Bourne shell,以其创建者命名。在 Bash 开发之时,csh(发音为 'seashell')实际上更受交互式用户登录的欢迎。Bash 项目旨在通过使其更适合交互式使用来赋予 Bourne shell 新的生命,因此它被命名为 'Bourne again shell',这是对 'born again' 的双关语。”——Ken Gaillot
C
“早期,AT&T 的 Ken Thompson 和 Dennis Ritchie 发现,您可以使用更高级的编程语言(而不是低级且可移植性较差的汇编编程)来编写操作系统和工具,这很有趣。有一种早期的编程系统称为 BCPL(Basic Combined Programming Language),Thompson 创建了一个精简版的 BCPL,称为 B。但是 B 不是非常灵活或快速。然后 Ritchie 采用了 B 的思想,并将其扩展为一种称为 C 的编译语言。”——Jim Hall
dd
“我认为您不能在不提及 dd 的情况下发表这样的文章。我的昵称是 Didi。正确发音,听起来像 'dd'。我第一次学习 Unix,然后在 1993 年作为学生学习了 Linux。然后我去了军队,来到了我单位中极少数使用 Unix (Ultrix) 的部门之一(其余部门主要使用 VMS),那里的人之一说:'所以,您是黑客,对吧?您认为您了解 Unix?好的,那么 dd 名称的原因是什么?'我不知道,并试图猜测:“数据复制器?”所以他说,'我会告诉您 dd 的故事。dd 是 convert and copy 的缩写(任何人今天仍然可以在手册页上看到),但是由于 cc 已经被 c 编译器占用,所以它被命名为 dd。' 几年后,我才听说关于 JCL 的数据定义以及 Unix dd 命令的非统一、半开玩笑的语法在某种程度上基于它的真实故事。”——Yedidyah Bar David
Emacs
经典的 anti-vi 编辑器,该名称的真正词源并不引人注目,因为它源自 "Editing MACroS"。然而,作为宗教界非常反对和崇拜的对象,它吸引了许多恶搞的逆向首字母缩略词,例如 "Escape Meta Alt Control Shift"(以恶搞其对击键的严重依赖),"Eight Megabytes And Constantly Swapping"(从那时起,这已经是很大量的内存了),"Eventually malloc()s All Computer Storage" 和 "EMACS Makes A Computer Slow"。”——改编自 Jargon File/Hacker's Dictionary
Enarx
Enarx 是保密计算领域的一个新项目。该项目的设计原则之一是它应该是“可互换的”,因此最初的名称是“psilocybin”(著名的迷幻蘑菇)。普遍的感觉是,经理类型的人可能会抵制,因此考虑了新的名称。该项目的两位创始人 Mike Bursell 和 Nathaniel McCallum 都是古代语言爱好者,因此他们考虑了许多不同的想法,包括 тайна (Tayna—俄语,意思是秘密或神秘—虽然俄语,诚然,不是古代语言,但嘿),crypticon (对希腊语的完全篡改),cryptidion (希腊语,意思是小秘密的地方),arcanus (拉丁语阳性形容词,意思是秘密),arcanum (拉丁语中性形容词,意思是秘密),和 ærn (盎格鲁-撒克逊语,意思是地方、秘密的地方、壁橱、住所、房屋或小屋)。最后,由于各种原因,包括域名和 GitHub 项目名称的可用性,他们最终确定了 enarx,这是两个拉丁语词根的组合:en-(意思是内部)和 -arx(意思是城堡、堡垒或要塞)。
GIMP
如果没有 GIMP,我们会怎么样?GNU 图像处理项目多年来一直是开源的主力军。维基百科指出,“1995 年,Spencer Kimball 和 Peter Mattis 开始在加州大学伯克利分校为实验计算设施开发 GIMP 作为学期项目。”
GNOME
您有没有想过为什么 GNOME 被称为 GNOME?根据 维基百科,GNOME 最初是一个首字母缩略词,代表 "GNU Network Object Model Environment"。现在这个名称不再代表该项目,并且已被删除,但该名称仍然保留。GNOME 3 是 Fedora、Red Hat Enterprise、Ubuntu、Debian、SUSE Linux Enterprise 等的默认桌面环境。
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 桌面怎么样?KDE 最初代表 "Kool Desktop Environment"。它由 Matthias Ettrich 于 1996 年创立。根据 维基百科,该名称是对 Unix 上的 Common Desktop Environment (CDE) 的戏仿。
Linux
Linux 以其发明者 Linus Torvalds 的名字命名。Linus 最初想将他的作品命名为 "Freax",因为他认为以自己的名字命名作品太自负了。根据 维基百科,“Ari Lemmke,Torvalds 在赫尔辛基理工大学的同事,当时是 FTP 服务器的志愿者管理员之一,认为 'Freax' 不是一个好名字。因此,他在服务器上将该项目命名为 'Linux',而没有咨询 Torvalds。”
以下是一些最流行的 Linux 发行版。
CentOS
CentOS 是 Community Enterprise Operating System 的首字母缩略词。它包含来自 Red Hat Enterprise Linux 的上游软件包。
Debian
Debian Linux 于 1993 年 9 月创立,是其创始人 Ian Murdock 和他当时的女友 Debra Lynn 的名字组合。
RHEL
Red Hat Linux 的名字来源于其创始人 Marc Ewing,他戴着一顶红色的康奈尔大学软呢帽,这是他祖父送给他的。Red Hat 成立于 1993 年 3 月 26 日。Fedora Linux 最初是一个志愿者项目,旨在为 Red Hat 发行版提供额外的软件,其名称来源于 Red Hat 的“Shadowman”标志。
Ubuntu
Ubuntu 旨在广泛分享开源,其名称来源于非洲的 ubuntu 哲学,可以翻译为“对他人的仁慈”或“我之所以成为现在的我,是因为我们所有人”。
Moodle
开源学习平台 Moodle 是 "modular object-oriented dynamic learning environment"(模块化面向对象动态学习环境)的首字母缩略词。Moodle 继续成为电子学习的领先平台。全球有近 104,000 个注册的 Moodle 站点。
另外两个流行的开源内容管理系统是 Drupal 和 Joomla。Drupal 的名字来源于荷兰语单词 "druppel",意思是“滴”。Joomla 是斯瓦希里语单词 "jumla" 的英语化拼写,根据维基百科,该词在阿拉伯语、乌尔都语和其他语言中意为“一起”。
Mozilla
Mozilla 是一个开源软件社区,成立于 1998 年。根据其网站,“Mozilla 项目创建于 1998 年,当时发布了 Netscape 浏览器套件源代码。它旨在利用互联网上数千名程序员的创造力,并在浏览器市场中推动前所未有的创新水平。”该名称是 Mosaic 和 Godzilla 的混合词。
Nginx
“许多技术人员试图装酷,并说它是 'n' 'g' 'n' 'x'。很少有人真正做过更深入研究的基本操作,以很快发现该名称实际上应该发音为 'EngineX',指的是强大的 Web 服务器,就像引擎一样。”——Jean Sebastien Tougne
Perl
Perl 的创始人 Larry Wall 最初将其项目命名为 "Pearl"。根据维基百科,Wall 想给这种语言起一个简短且具有积极含义的名称。Wall 在 Perl 正式发布之前发现了现有的 PEARL 编程语言,并更改了名称的拼写。
Piet 和 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 年代,以水果命名计算机是一种流行的趋势。Apple、Tangerine、Apricot... 有人饿了吗?根据对创始人 Eben Upton 的 2012 年采访,“Raspberry Pi”这个名字是对这种趋势的致敬。覆盆子也很小,但味道浓郁。名称中的 "Pi" 暗示最初该计算机只能运行 Python。
Samba
服务器消息块,用于在 Linux 上共享 Windows 文件。
ScummVM
ScummVM (Script Creation Utility for Maniac Mansion Virtual Machine) 是一个程序,它可以使在现代计算机上运行一些经典的计算机冒险游戏成为可能。最初,它旨在玩使用 SCUMM 构建的 LucasArts 冒险游戏,SCUMM 最初用于开发 Maniac Mansion,然后用于开发 LucasArts 的大多数其他冒险游戏。目前,ScummVM 支持大量游戏引擎,包括 Sierra Online 的 AGI 和 SCI,但仍保留 ScummVM 名称。一个相关的项目 ResidualVM,之所以得名,是因为它涵盖了 ScummVM 未涵盖的“剩余”LucasArts 冒险游戏。ResidualVM 涵盖的 LucasArts 游戏是使用 GrimE (Grim Engine) 开发的,GrimE 首先用于开发 Grim Fandango,因此 ResidualVM 名称是一个双关语。
SQL
“您可能知道 [SQL] 代表 Structured Query Language(结构化查询语言),但是您知道为什么它通常发音为 'sequel' 吗?它是作为原始 'QUEL' (QUEry Language) 的后续(即续集)而创建的。”——Ken Gaillot
XFCE
XFCE 是由 Olivier Fourdan 创建的流行桌面。它最初是作为 1996 年 CDE 的替代品而开始的,其名称最初是 XForms Common Environment 的首字母缩略词。
Zsh
Zsh 是一个交互式登录 shell。1990 年,普林斯顿大学学生 Paul Falstad 编写了 shell 的第一个版本。他看到普林斯顿大学的助教 Zhong Sha (zsh) 的登录 ID 后,以他的名字命名,并认为这听起来像一个 shell 的好名字。
此列表中还有许多我们未包含的项目和名称。请务必在评论中分享您最喜欢的项目和名称。
15 条评论