最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

GitLab CTO:开源是打造优秀软件的核心

  • 2018-11-07
  • 本文字数:3120 字

    阅读完需:约 10 分钟

GitLab CTO:开源是打造优秀软件的核心

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

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 的战略以及我们将如何实现我们的使命。

image

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/

采访嘉宾介绍

image

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

2018-11-07 18:401249
用户头像
蔡芳芳 InfoQ主编

发布了 781 篇内容, 共 494.5 次阅读, 收获喜欢 2748 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

AI-002-十分钟理解ChatGPT的技术逻辑及演进(前世、今生)

非典型产品经理笔记

NLP 大模型 人工智能’ ChatGPT

OpenTelemetry系列 (五)| OpenTelemetry Java Instrumentation二次开发指南

骑牛上青山

Java 调用链 OpenTelemetry 微服务调用链 agent

滴滴前端常见面试题

loveX001

JavaScript

老周的 2022 年终总结

老周聊架构

年终总结 12月月更

针对Web应用的攻击模式

穿过生命散发芬芳

HTTP 1月月更

校招前端面试题集锦

loveX001

JavaScript

运维进阶训练营 -W10H

赤色闪电

运维

从这两道题重新理解,JS的this、作用域、闭包、对象

loveX001

JavaScript

2023-01-01:remix-ide是浏览器的ide,官方已经提供地址,但是需要连接外网。如果是内网,需要自己在服务器里搭建remix-ide;另一种方式是用remix-ide的桌面版。这里只讨论

福大大架构师每日一题

云原生 k8s k3s 福大大 remix-ide

CleanMyMac2024专业Mac清理软件下载

茶色酒

CleanMyMac2024

模块五作业

Ryan

构架

云端高性能计算,华为云ECS助力企业数字化转型

秃头也爱科技

【web 开发基础】PHP类的构造方法和析构方法(59 )

迷彩

面向对象 PHP基础 构造方法 析构方法

2022年度总结-个人成长视角

非典型产品经理笔记

个人成长 网络安全 年终总结

音与影的魔法红线:双Vivid标准带来的超高清之变

脑极体

模块4

KING

校招前端二面高频vue面试题

bb_xiaxia1998

Vue

AI-001-火爆全网的聊天机器人ChatGPT能做什么

非典型产品经理笔记

nlp 人工智能’ ChatGPT

【web 开发基础】PHP中的访问方法(60)

迷彩

PHP基础 property 访问方法 类的封装 封装性

【web 开发基础】PHP面向对象中类的继承(61)

迷彩

面向对象 extends PHP基础 类的继承 类的实例化

面试官让你说说react状态管理?

beifeng1996

React

架构设计模块三作业

附加信息

架构训练营

CleanMyMac2024一款超好用的Mac清理优化工具

茶色酒

CleanMyMac CleanMyMac X CleanMyMac X2023

校招前端一面经典react面试题(附答案)

beifeng1996

React

【JVM故障问题排查心得】「内存诊断系列」Xmx和Xms的大小是小于Docker容器以及Pod的大小的,为啥还是会出现OOMKilled?

洛神灬殇

jdk JVM 12 月 PK 榜 OOMKilled

架构训练营模块二作业

gigifrog

架构训练营

从输入URL到渲染的过程中到底发生了什么?

loveX001

JavaScript

vue为什么v-for的优先级比v-if的高?

bb_xiaxia1998

Vue

弹性公网IP支持多产品灵活绑定或解绑,能为企业提供独立公网IP资源!

秃头也爱科技

架构训练营-模块二作业

Sam

架构实战营

2022前端二面react面试题(边面边更)

beifeng1996

React

GitLab CTO:开源是打造优秀软件的核心_语言 & 开发_蔡芳芳_InfoQ精选文章