10k+ star 的项目也搞假开源

2023-07-31 12:47:00 +08:00
 sloknyyz

项目名:immersive-translate
这个项目最开始是这个仓库 https://github.com/immersive-translate/old-immersive-translate, 并且 fork 的另一个项目
有名气后,换成了这个仓库 https://github.com/immersive-translate/immersive-translate 并且不再提交源代码, 只提交 build 后的文件

说实话,插件不错,我也是用了看到开源才来看的,但没想到搞假开源。

52658 次点击
所在节点    程序员
471 条回复
showgood163
2023-07-31 18:36:44 +08:00
@20160409

https://github.com/immersive-translate/old-immersive-translate

手工打包这个仓库的源码成.crx 扔到手机上 自测在 kiwi 上能用
mwVYYA6
2023-07-31 18:42:56 +08:00
@mwVYYA6 补充一段证明混淆的代码

function Og(e,t){if(!e.keyword)return;let n=e.keyword.value||"";for(let a=0;a<e.keyword.matches.length;a++){let u=e.ke
20160409
2023-07-31 18:49:03 +08:00
@windyboy #72 然也,还有 FileCxx 这样利诱点星的
20160409
2023-07-31 18:51:28 +08:00
>@luzemin 收购他的就是他自己的母公司

@WebKit #78 真的吗,这也太能作了
20160409
2023-07-31 18:53:47 +08:00
#73
>@JasonSubmara @20160409 TWP 我看了是原作者的,可以用应该,而且上个月都还在更新

TWP 难用,网站白名单无效
GrayXu
2023-07-31 19:03:43 +08:00
改上游协议真
kingfalse
2023-07-31 19:36:04 +08:00
国产开源都是把 GitHub 当电线杆子贴广告的。不要太过于期待
mobpsycho100
2023-07-31 19:57:11 +08:00
还是没有竞争的原因,V 站大手子那么多,不如哪位来个开源的实现?
Jirajine
2023-07-31 20:11:06 +08:00
GitHub 当然可以托管非开源项目,用作二进制分发或者 issues 收集等,开个仓库叫 xxx-release 、xxx-assets 、xxx-issues 、xxx-support 都没问题,但这种沉浸式伪装成正常开源项目,不去翻代码和许可都看不出来,网站上再放一些似是而非的 GitHub 链接暗示,不知道楼上有什么好洗的。
OceanSea
2023-07-31 21:23:22 +08:00
前期开源,商业化后闭源。这都是可以理解的。但还假装开源就不合适了。
touchmii
2023-07-31 21:42:17 +08:00
前段时间收到推广正在使用,iOS 那个插件不开源说得过去,没想到这么糊弄人,不打着开源的名号用户能有这么多吗,翻译工具多的是。
PVXLL
2023-07-31 21:55:57 +08:00
立牌坊的插件,刚刚卸载了,继续用 relingo ,虽然 bug 有点多~
theowenyoung
2023-07-31 22:14:20 +08:00
大家好,我是 沉浸式翻译 的作者 Owen ,刚在用户群看到这个热贴,似乎楼主和评论区部分朋友对沉浸式翻译的开源问题有一些疑虑,我解释一下应该就能说清楚。

> 楼主:这个项目最开始是这个仓库 https://github.com/immersive-translate/old-immersive-translate, 并且 fork 的另一个项目

是的,这个项目起源是我在 2022 年 11 月 5 日的这条推: https://twitter.com/OwenYoungZh/status/1588790629647405057 ,我在里面提到了我对当时翻译工具的不满(几乎都需要付费,不付费的话,每天就只能翻译 3 个网页??),我自己是翻译的重度用户,所以尝试从开源扩展 https://github.com/FilipePS/Traduzir-paginas-web (简称为 TPW 扩展) fork 了一份,很快就把它改为了双语对照翻译的版本,这就是楼主提到的: https://github.com/immersive-translate/old-immersive-translate 项目。这个项目一直都是开源并且遵循 MPL2.0 协议的,如果有感兴趣的同学,也可以尝试基于这个项目继续开发(也许你就能体会到我为什么要重写整个项目了... 我刚刚尝试了下载,竟然还能用..)

> 楼主:有名气后,换成了这个仓库 https://github.com/immersive-translate/immersive-translate 并且不再提交源代码, 只提交 build 后的文件

随着这个项目变得越来越“有名气”,(好吧其实当时就 400 多个 Star) ,我发现要加减功能实在是太痛苦了(原项目是一个比较“传统”的项目,几乎没有现代的构建流程,比如不能引用 npm 包,写过前端的应该懂...),随着用户的增多,出现了越来越多的适配问题和性能问题,原项目还只支持 Firefox 浏览器。
所以就决定要重写整个项目,这条推 https://twitter.com/OwenYoungZh/status/1613821432227835906 介绍了当时的心路历程,而沉浸式翻译的用户群(现在已经 4000 多人了...): https://t.me/+rq848Z09nehlOTgx 保留了从第一天开始的所有消息,你可以回到 2022 年 12 月份左右,看看当时的心路历程。

下图( )是第一个提交:

![]( )

新版的整个项目是用 Deno 写的,全部都是 Typescript 源码,引入了现代的构建环境,写起来确实很爽。并且,重构后的项目支持全平台的浏览器,包括 Chrome ,Safari ,Firefox ,甚至是油猴脚本。由于沉浸式翻译专注于双语对照翻译(也就是说其实网页上每个段落都是 纯文本 翻译的),也不需要支持划词翻译,所以 TPW 扩展 的功能对沉浸式翻译来说基本用不到,我重构的时候,不仅在代码上没有复制粘贴过任何一行(好吧,原项目是 javascript 的, 也没法复制到 deno 的 typescript ),整个翻译的流程也是完全重构的。 这一点,做过贡献的 30 多位小伙伴应该非常清楚。

在重构后,基于某些原因(比如未来可能引入付费,可能被收购(确实实现了...),再比如这是一个 to C 的纯前端产品),所以,从第一天开始,新项目选择了闭源开发,我没有在任何地方有暗示这是一个开源的项目,在开发者贡献指南里,也明确表示该项目是一个闭源项目:

当前该项目处于闭源开发状态,你需要先申请加入我们的 Github 团队。项目采用 Typescript 开发,使用 Deno 编译。
见: https://github.com/immersive-translate/immersive-translate/blob/main/docs/CONTRIBUTION.md

同时也在有关 Issue 里回复了是否开源相关的问题:
https://github.com/immersive-translate/immersive-translate/issues/41
https://github.com/immersive-translate/immersive-translate/issues/190



> 至于为什么要放在 Github 上..

Github 的 Issue, Release, CI 太好用了, 我所有的项目,不管开源还是闭源,几乎都放在 Github 上。同时 Github 的 Star 也间接帮助了沉浸式翻译被更多的人看到。


> @WebKit : 收购他的就是他自己的母公司

好像之前看到过类似的说法,他们似乎是分析了官宣收购的时间点比 APP Store 同名公司上架的时间点更晚。好吧,如果你经历过收购,你会发现真正宣布收购的时间点,是已经谈了很多天,谈成之后又会交割很多天,等一切完成之
后,才会宣布消息...


> @mwVYYA6 : 刚看了下现在的版本 0.7.15 ,userscript 确实使用混淆了。


提交到 Greasy Fork 的代码不得混淆或最小化。用户必须有可能在安装前审视并理解脚本的内容。如果脚本使用了 WebPack 之类的工具打包,则必须以非最小化的形式输出,保留空白和变量名。
https://greasyfork.org/zh-CN/help/code-rules

我们很尊重 Greasy Fork 社区的规则,所以你会发现 Greasy Fork 上最新的版本 : https://greasyfork.org/zh-CN/scripts/457196-immersive-translate 是 0.5.6.1, 在此版本及之前,提交给 Greasy Fork 的所有代码都没有混淆。之后的版本,我们使用自托管的油猴版本: https://download.immersivetranslate.com/immersive-translate.user.js ,同时在 Greasy Fork 主页上也同步进行了公告: https://greasyfork.org/zh-CN/scripts/457196-immersive-translate



所以总结来说就是: 沉浸式翻译是一个免费的网页翻译扩展,它的构建产物托管在 Github 上,并且使用 Github 的 Release 发布版本,也使用 Github 的 Issue 管理用户反馈,我没有在任何地方暗示过这是一个开源的项目,它确实从第一天开始就是一个闭源的项目。

但是我当然热爱开源社区,也从开源社区获益良多,并且在沉浸式翻译之前也在 Github 上开源过不少项目,而之后,沉浸式翻译也有计划贡献更多的开源项目给社区(比如 AI 翻译模型,以及沉浸式翻译的各种小工具:比如 PDF 翻译,电子书翻译 等等)。

感谢大家的关心,如果还有别的疑问我再来更新...(没想到第一篇 V 站的帖子献给了这里...
theowenyoung
2023-07-31 22:16:15 +08:00
原来图片可以自动识别... sorry 展示了 2 次.. 而回复似乎不能编辑..
saucer
2023-07-31 22:28:38 +08:00
把 OP 干沉默了
qianji201712
2023-07-31 22:46:28 +08:00
@theowenyoung 回复得好,也免得一些不知情的人被带偏了。
正常使用一个开源项目,都会去先看开源协议再决定该不该引入,如果认为放 github 就是开源,那要开源协议干嘛?
PVXLL
2023-07-31 22:59:06 +08:00
二进制开源,作者应该是华为出来得吧
EINDEX
2023-07-31 23:09:30 +08:00
zhengfan2016
2023-07-31 23:27:43 +08:00
实话说,单拎 @theowenyoung 这个作者出来喷有点....
这种事情 clash 和 v2ray 的某些客户端就早有先例了,这种挂 github 的闭源库随便都能举出两个,要喷请带着这些一视同仁,一块喷一块抵制。而不是专门针对某个库,这很容易让人感觉 op 另有目的。
jianguoni
2023-07-31 23:40:42 +08:00
@20160409 Monica ( GPT )也有这个功能

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/961178

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX