说几个做软件的诀窍

总结一下二十多年开发的一些经验,不知道大家用不用得上。

首先,做软件尽量做自己能用得上的软件。别为了别人去开发软件,只有自己也是用户,让每一次改进都能让自己更方便,每次改进都能获得一些成就感,才能把软件坚持下去。像白天梦大佬的《eDiary》 相信就是这样,他自己每天也在写日记,才会把一个软件更新快三十年下来。即使是想挣钱的软件,也最好是这样。只有自己每天都使用的软件,才会有动力让它活着。只要软件存活越久,它的用户就会积累得越多。

其次,刚开始别想得太多,先实现最核心的需求,保证这个功能是稳定、正确、高效的,再慢慢地改进。不管是个人软件还是商用软件都是这样,优先解决最痛的痛点。围绕着这个痛点慢慢地加周边功能。别一上来就抓不住重点,做不好核心功能,那其它功能做得再牛逼也没啥用。

最后呢,如果一个功能感觉好像不加也可以,或者有第三方软件可以实现。那最好就别加了。很多小众软件的网友们应该有这么一种体验,就是如果一款软件看起来很复杂,那我就不想用了。实践证明,功能简单的软件反而能活越久。everything, syncthing, ifranview 这些功能莫不如此。倘若 irfanview 还加上一堆编辑功能,说不定现在就死了。在它们的领域,这些传奇软件就是唯一的王者。但如果做一些不相关的功能,就会有各种问题出现,变成有问题的软件。那用户想要很多功能怎么办?最好是提供 API,比如 vim 那样,反正有编程接口,把非核心的功能提供给第三方插件(其实经常是作者自己写的),这样主体软件就永远都保持简洁了。

不知道大家同不同意我的想法?

4 个赞

同意,现在AI都挺强,API接口也挺多

Irfanview 的功能算少吗?作为看图软件它居然有图片编辑功能,有颜色矫正,有锐化功能,去红眼功能,有滤镜功能,甚至还支持插件 ……

还有就是你说这些似乎不是开发经验

1 个赞
  • 自己用得上仅仅是便于测试验证,但核心问题是,你的需求是不是代表了用户的需求,这个需求用户会买单吗?否则,容易自嗨,运气好自己喜欢的大家也喜欢,还付费,否则活不下去的。
  • 就是 MVP,目前做产品基本一致了,快速验证。
  • 依然是 MVP 变种,只是从用户角度说。

大前提是如果是自己玩/业余做软件靠兴趣驱动是没问题的,如果是做产品要上市很难,第一步还是需要找出目标用户的痛点,毕竟别人买单。:face_vomiting:

你说的这些都是看图软件的周边功能。

一般说编辑功能,是指图层、画笔、魔术选择、填充、贴图这些功能。

翻转、锐化、颜色校正这些在看图的时候经常碰到。IrfanView 作为看图软件的功能真的很强。

只可惜软件界面不够现代化,没有像当年 AcdSee 那样占据优势地位。

做卖钱的软件另外说了。到时用户拿钱驱动开发。都听产品经理的,让开发啥就开发啥。国内的产品经理,一般就四个字:抄某某某。:rofl:

做免费软件,如果不是自己也用得上的话,是坚持不下去的。我看这个论坛里面很多人做软件来分享,千万要做自己也用得上的软件啊。不然没多久都停更了。