今天上午,第一届小米开源技术峰会在北京举行,会上,小米人工智能与云平台副总裁崔宝秋致开场词,并发表了《小米开源之路》的演讲。

崔宝秋强调小米一直在推动开源,也是开源的倡导者。他告诉我们雷军创立小米的其中一个重要原因是看到了Android的开源,雷军对他说过,任何一家互联网公司离开了开源就输在了起跑线上,这就是小米推动开源的源动力。

开源可以提升开发者的工程能力

过去,崔宝秋在接受InfoQ采访时曾说,提升一个工程师代码水平编程能力很好的方法就是读大量的代码,代码是一个丰富的资源库,读了之后还要写,大量的开源代码可以很快地提升工程水平,也可以提升工程文化或者工程师的文化,让大家喜欢技术、喜欢开放。而且,开源软件可以提升人们对编程的热爱,也使得开发者对代码质量更加苛求,提升大家对完美度的追求。

对于公司来说,开源可以吸引人才,一个公司拥抱开源,崇尚开源文化,可以吸引更多工程师加入你的公司。

小米开源基于“5项原则”

崔宝秋表示,小米的开源战略基于5个原则:

1.速度要快;

2.不重造轮子,重造轮子会浪费公司资源,反之,我们不仅应该站在巨人的肩膀上,还要努力为巨人指方向;

3.不用则已,要用则精,在这方面,中国的很多公司犯了很多错误,没有用精,其实是对开源软件的不信任,不信任的原因是因为没搞定,只拿来用,用的很不舒服,没碰到真正困难的时候一切都好,一旦上线、集群大小不够,一扩容就容易出问题,所以要用则精,要深度掌握;

4.永抱开放和共享的态度,这是工程师文化的一个重要组成部分;

5.极力推出自己的committer,有的项目很成熟了,不需要参与,有的开源项目自身比较封闭,在一个正常的开源项目上能够参与就积极参与,但需要注意的是,即使推出自己的Committer,也要做到不用则已,要用则精。

小米的开源之路

小米的开源之路从2012年开始,下图囊括了这几年小米在开源上的重大成就。

业务驱动开源

开源是需要大量投入的,那么如何平衡开源和业务上的投入呢?崔宝秋认为业务第一,开源第二,公司业务发展不要本末倒置,业务永远是第一位的,开源应该是业务驱动的,而不是跟风。

开源还需要与社区融合在一起,孤军奋战很难对开源软件有任何影响力,推出Commiter,其中一个原因是除了精通掌握代码以外,还需要拿到一定的话语权。中国的很多公司犯的一个错误是:在开源上,只是自己玩得嗨,做出来的东西根本不被人所接受,是因为这些公司做了自认为很好的东西,也很有通用性,但由于社区没接触过他们的业务,不会对这些项目产生信任,最终,不管好的、坏的项目,都会被社区抛弃。所以,以开放共享、与社区共同成长的态度去开源才能长期享受开源红利,封闭开发、短期受益,最终会被社区所抛弃。

最后,崔宝秋认为在AI时代,应该呼吁广义的开源,广义开源是指不仅开源代码、深度学习框架,还应开源数据,因为在AI时代,大数据扮演重要角色。再者,如果开源项目变得封闭,将不利于整个开源社区、开源软件的成长,HBase项目之所以做得很好是因为项目负责人的领导风格非常开放、友好、透明,所以在AI时代,开源还应该更加开放。

相关推荐


12 月 7 日北京 ArchSummit 全球架构师峰会上,来自阿里、京东、Streamlio 的讲师齐聚一堂,共同分享“Apache Pulsar 解决运维痛点”、“Dubbo 应用实践”和“Flutter 在京东的实践效果”等开源技术相关经验与实践。详情点击 https://bj2018.archsummit.com/schedule

小米:开源不仅要站在巨人的肩膀上,还要为巨人指方向相关推荐

  1. “站在巨人的肩膀上”

    站在巨人的肩膀上需要拥有巨人的实力 容易错误理解成:"盗取"巨人的成果并漠视了巨人

  2. 【Visual C++】游戏开发笔记三十五 站在巨人的肩膀上:游戏引擎导论

    看到在留言中很多朋友提到不太清楚DirectX与游戏引擎的区别的问题,在这里浅墨就专门把自己对游戏引擎的一些理解写成一篇文章,作为我们<Visual C++游戏开发>专栏的游戏引擎导论,也 ...

  3. 游戏开发笔记三十五 站在巨人的肩膀上:游戏引擎导论

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhmxy555/article/details/8250057 作者:毛星云(浅墨 ...

  4. 站在巨人的肩膀上“思考”问题,重在思考而不是拿来主义

    米老师按:觉得值得讨论的小文!我还要认真地想一想 主题:围绕职责链设计模式-计算收费有效时间博客展开讨论 参与人: 讨论时间: 讨论内容 这次讨论主要分为以下几点: 一.职责链模式应用于机房收费系统计 ...

  5. 站在巨人的肩膀上看Servlet——原来如此(更适合初学者认识Servlet)

    前言: 有段时间没更新博客了,这段时间因为要准备考试,考完试后又忙了一阵别的事,一直没能静下心来写博客.大学考试真是越来越恶心了,各种心酸,那酸爽,够味.不过还好,马上就要大三了,听大三学长学姐说大三 ...

  6. 3小时快速入门数学建模竞赛-建模技巧2:追根溯源,站在巨人的肩膀上

    我们要检索哪些信息?和怎样获得快速.准确的信息?这两个问题. 首先回答第一个问题,我们需要检索哪些信息?我们从我们需要求解的内容入手,请看思维导图和系统框图,我们需要求解35年寿命期内的发电总量.经济 ...

  7. 知识就是力量,让机器站在巨人的肩膀上

    作者:微软亚洲研究院 闫峻博士 知识是什么?抽象来说,是人类对世界的认知,对宏观及微观世界客观规律的总结.具体来说,大到牛顿定律.量子力学中的科学发现,小到自家孩子的生日.太太做饭常用的酱油颜色,都是 ...

  8. 站在巨人的肩膀上看世界,MySQL初步使用语法

    站在巨人的肩膀上看世界,MySQL初步使用  MySQL是一个常用的数据库,对于他的使用,我们需要尽量的了解它,但是掌握初步的语法,也可以勉强使用它,这都归功于它的研发者们.正是因为这些大佬,写好了软 ...

  9. 站在巨人的肩膀上:C#编写WindowsService

    本文将为大家详细介绍如何用C#编写一个系统服务,当然肯定不是教大家从头写,而是在一个搭建好的框架上进行自我创作! 一.项目整体架构 本项目的开发是针对某设备的开启异常情况进行邮件提醒,针对监控到的未开 ...

最新文章

  1. insert语句让我学会的两个MySQL函数
  2. Python3 configparser 中文乱码
  3. pytorch张量的简介与创建(代码)
  4. 【相对/绝对路径】JavaWeb项目中,请求转发与重定向的路径写法
  5. mysql my.cnf在哪里_my.cnf配置文件在哪
  6. 重磅!全球Top 1000计算机科学家h指数公布:中国53位学者上榜!张宏江居大陆科学家之首...
  7. rrpp协议如何修改_RRPP协议做为高级网络工程师不能不懂的技术带你快速学习
  8. U盘无法格式化--量产工具成功救活
  9. 天津互联网公司和生活成本
  10. Mac如何查看系统根目录
  11. 金蝶——“免、抵、退”税操作说明及帐务处理
  12. Redhat之NIS
  13. Matplotlib自定义图例(多张独立图共享图例)
  14. 给博士一年级新生的建议!
  15. C语言——整数直角三角形
  16. vs code无法输入汉语
  17. 【大数据AI人工智能】图数据库的发展脉络与技术演进
  18. CADD课程学习(13)-- 研究蛋白小分子动态相互作用-I(GROMACS)
  19. win7笔记本电脑安装ubuntu18.04双系统配置过程记录
  20. python抓取搜狗微信公众号文章

热门文章

  1. [敏捷开发实践](2) 用于开发和维持复杂产品的敏捷开发框架Scrum
  2. 触控(Touch) 、 布局(Layout)
  3. POJ1276Cash Machine
  4. winform配置文件的简单使用(转载)
  5. 第五篇:Visual Studio 2008 Web开发使用的新特性
  6. 博客园今天早上是不是出现什么问题了?
  7. Eigen/Matlab 使用小结
  8. VML 画统计 柱状、饼图、折线
  9. Colly源码解析——结合例子分析底层实现
  10. Windows客户端C/C++编程规范“建议”——变量和常量