开源英雄:Solomon Hykes 和 Docker 的革命性崛起
| 2017-09-11 13:22
Solomon Hykes —— Docker 的创始人,Docker 公司的首席技术官,从开源中成长,为开源贡献,对待开源和商业有着非同一般的见解。本文是对 Solomon Hykes 的采访兼经历略传,称之为开源英雄丝毫不为过,尤其是其颠覆性的开源项目——Docker,改变了整个软件产业!
技术常有,而颠覆性的技术则很是罕见,然而我们见证了一个时代,Docker 容器技术就是这种彻底改变 IT 形态的技术。那么我们今天带给大家的就是 Docker 的创始人,也是 Docker 公司的首席技术官——Solomon Hykes,他是少数的既能通彻的理解开源开发模式,又能将之转化为商业途径的少数技术领导者。
Hykes 看起来法国味不是很浓,但是他确实是在法国长大的。在他还很小的时候,他的父母移民到了法国。Hykes 在还是青涩少年,就开始了自己的编程生涯,回顾其高中生活,他的大多数时间都泡在了隔壁的网吧,不过他在网吧是写一些程序,(这一点似乎和国内的网吧有很大的不同,译者注)那么最后的结果就是,Hykes 没有去大学,而是进入了编程学习,接受系统的软件培训。
正如我们所预料的,开源的开发环境是 Hykes 的最爱,成为了他日常的一部分,他在开源社区的参与度非常的高,即使之后他创立了公司、也对技术有了创新,依然保持这一习惯!
Hykes 如此说到:
“从我创立 DotCloud 伊始,我们就将很多我们写的东西开源了,纵观 DotCloud 的历史,我们开源十几个项目,不过最后有一个项目非常的成功,它的名字叫做 Docker,其成为了所有开源项目中最为成功的一个,它是如此的成功,以至于我们后来成立的公司,干脆就以它的名字为公司名,当然,后来发生的事情就是,它让我们融入开源世界一发而不可收。”
作为一名开源信徒,Hykes 不断的将其公司所开发的东西带到开源的世界。“我们在过去的四年当中,大约陆续开源的有几十个项目,而且现在仍然在开源中做着很多的工作,这是一个渐进的过程。我要说的是,开源能够凸显我,胜于公司本身。”
Hykes 喜欢尝试新事物,也乐于实现一些新的想法,“如果它能够正常工作,我就让它继续,如果它不能工作,那么我就会试试其它方法。” Hykes 如此评价自己。在 Docker 公司,人们都称自己为构建者,“我们都喜欢构建一些新的东西,如果人们觉得有用,我们就多构建一些,如果没有用,我们就换其它方法,这几乎就是我们的一种生活方式。”
他深信传统的开源社区就是此种方式的精神家园,它能够吸引很多的构建者,那些能够在社区有贡献的工作者。
Hykes 是如此总结的:
“那就是你,或者是你的代码,无论能否正常工作,又或者人们采用还是不采用,都无关紧要,重要的是间隔和歧义的层次较少。我以为这就是能够吸引大部分开源贡献者的原因。我们就是如此遵循此种哲学之道的。”
开源世界
如果说什么是让 Hykes 能够显得足够独特的话,那就是他是创业者和技术爱好者完美的结合。Docker 是在开放源代码和商业之间取得良好平衡的罕见例子之一。迄今为止,没有几家公司能够做到如此的平衡,然而,Hykes 将 Docker 培育成一家这样的公司:“从一开始我们的做法就是非常规的,因为我们非常慎重。我对于商业和开源分得很是清楚。”
Hykes 坚信开源的项目和产品犹如一枚硬币的两面,“如果仅仅去做开源项目,就是为技术而技术;如果仅仅是做产品,而后台没有开源项目协作的话,那么就无法解决尽可能多的问题,因为没有那么多的问题暴露。”
Hykes 的策略就是将二者做融合。他对于传统意义上的开源 1.0 是持保留意见的,因为开源 1.0 是必须将开源和产品划出一道界线的。那样的话就是:一方面是一个无私的社区,一切都是免费的,不食人间烟火的样子,而另一边就是万恶的商业公司。
Hykes 所看到的世界是:人们渴望发明伟大的新事物,解决问题,而且也需要解决实际问题的人。所以 Hykes 将二者有效的结合起来,走过来的一路,边思考,当然也尝试了很多,他们已经重新写了很多的规则。当然,有时候,会引起一些守旧的人反感,但是,要知道这就是世界之所以进步的原因。
Hykes 认为,我们人类社会是不能够将开源视为慈善而存在的。对于社会最大的益处在于,参与开源可以是创业者、或者是能够给实际工作带来好处的人、又或者是从他们的工作中找到资金。
像 Docker 这样的技术和公司的市场已经成熟了。Hykes 对待开源和业务的正确方法使得 Docker 有了今天的成功。最初,Hykes 是和几位同事一起——即 dotCloud PaaS 公司——开发了内部的工具 Docker 容器技术。一举风靡全球,于是在 2013年,干脆以 Docker 命名新的公司,继续以开源技术征服世人。
“Docker 的诞生恰逢其时,在正确的时机做的正确的工具,并给予它适当的推动。其实,容器技术迟早都会发生,无论有没有 Docker。我们所做的远非一家公司可以做到,当然也不是 Docker 一家公司能够做的到的,甚至不是任何比 Docker 大得多的某一家公司所能做的到的,因为它是整个技术格局的重大转变。”
Docker 之所有有这么多贡献者的另外一个因素是:Docker 所构建的平台可以让任何人都能够轻松的参与和创建项目所需要的内容,而这些人不一定非得是业界精英或专家。Hykes 竭尽所能让一切变得更加简单:“让事情变得简单从来就不是一件容易的事,我们的奖励是可以使用和受益于 Docker 的更大的人群。” Hykes 如此说。
Docker 还再次违背了大多数开源技术的传统智慧,因为过去的这些开源技术往往很难使用。比如管理 Linux 服务器,没有两把刷子还真不好说。
Hykes 也意识到过去的开源世界经常被忽视的一个严重问题。开源 1.0 是一个较封闭的圈子,“它通常是一个较小的圈子,人们必须做点什么去赢得参与,在大多数的时候,并不是很受欢迎新手。” Hykes 遇到过很多人,他们都非常的热衷于编程,喜欢发明新事物,而且还热爱开源。他们都有被拒绝或拒绝他们试图参与的开源项目的经验,这些项目不是为了欢迎新来者或比较初级的人。
是什么导致 Hykes 创立了 Docker
容器是当下非常流行的技术,无论你走到哪里都有人们在谈论它。Linux 一直以来都拥有容器的技术,但是没有人像 Hykes 那样看到容器的潜力。正如人们看到的那样,Linux 下的容器技术并没有当下的 Docker 容器那么的功能齐全,当初,Hykes 开始使用容器技术的时候,是为了构建一些有趣的事情、解决一些有趣的问题。“这就是我当初开始参与容器的地方,从那之后, Linux 开始开发对容器的支持,这让一切都开始加速进行。” Hykes 如此说到。但是,自从他开始工作在容器之后,他就走在了前列,也创立 Docker——容器技术的先锋。
回顾创立 Docker 最初的那些时光,他试图解决的问题是在新的环境下利用容器来构建应用和运行应用程序,这个环境并不仅仅是某一台计算机,而是很多计算机连接起来组成的集群,处理分布式的系统是颇为棘手的大问题,Hykes 的初衷则是不仅仅是专家能够使用,而是任何开发者都可以使用它。
在今天,Hykes 实现了自己的想法,Docker 已经是遍地开花,诸如 Google 也发布了自己原来内部使用的容器技术来帮助人们使用容器,甚至微软都在改变其自身的平台,只为能够利用容器技术。
Hykes 评价道:
“当然,人们的规划是希望最大的成功。我们努力的工作以让 Docker 更加的成功,我们采取了一系列有效的策略,并做对了一些决定,也获得了很多人的帮助。但是,讲实话,Docker 能有今天的成就,如此的被广泛利用,是我们当初无法想象的。所以,带来的更多的是惊喜,以及更强的责任感,能够让更多的人们开始使用 Docker、信任 Docker,用来构建一些重要的东西。对于我们来说,这是一种更高的要求和期望,我们需要加倍努力工作,竭尽全力以达到人们的期望,满足人们的要求,以及解决更多的问题。”
转战美国
DotCloud 之所以一开始是在法国成立的,是因为 Hykes 认为自己更加的熟悉法国的市场,拥有较熟悉的客户,有朋友和大学同学,雇人相对也轻车熟路。但是随着公司的增长,Hykes 开始寻找一些投资人,以拓展自己的公司,他发现找资金还是美国更加的方便,于是他在 2010 年的后半年,将公司迁移到了旧金山的湾区。
Docker 从法国走出,那时还是一个小小的孵化项目,现在已经进化为全球流行的开源产品,正应了那句:“星星之火可以燎原!” 现在有整个业界都在基于容器的思想在行进。今天的 Docker 已经是拥有上百名开发者的员工,而且它还在继续雇佣,并在成长。
平日里 Hykes 在公司是如何参与项目的?
Hykes 若有所思:
“在一两年前,我是非常、非常活跃的。我是项目的主要维护者,审核很多的补丁,也帮助来自其它不同公司的人成为团队的维护者,目标是尽可能的委托他们多做一些工作。现在,也就是那段时间的一、两年之后,这些目标都已经达到,我现在已经在日常中很少参与项目了。我委托给了一个非常强大的团队来维护,目前来看,他们做的非常的优秀。”
现状与总结
Docker 从一个单一的项目起家,现在已经发展为庞大的项目,拥有很多的子项目,其中包括:ContainerD、LinuxKit、SwarmKit、以及 Moby,其中每个项目都有特定的功用,但是需要整合在一起才能成为大的平台。不过值得一说的是,Hykes 针对这些项目的开源策略,均是复制过去 Docker 成功的模式。
现在的 Hykes,正在尝试远离项目本身,并探索间接的参与,而不是直接的贡献。他聚焦于更加重要的问题:满足客户所面临的问题。他想要继续确保那些拥有有趣想法、拥有天分的和充满激情的贡献者能够被公司和项目所吸引,进而帮助项目继续前进。
Hykes 最后总结道:“我认为自己更像是一个推动者,教练员的角色多过运动员,这实际上非常的有趣。”
译者后记
毫不夸张的说,Docker 彻底改变了软件产业!这点没有人质疑,其背后的创始人,对于开源和技术都有着深刻的理解。这些想法和原则才是应该值得关注的。这也是 Docker 能够改变世界的基石,所以称 Solomon Hykes 为开源英雄或领导者,一点都不为过。
关于作者
SWAPNIL BHARTIYA,是一名记者、作家,已经在 Linux 和开源技术圈混了十多年了。同时,他也是科幻小说作家,并利用播客和印度的广播、已经印度知名的杂志上发表。