偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

一年內(nèi)每天向開源貢獻(xiàn)代碼所發(fā)生的事情

移動開發(fā)
每天向開源軟件貢獻(xiàn)代碼的決定,改變了我生活的很多方面。我現(xiàn)在有償參與著開源,在很多項目中交了很多朋友,這提高了我的技能。

我對貢獻(xiàn)代碼的要求比較簡單:

每次貢獻(xiàn)必須有意義,必須有實際影響。我可以提交只有空格的修復(fù),但是它們不應(yīng)該被算作有影響的提交。

它必須是開源的。

早在2013年夏天我就開始了,略早于John Resig,他寫了關(guān)于每天提交代碼的博客,但是我的***次嘗試失敗了。正是他的文章鼓舞了我,告訴我不是一個人在戰(zhàn)斗。

我和John有著同樣的理由:我熱愛業(yè)余項目(side project),但是我不樂意為了完成它們而投入整個周末。有時候,我在周末投入一整夜,但是這幫助不大:去做業(yè)余項目的時間跨度太大了,我經(jīng)常想不起來在做什么以及項目的下一個想法是什么。我總要用很長時間才能重新回到項目上。另外,我不想在周末的兩天里完全忙于業(yè)余項目,因為我想花些時間和朋友在一起,以緩解一直坐在電腦前面的緊張狀況。

我開始每天貢獻(xiàn)代碼的其它原因是,我認(rèn)為這很可能將提高我的技能。

好的方面

改善我的業(yè)余時間管理

我的業(yè)余時間整個計劃發(fā)生了變化。往好了講,我開始計劃和管理我的業(yè)余時間了。在此之前,我沒有真正考慮過工作之外的時間。在完成白天工作之后,我突然(震驚,震驚?。┯辛艘恍I(yè)余時間卻不知道做什么。

技能提高

每天忙于代碼,我沒有看到每天的工作真正地提高了我的技能。由于我在學(xué)Erlang,用Scheme編寫了我的***個程序,我在簡歷里增加了新語言。我仍然在寫Erlang。

我還學(xué)到了,較大型開源項目是如何運作和組織的,以及開源對于公司意味著什么(我甚至可以說,對于每家公司意味著什么,但這需要另一篇博文了)。我不是說,開發(fā)不包含任何開源組件的產(chǎn)品就不賺錢,據(jù)我看來,每個項目都擁有大量的開源組件,盈利并在長期從更好的代碼上獲益,這是有可能的事情。

另外,我在數(shù)不勝數(shù)的知識點上提高了我的知識和技能,列舉一些:解析和詞法分析、分布式計算、架構(gòu)、安全、項目(代碼規(guī)范)之間快速切換、理解代碼以及代碼review。我也提高了軟技能:溝通、團(tuán)隊精神、解決沖突、指導(dǎo)和處理高難度/突發(fā)情況下的問題。

一份新的工作

剛開始時,我有很多自己的小型業(yè)余項目,十分有趣,但是到了某個階段,我感到不開心了,沒人fork,貌似沒人使用。我是唯一的開發(fā)者,我沒有伙伴可以討論解決方案或得到review的途徑,而這是提高代碼和技能的***途徑。

我決定向較大型的項目提交代碼,既然我從0.4版本就在使用node,是一名日常npm用戶,我就向npm提交了一個補丁。Isaac Schlueter審查了我的一個PR,真不錯,這讓我為npm提交了更多的代碼。

npm registry使用CouchDB做數(shù)據(jù)庫,但是我不知道如何使用。我開始把CouchDB文檔翻譯成德語,這樣我就學(xué)會了如何使用CouchDB和如何幫助項目。有一天,我想托管我自己的私有registry,當(dāng)時我的硬盤里有CouchDB源代碼,我不確定為什么registry沒有引導(dǎo)。當(dāng)通讀代碼時,我看到CouchDB有一個JavaScript MVC app,它不是官方發(fā)布的。這一天我開始向CouchDB貢獻(xiàn)代碼,而npm的PR有一堆,我不想再提交了:我不想讓花時間查看的審核人感到太難。我向CouchDB貢獻(xiàn)了更多的代碼,因為他們真是不錯的人們。

有時候,npm有一些與Node.js直接相關(guān)的bug和問題,因此我也向Node.js項目提交代碼。

加入所有這些項目,得到review,與其他很多不同的貢獻(xiàn)者協(xié)作,閱讀其他人寫的大量代碼,審核補丁,和用戶交流,解決他們的問題,實實在在地加強了我的技能。

在2014年,我足夠幸運,得到了一份工作,我因為致力于開源項目CouchDB而獲得了回報。

交新朋友

經(jīng)過在開源技術(shù)社區(qū)的工作,我結(jié)識了大量新朋友。我遇到很多忙于同樣工作的協(xié)作者,還有人在使用我參與的項目。他們大多比我聰明,至少對于我參與的項目來說,我可以說,他們都是非常優(yōu)秀、思維開放的人。

他們就是我在發(fā)送了最初PR之后、還提交了更多補丁的理由。我認(rèn)為,任何人沒有興趣把業(yè)余時間(甚至工作時間)投入到一個充滿敵意的、糟糕的環(huán)境里。

壞的方面

每天貢獻(xiàn)代碼并真正堅持下來,不會一直都順利。我想,大部分讓人郁悶的事情都是那些對開源產(chǎn)品有著古怪期望的人們,他們免費用著人們在業(yè)余時間維護(hù)的產(chǎn)品。

npm里的這個issue是個例子,我過去和Domenic一起在余時間做了大量工作,Domenic也花了大量時間去維護(hù)npm:

結(jié)論

每天向開源軟件貢獻(xiàn)代碼的決定,改變了我生活的很多方面。我現(xiàn)在有償參與著開源,在很多項目中交了很多朋友,這提高了我的技能。

我樂于看到公司支持他們的員工向開源軟件貢獻(xiàn)代碼—他們99.99%都依靠開源軟件,比如,他們的開發(fā)工具,直接應(yīng)用的產(chǎn)品,甚至兩者兼而有之。令人悲哀的是,對于大部分員工來說,在工作時間參與開源軟件是相當(dāng)難的,不是每個人都有足夠的特權(quán)能夠每天花費業(yè)余時間里的1小時參與到開源軟件里。

像Kyle Simpson和Mathias Lafeldt這些人開始了類似的項目,貌似也改變了他們的生活,還有他們看待世界的方式,我對未來充滿著渴望。

責(zé)任編輯:chenqingxiang 來源: 程序人生
相關(guān)推薦

2011-11-03 17:02:00

微軟Samba代碼

2009-06-02 18:11:57

虛擬化IT數(shù)據(jù)中心

2021-06-24 17:50:43

AI 技術(shù)開源

2013-05-20 16:23:31

GoogleGoogle Play

2011-08-04 09:56:13

數(shù)據(jù)中心電網(wǎng)

2025-03-17 01:37:25

2009-06-14 11:56:38

zol

2021-10-13 14:20:23

5G通訊網(wǎng)絡(luò)

2015-04-15 11:10:35

云計算趨勢Forrester預(yù)測

2013-09-02 09:13:04

開源軟件源碼

2018-01-29 12:02:35

人工智能機(jī)器人虛擬現(xiàn)實

2014-09-28 10:26:06

OpenJDK

2023-10-09 13:17:28

2011-05-19 09:27:47

2015-07-01 15:08:56

OpenStack開源社區(qū)代碼貢獻(xiàn)

2021-09-30 09:38:26

微軟Azure積分開源項目

2016-09-29 14:46:42

Mozilla封殺StartSSL

2016-09-25 15:00:48

2019-03-25 05:06:07

物聯(lián)網(wǎng)投資回報IOT

2021-09-08 10:18:31

物聯(lián)網(wǎng)設(shè)備攻擊物聯(lián)網(wǎng)安全
點贊
收藏

51CTO技術(shù)棧公眾號