克制挺難的
閱讀本文大概需要 4?分鐘。
大家好,我是站長 polarisxu。
昨天文章談了 chi 這個 Go 框架,Kade 留言說,以為 chi 不會用 go mod,沒想到去年就用了,但它支持的方式是從 v4.1.2 調(diào)到了 v1.5.0,也就是說之前都沒有 go.mod,v1.5.0 開始加上了 go.mod。當(dāng) Go1.16 發(fā)布后,有了 ratract,他立馬將其他所有版本都撤回了。面對社區(qū)的反對意見,他強硬的說:我在這個項目花了幾年時間,盡管許多人不同意,但大家并沒有贊助或付費,你不喜歡,完全可以自己 fork 一份,維護自己的一個版本。
說他固執(zhí)也好,強勢也好,能這樣堅持自己的人應(yīng)該不是太多。
之所以今天談“克制”,是因為看到了兩條消息:
1)考慮要離開 Go 語言,因為泛型計劃正式加入該語言了?油管有一個視頻[1],標題是:You'll be Back (to Go) - Go generics is coming in Go 1.18

2)Go is not an easy language[2],文章作者強調(diào),Simple != Easy。
加之昨天的文章和這段時間學(xué)習(xí) Rust,我發(fā)現(xiàn)做任何事情,想要克制挺難的。
記得 Go 剛出來時,源文件不支持 UTF-8 帶 BOM,國內(nèi)有一哥們給官方提了一個 patch,結(jié)果被 Rob 拒了,這哥們一氣之下,離開了 Go 陣營,還發(fā)了一篇長長的文章,說 Go Team 固執(zhí)、獨裁。UTF-8 是 Rob 和 Ken 發(fā)明的,他們有話語權(quán)??墒?,行業(yè),特別是 Windows 陣營的,UTF-8 默認帶 BOM。于是乎,現(xiàn)在 Go 源碼也支持帶 BOM 了。。。Go Team 妥協(xié)了。(不知道 Rob 是否知曉此事~)
Go 一直強調(diào)“大道至簡”,“少即是多”,正因為如此,使得它很適合入門學(xué)習(xí)。然而,別有誤解,入門簡單,不代表精通容易。說它不容易,大概率是說想掌握好它沒那么容易。畢竟是一門編程語言,涉及到的內(nèi)容不少,如果很容易就掌握、精通,程序員門檻是不是也太低了。
在保持簡單、保持少這方面,Go Team 還是很克制的。比如一直沒有增加三元操作符。就泛型而言,社區(qū)呼聲實在太高,而且這個在某些情況下確實是極大提高表現(xiàn)力的,即使這樣,官方也很謹慎,一次次“放鴿子”,確保是一個更好的方案。但依然沒法做到讓所有人滿意,總是有人喜歡有人不喜歡。Go Team 一直在克制,避免 Go 連 Simple 都不是。
喬布斯、馬斯克就是特別能夠堅持原則的人,制定高標準,并嚴格執(zhí)行!
互聯(lián)網(wǎng)做產(chǎn)品,也經(jīng)常講要克制,別什么都要。但有多少人能真正做到?!做加法容易,做減法難。
有自己的原則,并堅持自己的原則,不會輕易受外界的影響,我說這是“克制”,是堅持自己認為是對的(如果真被打臉了,能及時調(diào)整)。這,真的挺難的吧!
你是一個克制的人嗎?還是來看封面圖的?

參考資料
油管有一個視頻: https://www.youtube.com/watch?v=rzo8u03vC7Y
[2]Go is not an easy language: https://www.arp242.net/go-easy.html
歡迎關(guān)注我
