Go語言是大家的,只有僞愛好者纔會談捨棄

前幾天,InfoQ 在官網上發佈了一篇國外博主(該博主是 Go 語言貢獻者)對 Go 語言的評論文章:Go 語言是谷歌的,而非社區的,觀點有些“消極”。對這篇文章裏的觀點,我來聊聊我的看法。

Go 語言是開源的

對於絕大多數愛好者和開發者而言,這就足夠了。只有那些有過真實貢獻的人才能真正體會到一個編程語言的背後是“君主制”,還是“民主制”,又或是“聯盟制”。但無論如何,這些編程語言都是開源的,並且官方也會在一定程度上尊重其附帶的技術社區。

當前的現實情況是,就算是“君主制”,開源編程語言的創造者也會對社區有足夠的重視。就像 Go 語言和 Python 語言那樣。另外,Java 語言的社區其實是“聯盟制”的,是由一些科技公司實際掌控的。而 Rust 語言的社區纔算是“民主制”的。

Go 語言越來越重視社區了

Go 語言官方團隊在 Google 內部實屬一個很小的團隊。但其成員幾乎個個都是技術大神。即使他們是獨裁的,我們也有理由相信他們會把 Go 語言做得更好。更何況,在 Go 語言團隊歷經數個版本、陸續解決了一些關鍵的功能和性能問題之後,他們也開始更加關注社區了。

當然了,分歧在所難免,因爲 Go 語言有着它自己的使命、願景和價值觀。況且 Go 語言團隊的精力也是有限的。我目前看到的是,Go 語言團隊已經開始積極地去解決社區最關心的一些問題了,比如:錯誤處理和泛型。

只有僞愛好者纔會談捨棄

如果換個角度,那麼我們就會發現:只有僞愛好者纔會談捨棄。打個比方,我們可以把看球賽的人分爲 4 類,即:真球迷、僞球迷、研究者和旁觀者。真球迷會義無反顧地支持自己熱愛的球隊。即使這支球隊時常在聯賽內墊底,他們也會如此。而僞球迷只是在假裝熱愛。他們通常只會支持他們認爲的那些優秀的球隊以及那些優秀的球員。

只有僞球迷纔會頻繁變換他所支持的球隊。對於研究者來說,他們看的不是比賽,而是比賽背後的戰術、戰略和趨勢。所以對於他們來說,談不上熱愛哪支球隊。而旁觀者只是把看球賽當做消遣,至於看的是籃球賽還是足球賽就沒有那麼重要了。他們想體驗的是另外的東西。

只有真球迷和僞球迷纔會抱怨某某球隊不盡如人意。但不同的是,真球迷在抱怨之後會繼續熱愛和支持,而僞球迷很可能會就此離去。

對於編程愛好者來說也是類似的。如果你是某門編程語言的僞愛好者,那麼你抱怨的就很可能是這門語言沒有某某特性或者沒有朝着你想象的方向發展。並且,在抱怨幾次之後,你很可能就會轉到其他的編程語言陣營。雖然真、僞愛好者之間沒有好壞之分,但這也能在一定程度上影響你在一個技術社區中的地位。僞愛好者常常只能遊走在社區的邊緣。頻繁跳槽者的職業發展通常都不會太好,不是嗎?

另外,如果你想通吃多門編程語言,那麼請把自己培養成研究者,而不是僞愛好者。

過程比結果更重要

在開源社區中,我們應該注重參與的過程而不是參與的結果。我們關注的應該是:通過積極的參與,我們增強了哪些能力,以及得到了哪些機會。如果我們只關注結果,那麼就很可能失望而歸,甚至什麼也得不到。因爲每個社區都有每個社區的制度。而這些制度在某些人的眼裏可能是理所應當的,而在另外一些人眼裏可能就是不可理喻的。這很正常,每個人看問題的角度幾乎都不相同,尤其是在某些情緒的控制下。

所以,死盯着一個點不放只會讓自己更加糾結,就比如“希望 Go 語言能夠增加對自定義泛型的支持”。雖然現在 Go 語言團隊已經開始設計泛型了,但是想當年我看到不少人因此變得怨天尤人,天天不停地叨唸,有的還憤然離去。這完全是沒有必要的,不是嗎?

總之,雖然 Go 語言是 Google 的,但更重要的是,它是一門開源的編程語言。與 Java、Python、Rust、Julia 等語言一樣,它們都是廣大開發者的。起碼我們都可以免費的使用並有機會參與和貢獻。它們只是在社區制度和協作方式上有所不同罷了。

如果能夠站在更高的層次上觀察,我們會發現我們和他們的願望是一致的,那就是:希望它發展得更好並向着更高的山峯挺近。而作爲非核心人員的我們,要做的就是:積極的參與,並藉此增強自己的能力。

我在極客時間有一個《Go語言核心36講》專欄,感興趣同學可以去看看。


對於Go屬於谷歌還是社區,InfoQ發起了一個討論,歡迎在討論區評論留言。我們將在評論區選出三位精彩評論者,送上“InfoQ限量版定製T恤”一件或《Go語言實戰》一本。(活動時間:即日起至6月24日零點,感謝人民郵電出版社贊助書籍)

延伸閱讀:
用 Go 語言進行編程的利與弊
Go 會接替 Java,成爲下一個企業級編程語言嗎?
我是如何把 5 萬行 C++ 代碼移植到 Go 的?
使用 Python 5 年後,我轉向了 Go
再見,Python!你好,Go 語言
捨棄 Python,爲什麼知乎選用 Go 重構推薦系統?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章