軟體開發究竟是“難”還是“複雜”?

來源:互聯網
上載者:User

我一直的觀點是要對“難”做一點分解。

好比說航空母艦的彈射器,我們造不出來,很“難”與一台機器有一千個螺絲要擰,保證3年中所有螺絲都擰對了,很“難”,

這兩種情境下“難”的含義是不同的。

 

 

軟體開發的難度更多的類似於後者,表現為繁雜,而不是類似於前者表現為“搞不定”或“做不出來”。

總是有人喜歡把問題絕對化,所以這裡補充一句,軟體涵蓋的範疇可以很廣,因此確實有很難搞定的,類似於彈射器的領域,但應該不是主流。

 

 

以前的很多提法,在這樣一種大前提下就變的沒有什麼意義了,比如說:國產作業系統。

當很多公司或組織標榜這類事情的時候,似乎自己更願意認為這是一種技術突破。

但實際上在開源如此發達的今天,這類東西的開發更需要的是組織和市場運作,而非是突破技術屏障。

 

 

由這一點可以推匯出一個很有趣的結論:

既然不體現為一種“搞不定”或“做不出來”式的難度,那麼一幫智商水平並不是非常高的人(或者說並不絕對優秀的人),

老老實實把程式碼檢閱,靜態測試,單元測試這些環節做好,一樣能做出不錯的產品(當然很那輝煌燦爛)。

反過來講就是,在大多數產品開發中,天才是有協助的,但不是絕對必要的。

 

 

這點與這樣一個事實相符:軟體開發的隊伍似乎更加雜牌,什麼專業的都有。

這事兒逆轉過來就不成立。

一個人可以以前是做渦輪機的,中途能夠轉行做軟體開發。

但做了軟體開發的,就很難去做渦輪機。

 

 

如果進一步推導,就會發現這一點對考慮個人成長也很有意義。

單反類相機,鏡頭很難搞,所以介入壁壘比較高,最終導致做單反的就比較賺錢。

電視機這東西,大家都能做,所以介入壁壘比較低,最終導致當初很牛的一些做電視的公司都虧損。

 

軟體開發中,如果“只有你能搞定,別人不太容易搞定”的事情比較少,那麼人員的可替換性就強,

稀缺性就不好,從價值上來看,就不太容易保值。

 

 

反過來講,就是每個人如果想保持一種長久的價值,都要找到屬於自己的一塊“價值高地”。

 

軟體可以依附到很多東西上,比如金融,財務,電商等等。因此“價值高地”還是有一些的。

可以是某個公司專屬的東西,可以是某些專業知識(如:財務等),諸如此類。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.