為什麼程式設計師們願意在GitHub上開源自己的成果?
從2008年4月10日正式上線到今天,GitHub已經完成了它的第一個十年,正式進入下一個十年。Chris DiBona(Google的開原始碼經理)認為“Git的精髓在於讓所有人的貢獻無縫合並。而GitHub的天才之處,在於理解了Git的精髓。”來一句我們程式設計師們接地氣的話:分享是一種快樂!
拋開“程式碼閉源是否就能賺很多錢”這個話題先不談,我們直接總結一下程式設計師願意在GitHub公開自己的原始碼的幾點主要原因:
1、通過程式碼的展示,提升自己的知名度
先來講一個聞名全球的案例吧。有一家很著名的公司叫37signals,是一間非常小的公司,員工很少,但是在業內卻非常出名。它的出名,很大程度上得益於一次機緣:員工大衛·海納梅爾·韓森在工作的時候,用Ruby寫了一個劃時代的web快速開發框架——Ruby on Rails,其革命性的設計理念,大大的提升了WEB網站的開發效率。37signals選擇了將此專案以開源的方式釋出,在業內引發了轟動效應。
隨著Ruby on Rails的快速躥紅,作為ROR誕生的產房——37signals公司也進入了大眾的視線,並於2008年被《連線》評為十大最值得關注的創業公司,繼而該公司的幾款產品都取得了非常好的銷售業績。在37signals出版的暢銷書《Rework》裡,有一段這樣的文字:最好的大廚都樂於在公共頻道上教授自己的廚藝,這不僅無損大廚的商業利益,反而大大增加了大廚的知名度,對大廚來說這是非常棒的舉措。
我們處在一個技術更新迭代越來越快的行業裡,最可怕的並不是你高超的技術外洩,而是沒有足夠多的人透過你的技術瞭解你,拼技術的同時還要拼知名度,才能雙豐收。
以目前的GitHub而言,它不只是一個簡單的程式碼倉庫,更是程式設計師的社交平臺和炫技舞臺。在這個平臺上展示自己的程式碼,可以讓程式設計師們更快地在行業圈子內提升自己的知名度。當然,如果能夠像大衛·海納梅爾·韓森那樣足夠幸運的話,還可以在業內創造一個屬於自己的傳奇。
2、展示作品,獲得好的工作機會
展示自己的作品,是獲取優秀工作機會的最佳手段之一。在“Talk is cheap,show me the code!”的程式設計師行業裡,尤為如此。
GitHub同時為程式設計師與企業雙方提供了非常便利的平臺。
作為企業僱主,可以通過這個平臺瞭解應聘者的作品,評估其技術實力,判斷是否符合公司的要求。這種把一個程式設計師在GitHub的表現視為人才評估標準的操作,在程式設計師面試中越來越普遍。
作為程式設計師,GitHub上的關注數、星數、fork數量等資料,在一定程度上證明了你的程式設計能力是否出色,你的技術理念是否為更多的人所理解、贊同。越是在GitHub上受歡迎的程式設計師,越會被優秀的僱主青睞。
因此,這種現象,也進一步激勵了程式設計師在GitHub上努力展示自己,使得開源氛圍更加濃厚。
3、開原始碼,利己利人
Adobe公佈了Photoshop 1.0的原始碼,這些程式碼對Adobe已經沒有太多價值了,不如公開出來,供其他程式設計師們觀瞻學習,同時還能為自己帶來一點新聞性和關注度;Linux之父林納斯為了一個非常“自私”的目的——能夠有一個適合自用的免費作業系統,便把Linux的核心開源了,讓全世界的感興趣的人一起來對Linux進行維護。
所有的程式設計師在學習程式設計、解決BUG、交流心得的過程中,無可避免的會用到別人的勞動成果,同時也會幫別人去解決問題,這就形成了一個利己利人的生態。在這個生態中,所有的程式設計師都無需重複的造輪子,大家在一個開源共享的氛圍中付出,在付出中享用所有的產出成果,在享用成果中不斷的再創造,從而形成一個良性迴圈的利己利人生態,所有人都能在這個生態中收益。
4、練習技能的同時結交業內朋友
前面我們說過,GitHub可以是程式設計師的社交平臺和炫技舞臺。在這裡,會有眾多的技術大牛出沒。也許平時很難有機會與他們接觸,但通過GitHub這個平臺,自己的作品將有可能得到技術大牛的點評及建議,幫助自己快速提升技能;同時,還可以與其他程式設計師交流BUG解決經經驗以及需求實現等專業問題,從而產生聯絡,建立起屬於程式設計師的社交圈。
在程式設計師的世界裡炫技簡單粗暴,每當他們寫出自認為很牛的程式,他們就迫切需要一個渠道來展示自己的才華,部落格、論壇都可以成為他們的陣地,而Github等開源論壇則漸漸成為主戰場。在程式設計師看來只有優秀的完整的程式碼才是有靈魂的,不懂程式的人都是麻瓜,這可能也是GitHub如此成功的一個重要原因。對於程式設計師極客來說,程式碼比言語更能讓對方產生共鳴。
5、如果你願意,也能賺一點錢
吹個牛,雖說我們程式設計師不差錢(正確讀音:qian er),但是有錢可收,總不是一件壞事。如果是非常好的開源專案,在GitHub能引來相當好的流量,並且是與專案相關的精準流量,所以你懂的,適當做些廣告是可以額外帶來一些收入的。
(圖片截自GitHub,中國最火的開源專案VUE.js頁面,就展示了不少贊助商的內容。)
所以,在GitHub上展示自己的作品,已經是一個優秀程式設計師的標準操作,這或許能帶來很多比賺錢更重要的東西。當然關乎專案發展最核心、最關鍵的技術和機密,應該還是很少會有人在GitHub上進行展示的。
相關文章
- 為什麼IT程式設計師都不願意重構程式碼?程式設計師
- 程式設計師為什麼要高薪?看完讓你勇於為自己開價程式設計師高薪
- 程式設計師們,覺得自己最興奮是什麼時候?程式設計師
- Reviewbot 開源 | 為什麼我們要打造自己的程式碼審查服務?View
- 為什麼有人願意在Steam“虧錢”倒賣遊戲?遊戲
- 程式設計師們,還在掙扎著上不了github嗎程式設計師Github
- 程式設計師工資高,但為什麼越來越多的人都不再願意做程式設計師呢?程式設計師
- 女程式設計師,為什麼比男程式設計師少???程式設計師
- 程式設計師,為什麼如此迷茫?程式設計師
- 如何確定自己是否適合做程式設計師?程式設計師的成長需要什麼?程式設計師
- 程式設計師你為什麼這麼累?程式設計師
- 你們以為的女程式設計師程式設計師
- 1024為什麼是程式設計師日程式設計師
- 為什麼程式設計師在學習程式設計的時候什麼都記不住?程式設計師
- Java程式設計師修煉之路(一)我們為什麼選擇JavaJava程式設計師
- 為什麼我更願意在RPG遊戲裡做支線任務?遊戲
- 你想成為什麼級別的程式設計師?程式設計師
- 為什麼要成為「無敵」程式設計師?程式設計師
- 為什麼成為一名程式設計師?程式設計師
- 【1024程式設計師節】為什麼有些程式設計師下班比你早?程式設計師
- 程式設計師收入那麼高,為什麼卻從不見他們炫富?程式設計師
- 中國程式設計師為什麼要跳槽?程式設計師
- 程式設計師為什麼千萬不要瞎努力?程式設計師
- 程式設計師壓力那麼大,為什麼還要選擇做程式設計師程式設計師
- 《程式碼大全》程式設計師們怎樣花費自己的時間程式設計師
- 作為程式設計師,你的夢想是什麼?程式設計師
- 我為什麼不要30歲以上的程式設計師?程式設計師
- Python 之父再度發聲:我們能為中國的“996”程式設計師做什麼?Python996程式設計師
- Python之父再發聲:我們能為中國的“996”程式設計師做什麼?Python996程式設計師
- 很多程式設計師程式設計時都戴耳機?他們在聽什麼程式設計師
- 你為什麼成為一名程式設計師?程式設計師
- 為什麼程式設計師千萬不要重寫程式碼?程式設計師
- 幽默:當程式設計師不想解釋他們做了什麼程式設計師
- 【1024程式設計師節】程式設計師,你學程式設計的初衷是什麼?程式設計師
- 不能去BAT時,為什麼很多程式設計師寧願去攜程58宜信,都不去華為BAT程式設計師
- 35歲以上的程式設計師們,後來都幹什麼去了?程式設計師
- 程式設計師的悲哀是什麼?程式設計師
- 為什麼高階程式設計師討厭程式設計面試? - Adam程式設計師面試