微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

Irene181
• 阅读 2280

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

作为Python之父的龟叔,从加入微软到现在,已经有半年的时间了。微软也是在龟叔入职的半年之际,独家采访了龟叔。通过向网友广泛征集13个问题,来回答网友们的一些提问。小伙伴赶紧搬好板凳,听听龟叔怎么说吧。

1.Python是如何被创建出来的

龟叔自阿姆斯特朗大学硕士毕业后,加入了CWI研究实验室,从事的正是编程语言(abc)的开发工作,但是由于缺乏语言的用户而导致语言最终取消。而后,龟叔加入了分布式操作系统(amoeba)的研发工作,在研发过程中,龟叔发现利用C语言来进行脚本程序的撰写非常的不便。

而恰巧项目的leader在这个时间去了硅谷,给了龟叔自由发挥的空间,因此龟叔在圣诞节后,花了三个月的时间研发了一门编程语言,经过检测后,受到了同事的一致认可,而这门语言,便是Python。

随着团队越来越多的使用Python,龟叔决定将python开源。并在usenet社区公布了Python。一经推广便获得巨大成功,龟叔受到了大量的用户私信,就这样Python一步步的发展至今。

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

2.在创建Python之初,是否料想到Python在AI领域获得广泛应用?

”oh, No,No,No",重要的事情说三遍,龟叔听到这个问题后,立刻用三个No表达了否定。

龟叔表示,在Python创建的时候,AI并没有获得太多的关注,因为在60到70年代,AI做出了很多的预测,但是都没有实现,所以很多人认为AI已经没有发展的前景,所以Python在创建之初的目标就是能够成为一门优秀的工具语言。

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

3.对于Python的一些内置函数,2021年会有更新?

对于这一点,龟叔首先指出了几个Python常用的内置函数,例如lambda、map、filter和reduce函数。龟叔简要的介绍了函数的用法,并且提出想要去掉reduce的内置函数,但是这一想法遭到了一些用户的反对。

龟叔很有个性的表示,Python是我写的语言,有本事你自己去写一个语言,在我的语言里,我就是要去除掉reduce。龟叔也坦言,对于Python的更新,更像是一个game-changer,去改变一些Python的使用规则。

4.Python在web开发以及移动端的应用开发应用

“Web开发和移动端的应用开发是不同的事情”。龟叔首先指明了二者是不同的。对于Web的开发,Python是一门非常受欢迎的语言,就像Dropbox的服务器,就是利用Python进行开发。

当然对于Web的前端,则是JavaScript语言。当然也有利用Python进行web前端开发的尝试,但是需要用户下载并安装特定浏览器以及会出现各种bug,因此推广失败。

说到这里,龟叔也不忘提及,Java同样也是在做前端,但是也是没有太大的发展。当然还有例如将Python语言翻译成JavaScript语言的尝试,或者是由JavaScript写的Python解释器。

对于这些尝试,龟叔不确定他们是否会有发展。龟叔认为不同语言都有不同的目的,Python应该专注于Web的后端开发、数据科学这些更为擅长的领域

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

对于移动端的应用 开发,龟叔指出确实有一些人在进行着方面的工作,但是Python更适合在桌面或者是服务器的环境中进行开发运行,很多在安卓或者是ios开发中使用Python的人发现,利用Python开发很吃资源。

5.对于新的语言,例如rust,typescript的看法?

至少从理论的角度来说,我是热爱新的语言的,经常阅读编程语言教程,但是我不擅长安装一门语言并编写程序,我没有学习过rust,但是我同一些使用过rust进行开发的人聊过天,它看上去是一门很棒的语言,对于一些特定的事情。

例如在解决内存分配的问题上,我确信当你在开发一个非常大的应用时,rust在解决内存分配问题上要比c++更优秀,所以我认为rust是一门非常有趣的语言。

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

1).龟叔在给出对于rust语言的表述后,也指出go语言也是非常有趣的语言。在所有的新语言中,go是最为pyhonic的语言。

2).Julia语言在一些细节上同Python非常的类似,但是在一些语法习惯上让习惯Python编程的人很头疼。在龟叔看来,Julia的应用很有局限性,例如无法在web开发中发挥优势

3).至于typescript,龟叔同样表示typescript是非常好的语言,typescript解决了一些Python无法实现的问题,最近,龟叔和它的团队也在借鉴typescript的内容来拓展Python。

短短的一些话,龟叔提及了好几种编程语言,体现出龟叔对于编程语言的喜爱,和深厚的编程功底。

6.对于教学来说,是否应该在学习其他编程语言之前先学习Python

“绝对的,没有任何疑问!当被问道这个问题是,龟叔的回答是如此的干脆利落,没有丝毫的迟疑。龟叔指出,几年之前的发表在acm讨论区的一篇文章就指出越来越多的学校将Python作为编程语言教学的第一门课程。

事实也是如此,无论是国内还是国外,在人工智能如火如荼发展的当下,很多大学都开设了人工智能课程,并且需要学生们具备Python的编程能力。

7.Python2 到Python3的过渡,最应该学习的是什么?

谈到Python2到Python3的过渡,归谁认为这个过程是非常简单的,有些Python2的代码甚至不需要做太多的改变就可以转换到Python3。

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

同时龟叔也发现Python对于一些编程小白也是非常友好的,一些做金融交易的团队也在使用Python进行编程来解决问题。当然在进行Python2到3的转换时,龟叔的团队只是考虑到了Python的爱好者,认为他们都会认为Python3要好于Python2,但是实际情况有一些区别。

谈到这里,龟叔还不忘指出,自己曾在twitter上指出,Python3到Python4的转换与Python2到Python3的转换是完全不同的转变。

小编自己在学习的过程中,也是发现,Python2到Python3的转变并不是特别困难,而且在代码的更迭方面,只需要进行某几个语法点进行修改即可。

8.目前Python安装第三方库的方法,有新方法吗?

针对于目前Python的依赖库安装管理,pip 并不是唯一的安装方法,而且pip在针对某些第三方库的安装问题上,表现的也不是特别完美。龟叔提醒大家,在项目开发中最好是给每一个项目创建新的虚拟环境来避免“dll hell”问题

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

虽然这样这并不能完全保证能够规避“dll hell”问题。特别是针对于做机器学习和数据科学的人,尽管有很多很有用的第三方库,但是不同的开源社区会开发不同的库,在导入这些库时,往往会因为版本不一致而出现错误。

大家在平时的第三方库的安装过程中,相比也会遇到因为版本的不同,而导致程序报错的问题,并且这样的问题,解决起来往往并不是特别轻松。

9.为什么Python语言会被命名为“Python”

谈到Python的命名,龟叔提到了最重要的一点,是因为本人是monty Python(英国的一组超现实幽默表演团体)的超级粉丝,龟叔非常喜欢他们,并跟着他们学习英语。

在很长的一段时间里龟叔都是反对利用蛇来作为Python语言的logo。龟叔还自己己设计的一个logo,logo的内容是16-ton weight(出自monty Python的作品),龟叔自己说因为这是他能够画出的最简单的图画了。

在amoeba工作的时候,团队的人喜欢把每个模块都按照当时流行的TV show进行命名。

而且龟叔并不喜欢以一些科学、工程上的重大事件来命名编程语言,因此他决定从流行文化中来选择命名灵感。对于“Python”的命名,网上的原因总是五花八门,现在Python之父终于给出了最权威的回答。

10.Python未来会支持量子计算吗?

这个问题把龟叔也难住了,龟叔指出自己并不知道Python能够在量子计算领域发挥什么作用,但是龟叔知道有微软的库宣称支持量子计算的加速,是用Python编写的。

11.你在微软工作的内容和职责是什么?

“退休的我觉得太无聊了,当我从dropbox辞职后,我想的是跟我的妻子到处旅游,和朋友聚聚会什么的,但是时间久了我意识到我需要项目,因此我又开始编程,包括Python的改进。

“充满精力的龟叔永远都不愿意停下奋斗的脚步,龟叔为了重新找一份工作,便询问了一下,能够在微软兼职工作。但是当他参加了kevin scott的访谈后,龟叔意识到微软依旧想要全职雇佣他。

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

谈到这里,小编只能感叹道龟叔不小心就凡尔赛了一把。龟叔入职微软后,大概花了三四个月的时间让自己明确工作方向,与喜欢用Python编程的人进行交流,包括机器学习,notebooks,excel等方向。但是龟叔觉得自己宁愿去码代码也不愿意一直同人去交流,所以开始系统的研究自己能够胜任哪些项目。

通过观察,龟叔发现机器学习和Python的流行是相辅相成的,而且他熟悉web服务器的开发,但是对机器学习却知之甚少,所以龟叔开始跟微软的机器学习工程师进行了解,但是发现需要学习很长时间。

无奈龟叔还是回归了老本行,组建团队来提升Python的运行速度。前不久龟叔的团队就发行了Python3.10beta的测试版本,未来还将将会公布Python3.11版本,3.11版本将会在速度上远远超过3.10版本。不得不说,龟叔针对于Python的更迭是无人能比的,也不愧为Python之父

12.Python4 什么时候会发布?

当前,谈论Python4的发布完全是一个笑话“,龟叔诙谐的回答让大家明白,Python4的发布将会是一个遥远的未来。紧接着,龟叔补充道:”我们会在今年的十月份发布3.10版本,然后再一年之后发布3.11版本,然后是3.12 ...的版本。

我们会一直更新Python3的版本。我不能确定Python4会在何时出现,但是我们在以后可能会更改垃圾回收机制,全局的解释器锁也会被更改。

但如果在C语言的拓展上有完全的不兼容,或者是去除掉GIL,那么或许会将Python更改为Python4版本。“通过龟叔的回答,至少让我们明确了,在很长的一段时间里,虽然会有Python版本的不断更迭,但是都不会有Python4的公布

13.个人爱好

龟叔自嘲自己是一个很无趣的人,但是自己喜欢阅读,喜欢阅读科幻小说,喜欢骑自行车。听到龟叔这么多的爱好,小编觉得自己才是一个最无趣的人。

龟叔也很热爱家人,提到自己19岁的儿子时,也是一脸的自豪,并滔滔不绝的讲起自己和儿子在生活中的一些事情。


看完这个13个问题,发现龟叔也是一个典型的程序员,除了写代码也没有啥特的爱好,貌似菜鸟哥也喜欢看科幻的,修仙的小说,哈哈!原来我跟龟叔也有一样的爱好。

好了,今天的分享就到这里,欢迎大家在留言区吱一声,你对上面的点评有啥看法,你有啥跟龟叔一样的爱好。

**-----**------**-----**---**** End **-----**--------**-----**-****

往期精彩文章推荐:

微软独家采访龟叔! 大爆料13个问题,快来看看龟叔的怎么说!

欢迎各位大佬点击链接加入群聊【helloworld开发者社区】:https://jq.qq.com/?_wv=1027&k=mBlk6nzX进群交流IT技术热点。

本文转自 https://mp.weixin.qq.com/s/cV0AZgXVVm6q0fHFCcPRKA,如有侵权,请联系删除。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Karen110 Karen110
3年前
​一篇文章总结一下Python库中关于时间的常见操作
前言本次来总结一下关于Python时间的相关操作,有一个有趣的问题。如果你的业务用不到时间相关的操作,你的业务基本上会一直用不到。但是如果你的业务一旦用到了时间操作,你就会发现,淦,到处都是时间操作。。。所以思来想去,还是总结一下吧,本次会采用类型注解方式。time包importtime时间戳从1970年1月1日00:00:00标准时区诞生到现在
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
3年前
Python之time模块的时间戳、时间字符串格式化与转换
Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。关于时间戳的几个概念时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。时间元组(struct_time),包含9个元素。 time.struct_time(tm_y
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Python 基础知识(一)
1.Python简介1.1、Python介绍     python的创始人为吉多·范罗苏姆(GuidovanRossum)。1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。  (龟叔:2005年加入谷歌至2012年,2013年加
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这