国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

[心得分享] 我在 GitHub 上學習開源

legendmohe / 1876人閱讀

摘要:從開始到結束大約花了個月的時間,前輩也已經離職了。是一個聊天室,會自動整合,任何的動向都會紀錄在內,讓所有人進入一個獨立的空間討論問題。自己也嘗試丟了詢問項目開發進度,當然也沒得到任何回應。以上是我在上學習開源的經驗分享。

先祝給位圣誕節快樂!

文章拖了將近一年的時間,我想是時候可以把兩年多在 GitHub 開源的經驗分享給大家,雖然不及神人級的開發者,但我始終相信,分享、自由、開放、討論和開發者是開源的核心精神。

如果你不知道什么是 GitHub,但多少應該也知道 Bitbucket, CodePlex, Google Code, GitCafe 等等,就先假設大家都知道吧~

先說聲抱歉,也許用詞上大家可能不太習慣,再請大家提出修正并給予建議。

文長,對著電腦的各位,進入正題前,泡一泡咖啡提提神!

[ 接觸 GitHub ]

N 年前聽教授介紹開源有多厲害,國外高手都是怎么玩開源項目的,就從那個時候開始,接觸了 GitHub。除了 GitHub 你還可以選擇國產 GitCafe,用過 GitHub 都應該可以感受到,大眾還是較為喜歡 GitHub,不論是 UI/UX、效率還是社群,GitHub 還是擁有極大的優勢。

開始的時候玩一玩就立馬上手,根本就是快快樂樂學 Git/GitHub,透過 GitHub 才慢慢了解 Git。一開始使用 GitHub 提供的 GitHub Desktop 來 commit push,但后來好像 bug 很多,這時就開始接觸 command line (cmd),就一直用到現在,現在已經回不去 GUI 了。

有付費買過 GitHub 私人空間的人和公司其實不少,但費用也不便宜。還記得之前在公司直接用 GitHub Importer 把整個公司項目復制一份到 GitHub 上,不費吹灰之力就完成了,如果你的項目是 svn,轉換過去 git 也是沒有問題的!

[ 前輩 ]

兩年前自己很嫩(現在還是很嫩),前輩開始教我多學習別人的開源項目、學習模仿等等的,到現在我還是恨感激這位前輩,沒有他推我一把,我可能就沒繼續開源下去了。看了幾個星期后,前輩讓我開一個項目,剛好公司網站是使用 AngularJS 當前端架構開發,那就寫一個前端驗證工具吧。定義需求、規則、功能,再來定義最重要的 SPEC,接著開始寫主要模組,其中當然少不了被前輩叮說這怎么這樣寫等等之類的。

我還記得很清楚,前輩說:那開始寫測試吧,寫測試的時間是寫模組的兩倍時間哦!問題是,我怎么知道該如何寫測試,而且是該死的 AngularJS,哪懂什么 protractor,由一堆什么 BDD/TDD, JUnit, QUnit, Jasmine, Mocha 的。就直接模仿了前輩的程式,也終于把完整的測試給寫出來了。從開始到結束大約花了3個月的時間,前輩也已經離職了。大致初步功能也完成了,DEMO 頁面也寫好了,就立馬開源,這里簡稱 A-V!

不要懷疑,前輩是個牛人,所以我非常的辛運!

[ N4J ]

其實在 A-V 出來之前,我只會 jQuery,正在學習 jQuery 寫第三方套件的時候開發了 N4J 的前端工具,N4J 是純粹學習用的,學習如何使用 GitHub、結構以及書寫文件。還記得自己寫得很開心,多年回去看還記得那時候的興奮,后來畢業后也用 N4J 順利拿到了聘書,畢業后就馬上就業。

[ A-V ]

先說說 A-V 目前的狀況,有 2xx commits、1x releases、2x contributors,比起大型項目這個數字沒什么,但對我來說,這些數字都是一個肯定,一個成就,我想這是開源帶給我的好處之一,也是讓我持續投入時間的原因。

完成第一個版本后就馬上上線了,寫過程式的人都知道,這時候就會出現上線臭蟲,版本 1.0.5, 1.0.6, 1.1.0 后,才開始慢慢穩定下來。

很快的,我試著在各論壇發表自己的作品,也包括中國的一些社群,分享自己這幾個月下來的成果,但很可惜回應我的人沒有很多,也許是作品沒有爆炸性,畢竟只是個前端驗證工具。其實不免有點小小的失望,沒有人討論,沒有任何回饋。但有一點值得注意的是,AngularJS 在這方面還沒有太多相關的套件和討論,所以我算是進入了對的時間點。

幾個月下來,我持續開發、增加功能、把程式寫得更好,來了第一個 issue,后來也陸續來了幾個,應該是我之前在某個論壇發文,有人看到進來給我意見。當然我就立即回覆謝謝他們的提議,馬上修改或者問說有什么建議等等之類的。因為有人看到,star 了過后就會更多人看到,甚至有人開始丟 PR 給我,在這里我學到,有人丟 PR 給你,你一定要接受,除非他的程式充滿問題,但也不能馬上拒絕,要提出自己的理由決定是否要對方修改還是繼續討論下去。其實我在別人的開源項目也是如此,丟了一個 PR,幾天內沒有人回覆會覺得很傷心,但一旦被接受或者回覆,心理會很開心,太棒了,被接受了!這是一種被肯定,支持的動作。所以只要有人丟 PR 我大部分都會接受。

接下來的幾個月,更多的 issue 更多的 PR,一個人無法承擔所有的問題,所以很多我回覆后就沒有繼續了,一旦有時間可能是一個月后,才有時間回來看到底發生什么問題,就這樣慢慢把 bug 修復。還記得有一次,有個 issue 幾個月下來都解不了,某天晚上到了咖啡廳坐下,瞬間就解掉了,這一定要上一個新標簽說 “fix feature or major improvement”,其實這是開發開源的小確幸,只有你知道發生了什么事,即使你公告了你修復這個功能,會理你的人沒有多少。

中間當然有停下的時候,完全沒有任何聲音自己也沒動力繼續開發解 bug,但突然有人丟了一個 bug 或者 PR 過后,又會瞬間熱血起來,不修掉不行的那種感覺,修掉后會很開心,然后又會安靜一陣子。大概就是這樣來來回回的狀況。

當然如果你的項目是那種爆炸性的,比如說 pageres、express、awesome,不會是以上的故事

前幾個月,因為自覺 A-V 掉入了谷底,很久沒有更新也沒有人問說進度,開了一個 issue “Looking for Collaborators”,自以為會有人自告奮勇的說:“我來”,結果一個都沒有。在這里我學習到的是,開源項目,就是要讓他慢慢的醞釀,果然某一天有人丟了個PR 幾乎大改了我整個架構,改著改著他的興趣就來了,我就問他說要不要當 Collaborator,他也就馬上說好。后來我們也開了個Slack 群組,討論著 A-V 的開發。也許有人覺得這沒什么,但是這種與網友一起奮斗,討論著彼此的專業,這份經歷是工作永遠無法取代的。

以上故事就是不停的 loop,持續了兩年,直到現在不是一個人在開發修 bug,而是有同伴一起討論,彼此給意見,這就是開源的魅力所在。

A-V 過后,陸陸續續展開對開源的興趣,看了很多知識產權的選擇(還是覺得迷迷糊糊的),期間也開了不少的項目,像是 IG、GE、SSS、JSD 等等的,雖然沒有像 A-V 那么精彩,但難免還是有issue 有 PR(真的很珍貴)。

[ A-J ]

A-J 雖然不是我開始的,是我主動寄信給作者要求成為 Collaborator。A-J 屬于爆炸性的項目,現在已經有四位數的星星,通常這類型的項目 issue 和 pr 會多到你接到手軟會想吐,大概會忽略他一陣子,然后一段時間后再來慢慢處理。但是既然是自己主動要求幫忙的,就有責任繼續維護它,開源要學習的其中一點就是-主動,包括提出問題、意見、結果、拒絕,你的任何一個動作都在幫助一個開源項目的進步,這里就真的是責任制了。每個項目都有自己的步調,你也可以不要主動,讓原開發者自行決定項目方向。

[ Gitter ]

其實我覺得 GitHub 提供的 Issue 已經很好用了,整個項目的討論都能在 Issue Comment 完成,有必要還能互相關聯,甚至下標簽來整理 Issue 分類。但有時候不是所有人都喜歡在 Issue 問問題,也有可能擔心問到重復的問題。

如果你的項目很大,你可以建議大家到 stackoverflow/segmentfault/irc 尋找問題,但對于比較小的項目,可以使用Gitter。 Gitter 是一個聊天室,會自動整合 GitHub,任何的動向都會紀錄在 Gitter 內,讓所有人進入一個獨立的空間討論問題。多一個管道讓大家凝聚,其實多少也能幫助到你,因為一個聊天室里面,大家都能發言,你不回答其他人會幫你回答的。

[ 已死? ]

常常逛 GitHub,你會發現有很多有趣的項目,但看到最新的更新時間,什么!是一年前。這時候就會開始腦補,是不是項目已經沒有在開發了,作者似乎也消失了,有好多 issue 好多 PR 都沒有被接受。自己也嘗試丟了 issue 詢問項目開發進度,當然也沒得到任何回應。偶爾還是會覺得很可惜,這么棒的一個項目是不是被拋棄了。

但是不要氣餒,就因為這是開源,這是一個開放的社群,任何人都有權利查看修改更新(有的是不允許的),先查查看 fork 分支,有時候分支的星星數還會比原本的還要多,再看看 issue 里面有沒有人在討論替代方案。最后一招就是自己 fork 自己改,當然你也可以開一個全新的項目來做一樣的事情。

[ END ]

以上是我在 GitHub 上學習開源的經驗分享。對我來說,滑 GitHub 已經成為我生活中的一部分。打開 GitHub 點擊 Explore 常常會有意想不到的新項目,也是吸收新知識、新趨勢的好地方。

有人說,維護開源項目,就像是開一間公司,你要不停的對他持續開發,對的時機對的功能,持續研究并找尋突破點,公司才能活得久。

原諒我把開源項目的名字都縮寫了,因為這不能是個廣告文,但
不瞞各位,我就是來騙贊的啦,騙星星為其次,再來騙 followers,但我一定會持續開源,增加自己的能力。

不知道大家的開源經驗是什么呢?

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/91580.html

相關文章

  • SpringBoot的學習之路(01):緣起

    摘要:喜歡學習新的技術和實現方案,挑戰難點。第三層直接符合的。遇到的問題,也盡可能的去一起解決,減輕學習上的痛苦。學習完了,就得實戰。當然也有我很多沒有考慮到的,還需繼續學習。在此期間,也可能會有更好,更有趣的想法在其中產生。 showImg(https://segmentfault.com/img/remote/1460000019521851); 有人說,Spring Boot的出現,讓...

    李世贊 評論0 收藏0
  • 免費申請 WebStorm 使用許可 - free JetBrains Open Source li

    摘要:遵守原則對了,在提交表單前會有幾項拷問靈魂的宣言需要勾選。期限提交表單過后就是坐等收郵件了。郵件里說許可證的有效期是一年,到期前會發一個提醒郵件,如果項目還符合要求可以繼續申請使用。 閑聊 步入前端切圖仔行列的我曾多次糾結過「到底使用哪種編輯器寫前端好用?」這樣的問題,前前后后嘗試過 Dreamweaver 、HBuilder 、Sublime Text 、Atom 和現在主要使用的...

    qiangdada 評論0 收藏0
  • 機械轉行前端,半年零基礎自學的心路歷程

    摘要:受上海杰克大大委托,于今晚分享一下本人的自學歷程主題機械轉行前端,半年零基礎自學的心路歷程。所以我就這半年個人自學修行以來的一些感觸和心得方面進行分享。背景介紹內容前工作狀況機械離職經歷心態轉變目標確定大家好,我是,一枚前端萌新。 機械轉行前端,半年零基礎自學的心路歷程 標簽: 轉行 自學 原創:Michael.Lu 277133779@qq .com 轉載注明出處 這是初級群(西安...

    baihe 評論0 收藏0
  • 機械轉行前端,半年零基礎自學的心路歷程

    摘要:受上海杰克大大委托,于今晚分享一下本人的自學歷程主題機械轉行前端,半年零基礎自學的心路歷程。所以我就這半年個人自學修行以來的一些感觸和心得方面進行分享。背景介紹內容前工作狀況機械離職經歷心態轉變目標確定大家好,我是,一枚前端萌新。 機械轉行前端,半年零基礎自學的心路歷程 標簽: 轉行 自學 原創:Michael.Lu 277133779@qq .com 轉載注明出處 這是初級群(西安...

    qc1iu 評論0 收藏0

發表評論

0條評論

legendmohe

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<