简评:不知为何,总感觉 GitHub 成立不止 10 年了,你们有这种错觉么?
本文是 GitHub 联合创始人兼 CEO:Chris Wanstrath 在计算机世界杂志写的文章。

当我们回顾 GitHub 过去十年,我们并不会想起某一款软件,而是想到人们用 GitHub 发生了何种改变。

十年前,GitHub 正式上线。初衷何其简单:连接开发者,通过 Git 更好开展项目。过去十年,我们已经成为一家公司、一个平台,慢慢壮大,但是初衷从未变过。并不是一个好点子或者什么大事件让这个平台特别,而是使用它的人,感谢 GitHub 十年,感谢有你。

当我们回顾过去十年,我们不会记得某一款软件,而是人们用 GitHub 做的事。全世界各地都可以用 GitHub 来分享、教授、修补、构建。在最初上线 GitHub 的时候,我们完全没有预料到它能成长如斯,如此大的体量,如此多的贡献和连接。

展望未来,我们依旧会保持简单。未来在你的手中,由你来定义。我们愿意跟随你。

与此同时,感谢你的代码,你的合并、你的文档,你共享的项目以及你在 GitHub 所做的一切。

谢谢你,10 years。

我们收集了这十年来的一些里程碑,今天在这个特别的日子,我们一起来回顾。并未下一个十年做准备。

2008.4.10:GitHub 正式发布
2008 年 4 月,我们的测试版结束,GitHub 推出了正式版,目的很简单:连接开发者,通过 Git 更容易的协同编程。

2008.4.3:Rails 转移到 Git 和 GitHub
Ruby on Rails 是内测时的首批大开源项目之一,考虑到 GitHub 基于 Rails 建立,这是一个重要的时刻。

2009.1.3:比特币的发明
比特币于 2009 年被发明并在 2010 年发布到 GitHub。迄今为止此项目已有 18000+ 的 fork,500 merged pull request 作者,它启发了数以千计其他区块链的项目。

2009.5.21:Node.js 启动
Node.js 于 2009 年推出,导致人们使用 JavaScript 的方式发生根本性变化。借助 Node.js,开发人员可以使用 Angular,Ember,React,jQuery 和 Vue 等库和框架,在操作系统上构建复杂的服务器端和桌面应用程序。该项目有效地扩展了 JavaScript 的可能性,并成功推动了 JS。

2010.11.26:Rails Girls 夏编程之夏第一次举办
Rails Girls 于 2010 年在赫尔辛基举办了首次活动。2013年,该团队开始了Summer of Code 全球奖学金计划,除了Google Summer of Code,Outreachy 等,Rails Girls Summer of Code 对软件行业的产生了持久且积极的影响。

2011.2.28:Travis CI 第一个 pull request
Travis CI 是目前新兴的开源持续集成构建项目,它现已成为了 GItHub 的主要集成工具。

2012.1.1:JavaScript 成为 GitHub上最流行的语言
在 2012 的开年,JavaScript 作为 GitHub 上最流行的语言,超越了 Ruby,Java 和 Python。今天它仍然是今天GitHub上最流行的语言。

2013.1.16:GitHub 社区用户达到 300 万
在 2013 年我们创建了第 1000 万个仓库。

2014.6.9: Docker 1.0 发布
2014 年 6 月,Docker 1.0 推出,之后一年多,Docker 引入了企业数据中心和云。它和 Kubernetes 等项目简化了 DevOps,将团队从基础架构中解放出来,以便更专注于最重要的事情。

2014.7.21:Django Grils 第一次举办
2014 年第一届 Django Girls 在柏林举办,开启了为期四年的世界各地软件培训和女性编程支持运动。

2014.10.23:微软开源.NET
.NET 和.NET Foundation 只是微软开源计划的开始。现在该公司拥有数百个开源项目。其中包括去年拥有最多贡献者的 VS Code 和 2017 年发展最快的语言之一 TypeScript。

微软也成为 GitHub 上最活跃的组织之一,数千名工程师,设计师和程序经理在平台和编程语言中贡献和发布软件。

微软和谷歌等大公司对开源软件的重视,代表了他们对软件的态度。他们向我们表明,有时候重要的不是技术,而是社区以及人们如何使用技术。

2015.3.2:虚幻引擎4 源代码免费提供
Epic Games 的团队发布了免费版本的「虚幻4」引擎,这让创意与开发更更紧密连接在一起。免费的源代码允许访问主要功能。从错误修复到 Git 集成,他们的最新版本得到了 128 个 contribution 的帮助。

由于开源游戏引擎,Game 成为了 2017 GitHub 最受欢迎的类目。Phaser,Godot Engine 和其他项目,如 Itch.io,正在塑造人们建立和分享独立游戏的方式。像 2048 这样的开源学习资源和游戏,激发了数百个 Clone,邀请了更多的人来玩和创造。

2015.9.22:GitHub class 开课
GitHub Class 使教师更容易分发代码收集作业,今天,高中、大学、编程培训机构的学生们正在使用它来学习,现在有超过 180 万个 class 的库,但这也仅仅是 GitHub 教育资源的一部分。

2015.12.3:Apple 开源 Swift
Apple 这个决定提高了新开发工具的标准,并鼓励更多的公司发布开源。

2016.7.9:阿波罗 11 代码开源
阿波罗 11 号于 1969 年登月,四十七年后,它的启动源代码登录 GitHub,其中还包含了很多彩蛋,这也证明了 20 世纪 60 年代的程序员也有幽默感。

NASA 维护者数百个开源项目,包括火星可视化地图,通过 TensorFlow 来识别系外行星的软件等等。

你还可以找到 SpaceX 这些公司的开源项目。

2017.2.10:Python 团队打开他们的第一个 pull request
在过去十年,Pyhon 已经成为增长最快的主要编程语言之一,自 2015 年来,它一直稳居 GitHub 语言前三。

Python 的历史可以追溯到 20 世纪 90 年代,近年来因为数据科学和机器学习使它飞速发展。像 Pandas 这样广受欢迎的库,也让 Python 更流行。

2017.2.15:TensorFlow 1.0 启动
谷歌在 2015年 将其内部机器学习库 TensorFlow 公开。去年,它是 GitHub 上最受欢迎的项目之一,TensorFlow 在 2017年的访问量比 2016 年多 5.5 倍。现在,TensorFlow 是数据专业人员创建机器学习模型的首选工具。

2017.5.2:30000 个 NGO(非营利组织)用户
非营利组织通过技术产生了难以置信的积极影响。去年,30000 个非营利用户通过我们展开了 Human Utility,Maven 和 ConnectHome 等活动,让世界变得更美好。

野生动物保护协会(WCS)的海洋保护涵盖 25 个国家,保护世界的珊瑚礁。在肯尼亚,WCS使用软件收集全球研究人员的数据,并通过收集物种数据,监测超过 252 公顷的沿海礁石,这相当于 260 个足球场那么大。帮助当地更绿色生态地进行捕捞。

2017.5.31:第 1 亿次 pull request 被合并
事实上,仅在 2017 一年,有 2.9 万亿行代码被提交。

2018.4.10:十年的代码,协作和提交
GitHub 正式推出十年后,我们的社区已经发展到全球拥有超过 8000 万个项目的 2700 万名开发人员。

感谢您创建的存储库,感谢您的贡献以及您构建的软件。

感谢你 10 年的代码。

原文:10 years of GitHub

GitHub CEO:GitHub 十年,感谢有你的更多相关文章

  1. 敬爱的GitHub” —— 致GitHub的一封地下信   英文原文:"Dear GitHub…" An Open Letter to GitHub

    敬爱的GitHub” —— 致GitHub的一封地下信 英文原文:"Dear GitHub…" An Open Letter to GitHub 最近,一个由开源名目(包含一些最盛 ...

  2. 【Markdown】Writing on Github - 在GitHub上写作

    Writing on GitHub https://github.com/shalliestera/Writing-on-GitHub-Chinese-Translation Markdown 基本语 ...

  3. window下配置SSH连接GitHub、GitHub配置ssh key(转)

    转自:http://jingyan.baidu.com/article/a65957f4e91ccf24e77f9b11.html 此经验分两部分: 第一部分介绍:在windows下通过msysGit ...

  4. Github和Github for windows的使用简介

    很多程序员都把自己开发的代码放到Github上,方便自己管理也有利于别人查阅.所以这两天我也捣鼓了一下这个东西,现在把怎么使用Github和Github for windows简单的总结一下. 1.现 ...

  5. window下配置SSH连接GitHub、GitHub配置ssh key

    window下配置SSH连接GitHub.GitHub配置ssh key   此经验分两部分: 第一部分介绍:在windows下通过msysGit(Git for windows.Git Bash)配 ...

  6. mac上将代码上传到github以及github对100M以上文件限制上传的处理(lfs)。

    前言 有时我们会写一些小程序来学习新的知识,但是完事之后过一段时间可能会忘记,最好的办法就是找到原来的代码看一看.现在可以将代码免费托管到一些网站上,其中最著名的非github莫属了, 今天就把这个过 ...

  7. GitHub Actions & GitHub Secrets

    GitHub Actions & GitHub Secrets tokens & private variable GitHub Secrets https://github.com/ ...

  8. github 和 github for windows 学习使用总结

    github 是最大的开源项目托管平台,是一个网站.但是它不仅仅只能托管开源项目或代码,还能作为我们备份重要资料的平台,更重要的是我们可以通过这个平台来学习和获取别人的代码,避免重复造轮子,还可以多人 ...

  9. Github入门 - Github基本使用及Github桌面版使用

    知识内容: 1.版本控制 2.Git介绍 3.Github介绍及基本使用 4.Github桌面版介绍及安装 5.Github桌面版基础使用 6.Github桌面版进阶使用 参考: http://www ...

随机推荐

  1. 01CSS的引入方式

    引入CSS方式(重点掌握) 行内样式 内接样式 外接样式 链接式 导入式 css介绍 现在的互联网前端分三层: HTML:超文本标记语言.从语义的角度描述页面结构. CSS:层叠样式表.从审美的角度负 ...

  2. leetcode583

    public class Solution { public int MinDistance(string word1, string word2) { , word2.Length + ]; ; i ...

  3. leetcode565

    public class Solution { public int ArrayNesting(int[] nums) { ; ; i < nums.Length; i++) { ; ; siz ...

  4. CSS中盒子垂直居中的常用方法

    在前端开发过程中,盒子居中是常常用到的.其中 ,居中又可以分为水平居中和垂直居中.水平居中是比较容易的,直接设置元素的margin: 0 auto就可以实现.但是垂直居中相对来说是比较复杂一些的.下面 ...

  5. GDB常用命令简介

    1.启动调试程序 gdb 调试对象,例如gdb app 2.运行程序 run 或这简写为r 3.设置断点 有几种不同的方式 1)break line 2) break file:line 3) bre ...

  6. Composer安装(windows)

    https://files.cnblogs.com/files/wlphp/Composer-Setup.zip 先下载这个安装包,一直下一步 然后设置composer全局中国景象 composer ...

  7. weblogic在linux服务器上部署应用

    SSH软件连接服务器: 服务器地址:xxx.xxx.xxx.40 用户名:xxxx 密码:xxxx 新建文件夹,用来放新代码版本,后面为代码版本号 路径:/home/weblogic 命令:mkdir ...

  8. mybatis的执行流程 #{}和${} Mysql自增主键返回 resultMap 一对多 多对一配置

    n Mybatis配置 全局配置文件SqlMapConfig.xml,配置了Mybatis的运行环境等信息. Mapper.xml文件即Sql映射文件,文件中配置了操作数据库的Sql语句.此文件需要在 ...

  9. 性能优化之_android内存

    优化内存使用主要是三个原则: CPU如何操纵特定的数据类型 数据和指令需要占用多少存储空间 数据在内存中的布局方式 处理大量数据时,使用可以满足要求的最小字节数据类型,能用short就不用int,能用 ...

  10. python 将字符串转化为可执行代码

    场景: 在一个遍历的的程序中,有一步需要调用函数,调用的方式是根据输入参数,从3个可供被调用的函数中,选择其中一个.所以写了一个dict={1:"function_a_name", ...