加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 云计算 > 正文

GitHub被收购,Stack Overflow裁员:后开源时代,开源的未来在哪儿?

发布时间:2018-06-24 07:54:22 所属栏目:云计算 来源:站长网
导读:6 月 4 日晚间,微软以 75 亿美元的价格收购了 Github。此时,GitHub 有超过 2700 万开发者,托管多达 8000 万代码。不过却一直没有盈利,2016 年前三季度营收 9800 万美元,亏损 6600 万美元。在更早以前的 2017 年 11 月,Stack Overflow 宣布裁员 20%。
副标题[/!--empirenews.page--]

GitHub被收购,Stack Overflow裁员:后开源时代,开源的未来在哪儿?1

6 月 4 日晚间,微软以 75 亿美元的价格收购了 Github。此时,GitHub 有超过 2700 万开发者,托管多达 8000 万代码。不过却一直没有盈利,2016 年前三季度营收 9800 万美元,亏损 6600 万美元。在更早以前的 2017 年 11 月,Stack Overflow 宣布裁员 20%。彼时,这个在线社区拥有着超过 5000 万名开发者和其他人员,聚集在此讨论编程和其他事项。

而在此之前,开源世界还是一片火热的景象。我们已经目睹了开源在初创公司的发展过程中所扮演的重要角色,不过事实不仅限于此。

开源改变了初创公司,而初创公司也反过来改变了开源。两个典型的初创公司,GitHub 和 Stack Overflow,它们一起为软件技术开启了新的篇章。我们现在所做的决定将影响着软件行业未来 5 到 10 年的发展走向。要想知道为什么,我们需要从头讲起。

70 年代~80 年代:软件行业的开端

在 70 年代,所有人都在开发自己的软件,都在组建自己的电脑。IBM 在 1981 年发布了 IBM PC,也就是所谓的“个人电脑”,从此让硬件市场繁荣了起来。

随着硬件的繁荣,软件也搭上了这趟顺风车。商人从 IBM 身上看到了巨大的市场机会,而风险资本意识到软件比硬件的风险更小,而且更具上升的潜力。

于是,红杉资本注资 Oracle 开发数据库软件,IBM 委托微软为他们的个人电脑开发操作系统 MS-DOS。

突然间,开发自由软件的想法变得不受待见。软件开始变成商品。试想,如果你可以因此赚上百万美元,有什么理由不去做?

开发自由软件开始受到排挤,变成了反主流文化。如果你开发自由软件,你就无法跟上 Oracle 或微软的步伐。如果有人开发自由软件,那么他们也只是想把它们作为平台,而绝非产品。

这些程序员聚集在邮件列表和 IRC 上一起写代码,并且把代码公开放到网站上。任何人都可以根据需要使用和修改这些代码。

不过这些软件项目也并不好过,毕竟它们不带有商业性质。

如果你想为某个项目贡献代码,你必须先加入到维护者的联系通道。它们可能是 IRC,也可能是邮件列表,或者你需要先向他们发送一封自我介绍邮件,更有甚者你可能根本无法找到他们的联系方式。

这些项目不仅没有标准的沟通方式,也没有标准的开发工具。

开源项目使用版本控制系统来跟踪开发者对代码所做的修改。通过这种方式,开发者避免了重复工作和变更冲突。

在今天,如果有人说到版本控制,很多人会想到 Git,但其实除了 Git 之外还有很多其他系统,比如 SVN 和 CVS。每种系统的工作方式都有点不一样,开发者可以选择他们喜欢的系统。

所以,如果你想为某个项目贡献代码,必须先弄清楚要联系谁,以及如何跟他沟通。在你可以贡献代码之前,需要先做足功课。

90 年代后期:开源开始流行

在 90 年代后期,事情开始发生转变。很多组织开始使用 LAMP(Linux、Apache、MySQL、PHP)技术栈,这个技术栈所包含的工具都是开源的。此时,几乎所有人都可以开发几近免费的软件系统。

不过大公司仍然认为开源是一个笑话。Steve Ballmer 视 Linux 为“毒瘤”,并认为“人们需要适当地为软件支付费用”。Bill Gates 在 1976 年写了一封公开信谴责盗版 BASIC 软件的“业余爱好者”,并说他们是在“偷窃”:

谁能够毫无目的地做着这些专业的工作?那些业余爱好者可以花上三年在编程上,并修复缺陷、写好产品文档,最后免费发布出来,他们可以从中得到什么?

不过不管怎样,初创公司对 LAMP 技术栈很感兴趣,因为他们只要为之付出收费软件十分之一的成本。因为使用这些免费软件,他们不需要太多的钱就可以启动他们的业务。

开源软件开始占领市场。

随着越来越多的人开始使用开源软件,开发者需要更好的工具来管理他们的项目。VA Research 公司看到了机会,他们出售预装了 Linux 操作系统的个人电脑,这里的 Linux 也就是 LAMP 技术栈里的“L”。

VA Research 公司发现越来越多的人使用开源软件,对他们的业务来说就越是有好处。于是在 1999 年夏天,该公司的一些员工决定开发一个协作工具,名字叫作 SourceForge,并在同年秋天发布。

开发者在 SourceForge 上开发开源软件,SourceForge 成为一个标准的开源项目网站。开发者可以在 SourceForge 上免费存放代码、管理他们的项目、跟踪缺陷,这些事情都在一个地方完成。

不过版本控制仍然是一个棘手的问题。

Git 是如何改变一切的?

开源操作系统 Linux 变得越来越受欢迎,不过 Linux 项目使用的版本控制系统 BitKeeper 不是免费的。虽然 Linux 之父 Linus Torvalds 喜欢 BitKeeper(BitKeeper 为他们发放了“社区许可”),但大部分开发人员对他的决定并不认可。

作为所有权软件,BitKeeper 对它的用户做了很多限制。例如,如果有人在 Linux 上使用 BitKeeper,他们就无法在 SVN 或 CVS 中打开 BitKeeper 管理的代码。

2005 年,BitKeeper 的开发者宣布,因为许可方面的问题,BitKeeper 结束对 Linux 的免费支持。BitKeeper 用户要么被迫接受一项商业协议,要么去寻找其他解决方案。

Linus Torvalds 并不喜欢现有的任何一款免费的版本控制系统,于是他决定自己开发。2005 年,Linus 发布了一款新的版本控制系统 Git。

对于这个名字,Linus 开玩笑地说自己是一个“任性的混蛋”,总是“让所有项目使用跟自己有关的名字”。“git”在英式俚语里是“不高兴的人”的意思。也就是说,除了 Linus,还有很多人都需要一个更好的版本控制系统。除了 Linus,其他开发者也喜欢 Git。Git 速度更快,而且它是分布式的,可以处理多个代码贡献者。

不过 Git 不是很直观,它跟其它的版本控制系统很不一样。SourceForge 并不支持 Git。

几年之后,SourceForge 迎来了新的竞争对手。2008 年,两个新的协作平台 GitHub 和 Bitbucket 出现了。它们都是很好的协作平台,不过它们之间有很大不同:Bitbucket 只支持 Mercurial,而 GitHub 只支持 Git。

在 BitKeeper 惨败之后,Matt Mackall 发布了 Mercurial,Linus 几乎在同一时间发布了 Git。Mercurial 和 Git 之间的竞争趋于白热化。

不过最后,GitHub 算是压对了筹码。

Linux 和其它优秀的开源项目转向了 Git。GitHub 让本来不是很直观的 Git 变得易于使用。

2010 年,SVN 在版本控制系统市场占据着主要位置,有 60% 的软件项目在使用 SVN,而使用 Git 的仅 11%。但在今天,Git 几乎占据了 SVN 原来的市场份额。

Bitbucket 最初使用的 Mercurial 现今只有 2% 的软件项目在用。GitHub 成为代码协作的首选平台。开源需要具备以下两个条件:

1. 标准的沟通方式

2. 标准的代码管理方式

GitHub 满足了以上两种需求,并且提供了更多的功能,比如新的社交机制,开发者之间可以互相关注,并且可以通过新闻种子查看项目变更。现在开发者还具有:

3. 标准的 Web 社交方式

到这里,整个故事就完整了。

Stack Overflow:为代码寻求帮助的地方

GitHub 成为代码协作的集中地。那么当开发者在碰到困难时该怎么办?他们一直在互相请教,并分享知识。

编程书籍因此变得非常受欢迎。有时候,人们会在私人邮件或邮件列表里讨论问题。不过,还没有一个专门的地方可以用来讨论代码内容。

1996 年,Experts-Exchange,作为第一批.com 网站,为 IT 从业者提供了一个可以寻求帮助的地方。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读