您好!欢迎来到源码码网

基于代码,社区,两步成为开源赢家!!!

  • 行业资讯
  • 来源:源码码网
  • 编辑:admin
  • 时间:2020-08-28 11:12
  • 阅读:517

在下一个数万亿级别的企业软件市场,哪些公司能创造出深得开发者人心的平台,哪些就能占据主导。就像之前讨论的那样,开发人员倾向于选用基于API的服务来节省时间。但是他们最喜欢哪种类型的软件?当然是开源的那种。全球有数以千万计的开发者使用的是开源源码平台,因为他们可以访问它的代码,修改应用程序,为项目贡献代码并成为社区的一份子。因此,建立在开源基础上的软件公司拥有成为有数十亿美元级别企业的潜能。

但是,开源软件的本质在于免费,如何高效变现就成为一个巨大的挑战。

在接下来的一系列文章中,我将介绍一种当前的思路,讲解如何建立一个成功的开源公司,这个思路不仅可以帮你赢得开发人员的青睐,而且还有可能带来数亿美元的年收入。在本篇文章中,我将先介绍搭建商业化开源公司框架的前两个步骤:软件的管理和社区的建成。在之后的文章中,我将更深入地探讨创办商业化开源公司的其他关键点,例如如何选择业务模型,以及如何处理与公共云服务商的竞争。


选择如何管理你的开源项目

在考虑如何赚钱之前,企业家都必须先决定如何构建和管理自己的开源项目。现在一种比较常见的治理模式是,开源公司对项目的发展施加较大的影响力,在欢迎社区成员做出贡献的同时,确保所有协作都朝着一个有完备计划的产品路线图发展。Elastic和MongoDB等公司率先采用了这种开放且受控的模式,而HashiCorp和Kong等刚刚崭露头角的新玩家也在采用这种模式,且正朝着成功的方向发展。

在特性和功能的开发方面施加较强的管控,并坚持路线图的首要地位,这一点对于想依托自己的项目建立商业业务的开源公司而言至关重要。但是,在施加管控和控制过度之间存在着微妙的平衡点。如果社区认为某家公司对用户的需求充耳不闻,想完全靠自己来开发这个软件的话,那就有可能会被看成是一家典型的“闭源”软件公司。

这里的窍门在于,要尽早清楚地向社区传达你的管理模式。企业家应向广大开发人员说明项目的管理方式,公司内部的项目负责人是谁,什么样的外部贡献是可接受的,以及这个项目是否受第三方基金会(例如Cloud Native Computing Foundation或Apache Foundation)的监督。

有那么几家新兴的私人开源公司,比如Confluent和Databricks,它们依托开源项目来开展商业性业务,而这些开源项目是第三方基金会的组成部分。(Confluent和Databricks的大部分业务分别基于Kafka和Spark,而这二者都是Apache Foundation的项目)。基于基金会的管理可能会限制公司对开源项目的控制力。但是,如果项目创始人和一大批最忠实的传播者都在该公司工作,那么公司仍然可以发挥巨大的影响力。

无论如何,公司应该解释清楚,在哪些方面公司具有最终决策权,以及在哪些方面社区成员们可以添砖加瓦。例如,一种管理模式可能会声明,所有核心功能均由公司管控,但外部开发者们可以帮忙修复bug,创建扩展包,以及建立与第三方软件的连接。


建立交流社区

当你已经设定好并向大众传达了一个开源项目的管理模式,就该着手建立一个热情而忠诚的开发者社区了。这种社区并不会自发产生,且通常需要数年的努力才能打造完成。早期创始人也是创建社区的关键人物。开源企业家通常自己也是开发者,能够了解开发人员的心态。要围绕开源项目建立社区,创始人可以参加开发者大会和黑客马拉松,参加在线讨论并撰写有关项目的技术文章。他们可以分享源代码中的小技巧,并讨论如何使用这些技巧打造创新的应用程序。

在建立开源社区时,最重要的一点是保持完全的透明。开源社区的成员对公司来说既是合作伙伴也是宣传人员。他们赞美项目的美德,写文章讲解他们如何使用代码,并为项目的技术成功做出贡献。公司对社区应该保持始终如一的尊重,请求开发人员在新功能上进行投入。对于哪些功能将在核心开源代码中保持免费,以及哪些将是付费高级功能,必须保持完全的透明公开。 

在接下来的一篇文章中,我将深入讲解如何设计一种开源商业模型,做到既支持开发者社区,又能为实现持续性收入做铺垫。我将深入探讨如何构建,管理,以及执行这样一个模型。因为一旦你已经确立了开源项目的管理结构并建成了一个忠诚的社区,那么下一步就是如何获利了。

注:我的公司GGV Capital投资了HashiCorp和Kong,我是HashiCorp的董事会成员。

感谢Aghi Marietti,Armon Dadgar,Joseph Jacks,Dave Kellogg,Dave McJannet,Erica Schultz和Jay Kreps为这一系列帖子提供友善而耐心的帮助。

原文链接:

https://www.forbes.com/sites/glennsolomon/2020/08/13/code--community-two-keys-to-building-an-open-source-winner/amp/?__twitter_impression=true

本文为 CSDN 翻译,转载请注明来源出处。

为了让大家更加即时地沟通学习,我们建了一个技术学习交流群,有想入群的同学,可以添加QQ群:996246886



特别声明:
1、如无特殊说明,内容均为本站原创发布,转载请注明出处;
2、部分转载文章已注明出处,转载目的为学习和交流,如有侵犯,请联系客服删除;
3、编辑非《源码码网》的文章均由用户编辑发布,不代表本站立场,如涉及侵犯,请联系删除;
全部评论(0)
推荐阅读
  • css中rel的属性值都有哪些,分别代表什么意思
  • css中rel的属性值都有哪些,分别代表什么意思
  • 在HTML中,元素的rel属性用于定义当前文档与被链接文档之间的关系。这个属性在CSS的上下文中经常与样式表关联,但rel属性的用途远不止于此。以下是一些常见的rel属性值及其意义:1、stylesheet:表示被链接的文档是一个样式表。这通常用于链接CSS文件。
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-03-28 12:28
  • 阅读:202
  • css中的z-index是什么意思,如何使用?
  • css中的z-index是什么意思,如何使用?
  • z-index是CSS属性,用于控制元素在页面中的层叠顺序。z-index的值决定了元素在垂直层面上的显示顺序,具有较高z-index值的元素会覆盖具有较低z-index值的元素。默认情况下,元素的z-index值是auto,这意味着元素的层叠顺序由其在文档流中的位置决定。在没有使用定位属性的情况下,后面出现的元素会覆盖前面出现的元素。
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-03-28 11:34
  • 阅读:20
  • PHP开发五种数据打印方式举例说明
  • PHP开发五种数据打印方式举例说明
  • 在PHP中,有几种常用的打印方式,包括:1、echo:用于输出一个或多个字符串。它是PHP语句,不是函数,因此没有返回值。例如:echo ”Hello, World!”; // 输出 ”Hello, World!”2、print:用于输出一个字符串。它需要一个参数,并需要使用圆括号。print函数在输出后有返回值,如果执行失败则返回f
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-01-18 23:09
  • 阅读:319
  • php开发判断字符串是否相等的方法
  • php开发判断字符串是否相等的方法
  • 本文介绍php开发中常用的字符串比较的方法,以PHP7.4为例,可以使用双等号,strcmp()方法,strcasemp()方法、strncasecmp()方法以及ctrncmp()方法,等进行判断,下边以”==”和strcmp()方法为例进行举例:// 定义插入的数据$data = [    ”name” &
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-01-18 21:04
  • 阅读:238
  • thinkphp6 No input file specified解决办法
  • thinkphp6 No input file specified解决办法
  • thinkphp6出现Noinputfilespecified错误基本上都是因为访问路径出错引起的,解决办法也很简单,打开public目录下的的.htaccess文件,对伪静态规则进行编辑,将:把:RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]改为:RewriteRule ^(.*)$ index.php [L,E=PATH_I
  • 源码教程
  • 来源:源码码网
  • 编辑:源码码网
  • 时间:2024-01-17 20:24
  • 阅读:152
联系客服
源码代售 源码咨询 素材咨询 联系客服
029-84538663
手机版

扫一扫进手机版
返回顶部