這裡說的毒人,原文是Poisonous people,這麼翻不知道合適與否。我們的前提是“注意力和專注是所有開源項目的稀缺資源,並且保護好”。這種毒人就能打散團隊的注意力,影響工作的進行。這是需要避免的。首先,一個好的社區應該堅守自己的價值:
禮貌、尊重、信任、謙讓
這樣,當壞分子進來時,他們會發現他們與這種氣氛格格不入,只能離開。但要維持一個有活力的團隊,則還要做到:
把項目歷史寫好(設計決策,補丁記錄,錯誤,代碼改變);
保持健康的合作氛圍:提交代碼時發個郵件,鼓勵其他人去檢測代碼,大的改變時就新開個一個分支,在開分支上不用太小心;
增大項目的保險系數。就是如果有人離開,不至於某段代碼就死掉了;
在源代碼文件中不要寫名字,這會在代碼所有權上造成許多不必要的麻煩,還是用版本控制工具來說明版權;
只給部分提交的權限;
如果不信任某人,就不要給他提交的權限。
強壯的開源項目還應該有明確的發布流程,補丁流程,測試及增加新的提交人的流程。要形成自己的文化。成熟的社區應該能夠較容易達成一致,只有萬不得已時才用投票的手段。
需要警惕的人包括有許多昵稱的人,用奇怪ID的人,用全大寫的昵稱的人,沒條理的,不理解社區目標的,問許多手冊上寫得很明白的問題的人等。還有很大牌地要求提供幫助的人,給其他人寫黑信的,有權利欲的,挑釁的,打小報告的,還有不理會別人意見的,說許多垃圾話的,重開已有定論的話題的。最重要的,要當心那些不同別人合作的,抱怨卻不願去解決問題的,拒絕討論一些設計的,還有根本不能接受批評的。
當這些情況出現並開始擾亂社區氣氛時,應盡快做出評定,搞清楚此人是否對項目有利。但千萬不要再給他們以激勵,比如加入他的行列,或者變得情緒化。最後,應該知道何時忽視他們,何時直接趕走,以及對這種行為進行反擊。
兩位演講者是Subversion的開發者,也寫過這個軟件的書。不過,現在他們又都在Google工作 ,推廣開源軟件,這工作真不錯啊。難怪GoogleCode都是SVN。