內容簡介
《高效能程序員的修煉》是Coding Horror博客中精華文章的集閤。全書分為12章,涉及邁入職業門檻、高效能編程、應聘和招聘、團隊協作、高效工作環境、用戶體驗、安全問題、測試、社區管理、營銷廣告、人生思考等話題。作者選取的話題,無一不是程序員職業生涯中的痛點。其中,“程序員的八種境界”、“程序員的《權利法案》”、“結交混世魔猴”等文章早已膾炙人口,在程序員圈子裏廣為流傳。
《高效能程序員的修煉》的寫作風格風趣幽默,且充滿理解和關懷,適閤從新手到老手的各個階段的程序員閱讀,也適閤即將成為程序員的計算機和相關專業的學生閱讀。《高效能程序員的修煉》能夠幫助讀者更多地關注程序員職業生涯中的人性和人文因素,成長為真正的高效能的程序員。
作者簡介
Jeff Atwood,國際知名的技術博客作傢,知名程序員,有三十多年的職業編程經驗。2004年,他創辦瞭Coding Horror博客。2008年,他和Joel Spolsky聯閤創辦瞭Stack Overflow (stackoverflow.com)網站。Stack Overflow 現在已經成為全球IT界最受歡迎的技術問答網站。
陸其明,2000年畢業於南京大學,曾是一名C++程序員,是國內最早一批從事流媒體應用的開發者。自2004年起,連任4屆微軟MVP(最有價值專傢)。現任樂威軟件(上海)有限公司研發部高級經理,主要負責OTT電影分發係統的移動客戶端軟件開發。辛勤耕耘十餘載,在技術研發、團隊建設、流程管理、項目管理等方麵積纍瞭豐富的經驗。已經齣版的著作有《DirectShow開發指南》、《DirectShow實務精選》、《Windows Media編程導嚮》、《腳本驅動的應用軟件開發方法與實踐》,譯作有《代碼之道》。新浪微博:豆巴陸其明。
張健,2 0 0 0年畢業於南京大學。多年來專注於嵌入式係統設計工作,涉及SOC架構、內核及設備驅動、應用係統構建等多個領域。在杭州士蘭微電子公司任職期間,主管嵌入式軟件研發工作,有豐富的團隊及項目管理經驗,並於2008年獲得PMP認證。現居悉尼,在Open Access公司任職高級軟件工程師。
精彩書評
★如果你對待編程的態度是認真的,那你首先需要讀一讀《高效能程序員的修煉》。你也許是個技術狂,宅在傢裏嫻熟地耍著命令行。但若想成為職業程序員,你還需要做到很多其他方麵。
——C. Truman
★《高效能程序員的修煉》對於初級程序員來說是必讀的,其中包含瞭很多重要的、高級的話題。Jeff Atwood的寫作,讓編程這種枯燥的話題變得充滿樂趣。
——Meyer Denney
★能不能成為一名成功的程序員,很多時候與技術能力無關,而要看你是否能參透《高效能程序員的修煉》中涉及的那些主題。這本書談到瞭編程之外的很多其他方麵。任何想要或正在從事軟件開發的人,都應該讀一讀這本書。
——Jeremy Morgan
★Jeff Atwood是一位優秀的作者,他的觀點很鮮明。你可能不贊成他的觀點。但我個人很贊同他,並且我認為,《高效能程序員的修煉》能夠幫助你更好地編程和工作。
——Jonathan Pepin
★程序設計遠遠不隻是寫代碼那麼簡單。通過閱讀本書,你將學習到如何成為一名更好的程序員。對於有經驗的程序員和程序員新手,《高效能程序員的修煉》都很有價值。任何想要在職業上做得更好的程序員,都應該認真閱讀這本書。
——Temidayo Adelakin
★《高效能程序員的修煉》是一位程序員的日常工作的縮影,是他多年工作經驗的結晶。我訂閱作者的博客已經兩年多瞭。他寫作的涉及麵非常廣泛。如果你錯過瞭那些帖子,我隻能對你深錶遺憾。所幸的是,你現在可以閱讀這本書,因為過往的精彩內容盡收於此。
——Amir Hossein Rahnama
目錄
第1章 入門須知
你想成為一個程序員
程序員的八種境界
如何培養寫作習慣
第2章 把一堆爛事搞定的藝術
學海無邊
磨刀不誤砍柴工
一路嚮前衝
關於多任務的神話
第3章 高效編程之原則
第一條法則:永遠都是你的錯
大道至簡
避免寫注釋
學會讀源代碼
嚮橡皮鴨求助
創新以人為本
你的團隊能通過電梯測試嗎
性能緻勝
第4章 招聘程序員須得其法
為什麼程序員不會編程
怎樣招聘程序員
如何做好電話麵試篩選
工作經驗年數之神話
與程序員麵談
史上最難的麵試謎題
第5章 促使團隊緊密協作
不管怎麼說,那總是人的問題
領導須以身作則
程序員與係統管理員的黑夜傳說
結對編程與代碼評審
會議是浪費工作時間的最佳去處
處理壞蘋果
壞蘋果是團隊的毒藥
關於遠程辦公
第6章 蝙蝠洞:程序員的高效工作場所
程序員的《權利法案》
電腦工作站的人體工程學
多顯示器能提高生産力嗎
購置優質的電腦椅
背景光的功效
第7章 設計時要把用戶放在心上
你永遠不會有足夠的奶酪
細節決定成敗
用戶界麵代錶瞭軟件
用戶界麵須優先設計
分頁顯示該休矣
對待弱視的用戶
再談瀏覽器底欄
費茨定律與無限寬度
單元測試的終極失敗
第一版做得不好,但照樣發布
第8章 安全基礎:保護用戶數據
所有網絡通信都應該加密嗎
防範字典式攻擊
快速哈希
關於網絡密碼的可怕真相
第9章 加強代碼測試,彆讓它太差勁
與客戶患難與共
結交“混世魔猴”
代碼評審:說做就做
加大測試力度
我同情那些不寫單元測試的傻瓜
單元測試與Beta測試的對比
低保真的可用性測試
比程序崩潰更糟糕的是什麼
第10章 創建並管理社區,同時從中受益
傾聽社區的聲音,但彆被它們牽著鼻子走
我重申:彆盲目聽從你的用戶
遊戲化
暫停,禁止,或者打入地獄
第11章 揭露營銷伎倆,以及如何規避
謹防九種營銷詭計
網絡廣告該休矣
從《偷天情緣》看A/B測試 的問題
如果流於俗套,請即刻改變
軟件定價:我們深諳其道嗎
第12章 輕重緩急,瞭然於心
程序員,你幸福嗎
來也匆匆,去也匆匆,到頭來兩手空空
附錄 程序員必讀之書
精彩書摘
《高效能程序員的修煉》:
3.知名程序員
達到這一境界的程序員也不錯,當然,前提是你得有一份不錯的工作。
這個境界的程序員雖然在圈子裏很有名,但是成為名人並不意味著可以靠這個賺取收入並且養活自己。齣名固然不錯,但成功更為關鍵。你可能在一傢非常知名的大型技術公司工作,也可能在一傢很有影響力的小公司或者是在一個很有希望的創業團隊工作。不管怎麼樣,其他的程序員都或多或少地聽說過你,並且你對自己所在的領域有著積極的影響。
4.勝任的程序員
作為一名軟件工程師你非常成功,你的能力使你在工作中遊刃有餘。你從來不會為得到一份滿意的工作而發愁。你的同事也非常尊敬你。每一傢你曾經工作過的公司都因為你的加盟而在某些方麵得到瞭提升。
但問題是:接下來你將何去何從?
5.普通程序員
這個境界的程序員基本上能夠應付一般的編程工作。他們自己也很清楚,由於天資所限,他們很難成為傑齣的程序員。
其實,天賦跟成功的關係並不大。如果你有敏銳的商業嗅覺和不錯的人際交往能力,你依然可以變得很成功。如果你是一個普通的程序員,但你還能靠這一行當過上不錯的生活,這已經說明你是很有纔的,隻是你不必非得乾程序員這一行。
人貴有自知之名。通常你的能力都會比你自認為的要低。缺乏天賦並不是什麼大不瞭的事情。要勇敢一點,發掘自己的特長,並且充分加以發揮。
6.業餘程序員
業餘程序員通常都熱衷於編碼。他們可能是一些很有前途的學生或實習生,也可能正在參與某些開源項目,或者利用個人閑暇時間開發一些“好玩的”應用程序或網站。從他們的代碼和創意可以看齣,他們是一群很有想法、充滿激情的人。
成為一名業餘程序員是件好事。這個境界的程序員可以通過自我提升,迅速地勝任程序員這個職業。
7.低調的程序員
還有一些坊間流傳的比較有個性的程序員,如JoeCoder,很有能力但是沒什麼令世人矚目的成就。他們可能服務於某傢大型公司。對於這些人來說,寫代碼僅僅是份工作而已,並非他們生活的全部。這沒什麼錯,挺好的!
8.爛程序員
這個級彆的程序員技能極其匱乏(己無境界可言),他們通常是陰差陽錯地乾上這一行的。他們所做的任何事情都會給他們的同事帶來痛苦和災難——當然可能也有一個例外,就是他們的同事也是一幫差勁的程序員,差到連身邊全是一幫爛程序員都意識不到。
如果要給爛程序員下一個定義的話,那就是:沒有金剛鑽,卻偏偏攬瞭瓷器活。
應該承認,以上所有的這些境界定義得並不嚴謹。事實上,並不是所有的程序員在他們的職業生涯中都渴望相同的東西。思考一個程序員在10年、20年、30年甚至一生的時間裏所能取得的成就,是非常有意義的!想一想,你最崇拜哪個程序員?到底是他的什麼成就,使得你對他如此地崇拜?
總之,你究竟想要過怎樣的生活?
……
前言/序言
高效能程序員的修煉 下載 mobi epub pdf txt 電子書 格式