# Chapter?6.?交流
將代碼寫清楚的能力或許是開源環境中最重要的一項技巧。從長期來看,這不僅僅取決于編程天賦。即使是優秀的程序員,如果沒有好的溝通技巧,在同一時間也只能完成一件事,即使如此也很難讓其他人注意。但一個糟糕的程序員如果善于交流,則可以協調并說服許多人做很多事情,對于項目的方向和動力起著重要的作用。
無論從哪個方向看,編寫好代碼的能力和與其他人交流的能力看起來毫不相關。編碼能力和描述技術問題的能力則有一些關系,但是描述技術問題只是項目交流中很小的一部分。更重要的是移情到其讀者的能力,可以像其他人那樣去看待自己的文章和回復,可以讓他人以同樣的客觀性看待自己的文章。同樣重要的是發現某種媒介或交流方法不再有效,這或許是因為它并沒有隨用戶數量的增多而擴展,然后花時間去解決它。
在理論上很明顯—但因為開源軟件開發環境的受眾和交流機制引起的混亂,在實踐中的非常困難。一個給定的想法必須在郵件列表中作為bug跟蹤系統的注釋或代碼的說明發布出來?當在一個公共論壇回答一個問題時,應該如何假定讀者的知識水平,只是為咨詢問題的“讀者”解答,而是為所有會看到回復的讀者?如何讓開發者與其他用戶保持建設性的聯系,而避免陷入特性請求、虛假的bug報告和一般的聊天。如何知道一個媒介達到了容量的限度,你該如何做呢?
針對這些問題的解決方案都只能是部分的,因為任何特定方案都會隨項目結構的成長或變化而廢棄。他們也經常是*專門的*方案,因為他們需要隨機應變。所有的參與者需要意識到交流在何時,如何陷入困境,并立刻參與到解決方案中去。幫助人們完成這件事是管理開源項目的重要任務。本小節后面的部分會討論如何引導你自己的交流,以及如何在項目中為所有人維護交流機制的優先級。[[22](#)]
- 前言
- 為什么寫這本書?
- 誰應該讀本書?
- 資料來源
- 致謝
- 免責聲明
- 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. 版權