无码人妻精品一区二区三18禁,影音先锋男人AV橹橹色,污污污污污污www网站免费,日韩成人av无码一区二区三区,欧美性受xxxx狂喷水

開源 – “這是最好的時代,這是最壞的時代”

Jeff Tao

2020-12-27 /

今天一(yi)早,我(wo)(wo)給一(yi)位遠在(zai)(zai)西安還(huan)從未謀面(mian)的(de)(de)(de)程(cheng)序(xu)員(yuan)小鄧發(fa)(fa)出(chu)(chu)了一(yi)份(fen)很(hen)不錯(cuo)的(de)(de)(de) offer。一(yi)周前,他觀看(kan)騰訊開發(fa)(fa)者大會的(de)(de)(de)直播視頻,聽了我(wo)(wo)的(de)(de)(de)演講之后,加(jia)了我(wo)(wo)的(de)(de)(de)微信,并主動告訴我(wo)(wo),很(hen)想加(jia)入濤(tao)思數(shu)據。雖然他畢(bi)業的(de)(de)(de)學校還(huan)有工(gong)作(zuo)的(de)(de)(de)經歷,不是那么靚麗,但我(wo)(wo)一(yi)下看(kan)到了他簡(jian)歷里列的(de)(de)(de) GitHub 地(di)址以及參(can)與的(de)(de)(de)開源項(xiang)目(mu),因此(ci)馬(ma)上進 GitHub 瀏覽他的(de)(de)(de)程(cheng)序(xu),發(fa)(fa)現程(cheng)序(xu)挺漂亮,結構、層次都(dou)很(hen)清晰(xi),代碼(ma)(ma)可(ke)讀性很(hen)強,更讓(rang)我(wo)(wo)驚(jing)訝(ya)的(de)(de)(de)是,用(yong)英文寫的(de)(de)(de)文檔以及注(zhu)釋完全不輸給我(wo)(wo)這(zhe)個在(zai)(zai)美國(guo)留學工(gong)作(zuo) 10 多年的(de)(de)(de)海(hai)歸。我(wo)(wo)立即(ji)讓(rang)另外一(yi)個同事(shi)也(ye)去看(kan)一(yi)下他的(de)(de)(de)代碼(ma)(ma),得出(chu)(chu)的(de)(de)(de)結論是,這(zhe)人很(hen)優秀,即(ji)使遠程(cheng)工(gong)作(zuo),也(ye)值得馬(ma)上錄用(yong)。因此(ci)我(wo)(wo)們(men)馬(ma)上視頻交流,很(hen)快,我(wo)(wo)就定下了錄用(yong)的(de)(de)(de)決定。

如果沒有 GitHub ,沒法翻看他寫的上萬行代碼以及文檔,沒法查看修改記錄,我絕不會考慮錄用一個連面都沒有見過的小伙子,而且招聘時,還是會更傾向于我中國科大的師弟師妹,或有過其他名校就讀和大廠工作經歷的人。開源,改變了我的面試流程,改變了濤思數據,也改變了一個程序員的人生軌跡。

現在(zai)的(de)(de)(de)(de)軟件系統往(wang)往(wang)很大,以大家(jia)熟悉的(de)(de)(de)(de)Linux內(nei)核為例,源(yuan)代碼行數已(yi)經(jing)超(chao)過(guo) 2500 萬(wan)行,文(wen)件超(chao)過(guo) 6 萬(wan)個(ge),參與的(de)(de)(de)(de)開發(fa)者超(chao)過(guo) 2 萬(wan)人(ren)。就連(lian)濤思(si)數據開源(yuan)的(de)(de)(de)(de) TDengine , 一個(ge)看似簡單的(de)(de)(de)(de)物聯(lian)網大數據處理平臺軟件,C/C++ 代碼已(yi)經(jing)超(chao)過(guo)30萬(wan)行,Python測試代碼都已(yi)超(chao)過(guo) 15 萬(wan)行,而(er)且(qie)還會(hui)成倍增(zeng)長。開發(fa)一款軟件,更(geng)多(duo)的(de)(de)(de)(de)是團(tuan)隊協同(tong),而(er)不是單兵作戰。單個(ge)程序(xu)員的(de)(de)(de)(de)貢獻如何(he)(he)體現?如何(he)(he)讓外界(jie)的(de)(de)(de)(de)人(ren)知道并(bing)評(ping)估?對于(yu)閉(bi)源(yuan)軟件來說,這個(ge)價(jia)值判斷問題無從(cong)下手(shou)。但開源(yuan)不同(tong),因(yin)為程序(xu)員寫(xie)的(de)(de)(de)(de)任(ren)何(he)(he)一行代碼,注釋,做的(de)(de)(de)(de)任(ren)何(he)(he)修改都會(hui)被記(ji)錄下來,而(er)且(qie)任(ren)何(he)(he)人(ren)都可以看到(dao)。能(neng)力(li)的(de)(de)(de)(de)高低,貢獻的(de)(de)(de)(de)大小隨時可查。

開源 – “這是最好的時代,這是最壞的時代” - TDengine Database 時序數據庫
TDengine 在 GitHub 上的頁面

開(kai)源給(gei)程序員提(ti)供了(le)一(yi)(yi)(yi)個(ge)展(zhan)現(xian)自己個(ge)人能(neng)力的(de)(de)(de)絕好機會,特別是對于大(da)廠、大(da)系統的(de)(de)(de)開(kai)發者。這個(ge)展(zhan)現(xian),能(neng)讓(rang)大(da)家更加客(ke)觀(guan)地評(ping)價一(yi)(yi)(yi)個(ge)程序員的(de)(de)(de)價值。長期以來,大(da)家更容(rong)易相(xiang)信在(zai)大(da)廠工作(zuo)(zuo)過的(de)(de)(de),雖然他(ta)有可能(neng)從沒(mei)貢(gong)獻過核心代碼,從沒(mei)解決過重大(da)技(ji)術(shu)問題,只(zhi)是一(yi)(yi)(yi)個(ge)濫竽(yu)充數(shu)之(zhi)輩(bei);大(da)家更傾(qing)向(xiang)于相(xiang)信名校畢業的(de)(de)(de),即使(shi)他(ta)早(zao)已停(ting)止學習,只(zhi)是曾經高考(kao)分數(shu)不錯(cuo);大(da)家更容(rong)易相(xiang)信 35 歲以下(xia)的(de)(de)(de)人,不相(xiang)信大(da)齡(ling)程序員依然有很(hen)強的(de)(de)(de)戰斗力。開(kai)源的(de)(de)(de)代碼,能(neng)讓(rang)大(da)家拋棄對教育、年齡(ling)、性(xing)別、經驗、膚色、地域、文化的(de)(de)(de)偏(pian)見,看到(dao)一(yi)(yi)(yi)個(ge)程序員背(bei)后真正的(de)(de)(de)價值,便于組(zu)建團隊(dui),便于協同(tong)作(zuo)(zuo)戰。

開源讓程序員的(de)(de)代(dai)碼(ma)成為了作品,與畫(hua)家(jia)的(de)(de)畫(hua)、音(yin)樂家(jia)的(de)(de)曲子一樣,可以被全球程序員欣賞(shang)、使(shi)用,并傳承。對于閉源的(de)(de)軟件(jian)而(er)言,這是不可能的(de)(de),大(da)(da)家(jia)看(kan)到(dao)的(de)(de)只(zhi)是 UI 或(huo) API ,無法讓人看(kan)到(dao)程序本(ben)身,更(geng)無從欣賞(shang)。你(ni)(ni)(ni)在(zai)微(wei)軟為 Windows 操(cao)作系統開發的(de)(de)核心模(mo)塊,無論設計(ji)得多(duo)么(me)優雅,你(ni)(ni)(ni)在(zai)騰訊為微(wei)信后(hou)臺設計(ji)的(de)(de)消息處理(li)模(mo)塊,無論高并發能力有多(duo)么(me)強悍,都無法讓人欣賞(shang)、驚嘆。但開源之后(hou),一切都變了。只(zhi)要你(ni)(ni)(ni)的(de)(de)代(dai)碼(ma)足夠好,解決了重(zhong)大(da)(da)問題,那一定會成為傳世之作。即使(shi)有瑕疵,后(hou)來者也可以在(zai)你(ni)(ni)(ni)的(de)(de)基礎上修改(gai),但你(ni)(ni)(ni)的(de)(de)名(ming)字永(yong)遠會鐫刻在(zai)代(dai)碼(ma)上,而(er)不會被歷史沖刷掉。

有了作品(pin)(pin)這(zhe)個(ge)(ge)感覺之后(hou),程(cheng)序員會天然的(de)(de)(de)對自己(ji)(ji)的(de)(de)(de)代(dai)碼(ma)產生一(yi)(yi)種(zhong)自豪感,會對代(dai)碼(ma)的(de)(de)(de)質量產生極致的(de)(de)(de)追(zhui)求(qiu),因(yin)(yin)為他不想(xiang)自己(ji)(ji)的(de)(de)(de)代(dai)碼(ma)被(bei)人唾棄,而是被(bei)欣賞。在(zai) 2019 年(nian)(nian) 7 月決定將(jiang) TDengine 開(kai)源(yuan)(yuan)(yuan)之前(qian),濤思數據(ju)團隊花了好幾(ji)(ji)個(ge)(ge)月的(de)(de)(de)時(shi)間整理代(dai)碼(ma),編寫文(wen)檔(dang),目的(de)(de)(de)就(jiu)是不想(xiang)讓(rang)(rang)它過于難看(kan),被(bei)人詬病。不開(kai)源(yuan)(yuan)(yuan)的(de)(de)(de)話,我們根本沒有這(zhe)個(ge)(ge)動(dong)力去做,因(yin)(yin)為用(yong)戶是看(kan)不見的(de)(de)(de)。在(zai) 2019 年(nian)(nian)底啟動(dong) TDengine 2.0 的(de)(de)(de)開(kai)發,更是如此,就(jiu)是想(xiang)讓(rang)(rang) TDengine 的(de)(de)(de)設(she)計與代(dai)碼(ma)更加(jia)優雅(ya),結構(gou)更加(jia)清晰,讓(rang)(rang)其他程(cheng)序員看(kan)的(de)(de)(de)時(shi)候,能享受到(dao)一(yi)(yi)種(zhong)快樂和(he)美(mei)感。3 個(ge)(ge)月前(qian),我花了幾(ji)(ji)天時(shi)間動(dong)手為 TDengine 寫了一(yi)(yi)個(ge)(ge)小模(mo)塊(kuai) tref.c,就(jiu)想(xiang)完美(mei)地解決在(zai)多線(xian)程(cheng)情況下,資源(yuan)(yuan)(yuan)的(de)(de)(de)生命周期管理問題,而且(qie)就(jiu)希望(wang)這(zhe)個(ge)(ge) 500 來行的(de)(de)(de)小程(cheng)序能被(bei)全(quan)球的(de)(de)(de)程(cheng)序員學習(xi)、使用(yong)和(he)改進,不再為多線(xian)程(cheng)問題所煩。如果(guo)不是因(yin)(yin)為開(kai)源(yuan)(yuan)(yuan),沒有會成為作品(pin)(pin)的(de)(de)(de)感覺,我大半就(jiu)是僅僅解決一(yi)(yi)個(ge)(ge)具體(ti)問題而已。

開源 – “這是最好的時代,這是最壞的時代” - TDengine Database 時序數據庫
GitHub 上 tref.c 的一段源代碼

對(dui)(dui)于初入茅廬的(de)(de)(de)(de)程序員而(er)(er)言,參與(yu)(yu)開(kai)源項目,更(geng)是(shi)一(yi)種學習(xi)的(de)(de)(de)(de)機會。不(bu)僅可(ke)以觀摩、學習(xi)絕頂高手的(de)(de)(de)(de)代碼(ma)(ma),更(geng)可(ke)以參與(yu)(yu)其中,貢獻(xian)(xian)一(yi)段代碼(ma)(ma)。自(zi)(zi)己寫(xie)(xie)的(de)(de)(de)(de)代碼(ma)(ma)有(you)問題,一(yi)定會被測(ce)試(shi)出來、被人(ren)指出毛(mao)病,甚至直(zhi)接(jie)被人(ren)修(xiu)改或(huo)拋棄。與(yu)(yu)大俠(xia)直(zhi)接(jie)過招,相(xiang)比閉(bi)門造車(che),相(xiang)比自(zi)(zi)己摸(mo)索(suo),成(cheng)長的(de)(de)(de)(de)速度要快(kuai) N 倍(bei)。而(er)(er)且(qie)參與(yu)(yu)的(de)(de)(de)(de)方式(shi)有(you)很(hen)多(duo)種,除直(zhi)接(jie)貢獻(xian)(xian)產(chan)品(pin)代碼(ma)(ma)外,還可(ke)以貢獻(xian)(xian)測(ce)試(shi)例(li)(li)、測(ce)試(shi)代碼(ma)(ma),貢獻(xian)(xian)文檔,貢獻(xian)(xian)使用(yong)案例(li)(li)等。就象TDengine,測(ce)試(shi)代碼(ma)(ma)的(de)(de)(de)(de)行數將會遠(yuan)超過產(chan)品(pin)本(ben)身(shen)的(de)(de)(de)(de)代碼(ma)(ma)行數,而(er)(er)且(qie)對(dui)(dui)技(ji)術的(de)(de)(de)(de)要求一(yi)點都不(bu)亞于產(chan)品(pin)本(ben)身(shen)。我的(de)(de)(de)(de)第一(yi)行程序是(shi) 1984 年(nian)寫(xie)(xie)下的(de)(de)(de)(de),當(dang)時(shi)正讀高中一(yi)年(nian)級(ji),只能(neng)看到(dao)譚浩(hao)強編寫(xie)(xie)的(de)(de)(de)(de)《BASIC 語言程序》這本(ben)書(shu),書(shu)里盡是(shi)一(yi)些簡單得不(bu)能(neng)再(zai)簡單的(de)(de)(de)(de)程序。如果當(dang)時(shi)就能(neng)像現在(zai)這樣訪問無數優秀的(de)(de)(de)(de)開(kai)源代碼(ma)(ma),對(dui)(dui)于一(yi)個如饑似渴的(de)(de)(de)(de)學生而(er)(er)言,那無疑找到(dao)了世界上最好(hao)的(de)(de)(de)(de)課本(ben)和老師。

對于 90 后 00 后程(cheng)序(xu)員(yuan)而言,開源,讓他(ta)們趕(gan)上了(le)程(cheng)序(xu)員(yuan)前所(suo)未有的(de)黃金時(shi)代(dai)。對于我(wo)(wo)(wo)這個 52 歲的(de)大(da)(da)齡程(cheng)序(xu)員(yuan)而言,仍然是(shi)趕(gan)上了(le)黃金時(shi)代(dai),因(yin)為可以依靠自己(ji)的(de)實力(li)證明,編程(cheng)沒有年齡的(de)限制,而且仍大(da)(da)有用(yong)武之(zhi)地(di)。真(zhen)心的(de)希(xi)望(wang),三十年之(zhi)后,還有人在(zai)看在(zai)用(yong)我(wo)(wo)(wo)寫的(de)代(dai)碼,而且我(wo)(wo)(wo)自己(ji)還能給 TDengine 貢獻代(dai)碼,那(nei)才是(shi)我(wo)(wo)(wo)最大(da)(da)的(de)幸福(fu)。

開源 – “這是最好的時代,這是最壞的時代” - TDengine Database 時序數據庫
這臺 Mac 為 TDengine 貢獻了 4 萬多行代碼

“這是最好的時代”,開源,讓(rang)程(cheng)序員(yuan)的(de)價值(zhi)能更客觀地展現,讓(rang)程(cheng)序員(yuan)有了屬于自(zi)己的(de)作品,讓(rang)程(cheng)序員(yuan)去(qu)追(zhui)求(qiu)極致,有動力去(qu)打磨作品,讓(rang)其成(cheng)為傳世之(zhi)作。對于真正的(de)程(cheng)序員(yuan)而言,毫無疑問,這是最好的(de)時代。

“這是最壞的時代”,開源,讓濫竽充數的(de)程序員(yuan)無所遁形,能傳承下(xia)去的(de)一定是精美的(de)作品,不再(zai)會有劣幣驅逐良幣之說。對于(yu)靠(kao)拍、靠(kao)混,依(yi)賴炫酷的(de) PPT 和報告升遷的(de)程序員(yuan)而言,毋庸置疑,這是最壞的(de)時代。

無(wu)論年齡,無(wu)論學歷,無(wu)論是在 BAT 還(huan)是在 startup 工作,  只要你熱愛編程,就一(yi)(yi)定要參(can)與到開(kai)源的浪潮中。無(wu)論你是全職(zhi)加入濤思數據這樣的開(kai)源軟件公司(si),還(huan)是作為(wei)社區貢獻者參(can)與一(yi)(yi)個(ge)開(kai)源項目,只要持續努力,你一(yi)(yi)定會給世界留(liu)下一(yi)(yi)個(ge)印跡,給人類留(liu)下一(yi)(yi)幅作品。

陶建輝

2020 年 12 月 27 日于北京(jing)望(wang)京(jing)