TranslateProject/translated/talk/20180219 How Linux became my job.md
2018-03-11 10:55:30 +08:00

6.4 KiB
Raw Blame History

                                             Linux如何成为我的工作 

从很早很早以前起我就一直使用开源软件。那个时候没有所谓的社交媒体。没有搜狐没有谷歌浏览器甚至连谷歌也没有没有亚马逊几乎没有一个互联网。事实上那个时候最热门的是最新的Linux 2.0内核。当时的技术挑战是什么是Linux发行版本中旧的a.out格式被ELF格式代替导致升级一些linux的安装可能有些棘手。

我如何将我自己对这个初出茅庐的年轻操作系统的兴趣转变为开源事业是一个有趣的故事。

Linux为乐趣而非利润

1994年我大学毕业时计算机实验室是UNIX系统的小型网络如果你幸运的话他们会连接到这个叫做互联网的新东西。难以置信我知道“网络”正如我们所知道的大多是手写的HTML,cgi-bin目录是启用动态web交互的一个新的平台。我们许多人对这些新技术感到兴奋我们还自学了shell脚本PerlHTML以及所有我们在父母的Windows3.1上从没有见过的简介的UNIX命令。通过vils和阅读我的邮件。

毕业后我加入IBM在一个没有UNIX系统的PC操作系统上工作不久我的大学切断了我通往工程实验室的远程通道。我如何继续用PinePine是以显示导向为主的处理程序读我的电子邮件我一直听说开源Linux但我没有时间去研究它。

1996年我在德克萨斯大学奥斯丁分校开始读硕士学位。我知道这将涉及编程和写论文不知道还有什么但我不想使用专有的编辑器编译器或者文字处理器。我想要的是我的UNIX经验!

所以我拿了一个旧电脑找到并下载了一个Slackware 3.0的Linux发行版本分配磁盘后放在了我的IBM办公室。可以说我在第一次安装Linux后就没有回过头了。在最初的那些日子里我学习了很多关于文件和系统关于建设软件和补丁还有源码控制的知识。虽然我只是开始使用Linux来获得乐趣和个人知识但他最终改变了我的职业生涯。

虽然我是一个愉快的Linux用户但我认为开源开发任然是其他人的工作我想到了一个神秘的UNIX极客的在线邮件列表。我很感激Linux HOWTO项目他帮助我尝试添加软件包升级Linux版本或者安装新硬件和新PC的设备驱动程序。但是要处理源代码并进行修改或提交到上游… …那是给别人的,不是我。

Linux如何成为我的工作

1999我终于有理由把我个人对Linux的兴趣与我在IBM的日常工作结合起来了。我带了一个研究项目接到JVM虚拟机的Linux上。为了确保我们在法律上是安全的IBM购买了一个压缩包创建Red Hat Linux 6.1副本来完成这项工作。在IBM东京研究实验室工作时写下了我们的JVM即时JIT编辑器AIX JAV源代码Windows和OS/2的JVM参考源代码我们有一个JVM的Linux工作在几周之内击败了SUNS公司官方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。我开始熟悉Linux发行版的建设包括打包资源选择上游资源发展原有发行版的补丁集做定制并通过我们的合作伙伴提供支持的发行版。

由于我们的下游供应商我很少提交补丁到上游但我通过配合Ulrich Drepper包括一个小补丁到glibc去改变时区数据库的工作贡献自己的力量Arthur David Olson接受他在NIH的FTP站点的维护。但作为我工作的一部分我还没有作为开源项目的正式贡献者工作过。是该改变这种情况的时候了。

在2013年末我在开源集团加入了IBM的云组织并正在寻找一个上游社区参与进来。这将是我们在云上工作还是我会加入IBM的为OpenStack贡献的大组都不是是因为在2014年Docker开源的应用容器引擎席卷了全球IBM邀请我们几个参与这个热门的新技术。我在接下来的几个月里经历了许多的第一次使用GitHub比起只是git clone学习了更多关于Git有PR的复查在Go上写代码等等。在接下来的一年中我在Docker引擎项目上成为一个维修者以创造形象规范的下一版Docker支持多个架构出席和讲话在一个关于封装技术的会议上。

现在我在哪里

一晃几年过去我已经成为了一个开源项目的维护者包括云端原生计算基础的集中网络控制设备containerd一个控制runC的守护进程项目。我还创建项目如清单工具和比较容器运行时性能。我已经通过OCI为创造开放的行业标准容器格式和runtime明确目的开放的治理结构参与开源治理。我在世界会议Meetuo网站群IBM内部有过很高兴的关于开源的演讲。

开源现在是我在IBM职业生涯的一部分。我与工程师开发人员和行业领导的联系可能比我在IBM内认识的人的联系还要多。虽然开源与专有开发团队和供应商合作伙伴有许多相同的挑战但据我的经验开源与全球各地的人们的关系和联系远远超过困难。随着不同的意见、观点和经验的不断优化可以对软件和涉及的在其中的人产生一种不断学习和改进的文化。

这个旅程——从我第一次使用Linux到今天成为一个指导者贡献者和现在云本地开源世界的维护者——我获得了极大的收获。我期待着与全球各地的人们长久的进行开源协作和互动。