Linux中國

Linux 如何成為我的工作

從很早很早以前起,我就一直使用開源軟體。那個時候,沒有所謂的社交媒體。沒有火狐,沒有谷歌瀏覽器(甚至連谷歌也沒有),沒有亞馬遜,甚至幾乎沒有互聯網。事實上,那個時候最熱門的是最新的 Linux 2.0 內核。當時的技術挑戰是什麼?嗯,是 Linux 發行版本中舊的 a.out 格式被 ELF 格式代替,導致升級一些 Linux 的安裝可能有些棘手。

我如何將我自己對這個初出茅廬的年輕操作系統的興趣轉變為開源事業是一個有趣的故事。

Linux 為樂趣為生,而非利益

1994 年我大學畢業時,計算機實驗室是 UNIX 系統的小型網路;如果你幸運的話,它們會連接到這個叫做互聯網的新東西上。我知道這難以置信!(那時,)「Web」(就是所知道的那個)大多是手寫的 HTML,cgi-bin 目錄是啟用動態 Web 交互的一個新平台。我們許多人對這些新技術感到興奮,我們還自學了 shell 腳本、Perl、HTML,以及所有我們在父母的 Windows 3.1 PC 上從沒有見過的簡短的 UNIX 命令。

畢業後,我加入 IBM,工作在一個不能訪問 UNIX 系統的 PC 操作系統上,不久,我的大學切斷了我通往工程實驗室的遠程通道。我該如何繼續通過 Pine 使用 vils 讀我的電子郵件的呢?我一直聽說開源 Linux,但我還沒有時間去研究它。

1996 年,我在德克薩斯大學奧斯丁分校開始讀碩士學位。我知道這將涉及編程和寫論文,不知道還有什麼,但我不想使用專有的編輯器,編譯器或者文字處理器。我想要的是我的 UNIX 體驗!

所以我拿了一個舊電腦,找到了一個 Linux 發行版本 Slackware 3.0,在我的 IBM 辦公室下載了一張又一張的軟盤。可以說我在第一次安裝 Linux 後就沒有回過頭了。在最初的那些日子裡,我學習了很多關於 Makefile 和 make 系統、構建軟體、補丁還有源碼控制的知識。雖然我開始使用 Linux 只是為了興趣和個人知識,但它最終改變了我的職業生涯。

雖然我是一個愉快的 Linux 用戶,但我認為開源開發仍然是其他人的工作;我覺得在線郵件列表都是神秘的 UNIX 極客的。我很感激像 Linux HOWTO 這樣的項目,它們在我嘗試添加軟體包、升級 Linux 版本,或者安裝新硬體和新 PC 的設備驅動程序撞得鼻青臉腫時幫助了我。但是要處理源代碼並進行修改或提交到上游……那是別人的事,不是我。

Linux 如何成為我的工作

1999 年,我終於有理由把我對 Linux 的個人興趣與我在 IBM 的日常工作結合起來了。我接了一個研究項目,將 IBM 的 Java 虛擬機(JVM)移植到 Linux 上。為了確保我們在法律上是安全的,IBM 購買了一個塑封的盒裝的 Red Hat Linux 6.1 副本來完成這項工作。在 IBM 東京研究實驗室工作時,為了編寫我們的 JVM 即時編譯器(JIT),參考了 AIX JVM 源代碼和 Windows 及 OS/2 的 JVM 源代碼,我們在幾周內就有了一個可以工作在 Linux 上的 JVM,擊敗了 SUN 公司官方宣告花了幾個月才把 Java 移植到 Linux。既然我在 Linux 平台上做得了開發,我就更喜歡它了。

到 2000 年,IBM 使用 Linux 的頻率迅速增加。由於 Dan Frye 的遠見和堅持,IBM 在 Linux 上下了「一億美元的賭注」,在 1999 年創建了 Linux 技術中心(LTC)。在 LTC 裡面有內核開發者、開源貢獻者、IBM 硬體設備的驅動程序編寫者,以及各種各樣的針對 Linux 的開源工作。比起留在與 LTC 聯繫不大的部門,我更想要成為這個令人興奮的 IBM 新天地的一份子。

從 2003 年到 2013 年我深度參與了 IBM 的 Linux 戰略和 Linux 發行版(在 IBM 內部)的使用,最終組成了一個團隊成為大約 60 個產品的信息交換所,Linux 的使用涉及了 IBM 每個部門。我參與了收購,期望每個設備、管理系統和虛擬機或者基於物理設備的中間件都能運行 Linux。我開始熟悉 Linux 發行版的構建,包括打包、選擇上游來源、開發發行版維護的補丁集、做定製,並通過我們的發行版合作夥伴提供支持。

由於我們的下游供應商,我很少提交補丁到上游,但我通過配合 Ulrich Drepper (將一個小補丁提交到 glibc)和改變時區資料庫的工作貢獻了自己的力量(Arthur David Olson 在 NIH 的 FTP 站點維護它的時候接受了這個改變)。但我仍然沒有把開源項目的正式貢獻者的工作來當做我的工作的一部分。是該改變這種情況的時候了。

在 2013 年末,我加入了 IBM 在開源社區的雲組織,並正在尋找一個上游社區參與進來。我會在 Cloud Foundry 工作,還是會加入 IBM 為 OpenStack 貢獻的大組中呢?都不是,因為在 2014 年 Docker 席捲了全球,IBM 要我們幾個參與到這個熱門的新技術。我在接下來的幾個月里,經歷了許多的第一次:使用 GitHub,比起只是 git clone 學習了關於 Git 的更多知識,做過 Pull Request 的審查,用 Go 語言寫代碼,等等。在接下來的一年中,我在 Docker 引擎項目上成為一個維護者,為 Dockr 創造下一版的鏡像規範(支持多個架構),並在一個關於容器技術的會議上出席和講話。

如今的我

一晃幾年過去,我已經成為了包括 CNCF 的 containerd 項目在內的開源項目的維護者。我還創建了項目(如 manifest-toolbucketbench)。我也通過 OCI 參與了開源治理,我現在是技術監督委員會的成員;而在Moby 項目,我是技術指導委員會的成員。我樂於在世界各地的會議、沙龍、IBM 內部發表關於開源的演講。

開源現在是我在 IBM 職業生涯的一部分。我與工程師、開發人員和行業領袖的聯繫可能比我在 IBM 內認識的人的聯繫還要多。雖然開源與專有開發團隊和供應商合作夥伴有許多相同的挑戰,但據我的經驗,開源與全球各地的人們的關係和聯繫遠遠超過困難。隨著不同的意見、觀點和經驗的不斷優化,可以對軟體和涉及的在其中的人產生一種不斷學習和改進的文化。

這個旅程 —— 從我第一次使用 Linux 到今天成為一個領袖、貢獻者,和現在雲原生開源世界的維護者 —— 我獲得了極大的收穫。我期待著與全球各地的人們長久的進行開源協作和互動。

via: https://opensource.com/article/18/2/my-open-source-story-phil-estes

作者:Phil Estes 譯者:ranchong 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國