13

为什么不打包成 EXE 用户中的大部分就不会用呢?(打包了仍然不会用的也很多)

 4 months ago
source link: https://www.v2ex.com/t/1006736
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

V2EX  ›  分享创造

为什么不打包成 EXE 用户中的大部分就不会用呢?(打包了仍然不会用的也很多)

  Alicewish · 20 小时 37 分钟前 · 3594 次点击

漫画翻译辅助软件 MomoTranslator 打包下载

开源地址: https://github.com/alicewish/MomoTranslator/

打包一次要好几个小时,要确保各种依赖都配置到位、查漏补缺、配全新系统搞测试,所以真的很希望是用户就给我去运行源代码,现在 ai 这么强完全可以回答大多数和配置环境有关的问题。

自动翻译部分包含了使用网页版 openaiGPT 的方法,因此现在只保留谷歌翻译一个引擎做测试用,其他都去掉了。

虽然为了避免被用于牟利,开源版在完整功能上删掉了填字步骤,但只要非盈利用途就可以将已完成前面步骤的文件发给我,跑这个步骤,然后我再发回。我知道不适合社恐人,但是单独托管这个步骤的成本太高,开源这个步骤又会导致某些东西竭泽而渔、不择手段对我网暴和人身威胁,只能暂且这样。

75 条回复    2024-01-09 02:49:31 +08:00
Masoud2023

Masoud2023      20 小时 32 分钟前

这问题还真不能怪用户。

pyinstaller + github ci 打包个 exe 吧,工作量应该不大。
Masoud2023

Masoud2023      20 小时 30 分钟前

这项目好像挺有意思的,但是工程管理看起来不太好。

暂且不提没有用包管理工具,单 py 文件 1w 行我有点想象不出来你是怎么维护这个项目的。。。
lzgshsj

lzgshsj      20 小时 28 分钟前

既然都用 GitHub 了,就像楼上说的,配个 workflow 自动打包就好了,啥依赖和环境配置的痛点都帮你解决了。
Abbeyok

Abbeyok      20 小时 26 分钟前

把用户当白痴
Eiden

Eiden      20 小时 17 分钟前

就算是会 py 的, 如果是初学者我估计都得折腾几个小时, 更何况大部分是不懂编程的普通用户
Worldispow

Worldispow      20 小时 14 分钟前 via Android

上 github 也不一定就是专业程序员啊
coderluan

coderluan      19 小时 37 分钟前

别说 python ,大部分普通人可能都不知道 exe ,毕竟文件后缀是默认隐藏的,他们只需要一个看着明显双击就能运行的图标。所以 python 项目,你可以直接把整个 python 环境塞进去,然后弄个 bat 修改环境变量,再弄个快捷方式修改一下 icon ,名字改成“点我运行 XXX”,用户就会用了。打包就是压缩文件,用户也不会找你解决安装问题,唯一的缺点是体积大,但是如果你提供一个方便的下载方式,云盘共享或者群共享,用户也就不在意了。
paopjian

paopjian      19 小时 29 分钟前

现在这年头,你猜年轻人会不会连 PC 都不会用了,有的人甚至用微信传 apk, 结果自动加个.1 后缀就抓瞎了, 未来要把用户当猴子,还是那种不听话的猴子
Morii

Morii      19 小时 28 分钟前

非技术栈的同学,是没有「运行环境」这种概念的
Yuhyeong

Yuhyeong      19 小时 24 分钟前   ❤️ 3

对程序员刻板印象 1/1
vcn8yjOogEL

vcn8yjOogEL      19 小时 17 分钟前

依赖多就算会装也得找好一会, 这东西应该尽可能自动化
sky96111

sky96111      19 小时 8 分钟前 via Android   ❤️ 11

因为一般用户根本不会在电脑上安装某语言的运行时/编译器,即使是开发者也不一定有你的软件的环境。
在文档缺乏的条件下部署环境已经是比较麻烦的了。更何况如果你不是某语言的开发者,第一次安装环境不可避免会踩到一些坑,这对于不了解程序内部实现的用户来说是非常折磨的。
我是写 go 的,电脑里没有 py 环境,我朋友写 py 的,电脑里没有 go 编译器。遇到源码分发的软件我们经常找对方编译二进制。偶尔会遇到对方也出错的情况我们一般就直接弃掉了,不是解决不了,而是不值得花这个精力投入,不如寻找替代品
Cat7373

Cat7373      19 小时 0 分钟前

为什么不组装成汽车用户就不会开呢?明明就是把 A 组件跟 B 组件拧上,C 组件跟 D 组件用 E 电线连起来,......(以下省略 5000 字),啪,一辆车就好了呀!就能开了呀!每个地方都可以按需灵活自由定制调整呀!这届用户就是懒,这么简单的事都不会
shinsekai

shinsekai      18 小时 57 分钟前

这就好比有多少人会下载 vscode 社区版源码自己编译呢?
renmu

renmu      18 小时 46 分钟前 via Android

用户就是愚蠢的
gushu

gushu      18 小时 23 分钟前   ❤️ 6

我干法律的,是否可以发问犯罪嫌疑人为什么不自己自学刑法要找律师辩护呢?术业有专攻,存在不懂编程的用户正是程序猿这个职业存在的原因之一,如果每个人都懂,那么你的工作是否还有价值呢?我反而很庆幸大部分人不自学法律,这样我们的职业才有存在的必要。
IsaacYoung

IsaacYoung      18 小时 20 分钟前 via iPhone

正常 不是人人都懂代码
yigecaiji

yigecaiji      18 小时 15 分钟前 via Android   ❤️ 2

为什么不做标题党 V2EX 用户就不会发贴?
Tumblr

Tumblr      18 小时 14 分钟前

就算打包成 exe 又怎样呢?有几个人敢说自己熟练使用 ffmpeg.exe 的呢。。。
Alicewish

Alicewish      17 小时 55 分钟前

@Masoud2023 你只看到了它现在一万行,你想不到它以前两万行吧。说真的,单 py 文件对我自己来说写起来、改起来最简单,一大堆 py 文件我会头疼。
Alicewish

Alicewish      17 小时 53 分钟前

@yigecaiji 正文省略了一些对小白用户来说可能有点不友好的吐槽。你要这么讲,我就等会附言里补上。
Alicewish

Alicewish      17 小时 50 分钟前

@Masoud2023 应该不行,几年前的旧版已经用 pyinstaller 无法打包成功了,新版还加了很多功能和第三方库的引用。
Alicewish

Alicewish      17 小时 48 分钟前

@gushu 我自学的,所以希望大家都自学点,不用会写会改,会按照说明书运行就行。
Alicewish

Alicewish      17 小时 46 分钟前

@sky96111 其实实测过程中,很多用户是会装 python 的这一步的,就是我标了需要 3.10 ,他们上来先把最新的 3.12 装上了,以至于后面第三方库装的时候就没法全成功。
Alicewish

Alicewish      17 小时 45 分钟前

@Cat7373 汽车组件要是全开源,早晚给你干到一家一辆拼装开源车。
Masoud2023

Masoud2023      17 小时 44 分钟前

你也可以去自己剪裁个 python 然后装好虚拟环境分发出去
Alicewish

Alicewish      17 小时 44 分钟前

@coderluan 我吐槽的就是这个步骤耗时太长,而且做到这种程度也会发生一些奇怪的事让你哭笑不得。
angkec

angkec      17 小时 33 分钟前

@Masoud2023 我去看了,确实猛,就直接一个 py 文件 1w 行。这维护起来有点费力啊
hanyuluo

hanyuluo      17 小时 32 分钟前

用 docker 试试
NewYear

NewYear      17 小时 26 分钟前

先思考你的用户是谁,然后编写相应的文档即可,这个事情虽然耗时间,但也是最节约时间的,比起来一次次教别人要省心很多,截图、案例和必要的讲解是要包含的。

如果不在乎用户,那就没办法了,你觉得麻烦的时候,他们可能更加嫌麻烦(毕竟你是轻车熟路),直接放弃可能是最好的选择(经历了一一些不负责任的分享代码后,不会预期过高)。
Bingchunmoli

Bingchunmoli      17 小时 3 分钟前 via Android

python 正常,我电脑一装 python 环境就容易报错,后来有虚拟环境还好点但是我还是编程人员,那些不懂的就更没办法用了
Alicewish

Alicewish      17 小时 0 分钟前

@NewYear 我准备找一些热心用户让她们贡献文档,她们不会写的地方我再补充。
Alicewish

Alicewish      16 小时 56 分钟前

@angkec 为什么单文件会维护费力啊?只有单文件我改起来最快。
yyysuo

yyysuo      16 小时 56 分钟前   ❤️ 2

为什么这么多大佬这么牛逼,自己独立开发一个产品,竟然不能理解大部分用户完全没有任何编程的基础?
sloknyyz

sloknyyz      16 小时 54 分钟前

你都觉得打包痛苦了,那不就是项目太复杂了吗。你现在还期望小白能自己跑起来,怎么想的?
Alicewish

Alicewish      16 小时 46 分钟前

@sloknyyz 打包痛苦是因为库兼容性上 pyinstaller 搞不定需要用 nuitka ,相比之下运行源代码很快很简单的啊。
Alicewish

Alicewish      16 小时 43 分钟前

@yyysuo 我为了开发这个产品,从零开始自学 python ,大家都是同一起跑线,为什么我付出这么多,用户不能付出一点点?只要能按说明文档运行就行。
hahiru

hahiru      15 小时 56 分钟前

因为真的有不会用电脑的人。
比如我一个亲戚,会通过电脑炒股看新闻。但是,不会用鼠标右键。
我是使用的时候才发现,这电脑鼠标右键坏了。
但是亲戚用的觉得没啥毛病。
totoro52

totoro52      15 小时 43 分钟前

你这就是用程序员的开发思维去做产品了, 图形界面没终端灵活,为啥不给用户终端指令就行
Alicewish

Alicewish      15 小时 33 分钟前

@totoro52 为什么说终端灵活?这是一个翻译漫画用的软件,对用户来说图形界面是必备的。我自己都不用终端(虽然我也不一定需要图形界面),配好 yml 文件直接运行,然后收图。
linch97

linch97      15 小时 12 分钟前

看了眼 readme 提到讲漫的事感觉好像眼熟,点开视频发现是老熟人,墨问大佬做这个挺久了啊
wegbjwjm

wegbjwjm      15 小时 8 分钟前

不会啊,想编译个 OPENWRT 都不会
tool2d

tool2d      15 小时 6 分钟前

我都是直接发布 exe 给用户,然后被 360 杀的干干净净。

杀还不是那种提示报错,是直接让你程序闪退,也是无语。
Alicewish

Alicewish      14 小时 47 分钟前

@tool2d 这还得给用户置顶一份使用软件期间需禁用 360 的说明……
justplaymore

justplaymore      13 小时 52 分钟前   ❤️ 1

@Alicewish 你的努力值得认可,但是把愿意自我驱动学习的要求加在用户身上就是思维方式有问题了。

考虑以下问题:
你做的产品想给什么样用户使用?
是有经验的开发者?
是有自我学习编程能力的漫画爱好者?
是爱好漫画的伸手党?
在这些用户群里,哪些占比大?哪些最能体现你产品的价值?
camillo

camillo      13 小时 46 分钟前

“我自学的,所以希望大家都自学点”
“大家都是同一起跑线,为什么我付出这么多,用户不能付出一点点?”

你是认真的吗?
czfy

czfy      13 小时 40 分钟前

你希望你做出来的东西多人用,就把它的门槛弄得越低越好
你不希望那么多人用,就把门槛弄高

Clash 系选择第 1 行,V2ray 选择第 2 行
这是主动选择

你不能既希望多人用,又把门槛弄得很高

现在会用电脑的人,基础都是小学电脑课学的内容,然后自己感兴趣再去捣鼓
那时候会教你配环境、跑源代码么

从小学毕业到本科前中间的 6 年,大多数人都不会接触代码,而是在备考
本科如果不选择软件相关的专业,那绝大多数人这辈子都不会接触代码
migu

migu      13 小时 33 分钟前

@camillo #47 他这句话出来我直接绷不住了,你穷就是你不够努力
jianchang512

jianchang512      13 小时 31 分钟前

查找漫画气泡能输出的二值化的掩码图吗,能精确识别 圆形、爆炸形、各种矩形和不规则的气泡吗?
一直在琢磨气泡问题,想精确识别出气泡区域太费劲了
jqtmviyu

jqtmviyu      13 小时 24 分钟前

你的 readme 没问题, 非常详细了.

不要管哪些打包成 exe 的请求, 因为门槛低了, 处理问题能力不足的用户也多了, 他们会把你当成免费客服, 直到你对该项目散失热情.

然后是要求 3.10 版本, 装了 3.12 导致第三方库用不了, 不如把 `安装 Python 3.9 或更高版本` 这段改下.

分享开源项目的目的是什么, 如果你想用户更多, 就把项目做得更容易上手, 如果是因为自己用了, 顺便分享下, 就别管那么多.
Bateman

Bateman      13 小时 2 分钟前

@czfy 我咋觉得 v2ray 比 clash 简单理解多了,clash 把逻辑搞得复杂并且 ui 也不简洁,我现在全平台使用 v2ray 。
Alicewish

Alicewish      13 小时 2 分钟前

@jianchang512 气泡闭合就可以识别,不闭合就走不计算气泡边框的文本识别(更不精准)。
Alicewish

Alicewish      12 小时 59 分钟前

@justplaymore 这就是愿意学英语或者其他外语来看懂漫画,和愿意学如何启动 python 脚本来辅助阅读的择一而已,明显后者简单多了吧。人类发展的动力就是偷懒,为了偷懒学习一点点东西就变成很高要求了?不至于吧。
Alicewish

Alicewish      12 小时 57 分钟前

@migu 努力 100 分造个工具,只要别人努力到 1 分就能用,已经可以转进到“你穷就是你不够努力”了?希望大家了解一点点程序以便生活中偷个懒还能这么解读?
qgmzmy

qgmzmy      12 小时 54 分钟前 via Android

打包 exe 就能解决的话就打包吧,在开机都没几个人会的时代已经很好了
Alicewish

Alicewish      12 小时 53 分钟前

@czfy 我开篇就说了,现在 ai 尤其 GPT 的普及,理应方便无基础和低基础的用户配环境,而不是需要开发者喂饭到嘴边才能用。我是在把自用的工具不断降低门槛提高性能并开源,而最终多少人用上了对我来说并没有利益上的得与失。
Alicewish

Alicewish      12 小时 50 分钟前

@qgmzmy 打包 EXE 就像送到快递柜,送到了还是会有人懒得取或者找错柜子或者不会撕包装。
favourstreet

favourstreet      12 小时 20 分钟前 via Android

吃饱了撑的导致的。

楼主有充分的权利鄙视不会配置运行环境的用户,这不就是几乎每个开源许可证都会写的,赋予开源作者的权利吗。

换到商业项目楼主的这个问题就简单了,有标准答案——不对用户百般呵护,就等着把市场份额拱手让人,自己饿死吧。
franswish

franswish      12 小时 15 分钟前 via Android

那也有可能用户没有那么想要。动动嘴皮子要求 exe 很简单,要不到就不看了呗,或者换个途径。没有任何成本
zerofancy

zerofancy      12 小时 4 分钟前   ❤️ 1

你的 README 对于开发者来说是足够的,但对于用户来说学习成本是比较高的。当然,你可以不为不愿意学习的人服务,他们可能不能给你的项目提出有效的 issue 和 pr ,对你的项目帮助不大。

---
但就我个人而言,我确实不倾向使用需要自己编译的开源软件。
1. 编译安装可能需要投入很多精力去折腾,我不是这门语言的开发者,编译安装可能不是一帆风顺的。
2. 编译安装需要我安装很多依赖库和环境,他们可能把我的电脑环境搞乱,而我不是开发者,可能自己折腾不好。例如,很多 Linux 发行版的系统工具很多是 Python 实现的,安装了指定版本的依赖后可能导致系统的工具挂掉。这点不只是 Python ,很多 C++项目要 make install 的,我是尽量不用的。
3. Python 的依赖环境对于非开发者可能比较容易迷惑,比如我之前很不理解安装了 B 软件的依赖后 A 软件会挂掉的现象。
zerofancy

zerofancy      12 小时 3 分钟前

你完全可以说没有维护这种打包脚本的精力和意愿,欢迎 PR 。
totoro52

totoro52      11 小时 56 分钟前

@Alicewish 我只是打个比方,我还是那句话,不要拿程序员开发思维去做产品
czfy

czfy      11 小时 42 分钟前 via Android

@Alicewish 现在的语言模型是比之前的狗屁不通要好了,但用于编程的前提是你懂编程啊,不懂的话只会给它编出来的回答骗

既然你不在乎用户量,那为什么要在乎用户会不会用
angkec

angkec      11 小时 21 分钟前

@Alicewish 缺乏结构就难维护,单文件结构最少。多文件就可以通过文件夹创造很多层结构,让管理容易一些。不过 yysy ,你如果连 1w 行的单文件都能管理下来,而且看前文还从 2w 行重构下来的?这确实也是很厉害的,不想动结构不耽误自己的开发的话,也不需要改了。
Alicewish

Alicewish      10 小时 58 分钟前

@czfy 做自己眼中正确的事和别人对你的评价无关。
Alicewish

Alicewish      10 小时 57 分钟前

@angkec 多文件如何让管理更容易?我看到那种几百行代码分十几个文件的就头疼。我自己同时写十几个功能完全不同的万行代码都不会混乱。
K8dcnPEZ6V8b8Z6

K8dcnPEZ6V8b8Z6      10 小时 22 分钟前

05 后会用 windows 的可能都没有一半,而且是极其乐观的估计
angkec

angkec      10 小时 13 分钟前

@Alicewish 就是层层抽象吧,把做类似事情的东西放在一起,抽象出一些接口。在每个层面都只操作更少但更相关的代码。
Alicewish

Alicewish      9 小时 50 分钟前

@angkec 你说的这些和单文件不冲突啊,我现在单文件就做到了这些效果。多文件好处在哪?
qgmzmy

qgmzmy      6 小时 49 分钟前 via Android

@Alicewish 那就没办法了
April5

April5      6 小时 34 分钟前

相信已经有人在帮楼主打包 exe ,并用来盈利了。
inframe

inframe      6 小时 19 分钟前

lz 不想做的,100 ¥一份我来卖 exe 打包文件服务 哈哈(手动狗头🤪🤪🤓
mobpsycho100

mobpsycho100      5 小时 6 分钟前 via iPhone

@Alicewish
> 多文件好处在哪

比如你说打包一次要好几个小时,就有可能跟你的单文件有关。首先,多文件可以采用增量编译(如果你的打包涉及编译的话),每次更新的开销只涉及依赖于更新的部分。如果你比较 JavaScript 的 hot reloading 和 build 的话会更明显,后者一般要慢得多。另外一个好处是编辑器在进行语法高亮时不用分析整个大文件(虽然词法分析的时间一般是线性的)。如果编辑器还涉及静态类型检查,开销会更大。
mumbler

mumbler      4 小时 38 分钟前

你对人缺乏同理心,如果在一个你完全不懂的领域,比如汽车修理,人家觉得车启动不了,自己用零线火线线去打一下就行了,干嘛还要喊救援。

抖音,微信为什么那么成功,就是张一鸣,张小龙他们能设身处地的站在用户角度思考问题

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK