走近Linux開發者:John Linville
30 Linux Kernel Developers in 30 Weeks 是 Linux.com 網站在2012年開始的一系列專題文章,該專題訪問了三十位 Linux Kernel 的開發者,其中包含了 Linus Torvalds 和 Greg Kroah-Hartman 等廣為人知的人士。這些人士所受訪的問題包括:負責的項目、任職的公司、居住地、喜好的工具甚至是工作時會聽的音樂等等。
對於想要了解內核開發的人而言,這些文章值得一讀,而且可以從中了解一些信息,例如多數的受訪者習慣於使用命令行界面的工具來工作,在桌面環境下亦然。此外有不少人表示自己偏好在安靜的環境下工作而不聽任何音樂。這些受訪者還分享了許多對於開發者新手的建議,例如可以從感興趣或者比較小的項目著手,並專註在上面,以及不用懼怕與其他開發者交流等。
Linux Story 本周為大家帶來 Red Hat Linux 內核維護者 John Linville 的訪談。
大家可以在 Linux Story 的 訪談 分類中查看本系列的所有文章。本系列文章將告訴大家他們是如何工作的,怎樣與他們協同工作以及他們成功的原因。本周 John Linville 為我們分享了他目前所關注的領域和一些對新手的建議。John Linville 從2006年起負責維護內核的無線區域網子系統。
你的名字是?
John Linville
你在社區中扮演什麼角色 / 負責哪個子系統的開發?
我從2006年起開始維護 Linux 內核的無線網子系統,我真希望這句話的意思是:看啊,這傢伙寫了一大堆很酷的代碼。可實際上大多數時候我只是在審查代碼,收集併合並補丁什麼的。說實話,很多無線網開發者在技術上要比我厲害得多。我認為這給了我機會成為一個「中立玩家」來平衡各個貢獻者之間的矛盾,但其實我一般都置身之外,因為核心開發者大多數時候都合作的很愉快。🙂
最近藍牙以及 NFC 方面的開發者也將他們的補丁發送給我,在這些技術領域我或許不是一個專家,但我所扮演的角色分擔了 Dave Miller 的一些任務,某種程度上使代碼可以更順暢的到達 Linus 那裡。
你的收入來源是什麼?
我是一名 Red Hat 的員工。
你在哪居住?為什麼選擇那裡?
我住的地方差不多算是鄉村地區了,距西北卡羅來納州羅利市以西約45分鐘。這個地方和我從小長大的環境很像,很適合在這裡定居養家。通常情況下會在家辦公,但也經常到羅利市的紅帽辦公室,這樣就能跟我的同事有當面交流的機會。
你最喜愛的軟體開發工具是什麼?你通常使用什麼?在桌面系統上一般運行哪些程序?
我崇尚簡潔,所以鍾愛命令行,我的桌面通常鋪滿了終端窗口,當我需要自動化工具的時候通常會選用 Bash,sed,awk等。
至於桌面環境嘛,我曾經是一名 KDE3.X 的用戶,但從來沒有接受過 KDE4.X,然後使用過 Gnome2。
你是如何參與進 Linux 內核開發的?
大約20年前,我不得不做一些研究以讓我的乙太網卡能夠適用於當時的各種內核,但一直到1998年末我一直都沒認真對待 Linux 開發。那時候恰好我的僱主在為客戶提供的硬體演示平台上選用了 Linux 做操作系統。那個硬體演示平台是一個網路處理器,那時候 Linux 尚未佔據嵌入式的最大份額,我完成了項目,當時的領導拍拍我的腦袋問到:你能不能再把這所有的一切移植到 VxWorks 上?幸好,之後其他僱主更看重的是我的 Linux 技能。
是什麼讓你對這份工作始終抱有熱情?
Linux 和 open source 就是很合我的胃口,當時在大學的時候就用過類 Unix 的系統,Unix 的哲學深深的吸引著我,讓我能夠更好的使用電腦。所以到後來,Linux 自然是我的選擇。進一步來說,作為一名電腦工程師,我可以根據自己的意願從最底層了解、修復、提升電腦和軟體。有了 Linux 的內核和各種發行版,我們就可以根據自己的需求定製最適合自己的系統。
在協作開發過程中你覺得好玩的是什麼(嘴仗,愚蠢代碼的提交,驚人的成就)?
當有人認為他們找到了唯一正確的方法並試圖說服社區中的其他人都按照他們的要求來做的時候我就會覺得很好笑。
你對想進入該領域的開發者有什麼建議?
最棒的方法就是撓自己的痒痒,當你遇到一個bug的時候,嘗試自己去修復它。那時候你將不得不閱讀大量的代碼,跟其他開發者郵件來往,不停地追查各種信息等等。
這個過程會讓你學到很多,也會充滿樂趣!
你在編碼的時候通常會聽什麼?
我是個很無聊的人,我一般會收聽廣播中的新聞或談話類節目。
在哪個郵件列表或IRC頻道或會議中可以找到你?
我時常關注 linux-wireless@vger.kernel.org, netdev@vger.kernel.org 和 (相對少一些) linux-kernel@vger.kernel.org。如果有人想私下裡給我發電子郵件,我也並不難找到。
LinuxStory 翻譯地址: http://www.linuxstory.org/linux-developers-john-linville/