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 是一个开源 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'。我最早在 1993 年以学生的身份学习了 Unix,然后学习了 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 网络对象模型环境”的首字母缩写词。现在这个名称不再代表该项目,并且已被删除,但名称仍然保留。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 哲学命名,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(Maniac Mansion 虚拟机脚本创建实用程序)是一个程序,它使在现代计算机上运行一些经典计算机冒险游戏成为可能。最初,它旨在玩使用 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] 代表结构化查询语言,但您知道为什么它通常发音为 'sequel' 吗?它是作为原始 'QUEL' (QUEry Language) 的后续(即续集)而创建的。”——Ken Gaillot
XFCE
XFCE 是由 Olivier Fourdan 创立的流行桌面。它最初是 1996 年 CDE 的替代品,其名称最初是 XForms Common Environment 的缩写。
Zsh
Zsh 是一个交互式登录 shell。1990 年,第一个版本的 shell 由普林斯顿大学学生 Paul Falstad 编写。他看到普林斯顿大学的助教 Zhong Sha (zsh) 的登录 ID 后将其命名,并认为这听起来像是 shell 的一个好名字。
此列表中还有许多我们未包含的项目和名称。请务必在评论中分享您最喜欢的名称。
15 条评论