走近Linux開發者:Johannes Berg
30 Linux Kernel Developers in 30 Weeks 是 Linux.com 網站在2012年開始的一系列專題文章,該專題訪問了三十位 Linux Kernel 的開發者,其中包含了 Linus Torvalds 和 Greg Kroah-Hartman 等廣為人知的人士。這些人士所受訪的問題包括:負責的項目、任職的公司、居住地、喜好的工具甚至是工作時會聽的音樂等等。
對於想要了解內核開發的人而言,這些文章值得一讀,而且可以從中了解一些信息,例如多數的受訪者習慣於使用命令行界面的工具來工作,在桌面環境下亦然。此外有不少人表示自己偏好在安靜的環境下工作而不聽任何音樂。這些受訪者還分享了許多對於開發者新手的建議,例如可以從感興趣或者比較小的項目著手,並專註在上面,以及不用懼怕與其他開發者交流等。
Linux Story 本周為大家帶來內核無線網路部分及 iwlwifi 驅動維護者 Johannes Berg 的訪談。
大家可以在 Linux Story 的 訪談 分類中查看本系列的所有文章。本系列文章將告訴大家他們是如何工作的,怎樣與他們協同工作以及他們成功的原因。本周 Johannes Berg 為我們分享了他目前所關注的領域和一些對新手的建議。Johannes Berg 負責維護內核中無線網路的代碼以及 iwlwifi 驅動。和其他開發者一樣,他致力於讓 Linux 被更多硬體支持,並一往無前。
你的名字是?
Johannes Berg
你在社區中扮演什麼角色 / 負責哪個子系統的開發?
在我「Linux 職業生涯」的大部分時間我一直從事著 Linux wireless (802.11)的開發,負責維護著內核中無線網路功能的大部分代碼,除此之外也維護著 iwlwifi 驅動。有些時候我也會做一些其他子系統和無線網路相關的工作,之前也做過 powerpc 相關的工作(出於愛好),例如我實現了 Linux 在64位 powerpc 上的休眠功能。
你的收入來源是什麼?
Intel。
你在哪居住?為什麼選擇那裡?
我住在代特莫爾德(德國西北部城市)。我在這長大並且喜歡這的環境,不過更實際的原因是我和我的妻子在這裡工作。
你最喜愛的軟體開發工具是什麼?你通常使用什麼?在桌面系統上一般運行哪些程序?
我決定對桌面環境保密,以免被內核社區的其他人認為是異類。不過大多數時候我只會運行一個網路瀏覽器、email 客戶端以及一大堆終端用來處理其他工作。至於生產工具的話,我不能離開最喜歡的編輯器「joe」,此外還有一些內核開發的標準工具:編輯器、 git、 sparse、 smatch 和 spatch;無線開發的工作也會用到 wireshark,最近幾年我逐漸喜歡上了 trace-cmd,因為它允許人們收集大量的調試數據並在之後離線分析這些數據。
你是如何參與進 Linux 內核開發的?
這個說來話長,不過簡單點說就是我有一款 2005年的 PowerBook ,但是系統不支持網卡驅動。
是什麼讓你對這份工作始終抱有熱情?
每天都有新的挑戰,並且解決辦法並不是那麼明顯,這滿足了我喜歡創造性工作的性格。另外,我喜歡能夠影響很多人的工作。
在協作開發過程中你覺得好玩的是什麼(嘴仗,愚蠢代碼的提交,驚人的成就)?
一些在愚人節提交的補丁是我見到過最有意思的了。
你對想進入該領域的開發者有什麼建議?
嘗試對你感興趣的領域持久的關注,了解社區中人們是如何相互協作的。如果有人因為某些原因跟你大呼小叫但其他大部分的人都不在意的話,你也可以完全不在意,但那個人若是你的上遊子系統維護者的話,還是跟他好好溝通一下吧。開源社區有自己的行事風格,你可以盡量理解並融入,這樣才能更愉快的工作。
在哪個郵件列表或IRC頻道或會議中可以找到你?
我已經退訂了許多列表,最近還在關注的大概只有 kernel wireless 的郵件列表了。線下會議的話就隨意的多了。
LinuxStory 翻譯地址: http://www.linuxstory.org/linux-developers-johannes-berg/