10月30日,Python之父Guido大牛宣布退休,离开Dropbox。
他发推文说,“这件事感觉既苦涩又甜蜜:苦涩的是,我马上要离开Dropbox,现在已经退休;甜蜜的是,在Dropbox做工程师期间,我学到很多,比如类型标注就来自这段经历。我会非常怀念在这里工作的日子。”
Python正在吞噬世界如今,人们对Python的热情已经远远超出了最初的开发者圈子。一些人预测,随着Python用户群的快速增长,它很快会成为世界上最流行的编程语言。每天有数以百万计的人使用Python,用户群呈现出指数级的增长,几乎没有出现下降的迹象。
不管是专业的还是业余的开发人员,他们都在使用Python处理大大小小的任务,特别是Web开发人员、数据科学家和系统管理员。今年出现的第一批黑洞图片就是用Python拼接出来的。
Python在一些世界知名的组织中扮演着关键角色,比如,Netflix用Python向全球1亿多户家庭提供流媒体视频,Instagram用Python实现图片分享,NASA借助Python来探索太空。
Python的早年时期Python原先是荷兰程序员GuidovanRossum的一个个人项目。20世纪80年代末,vanRossum在荷兰国家数学和计算机科学研究中心的CWI部门开发分布式系统。由于对已有的编程语言感到十分失望,他决定开发一门新的语言——一门既易于使用功能又强大的语言。
Python之父GuidovanRossum
对于当时的vanRossum来说,使用仅有的几种编程语言完成任何一件事情都显得很困难。他正在开发的Amoeba分布式计算系统要求他使用C语言或Unixshell,但这两种语言都有很大的局限性。C语言要求开发人员自己手动管理内存,容易埋下潜在的bug,而且还缺少可重用的代码库。开发人员想要完成日常任务,需要在每个新项目中重新发明轮子。Unixshell存在另外一个问题——它虽然为日常任务提供了一些实用程序,但它们的运行速度太慢,无法处理复杂的逻辑。
这些语言对开发人员造成的限制如此之大,以至于在vanRossum看来,他自己创建的这门解释型语言——从ABC语言借用了一些特性——似乎是最好的选择。
vanRossum回忆道:“我当时在想,为什么不自己开发一门语言呢?我完全可以借鉴ABC的一些想法,并将项目的规模缩小一些,把原先需要花三年时间完成的东西缩短至三个月内,让它变成我自己的个人项目。于是,Python诞生了”。
年末,vanRossum开始认真地开发这门语言,并借用了他最喜欢的喜剧团体“MontyPython”的名字,又因为与蛇有关系,后来就有了那个盘绕的巨蟒的logo。
他说:“当时我也不知道Python是否真的会让我的工作变得更有效率。在某种程度上,我真的很喜欢这种可以自己完成一个大项目的想法,并且可以按照我想要的方式来设计和实现。在我看来,编程是件有趣的事情”。
三个月之后,vanRossum做出了可运行的Python原型。
他说:“虽然现在的Python有很多在当时并不存在的抽象特性,但语言本身仍然始终如一”。
“那时,Python已经具备了解析器和运行语言所需的基本组件。第一个可运行的Python程序放到现在仍然可以运行”。它们的函数定义是一样的,缩进是一样的,字典和元组的创建语法是一样的,交互式提示符也是一样的。
当他的两个同事开始使用这门语言处理日常任务时,vanRossum并没有指望它会流行起来。因为他知道,在互联网时代到来之前,让一门编程语言流行起来有多么困难。
在今天,只需要点击几下鼠标就可以把一款软件分享给全世界,但在上世纪80年代,这是一件非常费力的事情。
年,vanRossum通过alt.sources新闻组向全世界发布了Python。这在当时基本上算是一种开源许可协议,比”开源许可协议“这个术语本身早了六年出现。虽然当时的Python解释器仍然需要将21个单独的部分连接成一个压缩文件,并需要连夜从Usenet网络上下载下来,但与几年前线下送磁带的方式相比,它仍然要高效得多。
他说:“我希望Python可以取得成功,毕竟之前我做的另一个东西基本上以失败告终”。
vanRossum说,在很长一段时间之后,他才知道Python的用户群在增长。渐渐地,他意识到Python的发展势头正在形成,在与Python社区进行了一段时间的交流之后,他知道,Python成功了。
Python为什么会赢Python在20世纪90年代初期到中期开始受到