Python大咖谈 - Kenneth Reitz 与 Mike Driscoll
Python大咖谈 - Brett Cannon
Python大咖谈 - Steve Holden
Steve Holden,英国计算机程序员,Python 软件基金会前任主席与董事,《Python Web Programming》作者,与 Alex Martelli 和 Anna Ravenscroft 合著第三版《Python in a Nutshell》 。Steve 现就职于一家名为 Global Stress Index 的英国压力管理创业公司,任该公司首席技术官,负责监管技术生产系统。对 Python 的推广让 Steve 举世闻名,他一直坚持为 Python 开源项目提供支持,在各种技术大会上发表演说推广 Python。
访谈主题:PyCon 大会、Python 软件基金会、Python 的未来。
Mike Driscoll:能说说您为什么当程序员吗?
Steve Holden:简单说,十来岁那会儿,我非常喜欢电子设备,之所以喜欢电子设备,是因为化学老师认为我不适合学化学。
我 15 岁就出来打工,在一家电视机厂做实习工程师。我在那里干了一年半,工作不如意,就想着换工作。正好老家 Bradford 的一家大学计算机室招聘初级技师,结果去应聘才知道,所谓初级技师只是一种岗位职称,他们要找的其实就是个打字员。
可能实验室主管觉得我有些脱离社会正轨的危险,于是,他决定让我在实验室里试着先干半年,学学计算机。当然不是干电子设备维护,那个年代,计算机维护是极其专业的工作,但我学会了怎样操作计算机,还有编程,从此便开始了计算机职业生涯。
Driscoll:那您是怎么开始使用 Python 的呢,对您来说 Python 有什么特别之处呢?
Holden:70 年代初,我对面向对象编程产生了浓厚的兴趣,那时我 23 岁,还上了大学。
Steve Holden:‘70 年代初,我对面向对象编程产生了浓厚的兴趣。’
我碰巧读了施乐 PARC 公司 Alan Kay 所在小组介绍 Smalltalk[1] 的早期论文,这个小组提出了一些计算方式的新奇想法,引得我对 Smalltalk 产生了兴趣。直到 12 年后,在曼彻斯特大学工作时,我才真正有机会使用 Smalltalk,还专门找了名研究生帮我编程。那时,英国还没人用 Smalltalk,结果我发现自己没那么喜欢 Smalltalk,就放弃了面向对象编程,这一晃又是 10 年。
移民美国后,我读了一本讲 Python 的书,要是没记错的话,应该是 Mark Lutz 与 David Ascher 合著的那本《Learning Python》。我发现 Python 才是我梦寐以求的编程语言!Python 可以说是一门以实用、易学、易懂的方式实现面向对象编程的语言。
Steve Holden:‘我发现自己对这门语言的了解与日俱增,很快就能解答很多问题了。’
我当时也和大家一样加入了 Python 的邮件列表。我发现自己对这门语言的了解与日俱增,很快就能解答很多问题了。我在 comp.lang.python 上活跃了大约八年,写了差不多 20 万个贴子!这可是一个天文数字!可惜谷歌把很多贴子弄没了,这些历史随着 comp.lang.python 消散了。
Driscoll:Python 现在在人工智能与机器学习领域应用广泛,您觉得什么因素让 Python 这么流行的?
Holden:Python 有几个优点:代码易读,在 Console 或 IDE 里,可以对创建的对象进行交互试验。Python 还提供了相对简单的与编译型语言的交互方式,便于实现大规模计算。
Driscoll:您觉得现在 Python 及其社区存在什么问题吗?
Holden:Python 社区其实是由大量交叉的小社区组成的,从目前来看,它正变得越来越强大。
很高兴看到大家普遍接受了 Python 这门语言,还有这个友好、热情的社区。Python 软件基金会现在的定位就是为志愿者活动提供资金支持与金融保障,只要这些活动是为了推广与支持 Python 软件基金会的使命。
Steve Holden:‘Python 软件基金会现在的定位是为志愿者活动提供资金支持,并提供金融保障。’
刚与 Alex Martelli 和 Anna Ravenscroft 合著完 《Python in a Nutshell》的时候,我会说 Python 的状态非常好。但是,新引入的异步原语对于普通程序员来说有点难,超过了正常水平。
Guido van Rossum 与核心开发者团队的工作很了不起,没有因为添加新内容而让 Python 变得畸形。Twisted 开发者虽然对异步范式了如指掌,但与同步任务规范相比,异步编程还是不够简单、直观。
Steve Holden:‘我有些担心现在 Python 的开发方向并未考虑普通的主流用户。’
坦白讲,我有些担心现在 Python 的开发方向并未考虑普通的主流用户。现在的大量工作都是为了把异步编程加进这门语言,这还包括了一种用来消除对线程需求的协作式多任务机制。
随着这项工作的开展,开发人员意识到要为异步计算的执行环境设置私有值,你可以把它们当作与 asyncio
等同的本地线程变量。我一直在跟进 Python-Dev 列表上这些问题的讨论,不过,我怀疑这些讨论虽然很高精尖,但其内容对 99.5% 的 Python 用户没有任何影响。所以,我现在非常感谢 Python 能够致力于向后兼容!
Steve Holden:‘我怀疑这些讨论虽然很高精尖,但其内容对 99.5% 的 Python 用户没有任何影响。’
我对 Python 引入的注释功能也有类似的感觉,只不过没那么强烈。这个功能一开始只是可选语言元素,用的多了以后,就产生了一些问题,给标准库等允许注释的地方带来了很多压力。
我希望新手在学习 Python 时,完全不必考虑这些功能,打好基础后再去了解也不迟,并且这些功能最好与 Python 的其它功能完全独立,但这只是我自己一厢情愿的想法。
从好的方面看,f-strings 这种简化开发的功能受到了 Python 3 社区热烈欢迎,很多新代码已经不再支持 Python 3.5,仅仅就是因为 f-strings。和以前一样,Dave Beazley 发现可以用 f-strings 做很多黑操作,非常有趣。
Driscoll:如何才能解决这些问题呢?
Holden:我不确定是否有必要花时间去解决这些问题,更重要的是不能安于现状,继续努力改进这门语言,让社区变得更强大、更多样化。PyCon 大会已经证明了技术社区可以实现自我管理。
Driscoll:据我所知,您曾当过 Python 软件基金会与 PyCon 大会的主席,您是怎么当选的?
Holden:2002 年,我第一次,也是最后一次参加 Python 国际大会。大会的内容很好,但它是由商业组织运行的,搞了很多商业活动,只有预算充足的人才适合参与。顺便说一句,这个商业组织后来聘用了 Guido。
开源项目初期这么做虽说无可厚非,但要是想让 Python 变得更流行,这类大会需要吸引更多人,包括我每天在 comp.lang.python 与之交流的那些人。
Steve Holden:‘要是想让 Python 变得更流行,这类大会需要吸引更多的人。’
我很幸运,完全是碰巧搬到了弗吉尼亚州,离 Guido、Jeremy Hylton、Barry Warsaw、Fred Drake 只有二三十公里,他们就分布在这片区域的不同位置,一起合作开发核心 Python。
此外,还要算上 Tim Peters,他那时住在波士顿,也是 BeOS 公司的员工。这种组合看起来前景光明,所以半年后 BeOS 出问题的时候,给他们打击很大。好在 Zope,就是现在的 Digital Creations,帮他们租了办公室,他们就这样组建了 PythonLabs。
Python大咖谈 - Kenneth Reitz 与 Mike Driscoll
Python大咖谈 - Brett Cannon
Python大咖谈 - Steve Holden
-
Smalltalk,技术圈公认 Smalltalk 是第二个面向对象程序设计语言,也是第一个真正意义上的 IDE。由 Alan Kay、Dan Ingalls、Ted Kaehler、Adele Goldberg 等人于 70 年代初在 Xerox PARC 开发。Smalltalk 对其它众多编程语言起到了极大的推动作用,主要有:Objective-C、Actor、Java、Ruby 等。 ↩