天天看點

與開源的小小情緣 -- 《我和開源的故事》

說起開源,真是說來話長了。

在那個BBS論壇尚可,某度貼吧熱度尚存的年代,最喜歡的事情就是每天打開貼吧,打開各類論壇,看一看新的内容,學習一些知識,但其實當時對于“論壇”這一事物的概念還是比較籠統的。

直到某一天,我結識了 Disucz! 這個當年獨占鳌頭的論壇建站程式。這時其實對“開源”這一概念印象不深,因為使用的虛機提供了較為小白的一鍵部署功能,實際上對于源代碼、環境配置這些内容并不了解。

作為一名小白站長,也是一步一個坑,慢慢從了解 Discuz 的插件、DIY成長起來,這個時候,我接觸到了Discuz的開放源代碼。

因為初入圈子時,開發能力還是比較薄弱,實作功能主要是靠在網絡上搜集一些程式,在成品程式上實作功能。很多程式在使用時需要修改功能時,發現這些代碼并不是完全開放允許你去修改的,亦或是通過一些加密的方式去阻止你,亦或是碰到自己不精通的語言,也就作罷了。

但從接觸到了 Disucz 的開源代碼後發現,原來也會有“敞開”允許你去魔改的程式,原來以前有很多程式被稱為“閉源”,并且在這個時候也學習到了不同的許可證,在許可證内的行為才是符合作者要求的使用行為。也發現了許多作者基于自身需求延展出的Disucz魔改版本。

有很長一段時間,每天做喜歡的事情就是去看 Disucz 官方 Git 下的 Issues 和 PR,看着大佬們今天又修複了什麼新的Bug,Bug是因為什麼而導緻,看着合并的修改越來越多,每一次更新到最新的發行版感覺程式也越來越流暢(然鵝是心理作用)。

總是在圍觀,一直在崇拜,總覺得讨論都變得奢侈,就更不用說提 Issues 甚至 PR 了,當時隻感覺那根本不是當時的我能做到的。

機緣巧合下,在某一次調試時,發現 Disucz 的某項設定可能會導緻某個問題的出現,就嘗試的提了一個 Issues ,也沒有想着說就肯定會是程式的問題,也就算是一次簡單的嘗試。沒有想到,提的 Issues 被大佬們證明的确存在這個問題,看到大佬們在下面的回複其實很激動,但其實也隻是一陣高興,畢竟提一個 Issues 其實并沒有什麼。

但是當我在某一次收到平台的消息提醒時,發現大佬已經針對問題在分支做出了修複,并且送出了 PR 時,那一刻真的感覺到“開源”這件事本身的力量。即便是當時作為一個普通人的我,也能參與到一個大項目當中去,哪怕隻是一個 Issues 或者一個簡單的 PR,這都能讓你感覺到你的一個簡單改動也能同步到全球的所有版本中去,這種奇妙的感受,我想也隻能在“開源”這個偉大的事業中看到吧~

随着時間流逝,現在我也是一名開發者了,自己也開發了一些程式,也投入到了開源中去。在我看來,許多大佬将自己的想法和心血随着上傳到開源平台時,他們就做出了對其它開發者的一份貢獻,無數的開發者看着前人的開源代碼,學習着這些大佬無私奉獻的内容,并将在未來貢獻出自己的代碼,薪火相傳。

或許這才是開源的意義,讓所有人享受平等的資源,共同學習和成長~