團隊文化是一個開發團隊協同工作方法,它包括相同的習慣,方式,與信念。一個積極的團隊文化將會提升團隊對代碼的所有權,團隊的合作性,同事之間的學習能力,共同的工作時間,與相互尊重。當經理與領導們關注發展與支持一個積極的團隊文化,那么這個團隊將明顯地會更加自制,有創造性,有效地工作,并更加更人滿意。
這樣的一個團隊文化的最重要元素是對團隊對代碼的所有權性。代碼是團隊的最重要資產,因為它是顯示我們所有工作的最主要的東西。代碼也是相互溝通的一個途徑:開發人員通過讀寫代碼來交換他們的主要編碼思想。就如數學家們最準確地通過方程式來進行溝通一樣,程序員用書寫代碼來進行準確溝通。因此,為了達到他們的編碼質量,開發人員將會在編碼過程中保持他們最佳的編程思路、用最清晰的編碼方式、用盡可能最簡潔的編程語言,以保證他們的溝通過到最可能的有效性。
因為代碼是公司如此重要的體現,同時也是公司的產品,所以關心代碼的質量與成功性是團隊文化的基礎。它是將公司凝聚成一體的粘合劑。 你希望建立的一種文化,在這種文化里,開發人員對代碼的態度可以反映代碼的重要性。開發人員應該顯示出他們關心代碼,因為關心代碼與關心公司是同義的。 如果一個開發人員關心代碼,他便會去關心公司,如果他關心公司,也便自然會去關心代碼。每個人都感覺有維護高質量代碼的職能,這是最基本的。 這樣可以防止公司成員會做任何可能會代碼質量的事情:如果他們關心代碼,他們不會去砍減代碼,偷懶少寫代碼,甚至寫非常簡單的危險代碼。 這樣可以反過來培養一個自制公司的其他的基礎因素,比如自律與合作。而且,它還有助于淘汰掉開發隊伍中的“壞蘋果”。 在一個團隊人員都感覺到對代碼質量的有力的投資的環境中,任何不關心代碼的開發者都會從團隊中被疏落掉。 如果在開發團隊中,某個人總是不斷地給代碼帶來麻煩,那么大多數成員都會對這個家伙感到失落,并會幫助這個開發人員進行提高改進。如果他確實改進了,那么這個團隊將會更加強大有力,如果他沒有,那么團隊利益沖突將會很自然地使他不得不離開這個團隊。
代碼所有權應該由所謂的“非私利編程”進行平衡。“非私利編程”的觀點是指,團隊擁有代碼,每個開發成員對代碼負責,但每個開發人員都不應對他人寫的代碼有個人攻擊的意味對代碼進行指責。如果一個開發者對批評指責過于敏感,他有可能不會成長進步得那么快,相對于那些能對有建設性的批評有很好把握的人。
See also: