2008年,在无数人为代码协作方式而感到异常头疼的时候,GitHub 横空出世,完美契合了市场的迫切需求。自此,它以惊人的速度成长起来并蔓延到全世界,彻底融入开发编程的日常之中。仅仅十年,现在的 GitHub 已经成为开源的事实标准,左右着无数开发者的编程命脉。本文就从最开始的地方,一起来追溯 GitHub 的“封神”之路。
2008年,Tom Preston-Werner、Chris Wanstrath 和 PJ Hyett 三位挚友聚在一起,准备合作开发一个周末小项目。但是没过多久,他们便意识到这个想法可能比他们预想的要大得多。他们的想法远不止一个周末小项目那么简单,它将彻底改变人们编写代码和分享代码的方式。
这个想法就是 GitHub。
在短短10年间,GitHub 便彻底改变了人们的编码方式。GitHub 不仅让编码变得容易,它还改变了软件开发人员对编程的看法和理解。
世界范围内,无数的人都在为代码协作方式感到头疼,GitHub 横空出世,解决了这个疑难问题,并设计出了市场迫切需要的优雅解决方案。以此,它得以惊人的速度发展壮大,取得了巨大的成功。通过围绕开源项目 Git 构建 SaaS 服务,GitHub 能够为开源生态系统提供价值并从中获利。GitHub 对微软来说充满吸引力,尽管微软曾经在开源社区并不显眼,但它在2018年6月初对 GitHub 进行了收购。
我们一起来看看下列问题:
GitHub 如何从一个版本控制系统发展为程序员的社交工具,并最终成为在线存放和管理代码的重要场所?
为什么 GitHub 的免费增值模式运行良好,并且能够如此有效地引领时代?
GitHub 如何抓住了广阔的潜在市场需求,并围绕这种需求创造了一种刚需产品?
为了更好地理解 GitHub 的重要性,我们需要回到2008,了解当时的软件开发现状,以及是什么造就了伟大的 GitHub。
2007-2011:代码协作与软件社交
比尔盖茨和史蒂夫乔布斯从根本上重塑了个人计算机,他们成为家喻户晓的名人,但我们也完全无法忽视芬兰软件工程师 Linus Torvalds 对科技领域的巨大贡献,他创造了 Linux 操作系统。当时的 Windows 和 Mac 几乎统治了整个操作系统领域,Linux 操作系统于1991年发布,它是一个非常灵活、轻量级和安全的开源操作系统,面世之后,很快就受到了想要对系统进行深入控制的极客以及技术人员的青睐。
发明一个全新的操作系统这样的成就可能对大多数程序员来说都应该感到知足了,但 Torvalds 却并不满足,他没有停下创新的脚步。2005年,Torvalds 推出了他的最新项目:一个名为 Git 的新的版本控制系统。版本控制对编程协作来说至关重要,它需要跟踪计算机中随时间变化的文件。它与计算机备份系统用作还原点的“快照”类似,版本控制系统让程序员能够通过“fork”或者“分支”来管理项目代码,程序员在同一个项目工作,但不会影响其他人编写的代码。程序员可以在自己的分支上进行开发,之后将新的代码合并到主项目(也就是代码仓库)中。
在 Git 诞生之前,程序员之间进行编程协作的方式很少。其中 Subversion 比较受欢迎,它是一个开源的版本控制系统。它存在着与其他版本控制系统类似的缺点,当然这些缺点是当时的协作编程概念所无法避免的。即使使用了Subversion,与开源团队合作通常也需要获得项目管理员的许可才能 fork 项目的一个分支,否则便无法编辑代码。在许多情况下,批准过程比编写代码花费的时间更长。许多开源项目都受到权限问题以及其它一些低效率事情的困扰。
当 Git 于2005年发布时,开源领域正在经历一场文艺复兴。那时的开发者对 Linux 充满浓烈的兴趣。第一个 Web 2.0 应用程序已经开始出现。许多公司正在将他们的项目迁移到开源服务器。尽管 Git 通过引入 fork 概念使得开源项目的合作变得容易,但 Git 依然有其局限:它无法帮助开发人员寻找开源项目。许多程序员开发了大量的优秀开源项目,但却很难让他人知道这些项目。
GitHub 改变了这一切。
PJ Hyett 和 Chris Wanstrath 在2007年开始讨论 GitHub 项目,当时这两人都是科技网站 CNET 的程序员。他们都支持 Ruby on Rails 开发框架。当他们在 CNET 工作时,Hyett 和 Wanstrath 还为 Rails 的代码库提出了一些改进和建议。但是,让其他人真正查看他们的代码是另一回事。
正如当时大多数开源项目的典型情况一样,Rails 的代码库由一个小型的、紧密结合的程序员管理,他们手动管理对代码库的贡献。这些程序员扮演者管理员的角色。Hyett 和 Wanstrath 不仅要请求这些管理员查看他们的代码,还要让他们相信自己提交的代码对 Rails 项目是有价值的。即使其中一个项目管理员认为提交的代码有用,但是补丁的合并也不会很容易。
从本质上讲,想要为 Rails 项目贡献代码,熟人的烂代码比陌生人的好代码更容易通过。
Git 试图解决其中的一些问题。Linus Torvalds 的版本控制系统与他几年前单枪匹马打造的操作系统一样出色。Git 使得程序员无需管理员开通访问权限,即可进行编码协作。Git 是编码最终民主化的关键第一步,特别是在开源社区。但是,尽管 Git 解决了很多问题,但它缺乏协作工具,并且两个程序员之间共享代码仍然很笨拙和困难。现在可能很难想象,当时软件开发人员需要通过电子邮件不断来回发送补丁,这就很容易理解为什么迫切需要 GitHub。
遗憾的是,这不是 Git 唯一需要的东西。起初 Git 主要依赖于命令行界面,好在 Git 发布后很快就推出了图形界面。对于那些多年来一直在编写 bash 脚本和正则表达式的系统管理员和其他高级用户来说,这是个好消息。对于其他人来说感觉倒并不明显。
“人们开始在 Ruby 会议上谈论 Git。主要讨论它的好处,但有时也谈到缺点。Git 会以分布式方式处理代码,但是如何保证共享私有代码的安全性呢?唯一的选择是在 Unix 计算机上设置用户帐户并将其用作临时解决方案。这个解决方案并不理想。” — Tom Preston-Werner
尽管存在这些缺点,但 Git 依然充满潜力,它给来自湾区的 Ruby 程序员 Tom Preston-Werner 来了一些想法。当时 Preston-Werner 正在开发一个名为 Grit 的项目,这个工具让程序员能够使用 Ruby on Rails 以面向对象的方式访问 Git 存储库。Preston-Werner 在旧金山一家名为 zeke's 的体育酒吧内举办的 Ruby 会议上认识了 Chris Wanstrath,Preston-Werner 把 Grit 告诉了 Wanstrath。
Preston-Werner 的愿景是创建一个可以托管整个代码库的地方,程序员可以协同工作代码项目,并了解如何充分利用 Git。用 Preston-Werner 的话说,它将是一个“ Git hub(中心)”。
Preston-Werner 和 Wanstrath 于2007年10月1日正式开始制作 GitHub 的第一个版本。在旧金山体育酒吧相识的几周之后,Chris Wanstrath 提交了第一个 GitHub 版本,从此便彻底改变了编程方式。
当 Preston-Werner 和 Wanstrath 在2007年开始合作时,他们的想法不是将 GitHub 作为商业工具开发并围绕它开展业务。Wanstrath 和 Preston-Werner 需要 GitHub 来完成他们自己的工作,所以他们开发这个工具是为了满足自己的刚需。他们很快就发现了他们工作中的一个主要问题:他们需要 fork 代码分支和协作编程,并设计出满足他们需求的解决方案。对于这个 Wanstrath 和 Preston-Werner遇到的问题,无论使用哪种编程语言或者操作系统,几乎所有软件开发人员都会遇到。这代表了他们的产品在未来拥有巨大的市场潜力。
在接下来的几周里,Wanstrath 在周末与 Preston-Werner 会面,共同完成了 GitHub 的第一次迭代。Preston-Werner 主要负责设计,Wanstrath 专注于实现 Preston-Werner 提出的功能。
“在接下来的三个月里,Chris 和我花了很多时间来规划和编写 GitHub。平时我继续为 Grit 设计 UI。Chris 构建 Rails 应用程序。我们每个星期六都会见面讨论设计,并规划这个产品的蓝图。” — Tom Preston-Werner
2008年1月,经过三个月利用周末时间编写代码,GitHub 有点像模像样了,Wanstrath 和 Preston-Werner 准备向全世界推出 GitHub。正如 Spotify 在其关键的早期开发阶段所做的那样,GitHub 首次以私有测试版的形式推出。Wanstrath 和 Preston-Werner 通过向他们在湾区及其他地区的初创公司的朋友发送电子邮件,邀请他们使用他们构建的工具,之后便立即得到了积极的回应。接下来的一个月,他们将 Logical Awesome 改名为 GitHub,Inc,并作为公司正式成立。
虽然这两个人还没有开始创业,但他们的想法蕴含巨大的商业潜力。2008年4月,就在 GitHub 推出私有测试版并在同月推出其官方网站的三个月后,Chris Wanstrath 收到了来自在线学习网站 PeepCode 的创始人 Geoffrey Grosenbach 的消息,该网站刚刚将其代码迁移到了 GitHub。Grosenbach 告诉 Wanstrath 他不习惯使用 GitHub 免费托管他公司的代码库,他愿意付费。来自活跃的 GitHub 用户的这类消息展现了 GitHub 的价值。即使 GitHub 没有向用户收费,有些人也愿意为此付费。
“我使用 GitHub 免费托管我公司的代码,我对此感到有些不好意思。我可以发一张支票给你们吗?” - PeepCode 的创始人 Geoffrey Grosenbach
GitHub 发展中最重要的一个因素是其商业模式的简洁和优雅。如果你想公开托管你的代码,GitHub 可以永久免费使用。如果你想使用私有存储库或专有代码,你需要付费。这两个用例完全不同,这消除了 GitHub 使用免费增值产品蚕食其受众的风险。
GitHub 公司完全可以将 GitHub 置于付费模式,并且可以通过收费来赚很多钱,但事实上 GitHub 并没有这么做。GitHub 商业模式的另一个特点就是无缝从免费增值产品过渡到私人付费存储库。如果程序员在 GitHub 上托管他们的开源个人项目并定期使用该产品,他们很有可能会建议他们在日常工作中使用 GitHub。
与 GitHub 的商业模式一样简单和合乎逻辑,它是 GitHub 以其实现方式有效商业化开源软件开发的唯一可能方式。如果 GitHub 从一开始就试图从所有存储库中获利,那么 GitHub 可能永远不会被开源社区所喜爱。如果没有这种基层支持,该公司将无法生存。
另一个需要采用智能方法定价结构的因素是将 GitHub 作为 Web 服务运营。作为开源代码在网络上存放的地方这听起来很棒,但有人必须为带宽付费。对于 GitHub 来说幸运的是,Geoffrey Grosenbach 并不是唯一一个想要给 GitHub 捐款的热心用户。一些公司还提出愿意花钱使用 GitHub 来托管他们的代码,这让公司的创始人意识到该公司作为营利性企业的潜力非常巨大。
“我们意识到 GitHub 可能不仅仅是能够收回成本,它可能成为一项真正的商业。我们决定继续免费提供无限制的公共存储库,但我们会向私有存储库收取费用。换句话说,我们会向该付钱的人收钱。” - Chris Wanstrath
PJ Hyett 于2008年1月正式加入 GitHub,成为其第三位联合创始人。仅仅几个月后,即2008年4月10日,GitHub 正式推出。
到2009年,GitHub 的增长十分迅猛。Preston-Werner 在2009年2月的雅虎开发者大会上发表讲话时说,GitHub 上有超过46,000个公共存储库,其中约有17,000个在上个月才加入。当 Preston-Werner 在2009年7月发表他的下一个雅虎开发者大会演讲时,GitHub 已经拥有超过10万用户,并且托管了超过90,000个公共存储库,仅仅5个月就增加了95%。
GitHub 这一时期的增长最令人瞩目的是,这家新兴公司在短短一年多的时间里通过软件开发社区的口碑吸引了其首批100,000名用户。GitHub 作为一种产品已经造就了很好的用户粘性,这纯粹是因为它确实解决了开发者的疑难问题。这有别于其它基于 Git 的协作工具。GitHub 通过在新兴的、难以使用的技术之上构建了新服务,成功地开辟了自己的市场。
GitHub 的业务模型和编程社区的流行确实帮助公司取得了快速的发展。然而,许多人忽略了 GitHub 早期的一个方面,即如何解决所有软件开发人员遇到的问题,这些问题的解决也推动了 GitHub 作为产品的开发。协作是关键,访问是增长的载体。GitHub 允许用户在未经许可的情况下 fork 存储库,从而减少了冲突。GitHub 解决一个棘手的技术问题,即 fork 代码分支和相关的权限问题,此外,GitHub 还解决了如何与其他程序员有效协作的问题。
市场对 GitHub 这类产品的迫切需求以及产品本身的粘性并不是 GitHub 早期取得快速增长的唯一因素。GitHub 的社交功能也是增长的强大动力。在 GitHub 之前,除了在技术访谈中回答白板假设之外,程序员几乎没有办法证明他们的编程方法。现在,编码人员可以公开维护他们项目的代码库,向未来的雇主展示他们的代码,并参与更广泛的软件开发社区。GitHub 不仅使程序员受益。招聘人员可以通过 GitHub 浏览公共存储库和用户档案,以确定潜在的候选人,看看候选人一直在做什么样的项目,这使得 GitHub 成为了一个颇有价值的招聘工具。
2010年6月29日,GitHub 推出了其组织功能,该功能允许企业用户从单个集中式仪表盘管理其拥有的存储库。虽然组织的引入一定程度上是对那些吵着要尝试 GitHub 的公司的回应,但它也揭示了公司未来的抱负。到2010年,创始人很清楚,收入增长的最重要的一个原因是更多企业和组织采用 GitHub。这发生在 GitHub 推出 GitHub Enterprise 一年以前,组织功能清楚地表明了公司的意图。
GitHub 继续以令人难以置信的速度不断吸引新的用户。截至2011年底,GitHub 正在托管超过200万个存储库,并且在用户和提交方面都超过了 SourceForge、Google Code 以及微软的 CodePlex。与之前的组织功能一样,GitHub Enterprise 的发布表明 GitHub 意图成为大型科技公司和个人开发者不可或缺的平台,这是 GitHub 在2012年至2015年间的主要目标。
令人惊讶的是,GitHub 没有借助一分钱的外部投资就成功壮大。这将在2012年发生变化,当时 GitHub 终于迎来了它的第一个投资者 Andreessen Horowitz。
2012-2015:从快速增长到无处不在
到2012年,GitHub 已经变得非常受欢迎。对于许多程序员来说,问题不在于他们在何处使用 GitHub,而是用它来做什么。GitHub 不仅稳定地吸引了强大的用户群,几乎没有广告、促销或者风险投资资金,但使用 GitHub 托管私有代码和私有存储库的公司团队数量剧增。GitHub 现在需要做的是通过进一步渗透到企业来扩大收入。GitHub 实现这一目标的第一件事就是雇用 Brian Doll,他于2012年2月成为 GitHub 的市场营销和战略副总裁。第二件事是由 Andreessen Horowitz 领导的 A 轮融资筹集1亿美元。
“具体来说,有一个名为'GitHub Everywhere'的策略。我们希望软件领域的所有人都使用 GitHub。个人、小团队、学生以及大型企业。” — Tom Preston-Werner
GitHub 的A轮融资让这家成长中的公司更加积极地追求“GitHub Everywhere”的愿景。当 GitHub 获得A轮融资时,它已经拥有超过170万用户并且托管了超过300万的存储库。此外,该公司的收入自2008年以来每年以300%的速度增长。凭借其新的资金,GitHub 可以在这种有机增长的基础上继续发展,并瞄准财富500强公司,这将推动 GitHub 收入的进一步增长。
虽然许多企业家和投资者对 GitHub 与 Andreessen Horowitz 的新合作关系表示赞赏,但一些人对 GitHub 突然涌入的现金表示怀疑。开源社区的一个小而有声的队伍觉得 GitHub 接受风险投资资金是对公司自我激励的风格的背叛,并可能危及未来的开源开发。GitHub 的开源起源及其未来作为企业工具之间的紧张关系需要公司进行仔细平衡。
获得历史上最大的A轮融资给了 GitHub 更大的自由,但它也给公司施加了更大的压力。
到2012年,GitHub 的成长速度令人瞩目。GitHub 已经创建了一个可以解决紧急问题的可靠产品,并围绕一项新兴技术建立了一个完整的公司。但很明显,GitHub 自给自足的方式只能将它带到目前的高度。为了保持公司的成长速度并实现更大的目标,它需要资金。于是 GitHub 在2012年7月获得了 Andreessen Horowitz 1亿美元的A轮融资,Andreessen Horowitz 是唯一的投资者。GitHub 将利用这笔资金聘请更优秀的工程师并开发新的产品。
值得注意的是,虽然 GitHub 在A轮融资中完全被 Andreessen Horowitz 引导,但这并不是意识形态冲突的问题。有些人认为 GitHub 起源于开源社区,这与投资者青睐的创业方式不太一致。但实际情况并非如此。GitHub 没有原则上拒绝风险投资,它拒绝的原因确实是因为它不需要投资。当 GitHub 开始寻找外部投资时,该产品已经拥有了庞大的用户群。最重要的是,GitHub 几乎从第1天开始就实现了盈利。这种自由使得 GitHub 不仅能够有意识地塑造其产品,还能够塑造整个组织的文化,完全不受投资者的影响。
“我们始终认为过早地获得投资对公司来说是坏事。太多的外界影响可能是危险的。我们已经诞生四年半了,所以我们能够真正定义自己。我们从来没有拒绝 VC,我们只是排斥人们因为错误的因素委屈自己的产品。” — Tom Preston-Werner
从这一点来看,GitHub 的宏图大志愈发明显。GitHub 已经取得了显着的增长并积累了大批忠实的程序员粉丝,因此它希望扩大其影响力及其潜在收入。GitHub A 轮融资的关键并不是拿到了投资者的大笔资金,GitHub 在接受风险资金之前已经盈利了多年。其关键在于 Preston-Werner 的下面这段话:
“我们公司多年来一直盈利,增长迅速,我们并不需要钱。那为什么我们接受了投资呢?因为我们想要更好,我们想要打造最好的产品,我们想要解决更难的问题,我们希望让更多人的生活变得更加轻松。Andreessen Horowitz 的经验和资源可以帮助我们做到这一点。” — Tom Preston-Werner
Preston-Werner 提到了很多目标,但归根结底都是想要让 GitHub 解决核心技术问题。这是许多人对 GitHub 作为公司和产品的最根本的误解之一。GitHub 让程序员的生活更加轻松,这一点毋庸置疑,但这并不是创始人的唯一愿景。他们不仅想让程序员更容易编码,他们还希望让整个编程领域都变得更加容易和轻松。
在许多情况下,GitHub 已经解决了编程本身的疑难问题。GitHub 的特别之处在于它通过创造一种解决了这些问题的产品来实现这一目标,这些问题也为该产品创造了巨大的潜在市场。Wanstrath 和他的朋友可以专注于较小的、特定的技术问题。相反,他们追求的是当时编程所带来的大问题和根本固有的问题,解决这些问题为他们的产品创造了巨大的潜在市场。
这种吸引力远远超出了开源爱好者的预期,它对大型企业也具有强大的吸引力。到2013年,硅谷的大多数科技公司都在使用 GitHub,大大小小的项目都在用。Adobe、Dropbox、Facebook、Google、Twitter 等等,它们都在 GitHub 上拥有私有存储库。一些公司,比如 Mozilla,甚至拥有几百个代码仓库,几乎所有东西都托管在 GitHub 上。其它的公司,比如 Facebook,拥有的存储库相对少一些(与 Mozilla 的687只相比只有102个),但参与度确更高,Facebook 的102个存储库中的分支超过15,000个。
GitHub 的受欢迎程度和市场渗透率让它获得了难以置信的增长。截至2015年底,GitHub 拥有280万用户,并拥有460万个存储库。然而,虽然 GitHub 现在已经与编码文化密不可分,但该公司的目标设定得更高。下一阶段 GitHub 的目标是成为全球最大的开源软件中心,并积极寻求国际扩张,立志成为“面向开发者的 Facebook”。
GitHub 不仅在慢慢吞噬硅谷,它甚至和美国政府有些交集。2013年5月9日,白宫在 GitHub 上起草并发布了美国官方开放数据政策。这是美国第一次以这种方式分享联邦立法政策。虽然这与 GitHub 的数百万个存储库中托管的代码项目相比,立法文件本身的实用性有限,但其象征性非常重要。在私营公司的服务器上托管政府政策文件是前所未见的,允许公众 fork 和合并政策文件也是前无古人的。
今天的新闻标志着政府首次将法律作为一份生动的协作文件发布。我们很高兴看到开放数据政策随着社区的投入而发展,我们希望这是一个良好的开始。“ - GitHub 产品经理 Ben Balter
该公告对于 GitHub 而言是一个令人难以置信的 PR,并且还暗示了 GitHub 的其他潜在用例,开放数据拥护者和精通技术的政策多年来一直在谈论,即使这些用例最终将永远不会实现。
2015年至今:GitHub 全球扩张
到2015年,GitHub 是许多程序员的版本控制工具。但它并不仅限于此,它还是一个社交中心,程序员可以从中互相学习。它是程序员交流网站、社交网络和专业网络中心。这是世界上大部分代码的存放处,既有个人开发者的小项目,也有科技巨头的大型项目。
当然,树大招风。2015年3月28日,GitHub 经历了自发布以来最大规模的网络攻击——这种DDoS(分布式拒绝服务攻击)攻击被认为源于中国。但这次袭击并非企图使一家美国公司瘫痪,以造福亚洲竞争对手。相反,据称该攻击仅针对两个 GitHub 项目。第一个是 GreatFire,一个致力于帮助中国互联网用户规避国家所谓的“中国防火墙”的组织;第二个是“纽约时报”网站中文镜像的 GitHub 页面,它也帮助中国用户访问这张报纸。尽管攻击最终受到了挫败,但人们发现在一个地方托管如此多代码的危险性,特别是旨在颠覆国家监视设备的代码。
中国 DDoS 攻击发生四个月后,GitHub 获得了以红杉资本为首的2.5亿美元B轮融资。这使得 GitHub 的估值超过了20亿美元。谈到资金问题,Chris Wanstrath 告诉记者,该公司计划利用其B轮资金开发新产品,并进行国际化扩张。
GitHub 的第一个海外办事处设在东京。GitHub 选择日本作为其首个海外地点具有高度的战略性。日本不仅是 GDP 排名世界第三的经济体,而且其技术创新举世闻名,这使其成为旨在托管世界代码的网站的合理的目的地。包括日立系统和日本媒体集团 CyberAgent 在内的公司都是日本 GitHub 的首批客户。
GitHub 继续扩大。截至2015年7月,GitHub 拥有超过900万用户,并托管了超过2100万个存储库,这正式使 GitHub 成为世界上最大的代码存储库。尽管用户增长稳定,该公司的继续扩张推动了该组织在此期间的大部分收入增长。GitHub 被美国一半以上最大、最富有的公司所使用,这是很好地体现了 Tom Preston-Werner 多年前“ GitHub Everywhere” 的先见之明。
然而,尽管 GitHub 仍在增长,到2015 年9月每个工作日新增用户数达到10,000,但增长速度在放缓。GitHub 面临来自 Bitbucket 和 GitLab 的激烈竞争,导致用户增长受到影响。另一方面,收入则增长迅速。2015年9月,GitHub 的年度收入约为9000万美元。截至2016年8月,这一数字已上升至1.4亿美元。在2014年9月至2016年8月的23个月期间,GitHub 个人计划的收入停滞不前,但其组织计划的收入几乎翻了一番。GitHub Enterprise 的收入增长了两倍。2014年9月,GitHub 的收入中约有35%来自 GitHub Enterprise。截至2016年8月,GitHub Enterprise 占GitHub 收入的一半。
到2017年,GitHub 的未来将主要受其在企业应用程序的影响。曾有人谈论过首次公开募股,有关不太可能收购的传闻,以及合并等等。每个人都有关于 GitHub下一步行动的猜测,但很少有人料到接下来发生的事情。在2018年6月4日上午,微软以75亿美元的价格收购了 GitHub,这一重磅消息震惊了科技界。
“从最大的公司到最小的初创公司,GitHub 是开发人员学习、分享和共同创建软件的目的地。它也是微软的目的地。我们是 GitHub 上最活跃的组织,为项目提供了超过200万次“提交”或更新。
几个小时之内,黑客新闻、Reddit 和 TechDirt 充斥着愤怒的用户,他们感到被 GitHub 的收购所背叛,许多抗议会离开 GitHub。一些用户将他们的存储库从 GitHub 迁移到竞争服务 GitLab 或 Bitbucket。人们对他们的代码的安全性开玩笑。其他人明智地了解了 Clippy 将如何帮助开发人员将他们的项目部署到Azure。还有一些人认为这笔交易与甲骨文收购 Sun 有相似之处。
在讽刺和愤怒之下,有一种非常真实的感觉,GitHub 的未来不再像以前那样光明。然而,许多人没有意识到的是,在这一点上,微软收购 GitHub 对 GitHub 产品的负面影响非常小。GitHub 十年来一直是协作软件开发的行业标准。Bitbucket和 GitLab 将不可避免地获得一些逃离微软 GitHub 的用户,但 GitHub 在行业中的地位以及 GitHub 作为产品本身的功能实际上保证了 GitHub 的持续相关性、生存和增长。
此外,微软丰富的企业经验可以使 GitHub 成为微软的高度战略资产,特别是因为该公司将自己定位为开发人员的平台和市场。对于微软而言,收购 GitHub 并不是要将 GitHub 作为一种产品获取,而是要获得 GitHub 带来的开发者生态系统。
网上喋喋不休的大部分内容似乎都围绕着微软收购 GitHub 是否聪明,真正的问题应该是微软是否会巧妙地使用 GitHub。正如微软收购 LinkedIn 和 Minecraft 开发商 Mojang 所表明的那样,微软可能不一定会彻底改变 GitHub 所做的事情,至少,不会马上改变。
GitHub 未来何去何从?
现在微软是全球最大和最受欢迎的代码库的新拥有者,GitHub 的未来发展轨迹将完全取决于微软如何将 GitHub 视为其长期增长战略的一部分。
1. 与 Visual Studio 集成
虽然微软可以做出许多潜在的举动,但现在它拥有 GitHub,GitHub 与微软极受欢迎的开发工具套件 Visual Studio 的集成几乎是不可避免的。这符合微软的长期计划,即从 Windows 的销售业务转向其不断发展的基于云的服务生态系统。
2. 更多开发者工具
即便在现在,编程仍然存在效率低下的问题。GitHub 可以采取的最合理的举措之一就是开发其他工具来帮助开发人员专注于解决诸如错误跟踪和将应用程序部署到 Microsoft Azure 等问题,甚至可以用 AI 驱动的应用程序替换当前的 QA 工作流程。GitHub 几乎没有触及可能的表面,微软重新关注其基于云的开发者生态系统似乎与 GitHub 作为产品的潜力完全一致。
3. 吸引开发者的产品和服务
除了软件工程师之外,GitHub 已经吸引了大量的专业人士,例如产品经理。GitHub 的另一个潜在举措可能是引入了对这些专业人士有吸引力的其他特性和功能,例如集成的项目管理工具。鉴于微软希望大力发展企业应用程序和基于团队的协作工具,这使得可能性大增。
GitHub 的启示
GitHub 如今已经找到了一个新家,但它仍然有大量的经验值得我们学习。
1. 找到一个需要解决的大问题
让 Git 更容易使用是 GitHub 的目标,但这并不是最终目标。GitHub 真正的愿景是使协作和编写软件更容易。世界上每个软件开发人员都在努力解决 GitHub 试图解决的问题。这创造了一个巨大的潜在市场,GitHub 对自己的定位非常准确。
看看你当前的产品并问自己以下问题:
你的产品是否解决了一小群人遇到的非常具体的问题?或者它是否解决了很多人遇到的大而广泛的问题?专业化可以成为一个强大的差异化因素,但解决大型问题可以为你的产品提供更大的潜在市场。
你是否或者愿意在日常工作中使用自己的产品吗?
如果你不使用自己的产品,那么原因是什么呢?你的产品是否存在问题,或者你的产品声称要解决的问题是否会与自己相关?这两种情况都是严重的问题。在内部不使用你自己的产品会引发产品是否真正被用户需要的疑问。如果你没有亲身体验过你的产品所解决的问题,那么是什么让你成为解决问题的合适公司?
2. 不断解决用户痛点
GitHub 推动这种令人难以置信的增长的部分原因是该公司不仅致力于解决疑难问题,而且还致力于解决所有软件开发人员遇到的痛苦问题。这为 GitHub 创造了巨大的潜在用户群,并使公司从根本上重塑了我们所知道的软件开发方式。
想想你的产品及其在公司运营范围更广的领域,然后问问自己:
如果你能够以某种方式为现有产品添加全新的功能,那么该功能将会是什么,以及它将解决哪些问题?
为什么你的产品或开发中没有此功能?这太难了还是太宽泛?你怎么能克服这些障碍来实现这个功能?
你试图解决的问题的痛点所在?这是技术问题还是人为问题?
GitHub 之所以成功,是因为它解决了一个技术问题:开发者需要一个更好、更直观的版本控制系统,它具有解决人类问题的巨大潜力,即轻松、安全和远程协作软件项目。专注于技术问题也让 GitHub 解决了人类问题,这是 GitHub 成功的一个非常重要的因素。
3. 尽早培养企业文化
即使在早期,GitHub 也认识到了企业文化的重要性。公司刻意并积极地创造自己的文化,而不是让文化自由生长。与传统观念相反,文化不仅仅是行为的偶然副产品,它是经过深思熟虑、有意识的行动和有目的的决策的结果。文化是任何公司成长的关键因素。
看看你自己的公司,并考虑以下问题:
你公司的文化如何反应价值观?即使在早期,GitHub 也非常高兴地从传统的企业成功概念中汲取乐趣,采用相对扁平的管理结构。公司的文化对你有什么价值和品牌属性?
你的员工在多大程度上塑造了公司的文化?换句话说,公司的政策有多少是由自上而下决定的,而且随着时间的推移,由于你的雇佣而有机地出现了多少?
你的竞争对手如何看待你的公司和产品?这种看法有多少会基于你组织的文化?
后记
GitHub 通过做两件事来取得了难以置信的成功:解决一个巨大的用户痛点;并创建一个流行的、具有粘性的产品,使人们更容易一起工作和共享代码。GitHub 现在面临的最大挑战是设计一种方法来进一步将编程融入其它技术学科,同时吸引软件开发人员以外的专业人士。
鉴于微软曾对开源社区的敌意,它可能不是 GitHub 最合理的归宿。但是微软具有相当大的企业专业知识和前瞻思维的领导力,这对于 GitHub 来说有些许安慰。现在大家关心的问题是,微软将如何利用 GitHub 这个利器,让它变得更加闪耀。
相关链接:https://medium.com/@hnshah/how-github-democratized-coding-built-a-2-billion-business-and-found-a-new-home-at-microsoft-bd94d2dea2a9 ,作者:Hiten Shah,他创建了多个 SaaS 项目,比如 Crazy Egg、KISSmetrics 和FYI。 译者安翔,责编郭芮。