开源正在吞噬整个互联网,成为互联网技术的默认选择。

2018年是“开源(Open Source)”这个专用名词诞生的第20个年头。由开源社主办的2018中国开源年会COSCon’18于10月20日在深圳召开,InfoQ受邀参加会议并有幸对GitLab联合创始人兼CTO Dmitriy Zaporozhets(下文简称DZ)进行了专访,聊了聊开源与人工智能、开源如何创造商业价值和保持中立性,以及开源未来的发展方向。

InfoQ:目前,GitLab上托管的开源项目中,在深度学习、机器学习等领域有哪些成功的案例?

DZ: 截至2018年9月,GitLab.com上已经有超过620万个托管项目,此外许多赫赫有名的开源项目,如Gnome、Debian、Drupal和freedesktop.org,这些项目的开发团队都在GitLab上进行协作和创新,以改进他们的软件产品。 不过我们目前还没有主动去跟踪GitLab上托管了哪些特定的机器学习或深度学习项目。

InfoQ:您能否谈谈开源与AI技术如何互相作用?

DZ: AI技术受益于开源社区,当前许多重要的AI和机器学习项目都是开源的。诸如Tensor Flow、Keras和Microsoft Cognitive Toolkit等都是我们比较容易想到的优秀项目,它们都拥有非常活跃的社区。 让人感到高兴的是,AI领域的领导者OpenAI也是开源的。 我们认为未来机器学习和AI将会成为GitLab非常重要的一部分,特别是在信号/噪声分离、推荐引擎和智能行为等方面。

InfoQ:在AI在各行业落地的时代, 目前产业环境(包含开源组织)还需要做哪些事情,还有哪些短板?

DZ: 随着人工智能和机器学习在软件系统中所扮演的角色越来越重要,开发、测试、部署和监控的复杂度也日益增加。为了能更高效地处理日渐复杂的软件系统,开发者应该将精力更多地放在如何为软件系统做贡献,而非软件工具链上。此外,如果我们能够让不同项目的开发者之间分享创意变得更加简单,那么人工智能和机器学习社区也一定能够从中受益。

InfoQ:开源如何在促进技术传播的同时创造商业价值?可以跟我们分享一下GitLab是怎么做的吗?据我所知,GitLab原本是全面开源的,但后来改成了只开放核心。

DZ: GitLab的故事非常精彩。许多开源软件无法找到合适的收费模式,所以都以失败告终。 RedHat是通过销售技术支持服务取得成功的一个优秀案例,但还有很多公司采用同样的收费模式却失败了。在如今的开源软件时代,开放核心(Open Core)已经被证明是一个可行且成功的收费模式,除了GitLab之外,Elastic Search是另一个通过Open Core的模式取得成功的例子。

开源项目鼓励更广泛的社区合作和贡献。 实际上,我们相信GitLab的使命是“每个人都可以做出贡献”,我们正在全力打造GitLab以完成这一使命。你可以通过这个页面(https://about.gitlab.com/company/strategy/)详细了解GitLab的战略以及我们将如何实现我们的使命。

InfoQ:GitLab目前已经获得了多轮融资,包括今年9月完成的1亿美元融资,并且计划于2020年IPO。为什么GitLab将IPO设定为你们的目标?这对于GitLab未来的发展有什么好处?

DZ: 我们有一个庞大且极具雄心的目标,就是要成为所有行业知识工作者中最受欢迎的协作工具,因此我们需要持续不断地对GitLab的功能和特性投入金钱和人力,以满足超越传统软件开发领域的用户需求。借助IPO,我们将能够获得额外的投资和资源,帮助我们满足来自各行各业知识工作者的需求。

InfoQ:对于微软收购GitHub,用户的反应很激烈。人们觉得,公司不独立,可能就没办法保持中立。这样,GitHub跟开发者之间的距离,就会越走越远。在最近一轮融资中,GitLab得到了Google Venture的投资,并且在今年4月份从微软Azure迁移到了谷歌云上。这是否会让外界认为GitLab正在逐渐向谷歌靠拢?你怎么看待开源代码托管平台的中立性? GitLab将如何保持中立性?

DZ: 我们迁移到谷歌云平台(GCP)是为了提升GitLab网站的性能和可靠性。我们相信Kubernetes是未来。这是一种可以实现大规模可靠性的技术。这就是今年早些时候我们与Google Kubernetes Engine(GKE)进行原生集成的原因,我们希望为GitLab用户提供一种更简单的方法来使用Kubernetes。同样的,我们选择GCP作为我们的云提供商,是因为我们希望将GitLab运行在Kubernetes上。谷歌发明了Kubernetes,而且GKE拥有最强大和成熟的Kubernetes支持。迁移到GCP是我们计划中的一个步骤,借此让GitLab为用户与特定任务相关的工作负载做好准备。

我们相信,我们的客户和用户都希望GitLab不限定于某一个云服务提供商,而是支持所有主流的云提供商。事实上,我们将继续加强与AWS和Microsoft Azure的战略合作伙伴关系。 例如,我们最近刚刚宣布支持实施部署到Amazon EKS。

InfoQ:日后的开源世界会出现怎样的发展趋势?

DZ: 开源是协作和打造优秀软件的核心。由于这些好处还会继续带来新的好处,利用开源已成为默认的商业模式。然而,时不时也会出现很多令人困惑的问题,比如滥用忠诚度,比如某些无视道德准则的商业公司。

要想成为一家成功的开源公司,首先必须成为开源的好管家。这意味着要允许开源软件和专有软件竞争,不设置免费增值方案或人为限制,同时还要消除障碍使更多人参与到开源项目的贡献中。

这种共创的方式可以提供无与伦比的改进速度和功能深度,使我们所有人受益。像Elastic、Docker、Mesosphere、Magento等开放核心公司已经向我们展示了这样一种可能:成为开源好管家的同时,也能在不损害开源社区福祉的情况下获利。

作为开源的好管家,GitLab从中收获了很多回报。我们的业务模式取决于开源贡献,我们会优先考虑改进我们的开源版本,近期我们甚至将“贡献者许可协议Contributor License Agreement”(CLA)改为“开发者原创证书Developer’s Certificate of Origin”(DCO),让每个人都能更轻松地做出贡献。

开源是一种精神,而不仅仅是许可——我们需要基于开源最初的目标来推动开源运动。反过来,开源运动保持成熟也意味着它仍然会是创造性和协作思维的温床。

InfoQ:您认为中国在开源方面表现如何?中国在开源上有什么优势?

DZ: 开源运动跨越国家和地区,让全世界的人们都能够且有能力为开源做出贡献。无论身处何地,你都能够与其他人建立联系并参与到开源运动中来,贡献的越多,就能做出更多的改进和创新。中国也不例外,中国开发者在开源社区中提供了巨大的帮助。

InfoQ:GitLab未来有什么规划?以及哪些领域是您非常看好有较大发展潜力的?

DZ: 我们的策略是在既有已被证明有效的领域加倍投注:虽然我们已经涵盖了整个DevOps生命周期,但我们希望继续增强现有功能,从最小可行的变更(minimum viable change)变为最小可接受的功能(minimum loveable feature)。

我们还将继续扩大功能的广度,在整个DevOps生命周期中构建新功能。

最后,因为我们相信每个人都可以做出贡献,我们将在产品范围中添加更多用户角色,包括高级管理人员、设计师、产品经理,以及从事软件开发和交付的任何人。我们的目标是让每个人同时在一个产品中工作。

我们承诺DevOps生命周期的所有阶段都将在GitLab CE(开源)中提供,这是短期内我们看到的最大开发潜力所在之处。

有关GitLab产品愿景的更多详情,可以查看这篇文章:https://about.gitlab.com/2018/10/01/gitlab-product-vision/

采访嘉宾介绍

Dmitriy于2011年9月开始开发GitLab项目,并且自那时起在每个月22号发布新版本。他希望打造一个自己每天都可以使用的优秀的开源项目管理系统。因为对GitLab开发工作的极度热爱,Dmitriy从2013年1月开始在GitLab全职工作。只要一有时间,他就喜欢花两天时间编写一个新的GitLab重要特性。他喜欢好吃的巧克力,还有完美无异议的合并请求。他也是GitLab CE和CI的主要开发者。

GitLab CTO:开源是打造优秀软件的核心相关推荐

  1. 【CTO讲堂】打造数据可靠、服务高可用的客服平台

    为了帮助IT从业者职业之路拥有更多收获,在诸多C粉的殷切期待下,由 CTO俱乐部打造的CTO线上讲堂自登场以来获得大家好评.本期邀请Udesk CTO肖立鹏带来"打造数据可靠.服务高可用的客 ...

  2. Apache RocketMQ 荣获 2021 中国开源云联盟优秀开源项目

    为推动国内开源生态产业发展,中国开源云联盟(China Open Source Cloud League,简称"COSCL")组织开展了 2021 杰出开源贡献者.优秀开源项目.最 ...

  3. 打造数字化软件工厂 —— 一站式 DevOps 平台全景解读

    本文为 CODING 协同产品总监张路宇 在腾讯云 CIF 工程效能峰会上所做的分享.文末可前往峰会官网,观看回放并下载 PPT. 欢迎各位朋友,来到腾讯云 CIF 工程效能峰会的分论坛,我是 COD ...

  4. [博摘]论人类最优秀软件

    论人类最优秀软件 摘自:博艺斋_博客 2007-02-01 16:21--伟大软件必须体现出突破性价值.具备很强的技术优势:研发它是前人未尝试过的艰难任务:而且最终它必须在现实世界得到广泛运用. 作者 ...

  5. tp5支持啥数据库_MS Access数据库是被严重低估的一款优秀软件

    了解我的朋友,都知道我是个计算机编程爱好者,我没事愿意鼓捣一些计算机软件编程,没事爱在朋友圈里发一发编程的截图,经常惹来一阵阵赞叹. 每当给我点赞的朋友们问我用什么编程语言开发的时候,我都如实相告-- ...

  6. 【Shotcut】开源免费视频编辑软件 - 微信视频编辑利器

    博文目录 一.Shotcut是什么?有什么特点? 二.Shotcut下载.安装 2.1 官网下载 2.2 Shotcut安装 2.3 Shotcut启动 三.编辑一个简单的微信视频号 3.1 设置项目 ...

  7. 【转载】软件爱好者必备的优秀软件网站分享收藏

    [转载]软件爱好者必备的优秀软件网站分享 前言 作为一名软件爱好者,总是忍不住去搜集体验一些新奇好用的软件,浏览过程中也发现了各式各样的软件资源相关网站,下面是我收藏的一些软件网站,分享给大家. 软件 ...

  8. 读《借助开源项目,学习软件开发》总结

    读<借助开源项目,学习软件开发>总结 GitBook文章源地址:文章源地址 一.前言 准备条件:(1)一台能上网的电脑(2)首选系统Ubuntu,其次Windows 二.开始 (1)软件开 ...

  9. 免费开源的3D建模软件

    免费的3D建模软件,包括Blender.OpenSCAD.Art of Illusion.FreeCAD.Wings3D.BRL-CAD等 一.Blender Blende是一款系统全面的3D建模套件 ...

最新文章

  1. HTML5 body设置全屏背景图片 如何让body的背景图片自适应整个屏----实战经验
  2. 2016012075 谢月月 散列函数的应用及其安全性
  3. centos ftp服务器搭建_ftp软件,ftp软件安装使用教程,利用Serv-U如何搭建ftp服务器?...
  4. javascript --- 堆栈内存与闭包的作用
  5. bootstrap 导航菜单 折叠位置_教大家如何编写一个网页导航条
  6. 第五章(1)Libgdx应用框架之生命周期
  7. P4570 [BJWC2011]元素(线性基+贪心)
  8. java jexl 工具类_jexl表达式解析、计算工具类.md
  9. 位置服务器的操作方法,hpproliantml系列服务器上机架操作方法.doc.docx
  10. javaWeb(入门基础详解)
  11. C#把文字转换成声音
  12. 无人机群编队分析的定位问题 分析与思考-1(数学建模竞赛2022年B题)
  13. 深度解析dubbo源码 (dubbo整体设计) (二)
  14. 快手用户群体分析_快手发布《2020快手用户及营销报告》
  15. 在虚拟机中安装centos6操作系统,DHCP下克隆,再使用CRT软件进行远程登录
  16. 微型计算机的拼音,微型计算机拼音
  17. CD Linux启动盘,CDlinux硬盘启动制作方法。CDlinux硬盘怎样启动制作?
  18. 从零开始写渲染Step1窗口的创建和显示
  19. Iaas、Paas、Saas都是什么意思?
  20. [BZOJ2144]跳跳棋

热门文章

  1. let声明变量时的特点
  2. hibernate mysql longblob_为什么不能将JPA / hibernate映射到MySQL blob类型?
  3. centos7 如何重启web服务_如何重启web服务器
  4. 三次握手,四次挥手(大白话)
  5. python将两个list类型的全排列转换为tuple类型
  6. Window.location.href命令在JS中跳转无效或自动忽略
  7. linux终端什么字体舒服,推荐一款 Linux 上比较漂亮的字体
  8. vue 多点触控手势_涨姿势了!Appium也可以多点触控操作
  9. java 变量与常量_java的变量和常量
  10. 康众平板探测器_2020-2025年数字化X线探测器行业市场深度调研及投资前景预测分析报告 数字化设备成为市场主流...