# 致謝
寫作本書所耗用的時間是我原來設想的四倍,而在寫作期間,無論我身在何處,總感覺到腦袋上仿佛懸掛著一臺大三角鋼琴。沒有以下眾人的幫助,我便不可能完成本書的寫作而仍然保持精神正常的狀態。
本書的編輯,O'Reilly出版社的Andy Oram是一個作家夢寐以求的編輯。他不但諳熟自由軟件行業(書中的許多題目是他建議的),而且具有一種非凡的才能,那就是知道對方想說什么,而且幫助對方找到最佳的表達方式。能與Andy合作是我的榮幸。在此,我也要感謝Chuck Toporek,是他將本書的寫作提議及時傳給了Andy。
Brian Fitzpatrick在我寫作本書的時候審閱了全部的內容,這不但使本書更完善,而且在我只想從電腦屏幕前面逃走,躲到世界上任何一個其它角落時,是Brian鞭策我繼續寫作。Ben Collins-Sussman和Mike Pilato也經常詢問寫作的進程,而且總是樂于討論那一周我正在寫作的任何題目,有時候那樣的討論需要進行很長時間。在我寫作稍有懈怠的時候,他們也會注意到,并善意地加以提醒。謝謝你們,伙計們。
在我撰寫本書的同時,Biella Coleman正在完成她的博士論文。她了解每天坐下來寫作意味著什么,她既是鼓舞我寫作的榜樣,又能傾聽我寫作的苦衷。更能以一雙人類學家的慧眼觀察自由軟件運動,給我提供了一些想法和參考資料,用于本書的寫作當中。另一位人類學家Alex Golub那時候也在完成他的博士論文,而且他本人涉足自由軟件行業,他在本書剛開始寫作時給我提供了大量的支持,對我有極大的幫助。
Micah Anderson似乎從未因自己寫作大部頭而有壓迫感,這真是令人憎恨而又妒忌的鼓舞,與他的友誼和交談給了我很大的幫助,而且(至少有一次)他為我提供了技術上的支持。多謝你,Micah!
Jon Trowbridge和Sander Striker既給予了我鼓勵也提供了具體的幫助—他們在自由軟件行業中豐富的經驗為本書提供了我不可能在別處找到的素材。
我要感謝Greg Stein,不僅因為我們之間的友誼和他適時的鼓勵,更因為他向Subversion項目表明定期地代碼評審對建設一個編程社區是一項多么重要的工作。我也要感謝Brian Behlendorf,他巧妙地告誡我們進行公開討論的重要性;我希望這一原則貫穿了本書的始終。
感謝Benjamin “Mako” Hill和Seth Schoen與我進行的有關自由軟件及其政治方面的若干談話;感謝Zack Urlocker和Louis Suarez-Potts在百忙之中抽空接受我的采訪;感謝Slashcode名單上的Shane允許我引用他的帖子;感謝Haggen So提供的有關制作完成的主頁之比較,那極其有幫助 。
感謝Alla Dekhtyar、Polina以及Sonya給予我永不倦怠及耐心的鼓勵。我真高興我不必在我們的晚間聚會上提早告辭(或更確切地說,戀戀不舍地告辭)而回家去寫“那本書”。
感謝Jack Repenning給予我的友誼、交談、以及他固執地拒絕接受不費力氣的錯誤分析,而不遺余力找尋正確答案的決心。我希望他在自由軟件開發以及自由軟件行業中長期而豐富的經驗在本書中得以體現。
在本書寫作期間,CollabNet極其慷慨地允許我采用一個靈活的工作日程,而當我需要的時間遠遠超出原先預計的時候,他們沒有抱怨。我并不完全了解管理層在做這樣的決定時考慮的個中細節,但我猜想Sandhya Klute,而后是Mahesh Murthy,均參與了這項決定—我在此感謝他們兩位。
整個Subversion開發團隊在過去的五年是我靈感的源泉,本書中描述的絕大部分內容都是我與之共事所得。由于人數眾多,我在此不能一一列舉他們的姓名,但是我懇請各位讀者, 假如你有一天偶遇一位Subversion的開發人員,請為他買一杯他最愛喝的酒—我本人肯定要那樣做。
我曾多次與Rachel Scollon胡言亂語,敘說寫書的進程,而她總是樂于傾聽,并且能夠設法使問題大而化小。那對我有很大的幫助—多謝。
(再次)感謝Noel Taylor,他一定十分不解,為何我在上次頻頻抱怨之后又決定寫第二本書,然而,Noel給予我的友誼,以及他領導之下的Golosá合唱團使我的生活即使在最忙碌的時節依然有音樂和好友相伴。我還要感謝Matthew Dean和Dorothea Samtleben,我的好友以及因我而飽受折磨的音樂合作伙伴,在我多次無法與之排練的時候,他們總是給予我極大的理解。Megan Jennings總是給予最大的支持,并對一個她并不十分熟悉的題目表現出真誠的興趣—這對一個缺乏信心的作家來說無異于一劑定心丸。多謝了,我的老友們!
本書有四位學識淵博而又兢兢業業的評審者:Yoav Shapira、Andrew Stellman、Dayanum Srinivas和Ben Hyde。假如我能全部采納他們提出的極好的建議,本書無疑將更加完善。但由于時間的限制,我不得不有選擇性地加以采納。即便如此,本書的改進仍然十分顯著,任何遺留下來的錯誤都應由我本人承擔。
我的父母Frances和Henry一如既往地給予我大力的支持,與上一本書相比,這本書沒有那么多技術專業名詞,因而我希望他們覺得這本書讀起來容易一些。
最后,我要感謝我的兩位摯愛好友,Karen Underhill和Jim Blandy。在寫作本書期間以及在過去的七年里,Karen給予我的友誼和理解對我來說意味著一切。沒有她的幫助,我是不可能完成本書的寫作的。Jim對我來說也是一樣,一個真正的朋友,一個計算機行業中的王者之王,是Jim將我帶入自由軟件行業,正如一只鳥給予飛機飛行的靈感。
- 前言
- 為什么寫這本書?
- 誰應該讀本書?
- 資料來源
- 致謝
- 免責聲明
- 1. 介紹
- 歷史
- 現狀
- 2. 起步
- 從你擁有的開始
- 選擇許可證并應用
- 設置風格
- 通告
- 3. 技術基礎設施
- 一個項目需要什么
- 郵件列表
- 版本控制
- Bug跟蹤
- IRC / 實時聊天系統
- RSS供稿
- Wikis
- 網站
- 4. 社會和政治的基礎架構
- 慈善獨裁者
- 共識為基礎的民主(Consensus-based Democracy)
- 寫下所有的內容
- 5. 金錢
- 參與的類型
- 長期雇傭
- 作為一些個體出現,而不是一個整體
- 公開你的動機
- 錢不能讓你可愛
- 契約
- 資助非編程活動
- 市場營銷
- 6. 交流
- 人如其文
- 避免常見的陷阱
- 刺兒頭
- 處理成長
- Bug跟蹤系統中無對話
- 公開性
- 7. 打包、發布和日常開發
- 版本號
- 發布分支
- 穩定發布版本
- 打包
- 測試和發布
- 維護多發布線
- 發布和日常開發
- 8. 管理志愿者
- 從志愿者中獲取最多
- 像分擔技術任務一樣分擔管理任務
- 轉化
- 提交者
- 榮譽
- 分叉
- 9. 許可證,版權和專利
- 術語
- 許可證的方面
- GPL和許可證兼容性
- 選擇一個許可證
- 版權分配和所有權
- 雙許可證模式
- 專利
- 深入資源
- A. 自由版本控制系統
- B. 自由Bug跟蹤系統
- C. 為什么我要關注車棚的顏色?
- D. 報告bug的樣例指導
- E. 版權