
PySonar2 一度处于开源状况,应用宽松的 BSD 和 Apache 版权。PySonar 的用户包含了 Google,Sourcegraph,还有其它几个我不克不及泄漏名字的做专业代码治理对象的公司。很多人崇尚 BSD 如许的宽松版权,因为如许可以最大年夜限度的传播代码。他们甚至把这作为了一种崇奉,对于 GPL 这类严格限制贸易用处的版权嗤之以鼻。甚至遮住眼睛对你说:“你的代码是 GPL 的,我不克不及看!看了之后写出一样的代率攀来,你会告状我!” 然而多年的经历之后,我才发明 BSD 并不是好的开源版权,而 GPL 才是真正保护软件“自由”的。这个故事要大年夜 Sourcegraph 讲起……
Sourcegraph 是一家做代码治理对象的公司。他们初期的体系,其实只是 PySonar 之上做了一个简单的 web 包装。把 PySonar 分析出来的信息倒到数据库琅绫擎,然后经由过程 web 方法显示给用户。PySonar 本身早就有一个演示法度榜样,可以生成互动的 HTML,所以其实 Sourcegraph 能做的工作,我很轻易就可以做到,只不过多一些杂活罢了。Sourcegraph 并没有在 PySonar 之上增加很多的新器械,也无法做出 PySonar 如许的核心技巧。然则因为我一向不在乎 Python 这说话,也没认为这种对象有什么市场,所以一向没有着手开辟一套完全的办事。不是不克不及做,而是没有动力去做。
BSD 的版权使得 Sourcegraph 的两个开创人可以完全免费,无穷制的应用 PySonar。如许的结不雅,使得我无法为 PySonar 收到任何的回报。后来 Sourcegraph 的两小我找到我,想招我进去,赞助他们制造 RubySonar 和改进 PySonar。如许就开端了经济的不均衡。Sourcegraph 应用了 PySonar,按理我不须要别的做什么,就应当有必定的回报。然而如今他们把我招进去作为员工,我必须要做点其它工作,才能获得回报,也就是说我反倒成为了他们的打工仔。几个月之后,我逐渐发明这两小我的肤浅和不尊敬。最后在获得了最重要的技巧改进之后,两个开创人翻脸不认人,把我赶出了公司。
新的 PySonar2 琅绫擎已经没有了 Google 的代码。因为对人心的掉望,我曾一度把 PySonar2 的版权改为 AGPL。这是 GPL 的加强版,它请求任何应用这些代码的人和公司,在对它做出改进之后,必须把改进的代码能让人下载。就算你在本身的办事器上运行这些代码,不把它作为产品供给给人,也一样须要让人可以或许下载到改进的代码。
把版权改为 AGPL 之后,出现了一个奇怪的工作。申请美国绿卡的时刻,我找以前 Google 的上司要一封“工作经历证实”。这本应是一种公司应当无前提供给给任何前员工的文件,然而我的旧上司却对我说:“我可以给你这个证实,然而我想让你给我一个好处。你的 PySonar2 如今改成了 AGPL 版权,我们想用你的代码,却因为这个版权没法用。你可否把版权改为 BSD 一类的,如许很多人都可以用它?” 面对如许的无理请求,我很小看。所以干脆没要 Google 的工作经历证实,直接找其它公司开了证实。
又过了一段时光,我感到 AGPL 似乎确切限制了 PySonar 的应用,所以又把版权给换成了 BSD,进而换成了 Apache,一种比 BSD 还要宽松的版权。刚换成 BSD,我就发明有一家代码对象公司 fork 了 PySonar,最新的 commit 正好是改为 BSD 版权的时刻。这个公司大年夜来没愫系过我,大年夜来没感激我,只是本地里在用 PySonar 来赚钱。曾经一向在用 PySonar 的另一家公司的开创人 Z,当天也发信来跟我说:“正在推敲给你版税呢,结不雅你就换成 BSD 了。哈哈哈!” 这是什么意思呢?本来都要付钱给你了,结不雅你换了 BSD,所以我就不给你钱了,就是这个意思。不过他最后照样象征性的给了一千美元。
我做出了一个可能让很多人遗憾的决定。大年夜今天开端,我曾经开源放在 GitHub 上的代码,除了教导性质的代码,全部进入私有状况。这些代码包含 PySonar2,RubySonar 等等。大年夜今今后,除非用于教导目标,我将不再开源任何代码。当然,你们已经下载的那些代码,仍然可以按照开源许可证免费应用,然而最新的改进以及将来的新产品,将全部闭源。做出这个决定的大年夜部分原因,是因为多次对人心的掉望。
我一向把 Z 作为同伙。日常平凡如不雅他申报点 PySonar 的 bug,我愿意免费给他改进。我给他介绍投资人,甚至给他介绍妹子…… 我并没有图他什么,并没有请求回报。我只是想积点德,将来总有好的后不雅吧。然而,前几天当我宣布分开美国的时刻,我才发明我的好心,其实并没有好报。Z 发信息来,说看我想回国,所以想招我进他的公司。给我开了一个价,具体的数字我就不说了,不过这个工资,如今国内是个法度榜样员都能拿到。我想给那点钱,给他当个参谋,关键时刻给点偏向,隔几个月改改 PySonar 的代码也就算了,结不雅他请求我全职给他工作。嘲笑了他开得太低,结不雅获得的答复是:“你做出过什么真正的产品吗?” 是的,PySonar 不是真正的产品。你在外面做个包装界面,然后功绩都是你的了,我还得给你打工?哎,我再也不信赖任何免费用我代码的人了。
这就是我用 BSD 版权发行有价值的代码的辛酸史。因为这个原因,大年夜今天起,我的代码完全进入闭源状况。没有人再能免费获得 PySonar 最新的改进,没有人再能看见我最新的技巧。别的,PySonar 其实一向以来都有一个为开源的分支,琅绫擎含有对于静态分析逻辑的重大年夜改进。大年夜今今后,这一切都只能属于我私有,它们个一一些将会成为我将来产品立于不败之地的支柱。
【编辑推荐】
- 大年夜代码构建到机能分析,Java开辟人员的首选对象
- 如安在Webpack中履行代码瓜分
- Python一行代码完成并行义务
- 代码真的有须要写到完美吗?
- 用Async函数简化异步代码
推荐阅读
来自顶尖AI研究员的忠告:听说你也在做AI,这里的四个坑千万别踩!
人工智能越来越热,想要在人工智能范畴创业的人也随之涌入,但在人工智能范畴创业,有很多须要留意的处所。近日,曾经和George Hotz一路在comma.ai研发无人驾驶汽车的Eder Santana专门撰>>>详细阅读
本文标题:为什么我的代码进入闭源状态
地址:http://www.17bianji.com/lsqh/34878.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示