人月神話很多年前看過一遍渴杆,一直覺得只是神神叨叨炫耀新詞的湊字書籍挠羔。實際上也確實中文翻譯不咋滴墓陈,非科班專業(yè)的還是棄了吧恶守。最近翻出來又看了一遍,書中還是有很多前瞻性部分贡必。
? ? ? ?首先個人覺得這并不是一本項目管理書籍兔港,而且前60%的內(nèi)容早已經(jīng)過時。而后面的“再論銀彈”和“20年后”的反思內(nèi)容更有閱讀價值赊级。
? ? ? 書中提到的很多研發(fā)過程:合理的進度安排押框、精干的外科手術隊伍、概念設計和實現(xiàn)分離理逊、組織架構橡伞、角色的劃分、項目文檔晋被、有效溝通等等兑徘,這些內(nèi)容并沒有特別的新意,很多項目管理的書籍都有介紹羡洛。然后20年后軟件工程后期也確實沒有發(fā)明能夠量產(chǎn)代碼的途徑(即所謂的銀彈)挂脑,也許未來能夠通過AI自動編寫代碼。引用書中的一句話:
不變只是愿望欲侮,變化才是永恒崭闲。There is nothing in this world constant but inconstancy.
雖然沒有銀彈,還是需要吃飯威蕉。后期軟件行業(yè)也確實出現(xiàn)了很多提高生產(chǎn)效率的手段刁俭。
工程類:無法解耦事務之間強關聯(lián),導致項目無法分解為不需要溝通的子任務(比如人機博弈韧涨,a和b不可以同時下子牍戚。又比如裝修房子,刷瓷磚虑粥、鋪地板如孝、油漆進家具的順序并不能顛倒)。復雜的項目無法通過增加人力進行縮短時間娩贷。敏捷項目管理的出現(xiàn)實際上也是任務分解的一種并行第晰,將系統(tǒng)分解為多個敏捷項目。敏捷項目分解為多個不需要溝通的子任務,達到多次交付茁瘦、縮短上線時間罗岖、及時驗證修改的目的。持續(xù)構建中自動化測試和每日構建也是同樣的方法腹躁,在不是所有事務都可以分解的情況下桑包。可以對能分解的任務多次重復執(zhí)行達到提高整體效率結果纺非。
編程方法:XP變成的結對編程后哑了,編程方法沒有特別好的辦法。恩烧颖,最鼓勵師非常流行:)弱左。目前很多研發(fā)人員都要求性別比例協(xié)調,沒有具體統(tǒng)計過是否確實有提高炕淮。
編程語言:面向對象成為趨勢拆火,而且分化比較嚴重,各自的地盤都有各自的老大涂圆。服務器server端java一統(tǒng)江湖们镜,前端node異軍突起。Android使用java润歉,開發(fā)ios使用Swift也發(fā)展到了3.0模狭。
交付模式:一次性做到位上線這種開發(fā)模式幾乎銷聲匿跡,迭代開發(fā)成為趨勢踩衩。
人機交互:圖形界面(WIN10, MAC OS)達到巔峰后嚼鹉,返璞歸真的windows開始融合linux shell。
至今很多程序員依賴習慣于VIM/EMACS鍵盤流驱富。APP的出現(xiàn)锚赤,人機交互的重點轉移到移動端。后面人工智能的出現(xiàn)褐鸥,也許會切換到智能端线脚。
生產(chǎn)效率:專注質量,就可以提高效率以及成為業(yè)界共識晶疼。
環(huán)境:虛擬化技術成為常態(tài)酒贬,程序員沒有了束縛又憨。集群翠霍、大數(shù)據(jù)、大流量蠢莺、大帶寬寒匙、運算能力、內(nèi)存空間一切制約生產(chǎn)力的資源充分釋放。云可以讓五分鐘內(nèi)啟用近百臺的集群成為現(xiàn)實锄弱、各種復雜的操作系統(tǒng)考蕾、數(shù)據(jù)庫、硬件昂貴的集群会宪、各個地域的數(shù)據(jù)中心肖卧。只要預算充足分分鐘搞定。
協(xié)作模式:再沒有小黑屋存在的必要掸鹅,無國界的協(xié)作塞帐。一份代碼任務分包給世界各地的開發(fā)人員,只要語言相同每天都可以一起晨會巍沙。就像書中所說的“沒有‘交流’就沒有交流的結果‘組織’”葵姥。互聯(lián)網(wǎng)的存在讓交流無處不在句携,無國界的代碼組織出現(xiàn)榔幸。
處理沖突:C/S架構的單點配置管理,轉變?yōu)榉植际降呐渲霉芾戆怠6鄬σ坏奶幚矸绞睫D變?yōu)槎鄬Χ嗟奶幚怼?/p>
公開透明度:WIKI和社區(qū)github的出現(xiàn)削咆,程序員可以自由的交流和分享問題解決的結果、分享代碼蠢笋。
編譯/鏈接:編譯器态辛、解釋器,編譯器沒能替換掉解釋器挺尿,移動互聯(lián)網(wǎng)讓解釋器更加流行奏黑。各大瀏覽器分分比拼js執(zhí)行效率。
框架/跨平臺:框架變的越來越豐富编矾,選擇更多熟史。跨平臺追求的不再是解決方案而是快速實現(xiàn)窄俏。