寫給程序員:我們這一代不是汽車工人

jopen 10年前發布 | 8K 次閱讀 程序員

寫給程序員:我們這一代不是汽車工人

軟件開發圈是個奇怪的圈子。盡管有著低失業率、高薪水和美好前景,顯然一直處于危險和衰退之中,或者迫切需要警醒。有的開發者將最近軟件開發的興旺僅僅看做是未來衰退的前兆,并且開始寫宿命型小說來警示這個即將死去的圈子。

Greg Baugues之前寫過一篇文章《我們這一代的汽車工人》。 他在文中比較了當今的軟件開發者和60年代底特律汽車工人。Baugues的認為取代底特律汽車工人的機器人將會同樣地取代軟件開發者。作為證據,他舉了 一些例子:電子商務的Shopify,在線日志的WordPress,還有信用卡集成的Stripe。盡管競爭越來越激烈,他說軟件開發教育的需求已經爆 發,伴隨著像TreehouseHacker School這樣的公司提供低成本,高相關的課程,讓學生可以在大學四年里用零碎的努力和代價為開發工作做準備:

不要感覺良好。不要被一種語言鎖住。不要過河拆橋。時常磨刀。學習軟技能。建立聽眾。存點錢。人際關系。閱讀。

幾乎在所有的觀點上,Baugues都沒有達到目的。首先,這里組裝(無需技能的手工活)和軟件開發(需要技能的腦力活)有性質上的區別,讓前者自 動化是不可避免的。自動化創造力比自動化組裝困難得多。而且底特律的汽車工人有工會,處于歷史上最好的時期:工業上的功能需求旺盛,并且那時候自動化成本 太高。對軟件開發者兩者都不成立——他們拒絕工會化(為了避免把低端功能進行外包而受損),并且他們的功能不是輕易就能自動化的:它就是自動化本身。

集體的交涉和工會給了汽車工人一個舒適的中產階級的生活。但是最終利潤下降和開始受到全球競爭的沖擊。汽車變得更加安全,易于操作,更高效,更可 靠,更大眾。汽車工人(還有他們的工會)也許料到了全球化,但是汽車工人發現自己在新的世界里還在用老一套規矩。另一方面,軟件開發者從1980年代已經 步入全球化,這也許從第一天起就開始了。他們很清楚他們的工作天然的全球化,他們沒有躲藏在認為自己是在一個有保護的有限的市場里工作的幻想中。所以似乎 Baugues的比較并不公正:不僅軟件開發和汽車制造有質的區別,而且工人缺乏工會代表權,盡管全球競爭激烈,他們還是沉浸在工會的汽車工水平的報酬 中。

但是自動化呢?在輝煌的未來,我們都毫不費力地將API相互連接(顯然沒有報酬),這個怎么樣?這里,Baugues將最近的5年看做是未來50年的藍圖,大聲宣稱軟件開發自動化是既成事實。讓我們來看他給的例子。

WordPress, 免費博客平臺和開源博客軟件,2007年中期騰 飛,現在支持著(據有些統計)將近20%的網頁。Baugues說WordPress能在“15分鐘”里完成過去要“兩個月”做的事,任何為自己或客戶建 立過WordPress站點的人都很清楚WordPress常常是網站現實功能的最小外殼(授權,發布,和標簽)。它把那些網站最開始要做的枯燥的苦活自 動化,無關任何困難的邏輯(那個留給定制的插件)。只發日志是零成本的——只用看看Tumblr就知道了。WordPress的真正價值在于提供成熟的網站框架。有個聲稱說其競爭項目DrupalJoomla可以做得更加令人說服。

Stripe,一個出現在2010年的開發者友好的信用卡API,現在只是聲稱有少量知名度高的客戶。到今天為止,它只是一個在支付處理界那些老牌競爭對手中更便宜,更簡單的選擇。自動化哪去了?類似地,Shopify, 成立于2006年,是一個方便的類WordPress的在線產品銷售平臺。它僅僅是把過去自動化了的——網頁模板,支付,多機托管拼湊到一起。 Stripe和Shopify都不是未來軟件開發自動化的好例子。所以Baugues提到他們想要表明什么還不清楚。這些產品是前一代的改良,更集成,更 用戶友好,但是他們都沒有完全自動化(也不是最軟件即服務(SaaS)的產品),也沒有搶開發者的工作。

寫給程序員:我們這一代不是汽車工人

自動化引起的焦慮和存在的恐懼由來已久,往往誕生于對歷史的無知。在1960年代,倫敦絲綢紡織工積極抗議機器織布機——它可以大范圍地減少對他們 勞務的需求——甚至于要通過法律禁止它。然而,在17世紀中期機器紡織機已經開始取代手工紡織。作為回應,1675年八月,暴亂的紡織工人走上街頭,毀掉 了大批他們能找到的紡織機。

17世紀末期,雨格諾派教徒(法國新教徒)移民進入到紡織工業進一步激起了倫敦紡織工的憤怒,導致他們恐嚇和排斥新來者。幾十年后,在1760年代 晚期,斯皮塔佛德的騷亂由紡織工組織起來,目的是要保持他們在自動化工業和法國競爭面前獲得公平的報酬。騷亂者沒有能夠達成他們的目標,自動化步伐并未減 弱。

19世紀早期,英國紡織工人組成的盧德派聯合來反抗自動化。他們損壞和破壞機械并威脅要采取進一步的暴力。終止于1813年的審判,后來停止抗議 了。從那以后,思想家諸如馬克思,海德格爾,米爾達爾,芒福德,埃呂爾就批判過技術和自動化,然而世界依舊不停地自動化,帶來了增長,穩定和安全還有快速 增長的人口。這不是說自動化天生就是好或者良性,而是說它的效應盡管長遠來看具有毀滅性,總體來說還是正面多余負面。更有意思的是自動化尚未帶來工作簡 單,工時短的理想世界,如果有帶來什么,那就是自動化給工人更大的壓力,讓他們比任何時候都努力工作。

因為Baugues提到了SaaS和互聯網產品,那么只有談談互聯網對軟件開發的影響才算公平。互聯網產業并沒有蠶食自己,而是在不斷提高門檻。十 年前,“網頁開發”意味著懂HTML的應用知識,一點點CSS、Perl和PHP。五年前,它意味著精通HTML和CSS,一些JavaScript,還 有PHP、Ruby、Java或者ASP中任何一門。今天,它意味著HTML和CSS的完全分離(讓設計師去考慮那些),精通PHP、 JavaScript、Python、Ruby或者Java中的至少兩門,還需要熟悉Git、包管理和持續集成這類東西。Web開發者比以前任何時候都做 得多,而且還得不斷地用業內最新的改進和變化去在高可靠性系統的約束和需求之間尋求平衡。他們線下的同行不需要太多重復自我發明。如果說有的話,就是過去 十年已經看到了網頁開發里最具重復性組件的自動化(就像汽車工人的工作)。現在還有程序員會重頭開始寫一個在線商店或者博客嗎?毫無疑問,現在我們有更多 有趣的問題需要解決。

寫給程序員:我們這一代不是汽車工人

Baugues提到的編程學校和學院也忽略了這點。1990年代后期我們已經這樣把它作為一個產業來發展了。計算機科學大量提高招生名額,這個專業 的畢業生享受了數年的高薪。然后市場崩潰,計算機科學招生下降,失業率暴漲,工資也回到他們的正常范圍。那種在計算機科學專業的短期投入值嗎?畢業生發現 他們畢業即失業。更重要的是他們后來有沒有繼續做開發或者是換成別的行業,把編程忘得一干二凈?類似地,如果軟件開發的市場明天崩潰,有十年開發經驗的開 發者轉投別的行業不會發生。而是會有來自“駭客學校”新生產出來的畢業生,他們只參加了3個月的課程學習如何制作Python應用,他們會跑得最快。他們 的知識基礎薄弱——他們不但缺少每個開發者都要經過數年才獲取到的關鍵的經驗知識體系,而且還缺少網頁開發學校或者博客上學不到的計算機科學理論知識。如 果比賽是通過編程教學機構,那今天的軟件開發者沒有什么可擔心的。這是一個沒有入門門檻的領域,新一代不成熟的開發者不但不是威脅,而且是一個巨大的機 會。

自動化不會對軟件產業構成威脅。對于每個封裝某個業務處理的API,還需要寫一個應用程序,適當的時候還需要有支持的API。對于每個履行某種功能 的庫和app,還要有新用法。對于每個需要被自動化的處理系統,還有一個開發者工作等著。今天存在的數量龐大的軟件應該給悲觀者一個暫停的機會 —— 也許有一個嶄新的軟件開發產業正在將舊的產業淘汰,這個產業不會關注諸如支付處理或博客這種乏味的問題,而是旨在用過去二十年中來之不易的成果來解決困難 度以指數級增長的問題。

軟件開發是為數不多的能夠持續提煉自身的產業之一。不像制衣或醫療或汽車業,軟件是難以捉摸且無形。軟件開發者是問題的解決人,他們常用某種很抽象 方式解決問題。它讓一類特別樂觀的人去想那種人才的自動化,并且讓一類特別悲觀的人去認為它永遠這樣。(It takes a special sort of optimism to consider that kind of talent automatable, and a special sort of pessimism to think it will ever be so.)

原文鏈接: Ivan Malopinsky   翻譯: 伯樂在線 - 奇風余谷
譯文鏈接: http://blog.jobbole.com/47588/

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!