产品开源,但不希望别人拿我的程序和我竞争,应该选哪个开源协议呢? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
JarvisTang
V2EX    开源软件

产品开源,但不希望别人拿我的程序和我竞争,应该选哪个开源协议呢?

  •  1
     
  •   JarvisTang 2020-08-09 14:25:46 +08:00 8898 次点击
    这是一个创建于 1959 天前的主题,其中的信息可能已经有所发展或是发生改变。

    求教各位

    产品开源,不限个人学习或商业使用,但是不想别人优化改良后再以新产品与我的产品竞争,应该选哪个开源协议合适呢?

    47 条回复    2020-08-10 11:15:50 +08:00
    changdy
        1
    changdy  
       2020-08-09 14:28:28 +08:00   4
    闭源协议.
    zcjfesky
        2
    zcjfesky  
       2020-08-09 14:28:58 +08:00 via Android   16
    没啥区别,真要抄你的人不会管你用啥协议,遇到南山必胜客你还可能会被反告
    yankebupt
        3
    yankebupt  
       2020-08-09 14:29:55 +08:00
    允许商业使用但禁止竞争的意思是 ZF 专用么?
    别打我(包括楼下
    WittBulter
        4
    WittBulter  
       2020-08-09 14:29:56 +08:00   1
    如果不希望别人出现商业形式竞争,那就 GPL,基于你的开源项目做了修改的任何项目都应该开源且继承 GPL 。
    neoblackcap
        5
    neoblackcap  
       2020-08-09 14:33:16 +08:00   3
    那你应该是用 AGPL,别人做云服务都要给你全部开源。一般看到 AGPL 都会掉头就走,当然你可以出双授权协议,开源用 AGPL,闭源用 EULA
    yankebupt
        6
    yankebupt  
       2020-08-09 14:34:21 +08:00
    4 楼说的可能最接近,鼓励竞争同时压制恶意竞争(没有被恶意解释的话,南山 xxx......
    swulling
        7
    swulling  
       2020-08-09 14:34:52 +08:00 via iPhone
    适合你要求的人应该没有现成的,最接近的是 CC 中有禁止商用的几个协议。

    但是许可证本身你也可以自己找个律师让他帮你写一份,内容随你,但是打官司认不认不好说
    swulling
        8
    swulling  
       2020-08-09 14:36:37 +08:00 via iPhone
    @WittBulter GPL 也好,AGPL 对方只要满足公开代码依然可以和 lz 竞争,不满足 lz 的条件。

    比如同样的代码别人收费更少,服务更好,还是会有抢生意
    hoyixi
        9
    hoyixi  
       2020-08-09 14:41:38 +08:00
    想法很好,但是如果你打算在国内靠这代码赚钱或者创业之类,最好不要开源
    neoblackcap
        10
    neoblackcap  
       2020-08-09 14:42:29 +08:00
    @swulling 那就学 unreal 那一票游戏引擎好了,公布源代码,但是授权用 EULA
    wdhwg001
        11
    wdhwg001  
       2020-08-09 14:51:27 +08:00 via iPhone
    你的开源只是作为源码参考、展示炫耀的话,那么就保留版权、开放不可轻易 build 的源码即可。
    如果你还要收集建议的话,可以让源码可 Build 。
    firefox12
        12
    firefox12  
       2020-08-09 15:25:59 +08:00   1
    如果想赚钱,那就闭源。如果开源了,别人靠这个代码就能打败你,说明这里的技术含量并不高。

    最后泼冷水,你的代码没这么值钱。
    zhuangzhuang1988
        13
    zhuangzhuang1988  
       2020-08-09 15:28:19 +08:00
    facebook 的 mit + 附加协议
    wzzzx
        14
    wzzzx  
       2020-08-09 15:33:05 +08:00
    比较好奇有什么代码是只有你能写,别人写不出的。代码是不值钱的,跟你竞争的是别人的商业头脑
    GBdG6clg2Jy17ua5
        15
    GBdG6clg2Jy17ua5  
       2020-08-09 15:41:26 +08:00 via iPhone
    不要开源
    miniwade514
        16
    miniwade514  
       2020-08-09 15:45:32 +08:00
    @wdhwg001 思路独特。你可以下我的代码,但是你跑不起来,哈哈。
    neoblackcap
        17
    neoblackcap  
       2020-08-09 15:54:50 +08:00   1
    @miniwade514 其实不是什么特别的思路,因为之前就有人做过。在早很多年之前,CentOS 的维护者就说过同样的源代码,他们编译出来的产物就是不如 RHEL 上面一样的软件效率快。所以他们是怀疑红帽对编译脚本进行过优化,但是没有放出来。
    newee
        18
    newee  
       2020-08-09 15:56:47 +08:00 via iPhone
    协议只是协议,如果别人不遵守协议咋办。你可以搞一个社区版开源,商业版闭源。
    CODEWEA
        19
    CODEWEA  
       2020-08-09 15:57:33 +08:00
    当然是自己留一手,搞两种版本的,开源阉割版本
    wdhwg001
        20
    wdhwg001  
       2020-08-09 16:09:48 +08:00 via iPhone
    @miniwade514 但是不绝对,参考红帽和 CentOS 。
    charlie21
        21
    charlie21  
       2020-08-09 16:10:47 +08:00
    开源一个假的 甚至有误导性的源代码
    loading
        22
    loading  
       2020-08-09 16:35:16 +08:00
    先申请一个相关专利,然后随便你怎么开源,谁牛逼就告谁。
    akring
        23
    akring  
       2020-08-09 16:39:46 +08:00
    这种情况建议闭源,强行开源不是给自己找麻烦么
    maduoduo
        24
    maduoduo  
       2020-08-09 17:20:20 +08:00
    开源协议除了你用公认的开源协议以外,你也可以自己撰写这个项目特定的开源协议,然后把你公开和反对的内容都写在里面就可以。
    huayumo
        25
    huayumo  
       2020-08-09 17:44:46 +08:00
    开源的意义不大,建议自己用就好,又想让别人做贡献,又不想别人超过自己
    avrillavigne
        26
    avrillavigne  
       2020-08-09 17:47:30 +08:00
    专利诉讼,也需要时间。 如果是面向大众的软件,靠的还是运营。。
    shyangs
        27
    shyangs  
       2020-08-09 17:49:50 +08:00
    CC BY-NC
    black11black
        28
    black11black  
       2020-08-09 17:54:22 +08:00
    @neoblackcap 查了查,查不到 eula 协议的文本啊。不像一般开源协议一查就有
    micean
        29
    micean  
       2020-08-09 17:58:18 +08:00 via Android
    个人项目选择何种开源协议都要考虑维权成本问题……最好还是按前面说的,要么闭源,要么双版本
    a719114136
        30
    a719114136  
       2020-08-09 18:08:17 +08:00 via Android
    自己写一个协议。

    另外你这个描述是有冲突的,不能和你竞争那不就相当于不可以商用,商用必然会和你有竞争。

    那你这个开源还有啥意义??
    herozzm
        31
    herozzm  
       2020-08-09 18:28:13 +08:00   1
    @wzzzx 你这话说的,windows 代码不值钱?你能写出来?
    echo1937
        32
    echo1937  
       2020-08-09 18:31:08 +08:00   1
    一般常见的开源的目的有这些:
    - 弄出来了一个可能有用的东西,但我自己精力有限,开源出来清大家一起帮忙开发。
    - 弄出来了一个东西,我希望它能够抢占市场,避免别人使用其它方案,为了抢夺话语权,我将它开源,从而打压竞品。
    - 弄出来了一个东西,将他开源,从而证明我自己的能力。

    Linux 的开源是第一个理由,
    Android/Apache 的开源是第二个理由,
    最大同性交友网站上的软件们有些是第三个理由。

    作者:pansz
    链接: https://www.zhihu.com/question/23909210/answer/1393678873
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    所以 GPL 系的协议比较接近你的需求。
    gejun123456
        33
    gejun123456  
       2020-08-09 18:34:49 +08:00 via iPhone
    不要开源 要么靠广告赚钱
    akira
        34
    akira  
       2020-08-09 20:05:52 +08:00
    选哪个开源协议 都没用
    tairan2006
        35
    tairan2006  
       2020-08-09 20:05:58 +08:00
    GPLv3
    neoblackcap
        36
    neoblackcap  
       2020-08-09 20:51:38 +08:00
    @black11black EULA 即最终用户授权协议,你给钱找律师写吧
    webshe11
        37
    webshe11  
       2020-08-09 21:03:53 +08:00
    AES 协议,开源密文
    FS1P7dJz
        38
    FS1P7dJz  
       2020-08-09 21:54:02 +08:00
    条条大路通罗马
    一个实现有几百种方法

    更何况,你开源目的是啥?让别人帮你找 bug 修 bug?
    仅仅是免费使用,并不需要开源啊
    iConnect
        39
    iConnect  
       2020-08-09 23:51:43 +08:00 via Android
    @zhuangzhuang1988 fb 旗下 react 有附加协议被骂死了,fb 已经取消 react 附加协议,只保留 mit 了。
    passerbytiny
        40
    passerbytiny  
       2020-08-10 04:54:27 +08:00
    商业化开源卖(租)的是服务(一群特别的人)而不是代码,个人就不要想这种形式了,单个人要么不够价值要么直接被包养。
    Rheinmetal
        41
    Rheinmetal  
       2020-08-10 07:37:06 +08:00
    如果只想达到个人免费的话发布免费 binary 就行了
    加壳甚至功能放到服务端都能给破了 开源就更别说了 不要脸的话怎么都能竞争
    greatbody
        42
    greatbody  
       2020-08-10 09:21:45 +08:00
    建议考虑下自己写一个协议,中心思想就是个人使用不限制,但需要提交发行的修改代码。商业使用完全禁止,就可以了。

    个人使用不会和你构成竞争的。
    SynMax
        43
    SynMax  
       2020-08-10 09:43:51 +08:00
    国内的问题不在于用什么协议,而在于它们可能根本不知道世界上还有协议这种东西。
    BigDogWang
        44
    BigDogWang  
       2020-08-10 10:03:45 +08:00
    楼主,开源的目的有两个:
    1. 打名声
    2. 召集社区一起修复项目 bug
    如果你两个都不想要,就闭源,不要为了开源而开源
    tzigone
        45
    tzigone  
       2020-08-10 10:17:33 +08:00
    怕竞争还开源做什么,代码一出就是为爱发电.
    nrtEBH
        46
    nrtEBH  
       2020-08-10 11:07:40 +08:00
    在中国开源协议就是废纸吧
    软著和专利先申请起来
    BadAngel
        47
    BadAngel  
       2020-08-10 11:15:50 +08:00 via Android
    关键代码剥离,开源其他代码调用封装 SDK 接口
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2653 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 39ms UTC 13:15 PVG 21:15 LAX 05:15 JFK 08:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86