Swift團隊把Swift之父氣跑了,網(wǎng)友:Python之父仁慈獨裁模式是王道
本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯(lián)系出處。
蘋果Swift語言、LLVM編譯器之父Chris Lattner的新動向,引起程序員圈關注。
這位編譯器大神現(xiàn)在與Swift核心團隊分道揚鑣、徹底退出管理事務的消息引發(fā)了大量討論。
Lattner在Swift官方論壇自曝,離開的原因是團隊文化“有毒”。
其中特別點出,去年夏天一次視頻會議上他被人侮辱和大喊大叫,而且這已經(jīng)不是第一次了。
此次沖突后,Lattner漸漸退出了Swift的管理和開發(fā)。
反正他本人還有很多興趣和事業(yè)可忙,不如向前看,眼不見為凈。
現(xiàn)在他正忙著籌備新公司Modular.ai,致力于開發(fā)AI編譯器、運行時等基礎設施。
啊這,Swift團隊具體出了什么問題,竟能把大神給氣走了?
“語法糖”惹的禍
Lattner五年前就已不再是蘋果正式員工,先后做過特斯拉自動駕駛軟件VP、谷歌Tensorflow基礎設施主管、SiFive工程總裁。
不過Swift這門親手研發(fā)的編程語言他心里一直放不下,堅持每周參加例會、參與社區(qū)討論,也親自編寫和迭代了許多代碼。
Swift語言逐漸發(fā)展壯大,接替老的Objective-C成為許多公司開發(fā)新iOS應用的首選語言。
但這門語言發(fā)展的方向漸漸與Lattner的理想出現(xiàn)分歧,比如他的設計理念“簡單事物的有效組合”(simple things that compose)就不再流行。
有這種感覺的不止他一人,一些Swift忠實用戶也感到很失望。
我在Swift上投入了很多,2015-2019年都是社區(qū)的活躍成員,看到現(xiàn)在這門語言的發(fā)展方向,我有點難過。
這位老哥主要不爽的是一些語言特性的添加太過隨意和倉促,讓編譯過程不再透明。
實際上,引發(fā)Lattner自曝退出原因的帖子,也是在討論是否添加一個語法糖。
一位開發(fā)者認為,隨意添加語法糖對語言維護者來說不算什么,但帶來的混亂會對語言使用者影響很大。
我不是說這個特性毫無價值,但我不想它被引入成語法糖,這會“折斷語言使用者的脖子”。
隨后,他引用了Lattner本人很早以前就發(fā)表的一段關于語法糖的思考。
Lattner認為一門編程語言的主要功能相當于蓋房子時的“磚”,語法糖相當于填磚縫的“灰漿”。
如果房子主體都蓋好了去填縫沒啥問題。
如果磚還沒擺全就先抹了大量的漿,那整個房子成了用漿蓋起來的,結構不會牢固,以后再想擺磚頭也找不到合適的地放了。
看來這種分歧在Swift社區(qū)由來已久,直到去年夏天那場視頻會議,沖突集中爆發(fā)。
Lattner會議上被人罵了以后休息了一段時間,后來找到團隊管理層談話。
他認為管理層逃避問題、找借口,并明確表示不打算對此采取任何措施。
后來大神決定暫時離開每周會議,只參與論壇討論,反正還有很多別的事業(yè)可忙。
不過他發(fā)表的意見越來越被核心團隊忽視,覺得再這樣下去就是浪費時間了,最終徹底離開。
現(xiàn)在,Swift管理團隊正在嘗試推出新的社區(qū)治理機制來解決問題。
他們打算參考其他編程語言和開源項目的成功經(jīng)驗,重新成立一個專注于語言本身演進迭代的大型工作組,并讓更多社區(qū)成員能參與決策。
對于編程語言社區(qū)究竟應該如何治理,也有網(wǎng)友發(fā)表了自己的觀點。
有人覺得Python之父這種“仁慈的終生獨裁者”模式(BDFL, Benevolent Dictator For Life)才是王道。
Python之父會聽取社區(qū)意見,但是最終自己拍板決定。
這位老哥認為所有不采用BDFL模式的編程語言都會因特性太多變得冗雜。
因為開發(fā)團隊每個成員都想把自己的想要的特性添加進去,特性之間的交互帶來平方級的復雜度,這樣用戶就難受了。
其他網(wǎng)友覺得也有一個例外,Go語言不是由仁慈的獨裁者管理,但團隊始終堅持簡潔的設計理念。
Go語言每個新功能提案都會被仔細權衡和討論,有些用戶覺得更新速度慢的像冰川移動,但我個人挺欣賞這點。
Lattner本人則在Swift官方論壇對此留下了最后一段建議和祝福。
我認為Swift是一種現(xiàn)象級的語言,有成功和長久的前景,但它肯定不應該是一種社區(qū)共同設計的語言,這在立項之初就寫進了章程。
新的機制聽起來有些希望……一個健康和包容的社區(qū)有益于Swift的設計和發(fā)展。
現(xiàn)在創(chuàng)業(yè)AI基礎設施
最后再來介紹一下Lattner現(xiàn)在去忙的新事業(yè)。
Modular.ai,致力于為全世界重構AI基礎設施。
包括編譯器、運行時環(huán)境,為異構計算設計、邊緣和數(shù)據(jù)中心并重,并專注于可用性。
最終構建出模塊化、可組合和分層架構的人工智能。
公司的共同創(chuàng)始人及首席產(chǎn)品官Tim Davis,此前在谷歌團隊參與了TF Lite、 Android ML、NNAPI等項目的編譯器開發(fā)。
新公司正在全球范圍內招聘大量編譯器、運行時、ML Ops和框架方向的開發(fā)者,以及產(chǎn)品經(jīng)理和云計算工程師。