或許你也患上了開發癱瘓症

親愛的開發者們:你們是否因爲自己只精通於三大設備平臺的八種編程語言而惴惴不安?又發現一個JavaScript框架是否會讓你不寒而慄、愁眉苦臉?你是否曾經因爲無法確定哪個雲平臺最適合而把業餘項目一再推遲?

或許你也換上了開發癱瘓症(Developaralysis)。顫抖吧,這個病是治不好的。

如今開發者們可選的技術方案多到令人髮指,讓人眼花繚亂,透不過氣來。過去幾年裏,我拿着別人給我的酬勞,寫過Java、Objective-C、C、C++、Python、Ruby、JavaScript、PHP(對不起,這個也算),用過各種各樣的SQL/鍵值/文件數據存儲技術(MySQL、PostgreSQL、MongoDB、BigTable、Redis、Memcached等等)。我是否自我感覺良好?上帝啊,一點也沒有。我反而感覺到愧疚,因爲我還沒有用過Erlang、Clojure、Rust、Go、C#、Scala、Haskell、Julia、Scheme、Swift或者是OCaml。

top

我就是一名開發癱瘓症患者:軟件產業發展太快、任何一個人都無法跟上,從而對我的意識造成了毀滅性打擊。

上面提到的幾乎任何一種語言,你都會找到無數可選的框架、套件和庫——看得頭都要爆炸了。如今僅僅是把JavaScript的框架和庫的所有排列認真評估一遍就要花上幾個月的時間。另外,你知道Ruby語言有多少種gem包嗎?有多少種iOS框架嗎?有多少種NewSQL或NoSQL的數據庫技術嗎?更不用說從HadoopSpark與Google Dataflow中進行選擇了,究竟是用Avro,還是Thrift,還是協議緩衝區,等等,等等……

還好,移動領域已經簡化到了Android、iOS兩大壟斷平臺——儘管也隱藏着一些交叉代替方案,比如Xarmarin或者PhoneGap、Sencha這樣的跨平臺HTML技術——但是確定在哪個平臺上部署後端、如何部署又會讓你頭大。我開發過的各個系統部署在Heroku、Amazon Web Services、Google App Engine、Google Compute Engine以及Parse上面……這讓我感覺非常糟糕,因爲我對OpenStack、Force.com、Azure、Appfog一無所知,好多AWS服務我也從來沒有真正用過,說多了都是淚。

I Am Devloper @iamdevloper

2014年編寫簡單網站的步驟:

1.    安裝Node

2.    安裝Bower

3.    選擇CSS框架

4.    選擇敏捷的方法

……

47.    寫幾行HTML代碼

如今的開發者面臨着太多的選擇,以至於使用的許多工具僅僅是用來管理另一堆工具:比如Bundler、Bower、CocoaPods、Pip等等。這些東西太棒了!我完全離不開它們!別高興得太早。你開始使用另一堆工具後,等用到一半的時候你真正理解了它們的內容,你開始覺得這樣的配置還不夠用,你有點想要把它們重寫一遍了……也許再找另一個工具代替……

可悲的是,如今開發者可用的語言、工具、框架以及平臺的多樣性和絕對數量龐大到讓人畏懼。當然沒人會承認這一點。所有人都想裝作精通所有語言的編程大師。然而事實卻是,我們都已經深陷於開發癱瘓症之中無法自拔。

即便收集了各種信息做出了最明智的選擇,結果往往也適得其反。比如說,在項目開始前,你真的花時間分析了所有的可能,克服了由此產生的學習曲線,結果卻被一些用着PHP、Swift這樣易於上手的語言,寫着表情符號變量名的小屁孩搶了市場先機——

——不過另一方面,如果你選擇使用Swift和PHP的話,你就會生活在無休止的恐懼之中,擔心一些C#/Haskell程序員高手很快就會做出更好的產品幾百你,就像保羅·格拉漢姆(Paul Graham)很多年前用Lisp語言編寫Viaweb那樣。回憶往昔,他這樣寫道:

當你選擇了技術之後,你必須要忽略其他人在做什麼,全心全意思考怎樣做到最好……事實上我們確實有一個祕密武器……我們開發軟件的速度超出了所有人的想象……我們用一種全是括號的語法奇怪的AI語言編寫出了我們的軟件。

再說回開發癱瘓症。我們應該選擇已經掌握的技術嗎?這樣我們就能立刻動手開發,無需克服學習曲線,但是需要生活在恐懼之中,擔心其他人在以更好、更快、更優雅的方式實現同樣的產品,擔心到了明年我們的技能就跟不上時代、喪失競爭力了。還是應該選擇未知的新技術?因爲我們熱愛學習,更好的工具使用起來不僅更加有趣,而且能夠帶來巨大的競爭優勢……付出的代價則是大量的時間、精力和認知負荷。

這個問題太難回答了!不存在絕對正確的答案。因此每個月都是開發癱瘓症發作月。我馬上會做好五顏六色、閃閃發光的絲帶給你們佩戴,只要等我選好用哪種3D打印機、哪種微控制器、哪種LED軟件、哪種無人機系統就行了。恐怕要麻煩你們期待很久很久了。

翻譯:顧秋實

發佈了67 篇原創文章 · 獲贊 31 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章