开源项目的一点思考

前段时间我说要弄一个 图床工具,目前的进度是 95% 卡在了预览阶段,因为我的上传目录结构设计的略复杂,睡了一晚,想到了解决方案。

前端是用 VueJs + 小部分的 element ui ,涉及到的小点难点反而是比公司做的项目要多(题外话,很多招聘要求github上有star >100的这种,表示不怎么赞同,现在随便做一个demo都能攒上100+的start,作为加分项的这个比重是不是要降低一点了…)

后端最初我是打算用 PHP Laravel 来写的,但是 Laravel 需要的 PHP 版本太高感觉太重,所以换了 Koa2 。

然后前天我看到了一个 论坛程序 Flarum, 也是开源放在 Github 上的一个项目。这个时候我不禁在想,如果我的程序给别人用,别人会用么?

难道我还要写个 Readme 手把手告诉别人怎么装 NodeJs 怎么搭环境么? 安装成本太高!!!

自己玩随便怎么弄,折腾 Docker 折腾各种配置程序,但是让别人用不同。我大概有点明白为什么PHP在‘民间’这么流行的 原因了,傻瓜式安装很重要。作为一个用户,程序安装只是一个基础工作,他想用的是你的功能。如果一开始就被安装环境各种配置给阻断了,那他怎么还会有动力来使用呢?

一般有点动手能力的,比如我,就可能自己写这个么程序了。

不信你去看那些建站cms系统,哪个不是解压丢上源码到服务器上,浏览器输入地址栏,一路下一步就ok了。都是这个套路对不对!

小白用户分不清 Linux的权限 所属用户组这些基础知识,或许连vps都没有,只有一个虚拟空间。所以程序搞成这样势必没人会来用,很尴尬。

所以,现在决定抽空将后端api改为PHP的,而且‘略不情愿’的用回 thinkphp 吧。没办法,谁让人家这么简单易用好上手呢。


总结一下,开源项目需要针对目标人群选择对应的框架,开发方案,否则就是在给自己挖坑。同时要将安装部署方案设计的最简单,安装只是使用前的第一步,步子迈得太大容易扯到蛋。