微軟獨家採訪龜叔! 大爆料13個問題,快來看看龜叔的怎麼說!

作爲Python之父的龜叔,從加入微軟到現在,已經有半年的時間了。微軟也是在龜叔入職的半年之際,獨家採訪了龜叔。通過向網友廣泛徵集13個問題,來回答網友們的一些提問。小夥伴趕緊搬好板凳,聽聽龜叔怎麼說吧。

1.Python是如何被創建出來的

龜叔自阿姆斯特朗大學碩士畢業後,加入了CWI研究實驗室,從事的正是編程語言(abc)的開發工作,但是由於缺乏語言的用戶而導致語言最終取消。而後,龜叔加入了分佈式操作系統(amoeba)的研發工作,在研發過程中,龜叔發現利用C語言來進行腳本程序的撰寫非常的不便。
而恰巧項目的leader在這個時間去了硅谷,給了龜叔自由發揮的空間,因此龜叔在聖誕節後,花了三個月的時間研發了一門編程語言,經過檢測後,受到了同事的一致認可,而這門語言,便是Python。
隨着團隊越來越多的使用Python,龜叔決定將python開源。並在usenet社區公佈了Python。一經推廣便獲得巨大成功,龜叔受到了大量的用戶私信,就這樣Python一步步的發展至今。

2.在創建Python之初,是否料想到Python在AI領域獲得廣泛應用?

”oh, No,No,No",重要的事情說三遍,龜叔聽到這個問題後,立刻用三個No表達了否定。
龜叔表示,在Python創建的時候,AI並沒有獲得太多的關注,因爲在60到70年代,AI做出了很多的預測,但是都沒有實現,所以很多人認爲AI已經沒有發展的前景,所以Python在創建之初的目標就是能夠成爲一門優秀的工具語言。


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的後端開發、數據科學這些更爲擅長的領域

對於移動端的應用 開發,龜叔指出確實有一些人在進行着方面的工作,但是Python更適合在桌面或者是服務器的環境中進行開發運行,很多在安卓或者是ios開發中使用Python的人發現,利用Python開發很喫資源。

5.對於新的語言,例如rust,typescript的看法?

至少從理論的角度來說,我是熱愛新的語言的,經常閱讀編程語言教程,但是我不擅長安裝一門語言並編寫程序,我沒有學習過rust,但是我同一些使用過rust進行開發的人聊過天,它看上去是一門很棒的語言,對於一些特定的事情。例如在解決內存分配的問題上,我確信當你在開發一個非常大的應用時,rust在解決內存分配問題上要比c++更優秀,所以我認爲rust是一門非常有趣的語言。

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。

同時龜叔也發現Python對於一些編程小白也是非常友好的,一些做金融交易的團隊也在使用Python進行編程來解決問題。當然在進行Python2到3的轉換時,龜叔的團隊只是考慮到了Python的愛好者,認爲他們都會認爲Python3要好於Python2,但是實際情況有一些區別。
談到這裏,龜叔還不忘指出,自己曾在twitter上指出,Python3到Python4的轉換與Python2到Python3的轉換是完全不同的轉變。
小編自己在學習的過程中,也是發現,Python2到Python3的轉變並不是特別困難,而且在代碼的更迭方面,只需要進行某幾個語法點進行修改即可。

8.目前Python安裝第三方庫的方法,有新方法嗎?

針對於目前Python的依賴庫安裝管理,pip 並不是唯一的安裝方法,而且pip在針對某些第三方庫的安裝問題上,表現的也不是特別完美。龜叔提醒大家,在項目開發中最好是給每一個項目創建新的虛擬環境來避免“dll hell”問題

雖然這樣這並不能完全保證能夠規避“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的訪談後,龜叔意識到微軟依舊想要全職僱傭他。

談到這裏,小編只能感嘆道龜叔不小心就凡爾賽了一把。龜叔入職微軟後,大概花了三四個月的時間讓自己明確工作方向,與喜歡用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個問題,發現龜叔也是一個典型的程序員,除了寫代碼也沒有啥特的愛好,貌似菜鳥哥也喜歡看科幻的,修仙的小說,哈哈!原來我跟龜叔也有一樣的愛好。

好了,今天的分享就到這裏,歡迎大家在留言區吱一聲,你對上面的點評有啥看法,你有啥跟龜叔一樣的愛好。

【菜鳥學Python】累計原創近400篇趣味乾貨(爬蟲,數據分析,算法,面試指南,原創趣味實戰,Python遊戲,機器學習),歡迎一起學Python,交流指正。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章