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