博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
icpc 赞助_赞助开发对用户和开发者是双赢的
阅读量:2525 次
发布时间:2019-05-11

本文共 1313 字,大约阅读时间需要 4 分钟。

icpc 赞助

有一个神话,简单地通过将软件平台开源,合格的人就会放弃他们的夜晚和周末来为它的发展做出贡献。 除极少数情况外,开源世界并非如此。 建立贡献者社区需要花费时间,并且复杂的应用程序通常在开发人员习惯使用代码之前要经历陡峭的学习过程。

开源软件公司是许多软件开发背后的动力,形成了社区并提供了支持软件开发的资金支持。 而且,像任何其他类型的业务一样,开源软件公司也需要赚钱才能维持业务。

一种方法是通过赞助开发,其中企业最终用户向开发公司付费以开发所需的功能,但目前所选的开源软件中没有该功能。 该模型使开源软件公司能够利用其专业知识和应用程序来开发和销售可以更好地满足最终用户需求(功能和财务需求)的服务或产品。

例如,假设一家企业仅使用一件专有软件,因为它具有开放源代码平台所缺乏的功能。 如果他们与该应用程序签订年度维护合同,则与开发公司签约以将缺少的功能添加到开源平台时,他们通常可以节省资金并减少使用的工具数量。

为什么赞助开发有意义

通常,(非开源)软件开发受主服务协议(MSA)约束,该协议通常具有以下语言:

“顾问特此将公司根据本MSA(“工作产品”)提供的或以任何方式与公司财产相关的任何工作产品(包括“工作产品”)的所有权利,所有权和权益转让给公司顾问及其在工作产品中的权利,顾问不保留任何权利,并同意不质疑公司对工作产品所有权的有效性。”

在开源赞助的开发合同中这不是问题。 因为开放源代码软件旨在共享,所以开放源代码许可证基本上为公司提供了在其组织内使用该软件的无限权利,因此无需分配工作产品所有权。 但这带来了另一个问题:通常,赞助公司为许多组织将从中受益(因此开发人员愿意提供)的功能付费,但是根据开放源代码许可的条款,任何组织都可以使用它。 这导致许多潜在的赞助商提出疑问,为什么他们应该为所有人都能免费获得的功能付费? 这个问题有几个答案。

首先,赞助开发可能具有商业意义(如果没有,则无论如何都不应该这样做)。 假设一家公司每年要为专有软件支付50,000美元的维护费,因为开放源代码的替代品缺乏关键功能。 如果在开放源代码平台上开发该功能的成本更低,则该公司将逐步收回其在降低软件成本方面的投资。 此外,与等待其他人开发该功能(如果甚至可以进行开发)相比,发起人可以更快地访问该功能。

其次,将精确开发该功能以满足赞助公司的需求,并在软件的生命周期内为其提供支持。 如果他们需要功能为“蓝色”,而世界其他地方则需要其为“粉红色”,则开源开发人员可以添加一个选项使其为“蓝色”。

最终,赞助开发支持了我们所有人都受益的无数开源软件功能。 一家公司为功能A付款,另一家公司为功能B付款,依此类推。 每个使用该软件的公司都可以从所有工作中受益,因此,如果公司赞助Feature C在商业上有意义,那么就没有理由不这样做。

对于最终用户公司而言,从业务角度来说,为开源软件的关键功能提供资金通常是有意义的,并且可以帮助开发人员利用其在特定软件平台上的专业知识来推进其项目。 对于赞助公司和开源开发人员而言,赞助开发是双赢的罕见机会,更不用说整个社区都将从中受益。

翻译自:

icpc 赞助

转载地址:http://hunzd.baihongyu.com/

你可能感兴趣的文章
阶段3 2.Spring_03.Spring的 IOC 和 DI_4 ApplicationContext的三个实现类
查看>>
阶段3 2.Spring_02.程序间耦合_8 工厂模式解耦的升级版
查看>>
阶段3 2.Spring_03.Spring的 IOC 和 DI_6 spring中bean的细节之三种创建Bean对象的方式
查看>>
阶段3 2.Spring_04.Spring的常用注解_3 用于创建的Component注解
查看>>
阶段3 2.Spring_04.Spring的常用注解_2 常用IOC注解按照作用分类
查看>>
阶段3 2.Spring_04.Spring的常用注解_7 改变作用范围以及和生命周期相关的注解
查看>>
阶段3 2.Spring_09.JdbcTemplate的基本使用_5 JdbcTemplate在spring的ioc中使用
查看>>
阶段3 2.Spring_10.Spring中事务控制_2 作业-基于注解的AOP实现事务控制及问题分析_上...
查看>>
阶段3 2.Spring_10.Spring中事务控制_5 spring事务控制的代码准备
查看>>
阶段3 2.Spring_10.Spring中事务控制_4 spring中事务控制的一组API
查看>>
阶段3 2.Spring_10.Spring中事务控制_6 spring基于XML的声明式事务控制-配置步骤
查看>>
阶段3 2.Spring_10.Spring中事务控制_9 spring编程式事务控制1-了解
查看>>
阶段3 2.Spring_10.Spring中事务控制_8 spring基于纯注解的声明式事务控制
查看>>
阶段3 3.SpringMVC·_01.SpringMVC概述及入门案例_07.入门案例中使用的组件介绍
查看>>
阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_1 请求参数绑定入门
查看>>
阶段3 3.SpringMVC·_02.参数绑定及自定义类型转换_7 获取Servlet原生的API
查看>>
阶段3 3.SpringMVC·_06.异常处理及拦截器_1 SpringMVC异常处理之分析和搭建环境
查看>>
阶段3 3.SpringMVC·_06.异常处理及拦截器_4 SpringMVC拦截器之介绍和搭建环境
查看>>
阶段3 3.SpringMVC·_07.SSM整合案例_01.ssm整合说明
查看>>
阶段3 3.SpringMVC·_06.异常处理及拦截器_3 SpringMVC异常处理之异常处理代码编写
查看>>