代碼之美檢視原始碼討論檢視歷史
代碼之美 |
《代碼之美》是2008年10月1日由機械工業出版社出版的圖書,作者聶雪軍。
代碼之美
書 名:代碼之美
原 書 名: Beautiful Code
叢 書 名:華章程序員書庫
作 者: (美)奧萊姆(Oram,A),(美)維爾森(Wilson,G) 編;BC Group 譯
出 版 社: 機械工業出版社
出版時間: 2009-1-1
版 次: 1
頁 數: 599
開 本: 16開
印 次: 1
紙 張: 膠版紙
I S B N : 9787111251330
包 裝: 平裝
所屬分類: 圖書 >> 計算機/網絡 >> 程序設計 >> 其他
定價:¥99.00
推薦
38位大師級的程序員,一步步講解他們的項目架構,開發時的種種折中考慮(tradeoffs)以及何時必須打破常規,尋求突破。
全球38位頂尖高手、眾多語言之父經典之作。
本書收錄的是軟件設計領域中的一組大師級作品。每一章都是由一位或幾位著名程序員針對某個問題給出的完美的解決方案,並且細述了這些解決方案的巧妙之處。
本書既不是一本關於設計模式的書,也不是一本關於軟件工程的書,它告訴你的不僅僅是一些正確的方式或者錯誤的方式。它讓你站在那些優秀軟件設計師的肩膀上,從他們的角度來看待問題。
本書給出了38位大師級程序員在項目設計中的思路、在開發工作中的權衡,以及一些打破成規的決策。
內容簡介
本書介紹了人類在一個奮鬥領域中的創造性和靈活性:計算機系統的開發領域。在每章中的漂亮代碼都是來自獨特解決方案的發現,而這種發現是來源於作者超越既定邊界的遠見卓識,並且識別出被多數人忽視的需求以及找出令人嘆為觀止的問題解決方案。
本 書33章,有33位作者,每位作者貢獻一章。每位作者都將自己心目中對於「美麗的代碼」的認識濃縮在一章當中,張力十足。33位大牛,每個人對代碼之美都 有自己獨特的認識,現在一覽無餘的放在一起,對於熱愛程序的每個人都不啻一場盛宴。 雖然本書的涉獵範圍很廣,但也只能代表一小部分在這個軟件開發這個最令人興奮領域所發生的事情。
作者簡介
Andy Oram
《Beautiful Code》介紹了人類在一個奮鬥領域:計算機系統的開發領域中的創造性和靈活性。在每章中的漂亮代碼都來自獨特解決方案的發現,而這種發現來源於作者超越既定邊界的遠見卓識,並且識別出被多數人忽視的需求以及找出令人嘆為觀止的問題的解決方案。
大多數作者都面臨着種種限制——包括物理環境,可用資源,或者特殊的需求定義——這些限制通常會使我們很難想象出解決方案。而其他一些作者則是在已經存在解決方案的領域中重新研究,並且提出新的觀點以及更好地實現某個功能。
本書的所有作者都從他們的項目中獲得了一些經驗。不過在閱讀完本書後,我們同樣可以總結出一些更廣泛的經驗。
首先,在可靠和真實的規則能夠真正應用之前,需要進行多次嘗試。因為,人們在維護穩定性、可靠性以及其他軟件工程要求的標準時經常會遇到重重困難。在這種情 況下,我們通常沒有必要拋棄支持這種承諾的原則。有時候,從另一個角度來思考問題或許能夠揭示一種新的方向,從而使我們在滿足需求的同時無需犧牲那些好的 技術。
另一方面,在有些章節中強調了這條古老的原則:在打破原則之前,人們必須首先了解這個規則。有些作者在獲得一種不同的解決方案之前積累了數十年的經驗——而正是這些經驗給了他們自信,從而以創造性的方式打破規則。
此外,書中的一些經驗還提倡跨學科研究。許多作者都是在新的領域中進行研究並在黑暗中不斷探索。在這種情況下,全新的創造力和個人智慧將起到重要的作用。
最後,我們從書中學到的漂亮的解決方案並不會持續很長時間。在新的環境中總會要求新的解決方式。因此,如果閱讀了本書並且認為,「無法在自己的任何一個項目上使用這些作者的解決方案」,那麼也不要擔心——這些作者在做下一個項目的時候,也會使用不同的解決方案。
我在這本書上全身心地工作了兩個月,以幫助作者完善他們的主題和更好地表達他們的觀點。閱讀這些天才發明家的文章的確令人鼓舞甚至是令人情緒高漲的。它給了我嘗試新鮮事物的衝動,我希望讀者在閱讀本書時也能有同樣的感受。
作者簡介
John Bentley是美國Avaya實驗室的一位計算機科學家。他的研究領域包括編程技術、算法設計以及軟件工具與界面設計。他已編寫了數本關於編程的書籍, 還撰寫了大量的文章,主題涉及從算法理論到軟件工程的各個方向。他於1974年在斯坦福大學獲得學士學位,並於1974年獲得碩士學位以及於1976年在 北卡羅來納大學獲得博士學位,隨後在卡耐基-梅隆大學任教6年,教授計算機科學。1982年他加入貝爾實驗室,並於2001年離開貝爾實驗室並加入 Avaya實驗室。他曾是西點軍校和普林斯頓大學的訪問教授、曾經參與開發過軟件工具、電話交換機、電話以及網絡服務。
Tim Bray於1987-1989年間在加拿大的安大略省滑鐵盧大學負責牛津英語詞典項目,1989年與他人聯合創建了Open Text公司,在1995年啟動了最早的公共網頁搜索引擎之一,在1996至1999年間與他人共同發明了XML 1.0併合作編寫了
《Namespaces in XML》規範,在1999年他創建了Antarctica Systems公司,並於2002-2004年被Tim Berners-Lee任命在W3C技術架構組中工作。目前,他在Sun Microsystems公司Web Technologies部門任主管,他有一個很受歡迎的博客,並且參與主持IETF AtomPub工作組。
Bryan Cantrill是Sun Microsystems公司的一位傑出的工程師,在他的職業生涯中主要從事Solaris內核的開發。最近他與同事Mike Shapiro和Adam Leventhal一起設計並實現了DTrace,這是一個用於產品系統動態控制的工具,獲得了《華爾街日報》2006年度的最高創新獎。
Douglas Crockford畢業於公立學校。他是一位登記選民,擁有自己的汽車。他曾開發過辦公自動化系統。他曾在Atari公司從事過遊戲和音樂研究。他曾是 Lucasfilm有限公司技術部門的主管,以及Paramount公司New Media部門的主管。他創建了Electric Communities公司並且擔任CEO。他還是State 軟件公司的創建者和CTO,正是在這個公司中他發明了JSON數據格式。他現在是Yahoo!公司的一位架構師。
Rogerio Atem de Carvalho是巴西校園技術教育聯合中心(Federal Center for Technological Education of Campos,CEFET Campos)的一位教師兼研究人員。他在奧地利的維也納獲得了2006年度IFIP傑出學術領導獎(Distinguished Academic Leadership Award),以表彰他在免費/開源企業資源計劃(ERP)上所做的研究工作。他的研究領域還包括決策支持系統和軟件工程。
Jeff Dean於1999年加入Google,目前是Google系統架構小組的成員。他在Google主要負責開發Google的網頁抓取、索引、查詢服務以 及廣告系統等,他對搜索質量實現了多次改進,並實現了Google分布式計算架構的多個部分。在加入Google之前,他工作於DEC/Compaq的 Western實驗室,主要從事軟件分析工具、微處理器架構以及信息檢索等方面的研究。他於1996年在華盛頓大學獲得了博士學位,與Craig Chambers一起從事面向對象語言的編譯器優化技術方面的研究。在畢業之前,他還在世界衛生組織的艾滋病全球規劃署工作過。
Jack Dongarra於1972年在芝加哥大學獲得數學學士學位,並於1973年在伊利諾理工大學獲得計算機科學碩士學位,又於1980年在新墨西哥大學獲得 應用數學博士學位。他在美國阿貢國家實驗室(Argonne National Laboratory)一直工作到1989年,並成為了一名著名科學家。他現在被任命為田納西大學計算機科學系的計算機科學傑出教授。他是美國橡樹嶺國家 實驗室(Oak Ridge National Laboratory ,ORNL)計算機科學與數學部的傑出的研究人員,曼徹斯特大學計算機科學與數學學院的Turing Fellow,美國萊斯大學計算機科學系的副教授。他的研究領域包括線性代數中的數值算法,並行計算,高級計算機架構的應用,程序設計方法學以及用於並行 計算機的工具。他的研究工作包括開發、測試高質量的數學軟件以及整理相關文檔。他在以下開源軟件包和系統的設計及實現上做出了貢獻:ISPACK, LINPACK, the BLAS, LAPACK, ScaLAPACK, Netlib, PVM, MPI, NetSolve, Top500, ATLAS, 和 PAPI。他公開發表了大約200篇文章、論文、報告以及技術備忘錄,還參與編寫了數本著作。他於2004年獲得了IEEE Sid Fernbach獎,以表彰他在高性能計算機的應用中使用了創新的方法。他不僅是AAAS,ACM和IEEE的成員,還是美國工程院的院士。
R. Kent Dybvig是印第安納大學計算機科學系的一位教授。在印第安納大學任教兩年之後,他於1987年在北卡羅來納大學獲得了博士學位。他在設計和實現編程語 言的研究上做出了重要的貢獻,包括控制運算符、句法抽象、程序分析、編譯器優化、寄存器分配、多線程以及自動存儲管理等。在1984年,他創建了Chez Scheme軟件並一直是主要的開發人員。Chez Scheme的特點在於快速的編譯時間、可靠性以及能夠高效地運行內存需求巨大的複雜程序,它已經被用於構建企業集成、網頁服務、虛擬現實、機器人藥品抽 檢、電路設計以及其他的商業系統。它還可以用於各種層次的計算機教育以及許多其他領域中的研究。Dybvig是《The Scheme Programming Language, Third Edition》(MIT Press出版社)一書的作者,以及即將發布的「Revised6 Report on Scheme」文檔的編輯。
Michael Feathers是Object Mentor 公司的顧問。在過去七年間,他一直活躍於Agile社群,他的工作主要是與世界各地不同的團隊合作,培訓以及指導。在加入Object Mentor公司之前,Michael設計過一種編程語言,並為這種語言寫了一個編譯器。他還設計了一個龐大的多平台類庫以及用於控制的框架。 Michael開發了CppUnit,也就是最初把JUnit移植到C++;以及FitCpp,也就是把FIT移植到C++。在2005年, Michael編寫了《Working Effectively with Legacy Code》(Prentice Hall出版社)一書。在與各個團隊合作的間隙,他的大多數時間都花在研究大型代碼庫中的設計修改方式方面。
1995年,Karl Fogel和Jim Blandy一起創建了Cyclic軟件公司,這是第一個提供商業CVS支持的公司。1997年,Karl增加了對CVS匿名只讀存儲倉庫訪問的支持,這 樣就可以更方便地訪問開源項目中的開發代碼。1999年,他工作於CollabNet公司,主要從事管理Subversion的創建和開發工作,這是 CollabNet公司和一群開源志願者們從頭開始編寫的開源版本控制系統。2005年,他編寫了《Producing Open Source Software: How to Run a Successful Free Software Project 》(O'Reilly出版社;在http://producingoss.com上有聯機版本) 一書。2006年,他在Google擔任了短期的開源技術專家之後離開Google並成為了Question-Copyright.org網站的全職編 輯。他目前仍然參與了多個開源項目,包括Subversion和GNU Emacs。
Sanjay Ghemawat是一位Google Fellow,工作於Google的系統架構小組。他設計並實現了分布式的存儲系統,文本索引系統,性能分析工具,一種數據表示語言,一個RPC系統,一 個malloc函數實現以及許多其他的庫。在加入Google之前,他是DEC系統研究中心的一位研究人員,主要從事系統性能分析和優化Java編譯器的 工作,他還實現了一個Java虛擬機。他於1995年在麻省理工大學獲得博士學位,研究領域為面向對象數據庫的實現。
Ashish Gulhati是互聯網隱私服務Neomailbox的首席開發員,以及Cryptonite的開發員,這是一個支持OpenPGP協議的安全網頁郵件系 統。他有着15年的商業軟件開發經驗,是印度最早的數字版權活動家之一和F/OSS程序員,他編寫了大量的開源Perl模塊,這些模塊可以從CPAN上下 載。在1993~1994年間,他在《PC Quest》和《DataQuest》等雜誌上發表了大量文章,這是在印度主流計算機刊物中最早向讀者介紹自由軟件,GNU/ Linux,Web和Internet的文章,在這些文章發表多年以後,印度才擁有了商業的互聯網訪問,這些文章還構成了PC Quest Linux Initiative活動的重要組成部分,這個活動促使自1995年以來,在印度分發了一百萬份Linux光盤。在獲得了一組可穿戴的計算機後,他很快地 成為了一個電子人。
Elliotte Rusty Harold是新奧爾良人,他會定期返回新奧爾良去吃一大碗海鮮干波湯(Gumbo)。不過,他目前住在布魯克林附近的Prospect Heights,和他生活在一起還有他的妻子Beth,狗Shayna,和兩隻貓Charm(以夸克命名)和Marjorie(以他的岳母命名)。他是紐 約科技大學的一位副教授,主要講授Java、XML以及面向對象編程。
Brian Hayes為《American Scientist》雜誌編寫計算機專欄,他還擁有一個博客http://bit-player.org。過去,他還為《Scientific American》、《Computer Language》、 以及《The Sciences》等雜誌編寫過類似的專欄。他編寫的《Infrastructure: A Field Guide to the Industrial Landscape》(Norton出版社)一書於2005年發行。
Simon Peyton Jones,碩士,於1980年畢業於劍橋大學三一學院。在工作兩年後,他在倫敦大學學院擔任了7年的講師,然後在格拉斯哥大學擔任了9年的教授,後來於 1998年加入微軟研究中心。他的研究領域包括函數式編程語言及其實現和應用。他領導了一系列的研究項目,主要研究用於單處理器機器和並行機的高質量函數 式語言系統的設計和實現。他是函數式語言Haskell的主要設計者,此外他還是被廣泛應用的Glasgow Haskell編譯器(GHC)首席設計師。他還編寫了兩本關於函數式語言實現的教科書。
Jim Kent是加利福尼亞大學聖克魯茲分校基因信息小組(Genome Bioinformatics Group)的一位研究學家。Jim從1983年起就開始編程。在職業生涯的前半段,他主要從事繪畫和動畫軟件的開發,他開發了Aegis Animator、 Cyber Paint以及 Autodesk Animator等獲獎軟件。1996年,由於厭倦了基於Windows API的開發工作,他決定在生物學上追求他的興趣,並於2002年獲得了博士學位。在研究生期間,他編寫GigAssembler——這個程序計算出了第 一批人類基因組——比Celera公司發布的第一批基因組提前了一天,從而使得這批基因組成為免費的專利並且避免了其他的法律問題。Jim發表了40餘篇 科學論文。他目前的研究工作主要是編寫程序,數據庫和網站以幫助科學家分析和了解基因組。
Brian Kernighan於1964年在多倫多大學獲得學士學位,並於1969年在普林斯頓大學獲得電子工程博士學位。他在貝爾實驗室的計算科學研究中心一直工 作到2000年,目前就職於普林斯頓大學的計算機科學系。他編寫了8本著作以及大量的技術論文,並擁有4項專利。他的研究領域包括編程語言、工具、為非專 業用戶設計易用的計算機操作界面等。他還致力於非技術讀者的技術教育工作。
Adam Kolawa是Parasoft公司的創建者之一和CEO,這家公司是自動錯誤預防(Automated Error Prevention ,AEP)解決方案的領先提供商。Kolawa有着多年在各種軟件開發流程中的經驗,這使得他對高科技企業有着獨特的視野,以及成功辨識技術潮流的非凡能 力。因此,他策劃了幾個成功商業軟件產品的開發過程來滿足在提高軟件質量中不斷增長的工業需求——經常在這種潮流被廣泛接受之前。Kolawa參與編寫了 《Bulletproofing Web Applications》(Hungry Minds出版社)一書,他還撰寫了100餘篇評論和技術文章,發表在《The Wall Street Journal》、《CIO》、《Computerworld》、《Dr. Dobb's Journal》以及《IEEE Computer》等期刊上。此外,他還撰寫了大量關於物理學和並行處理方面的科學論文。他現在的簽約媒體包括CNN、 CNBC、 BBC和NPR。Kolawa擁有加利福尼亞理工大學理論物理博士學位,並擁有10項專利發明。2001年,Kolawa獲得了軟件類別的Los Angeles Ernst & Young's Entrepreneur of the Year獎項。
Greg Kroah-Hartman是目前Linux內核的維護人員,負責多個驅動程序子系統以及驅動程序內核、sysfs、 kobject、 kref和debugfs等代碼。他還為啟動linux-hotplug 和 udev等項目提供了幫助,是內核穩定維護團隊中的重要人員。他編寫了《Linux Kernel in a Nutshell》(O'Reilly出版社),並參與編寫了《Linux Device Drivers, Third Edition》(O'Reilly出版社)。
Andrew Kuchling有着11年的軟件工程師經驗,他是Python開發群體中的長期成員。他的一些與Python相關的工作包括編寫和維護數個標準的庫模 塊,編寫一系列的「What's new in Python 2.x」文章以及其他一些文檔,策劃了2006年和2007年的PyCon會議,並是Python軟件基金會的主管。Andrew於1995年畢業於麥吉 爾大學並獲得計算機科學學士學位。他的個人網頁是http://www.amk.ca。
Piotr Luszczek畢業于波蘭克拉科夫礦業與冶金大學,並獲得碩士學位,他的研究領域是並行的核外(out-of-core)庫。他將稠密矩陣計算核應用於 稀疏矩陣直接求解算法和迭代數值線性幾何算法中的創新研究使他獲得了博士學位。他把這種思想用來開發使用核外技術容錯庫。目前,他是田納西大學諾克斯維爾 分校的一位研究教授。他的研究工作包括大型超級計算機安裝的標準化評價。他開發了一個自適應的軟件庫,能夠自動選擇最優的算法來有效地利用現有硬件以及有 選擇地處理輸入數據。他還感興趣於高性能編程語言的設計和實現。
Ronald Mak是高級計算機科學研究所(Research Institute for Advanced Computer Science)的一位資深科學家,在NASA Ames研究中心工作時,他是協同信息系統(Collaborative Information Portal,CIP)的架構師和首席開發人員。在漫步者登錄火星之後,他分別在JPL和Ames對探測任務提供支持。然後,他獲得了加利福尼亞大學聖克 魯茲分校的學術任命,並且他再次與NASA簽約,這次的工作是設計幫助宇航員返回月球的企業軟件。
Yukihiro "Matz" Matsumoto是一位程序員,他是一位日本籍的開源倡導者,他發明了最近非常流行的Ruby語言。他從1993年開始研發Ruby,這和Java語言 一樣久遠。現在他工作於日本Network Applied Communication Laboratory(NaCl,網址為netlab.jp)公司,該公司從1997年起開始贊助Ruby的開發。因為他的真實姓名太長而難以記住,並且 對於非日本的演講者來說難以發音,因此在網上他使用了暱稱Matz。
Arun Mehta是一位電子工程師和計算機科學家,他曾在印度、美國和德國進行過研究和教學工作。他是印度早期計算機活動家,他努力實現了一些方便消費者 (consumer-friendly)的政策,以幫助把現代通信延伸到偏遠地區和貧困地區。他目前的研究領域包括農村無限通信以及幫助殘疾用戶的技術。 他是印度哈里亞納邦Radaur地區JMIT大學計算機工程系的教授和主任。
Rafael Manhaes Monnerat是CEFET CAMPOS的一位IT分析家,以及Nexedi SARL的海外顧問。他的研究領域包括免費/開源系統、ERP以及最新的編程語言。
Travis E. Oliphant於1995年在美國楊百翰大學獲得電子與計算機工程學士學位和數學學士學位,並於1996年在本校獲得電子與計算機工程碩士學位。他於 2001年在明尼蘇達羅切斯特的梅奧研究生院獲得了生物醫學工程博士學位。他是Python語言中科學計算庫SciPy和NumPy的主要編寫者。他的研 究領域包括顯微阻抗成像,異構領域中的MRI重構以及生物醫學逆問題。他目前是楊百翰大學電子與計算機工程的副教授。
Andy Oram是O'Reilly Media的編輯。他從1992年開始就在這家公司工作,Andy目前主要關注自由軟件和開源技術。他在O'Reilly的工作成果包括第一批Linux 系列叢書以及2001年的P2P系列叢書。他的編程技術和系統管理技術大多都是自學的。
William R. Otte是田納西范德堡大學電子工程與計算機系(EECS)的一位博士研究生。他的研究領域是分布式實時嵌入(DRE)系統的中間件,目前從事CORBA 組件的部署和配置引擎(DAnCE)開發工作。這個工作主要研究運行時規劃技術,基於組件的應用程序的適應性,以及對應用程序服務質量和容錯需求的規範與 實施。在攻讀研究生之前,William於2005年在范德堡大學計算機系畢業並獲得學士學位,之後在軟件集成系統學院(ISIS)工作了一年。
Andrew Patzer是威斯康星大學醫學院生物信息系的主管。過去15年Andrew是一位軟件開發人員並且編寫了許多文章和書籍,包括 《Professional Java Server Programming》(Peer Information公司)和《JSP Examples and Best Practices》(Apress出版社)。Andrew目前的研究領域為生物信息領域,利用像Groovy這樣的動態語言來發掘大量有效的生物數據並 幫助科學研究人員進行分析。
Charles Petzold是一位自由作家,主要研究領域為Windows應用程序編程。他是《Programming Windows》(Microsoft Press出版社)的作者, 1988年至1999年之間共出版了五版,教育了整整一代程序員的Windows API編程技術。他最新的書籍包括《Applications = Code + Markup: A Guide to the Microsoft Windows Presentation Foundation》(Microsoft Press出版社),以及《Code: The Hidden Language of Computer Hardware and Software》(Microsoft Press出版社),在這本書中他對數字技術進行了獨特的研究。他的網址是http://www.charlespetzold.com。
T. V. Raman的研究領域包括網頁技術和聽覺用戶界面。在20世紀90年代初,在他的博士論文中介紹了音頻格式的概念,叫作AsTeR:Audio System For Technical Readings(技術讀物語音系統),這是一個為技術文檔生成高質量聽覺表示的系統。Emacspeak則將這些思想應用到更廣泛的計算機用戶界面領 域。Raman現在是Google的一位研究人員,主要研究Web應用程序。
Alberto Savoia是Agitar軟件公司的創建人之一和CTO。在創建Agitar之前,他是Google的高級工程主管;在這之前,他還是Sun Microsystems實驗室軟件研究中心的主管。Alberto的主要研究領域是軟件開發技術——尤其是那些幫助程序員在設計和開發階段進行測試和代 碼驗證的工具和技術。
Douglas C. Schmidt是田納西范德堡大學電子工程與計算機(EECS)系的一位教授,計算機科學與工程系的副主任,以及軟件集成系統學院(ISIS)的高級研究 人員。他是分布式計算模式和中間件框架方面的專家,並且已經發表了超過350篇的技術論文和9本書籍,內容涉及的主題很廣,包括高性能通信軟件系統,高速 網絡協議並行處理,實時分布式對象計算,並發與分布式系統的面向對象模式,以及模型驅動的開發工具。在他的學術研究之外,Dr. Schmidt還是PrismTechnologies公司的CTO,並且在領導開發應用廣泛開源的中間件平台上有着15年的經驗,在這些平台上包含了豐 富的組件以及實現高性能分布式系統中核心模式的領域特定語言。Dr. Schmidt於1994年於加利福尼亞大學歐文分校獲得計算機科學博士學位。
Christopher Seiwald編寫了Perforce(一種軟件配置管理系統)、Jam(一種構建工具)和「漂亮代碼的七個要素」(本書的第32章,變動的代碼,正是從 這篇文章中提取出了有價值的思想)。在創建Perforce之前,他在Ingres公司管理網絡開發小組,他花了數年時間來使得異步網絡代碼看上去很漂 亮。現在他是Perforce軟件公司的CEO,並且仍然從事編碼工作。
Diomidis Spinellis是希臘雅典經濟與商業大學管理科學與技術系的副教授。他的研究領域包括軟件工程工具,編程語言和計算機安全。他在倫敦帝國理工大學獲得 了軟件工程碩士學位和計算機科學博士學位。他發表了超過100篇的技術論文,所涉及的領域包括軟件工程,信息安全以及普適計算。他還編寫了兩本開源方面的 書籍:《Code Reading 》(獲得2004年度Software Development Productivity獎)和《 Code Quality 》(這兩本書都由Addison-Wesley出版社出版)。他是IEEE Software編輯委員會的成員,主編「Tools of the Trade」專欄。Diomidis是一位FreeBSD提交者(Committer),並且編寫了許多開源軟件包、軟件庫以及工具。
Lincoln Stein是一位碩士/博士,他的研究領域為生物信息數據的集成與虛擬化。在從哈佛大學醫科學院畢業後,他在麻省理工大學Whitehead基因研究所工 作,開發用於老鼠和人類的基因圖譜數據庫。他在冷泉港實驗室開發了各種基因數據庫,包括WormBase,線蟲基因數據庫;Gramene,用於水稻和其 他單子葉植物的比較基因映射數據庫;國際Hap-Map項目數據庫;以及人類基因基礎數據庫Reactome。Lincoln還編寫了《books How to Set Up and Maintain a Web Site》(Addison-Wesley出版社)、《Network Programming in Perl》(Addison-Wesley出版社)、《Official Guide to Programming with CGI.pm 》(Wiley出版社)以及《Writing Apache Modules with Perl and C》(O'Reilly出版社)等書籍。
Nevin Thompson把Yukihiro Matsumoto編寫的第29章內容,把代碼當作文章,從日文翻譯到英文。他的客戶包括日本最大的電視網絡,以及Technorati Japan公司和Creative Commons組織。
Henry S. Warren, Jr.在IBM工作了45年,他歷經了從IBM 704到PowerPC的發展過程。他參與過多個軍方指揮與控制系統的開發工作,在紐約大學Jack Schwartz教授指導下從事SETL項目。從1973年起,他在IBM研究部門工作,主要方向為編譯器和計算機架構。Hank目前正在參與Blue Gene Petaflop超級計算機項目。他在紐約大學克朗數學研究所獲得了計算機博士學位。他是《Hacker's Delight》(Addison-Wesley出版社)一書的作者。
Laura Wingerd多年Sybase和Ingres的數據庫產品開發工作形成了她早期對軟件配置管理的觀點。她在Perforce軟件公司創建之初就加盟了這 家公司,並且從她給Perforce客戶的建議中獲得了大量的SCM經驗。她編寫了《Practical Perforce》(O'Reilly出版社)一書以及許多與SCM相關的白皮書。她在Google的技術演講The Flow of Change中首次露面。Laura現在是Perforce 軟件公司產品技術部的副主管,主要負責推動合理的SCM流程以及研究新的並且更好的Perforce使用方式。
Greg Wilson在愛丁堡大學獲得了計算機科學博士學位,他的研究領域包括高性能科學計算,數據虛擬化以及計算機安全。他現在是多倫多大學計算機科學系的一位副教授,並且是《Dr. Dobb's Journal》雜誌的特約編輯。
Andreas Zeller於1991年畢業於德國達姆斯塔特理工大學,並於1997年在不倫瑞克理工大學獲得計算機科學博士學位。2001年以來,他一直在德國薩爾蘭 登大學的計算機科學系擔任教授。Zeller主要研究大型程序以及它們的發展歷史,他開發了大量的方法來分析在開源軟件以及IBM、Microsoft、 SAP以及其他公司的商業軟件中失敗的原因。他編寫的《Why Programs Fail: A Guide to Systematic Debugging》(Morgan Kaufmann出版社)獲得了《Software Development Magazine》雜誌2006年度的Productivity大獎。[1]