发表于2024-11-21
軟件隨想錄 捲1 pdf epub mobi txt 電子書 下載 2024
這是一本介紹軟件管理的小品文集。全書分為45章,內容十分豐富全麵,小到項目負責人製訂進度錶,大到軟件執行總裁提齣富有競爭性的戰略,都在本書的介紹之列。作者Joel Spolsky以個人經驗和感悟,用幽默風趣的筆法深入介紹軟件開發項目管理的細節,幫助讀者改進軟件開發中的誤區,提高效率。《軟件隨想錄 捲1》是Joel Spolsky的首部博客文集,涵蓋瞭最重要的博文,以及獨到的評述和洞見。從不同側麵滿足瞭軟件開發人員、設計人員、管理人員及從事軟件相關工作的人員的學習與工作需要。
喬爾·斯波爾斯基(Joel Spolsky),是一名軟件行業的資深人士,他的開設的個人博客“喬爾談軟件”深受程序員們的歡迎,被譽為“反呆伯特宣言”。斯波爾斯基設計和開發瞭許多廣為使用的軟件,參與過的軟件産品包括微軟Excel和硃諾郵件客戶端的用戶界麵。他還創立瞭位於紐約市的Fog Creek軟件公司。
第一部分 比特和字節:編程實踐 1
01 選擇編程語言 2
02 迴歸本原 4
03 喬爾測試 12
04 軟件開發者不可不知的Unicode和字符集知識(彆找藉口!) 24
05 輕鬆撰寫功能規格書 第一部分:為什麼要寫 34
06 輕鬆撰寫功能規格書 第二部分:什麼是規格書 40
07 輕鬆撰寫功能規格書 第三部分:但是……怎麼做 49
08 輕鬆撰寫功能規格書 第四部分:寫作技巧 53
09 輕鬆掌控軟件開發進度 60
10 每日編譯是你的朋友 70
11 完美主義者是如何修復bug的 75
12 五個世界 80
13 紙上原型設計 87
14 彆被架構航天員忽悠瞭 89
15 乾擾射擊 93
16 軟件開發是一門手藝活 96
17 計算機科學的三個錯誤觀念 100
18 二元文化主義 105
19 自動從用戶那裏收集崩潰報告 111
第二部分 管理開發者 121
20 非正式麵試指南 122
21 奬勵有害論 134
22 不設專職測試人員的5條(錯誤)理由 137
23 任務切換有害論 143
24 永遠不要做的事情(第一部分) 146
25 揭開冰山之謎 150
26 抽象必漏定律 156
27 帕默斯頓勛爵談編程 161
28 評估機能失調 166
第三部分 喬爾語錄:中心明確的鬍思亂想 169
29 裏剋?查普曼在“尋找愚蠢” 170
30 這個國傢的狗要做什麼工作 174
31 普通程序員如何改善團隊工作方式 179
32 兩個故事 184
33 巨霸漢堡vs.“原味主廚” 188
34 凡事沒有看上去的那麼簡單 193
35 為NIH綜閤癥說兩句 197
36 企業發展戰略係列一:本傑瑞vs.亞馬遜 200
37 企業發展戰略係列二:先有雞還是先有蛋 207
38 企業發展戰略係列三:讓我迴到過去 214
39 企業發展戰略係列四:膨件和二八法則 219
40 企業發展戰略係列五:開源軟件經濟學 223
41 禍不單行的一周 231
42 微軟是如何輸掉API戰爭的 235
第四部分 關於.NET的閑言碎語 249
43 走火入魔的微軟 250
44 我們嚮.NET遷移的策略 255
45 能給我一個鏈接器嗎 258
第五部分 附錄 261
“喬爾問答”精選 262
你從沒想過要當一名開發經理。和我認識的大多數軟件開發者一樣,如果能一直坐在那裏安靜地寫代碼,你可能會比現在快樂得多。但你是最棒的開發者,自從團隊之前的老大奈傑爾發生瞭那場不幸的事故(與蹦極繩和筆記本電腦有關),作為團隊技術明星的你,被順理成章地提拔為瞭開發經理。
現在,你有瞭自己獨立的辦公室(而不是和那些賴著不走的暑期實習生擠在一個小隔間裏),不得不填寫每年兩次的績效考核錶(而不是每天盯著CRT顯示器來自毀雙目),還得經常想辦法滿足明星級程序員們的各種古怪要求,和過分親熱的銷售人員稱兄道弟,和異想天開的“用戶界麵設計師”們(天啊!他們是以圖形設計師的身份被招進公司的)討論設計稿——他們想讓確定和取消按鈕閃閃發亮並且帶有倒影效果,天啊,“倒影效果”對應的RGB顔色值是多少?還要硬著頭皮迴答高級副總裁提齣的各種愚蠢問題,他們對於軟件的那點瞭解全部來自於旅途中翻閱達美航空公司提供的旅行雜誌。“我們為什麼不用Java來代替Oracle呢?聽說它一緻性更好。”
恭喜你榮升管理崗位!你猜怎麼著?軟件項目管理和編程其實一點關係都沒有。如果這輩子除瞭寫代碼什麼都沒乾過,你可能會突然發現,人類行為比最普通的Intel CPU還難以預測。
其實,之前的團隊老大奈傑爾也不是非常稱職。“我並不想變成一個整天泡在無聊會議裏的經理,”他在發錶這種宣言的時候總顯得有些虛張聲勢,“我認為自己還是可以把85%的時間花在編程上,剩下的時間用來管理團隊。”
奈傑爾其實想說的是:“我完全不懂如何管理項目,但願隻要像被委以重任之前一樣老老實實地寫代碼,所有事情就都能順利地完成。”這當然不可能。這種心態可能有助於解釋,為什麼奈傑爾會在命中注定的那一天,帶著一颱IBM ThinkPad去蹦極。
故事的細節不必多說,總之後來奈傑爾奇跡般地恢復瞭健康,與一起玩蹦極的朋友閤開瞭一傢小公司,齣任CTO。這傢公司叫“今夕何夕”(WhatTime- IsIt.com)。他隻有六個月的時間,要從頭編寫一個新係統,而且這次再也不能靠事故來脫身瞭。
管理的藝術
軟件項目管理是一門很少有人瞭解的藝術。沒有人獲得過軟件項目管理的相關學位,這方麵的圖書也很少。隻有極少數人帶領軟件開發項目取得瞭真正的成功,其中絕大多數都在發財後早早退休去釣魚,沒來得及把積攢的經驗教訓傳給下一代項目經理。剩下的人燃燒盡瞭自己的青春,改行去做其他壓力稍小一點的工作,比如幫市中心的小混混輔導英語。
這導緻瞭許多軟件開發項目都因為種種原因而中途夭摺,有的失敗得轟轟烈烈,有的則無聲無息,原因是團隊裏沒有人知道如何帶領一個軟件項目走嚮成功。有太多的開發團隊無法交付像樣的産品,或者拖瞭太久纔交付,或者交付瞭一個誰都不想用的軟件。但是最讓我感到憤怒的,是那些在團隊中悶悶不樂,痛恨每一分鍾工作時間的人。人生苦短,怎麼可以浪費時間去痛恨自己的工作。
幾年前我在網站上發錶瞭“喬爾測試”,這份清單包含優秀軟件團隊必須要做到的12件事,包括維護一個bug跟蹤數據庫,讓麵試候選人現場寫代碼,等等(不要著急,這本書會拿齣大量的篇幅來介紹這些內容)。讓我感到驚訝的是,很多人發來電子郵件,說自己所在的團隊隻能在滿分為12分的測試中得到2~3分。
2~3分!
這太不可思議瞭!就好像一群木匠聚在一起做傢具,結果誰都沒聽說過螺絲釘。他們隻會用踢踏舞鞋把釘子敲進木頭裏,因為沒人告訴他們世界上還有一種東西叫錘子。
要做好軟件項目管理工作,需要一整套和寫代碼完全不同的工作技能和技術儲備。項目管理和軟件開發是兩個完全不同、幾乎沒有交集的領域,二者之間的差彆幾乎相當於腦外科手術和烹飪椒鹽捲餅之間的差彆。一名腦外科手術醫生完全想不到,自己會被傳送到一個製作椒鹽捲餅的工廠裏,這很可能是時空裂隙造成的結果。即使是接受過哈佛醫學院教育的外科醫生,也完全對如何烹飪椒鹽捲餅沒有一點概念。但是人們通常認為,一位頂尖的開發者不經過任何崗前培訓,就能自動勝任項目管理工作。
和剛剛提到的腦外科醫生一樣,你和奈傑爾都被安排到瞭一個新崗位——管理。這個崗位要求你和人類而不是編譯器打交道。如果你覺得現在的Java編譯器bug叢生、行為不可預料的話,說明你還沒有作為開發經理和團隊中的明星程序員打過交道。管理由人類組成的團隊,難度要大大超齣編寫C++模闆函數。
要實現成功的軟件項目管理,也並非無跡可尋。這門藝術發展到今天,已經脫離瞭釘子和踢踏舞鞋的階段。我們現在有錘子、螺絲刀和雙斜麵組閤條鋸。本書的目標就是介紹我知道的所有管理方法和技術,涉及各個層麵,包括團隊管理者需要預估時間和開發計劃,軟件公司CEO要籌劃市場競爭戰略,等等。你將學到:
如何聘用並激勵最優秀的人纔——這是軟件項目取得成功的最關鍵因素;如何讓開發時間預估和進度規劃變得切實可行,以及為什麼有必要這樣做;如何設計軟件的功能,寫齣能真正指導開發的規格說明書,而不是製造那種“一次編寫、永不閱讀”的無用文件,隻能拿來把辦公室隔間的隔闆壘得更高;如何繞開軟件開發中常見的陷阱,以及為何程序員編程的時候總喜歡犯“推倒重來”的錯誤;如何組織和激勵團隊,為什麼程序員需要獨立的工作空間和關閉的門;在哪些情況下必須從頭開始寫每一行代碼,抵製從網上下載足夠好用軟件的誘惑;為什麼軟件項目總是在過瞭最初的幾個月之後,看起來像是陷入瞭停滯狀態;對於軟件公司,發展戰略意味著哪些思考和行動,為什麼BeOS從一開始就注定瞭失敗;除瞭以上幾條之外,還有更多內容。
本書的觀點帶有強烈的主觀色彩。為瞭行文簡潔,我無法在每句話的開頭加上“在我看來”這幾個字,但實際上你要知道,這本書裏的每句話都是我個人的觀點。本書也許並不完善,然而是一個不錯的開頭。
啊,你是我網站的讀者……
本書的很多內容都來自我個人網站上的專欄文章,這些文章統稱為“喬爾談軟件”,記錄瞭我在這幾年中的很多思考。希望這本讓你捧在手中的書,能比網站上鬆散的文章在形式上顯得更為緊湊,這個詞的另一個含義是,“可以在浴缸裏閱讀而不用擔心遭到電擊”。
我們把本書分為三大部分。第一部分從小處著眼,探討瞭軟件開發的方方麵麵:要想開發齣不危害人間的軟件,每一個開發團隊都應該遵循哪些良好的開發習慣。第二部分包含瞭一係列關於如何管理程序員和編程團隊的文章。第三部分的內容則更鬆散一些,但大緻上圍繞著“如何長久地在軟件開發行業生存下去”這一主題。你將瞭解到為什麼“膨件”(bloatware)大行其道,為什麼本傑瑞公司(Ben & Jerry’s)和亞馬遜公司如此不同,以及為什麼軟件開發方法論的齣現標誌著這個行業缺乏足夠數量的優秀人纔。
本書的內容當然遠不止以上介紹的這些,所以閑言少敘,書歸正傳。
好。。。。。。。。。。。。
評分能拓展一點知識麵吧,感覺對程序員用處不大
評分很好的書呢 哈哈哈 活動也給力
評分剛買呢,還沒看
評分大神推薦的,肯定沒錯!
評分有成套情結,一套兩本一起買。書的內容很不錯
評分書不錯,很有用。。。。。。。
評分haoshu
評分專門按照書單搜索的,還沒來得及看。
軟件隨想錄 捲1 pdf epub mobi txt 電子書 下載