关于「幕后」

我们每天会接触大量的软件、硬件,但是多数时间下,都只是以固有的「使用者」视觉去体验和评判,快节奏的模式让我们没时间体会太多背后的理念。「幕后」栏目 因此而生,我们会不定期邀请一些制作者,讲述他们在产品开发 / 制作过程中的点滴。


前段时间,一篇名为《Snipaste - 开发了三年的截图工具,但不只是截图》的帖子在 V2EX 上成为热门,这款免费且功能强大的 Windows 截图工具迅速得到了众多用户的关注和喜爱,少数派也在第一时间对 Snipaste 作了详细介绍

但当我们进一步接触了开发者 levie 之后,才发现不论是 Snipaste 本身的功能设计,还是开发背后的故事,都还有太多太多值得挖掘和分享。于是,就有了这篇可能是篇幅最长的一期「幕后」,在采访中,他向我们分享了他心目中 Snipaste 的用法,以及 Snipaste 的未来,最后,对于那些想要进行尝试独立开发的人,他也向大家分享了几点自己的经验。

三年磨一剑

Snipaste (PicNotes) 确实是 2014 年初开始写,到现在也确实快三年了,所以你说标题党我是不服气的,但你说我耗费了三年才开发出来,我也是不服气的。

π:介绍一下你自己。

大家好,我是 levie,目前是一名博士研究生。之前很多网站说我是一名大学生,其实并不对。我当然也很希望自己在大学时期就做出 Snipaste 这样的作品,这样我的职业规划和人生轨迹应该会大不相同吧。

Snipaste 是我第一款公开发布的作品,其实我在平时使用电脑的时候就有很多点子,我也把它们记录下来了,所以我以后还会有其他作品。不过 Snipaste 已经够我忙很久了,其它作品只能暂时搁置了,希望它们出来的时候也能受到大家的喜欢。

π:开发 Snipaste 的初衷是什么?为什么想把它做成囊括如此多功能的强大工具?

其实 Snipaste 的生日是 2015 年 12 月 4 日,这一天我把它从 PicNotes 改名为 Snipaste,而 PicNotes 诞生于 2014 年春节期间。

 PicNotes 最后一个版本

从 PicNotes 这个名字大家也可以猜出来,它的目的就是用图片来做笔记,临时的笔记,所以是贴在屏幕上而不是放在笔记本里。至于为什么后来改名为 Snipaste,是因为不知不觉中截图功能就比较强大了,得在名字里体现一下。

很多人都说 Snipaste 太强大了,功能太多了,但作为一个日常的使用者,它的每一个功能我的使用频率都很高,所以我并不觉得它有多复杂。

并不是我特意想把 Snipaste 做得功能特别多,而是如果要用贴图的方式来提高工作效率,它就需要有这些功能。其实它有很多操作,都是非常直觉性的,真正懂 Snipaste 的人就不会说它复杂,我很庆幸用户群中也有这样的人。

π:这款软件耗费了三年才开发出来,在这开发的过程中,你都遇见了那些困难?是如何解决的?

其实帖子标题说「开发了三年的截图工具」,只是想吸引大家的注意而已。虽然帖子里有解释,但大家似乎都没理解我的意思。

Snipaste (PicNotes) 确实是 2014 年初开始写,到现在也确实快三年了,所以你说标题党我是不服气的,但你说我耗费了三年才开发出来,我也是不服气的。因为自用的时候,开发 Snipaste 是没有 deadline 的,所以很随性,想写就写,有时候自己没什么新的需求了,可能三四个月都不曾改动一行代码。

我喜欢独立完成事情,能不问人就不问,所以开发 Snipaste 的时候我是面向 Google、stackoverflowQt 社区Github 编程。再结合自己的思考,这样已经可以解决大部分技术上的困难了。

其他困难,主要是 Qt 自身的 bug。我在开发 Snipaste 的过程中遇到的 Qt bugs 就有十几个,其中大部分都被其他用户报告过了,有些是很快地在下一个发行版解决了,有些则过了几年都还未被解决(其中很多就是 Qt on Mac 的 bug,所以我才说 Qt 对 Mac 的支持不好)我自己也提交了两个 bug,很快就被处理了,但其实我还另外发现了两三个,只是当时事情多,一拖再拖也就没有再报上去了。

如果开发过程中遇到了 Qt 自身的 bug,是比较无奈的,因为你很难自己去解决它,只能寄希望于 Qt 官方的更新。但 Qt 总体上还是非常不错的,用起来很舒服,特别是用户手册(Qt Assistant)非常实用,我都是用户手册里找不到解决办法才上网去搜的。

Snipaste 到底有多少功能和使用场景

如果想要学会一个高级工具,那学习成本自然也是要的,世界上并不存在不需要学习成本但却很强大的工具。强大的工具通常还有一个共性,就是一旦你掌握了它,它带给你的回报远远超过你当时付出的时间和精力成本。

π:看到你提到你对截图有各种奇怪需求,你平时是会用到非常多截图标注的操作吗?一般会用来做什么事情?

其实我平时对标注没什么需求,但对截图要求比较高,比如「按照上次截图的区域再次截图」,比如精确控制截图范围。

在 Snipaste还叫做 PicNotes 的时候,它的标注功能其实和 QQ 截图的差不多,形状不能再编辑,文字也不能旋转。后来为什么要把标注做成可以再编辑、文字也可以旋转的呢,哈哈,原因挺有趣的,是因为我有几次需要上传自己的身份证照片,然后就要给图片加上文字水印,比如「只供xxx作xx之用」,这样的水印通常都是斜着写的,然后我发现用 PicNotes 不能生成这样的文字, QQ 截图也不能,我就只好去打开 PS 了。

这让我很不爽,明明并不复杂的需求,为什么要我去打开 PS,所以我就开始自己实现文字的旋转,其他标注工具也顺带受益了。

π:如果让你向别人介绍 Snipaste,哪些功能和细节是你会特别向人强调介绍的?

Snipaste 的两大功能是截图贴图,我就分开来说吧(其实标注工具也是比较大的一个独立模块,但和其他的图片标注工具相比之下,它的独到之处并不多,所以就不说了)


Snipaste 的贴图功能

先说贴图吧(是的,请允许我再次强调,Snipaste 的本体是贴图)我最喜欢的是自动备份和分组功能。但是,果然大家还是把 Snipaste 当截图工具了,因为几乎没有用户跟我反馈或者讨论这两个功能。这两个功能其实花费了我非常多的精力,为了让大家体会到它们的妙处,请允许我详细说明一下。

自动备份,指的是你贴到屏幕上的每一张图片,每一张图片上的标注以及编辑状态,以及图片之间的层叠关系,在你下次启动 Snipaste 的时候,都会被完美地恢复。

什么叫「完美」呢?拿文字标注做个例子,就是你在这张图片上添加了文字,但是还没结束编辑,文字可能被部分选中,输入光标在某两个字之间,这时候你关闭 Snipaste,再打开它,你会发现文字的旋转、缩放状态被恢复了,文字也仍然处于编辑状态,之前被选中的文字也还是选中状态,连光标位置也一样!这样我每次关闭 Snipaste 的时候都不必有顾虑,因为下次打开的时候,Snipaste 会让你以为它从未被关闭。

这样做的灵感来源于微软的 OneNote,你在这个笔记页面把一段文字选中了,它就真的是永远被选中了,不管你是切换到其他笔记再切换回来,还是你关闭 OneNote 再打开,你会发现那段文字还是选中状态。当我发现这一点的时候,我就盼望着我也能写出这样的软件。

然后是贴图分组功能,我相信高级用户以及拖延症用户会喜欢它。

比如我当前在为问题 A 查找资料,所以建立了一堆和 A 相关的贴图,但之后我因为各种原因不得不停下问题 A,转去解决问题 B,我当然不希望问题 A 的贴图继续占用我的屏幕空间,妨碍我对问题 B 的思考,这时候我就新建一个分组,切换过去,就可以开始为问题 B 弄一堆贴图了,而我也可以随时再切换回问题 A 的分组去继续处理它。

有些用户可能会觉得这个使用场景很眼熟,没错,就是火狐的标签组功能(似乎在最近的版本被移除了),我使用火狐浏览器就是常年七八个分组,每个分组十几个标签的……

可能有人要因此说这两个功能并非 Snipaste 原创了,但它们并不是同类软件具有的功能哦。就好像发表论文一样,用于解决 A 问题的算法,我发现它可以用来解决另一个完全不同的 B 问题,为此作了针对性的适配,其实也是被承认为原创的。

说完了贴图(终于),截图功能我就简单说三点吧。

第一,是对截图进行标注之后还允许用户再次编辑截图范围,其实这是非常正常的需求,我很不理解为什么 QQ 截图不允许用户这样做。我以前用 QQ 截图的时候,经常很用心地编辑了半天,最后发现有一部分没有被截进去,天啊,截图范围居然没办法再改了,于是刚才的编辑白费了……

第二,是对截图范围的精确把控,注意,我这里并不是指逐像素地调整截图范围,而是我能明确知道哪些像素被包含进了截图。在 Snipaste 中,截图范围是被边框线包围的,在自带的放大镜下,被边框线遮挡到的像素点,就是不被包含在截图范围内的。

可是有些截图工具不是这样的,它们竟然把边框线画到了截图区域内!拿线段来举例吧,我截取的范围是 5 到 10,边框线的宽度是2,那么 Snipaste 会把边框线画在3-4、11-12这两个地方,而有些截图工具是把边框线画在了4-5、10-11这两个地方,把 5 和 10 这两个点给覆盖了,也就是说,虽然它们被算入了截图范围,但因为被边框线遮挡,我却无法在截图时看到它们的内容。

第三,就是用鼠标调节截图范围的时候,不必把鼠标放在截图区域的编辑线上,只要放在截图区域外任意一点上就可以开始拖动调整截图区域。我截图的时候,就经常忍不住这样做,感觉很爽,哈哈。是啊,截图区域外这么大一块面积,为什么要不允许用户点击呢。

二次编辑窗口
精确控制范围
自动识别范围

π:你有强调 Snipaste 适合程序员和设计师,也提到特别适合多屏用户,那么能否具体分享几个 Snipaste 的使用场景?

上一个问题已经提到了一些使用场景,主要是资料收集和记录,是普通用户也适用的。至于特殊群体,下面先来说说程序员。

将代码转为图片

这里主要利用的功能就是复制 HTML 格式的文字转换成图片,但这个特性很多程序员没有正确理解,以为只要复制带高亮的代码,贴出来的图片也是代码高亮的。

不,这取决于你用的代码编辑器,如果编辑器不支持以 HTML 格式复制代码,那么复制出来的就是纯文本,贴出来的也只能是纯文本图片。

在此我安利一下 Visual Studio,给它安装一个 Productivity Power Tools 扩展,打开这个扩展的 "HTML Copy" 功能,你就可以开始随意复制代码了。我测试过 vs10、vs13 和 vs15,复制出来的代码用 Snipaste 贴出来,效果和 Visual Studio 显示的几乎是一模一样的!

那么有什么用呢?比如你要实现某个功能的时候,可能要参考另一个代码段的写法,你把这个代码段复制然后贴出来放到旁边,就可以开心地对比着开始写代码了。当然很多编辑器自带窗口 split 的功能,也能实现类似的功能,但有了 Snipaste,灵活性更大,也更方便。

偶尔,我们也需要把代码弄到手机上读,但如果直接把代码文件放到手机,代码高亮需要特别的应用不说,手机上对文本文件的操作总是没有图片方便的。这时候可以把你需要阅读的代码复制然后贴出来转为图片,放到手机上就可以了。即使你复制了几千行的代码,Snipaste 把它转成长图片也是完全没问题的。

至于设计师,由于我本人并不是设计师,所以说出来的可能不完全正确。一个场景就是颜色提取和记录(最新版已经支持直接复制 Hex 值),贴出来的颜色卡片也应该是很有用的功能。

另一个场景就是把图片贴出来,设置为半透明,现在你就可以把它和另一张图片进行对比了,如果把它放到空白的画纸上,再打开鼠标穿透状态,就可以开始临摹了。

颜色提取

π:Snipaste 会对一个功能点做各种扩展延伸,比如取色功能不仅能取色,还能复制 RGB 色值到剪贴板,还能把颜色贴出来,还能转换其他颜色格式……你在做的过程中,是就想实现这么多功能,还是说因为有朋友和你提了「能不能这样」之后才做进去?

取色这个功能,其实我自己写程序的时候也会用到,所以也算是自己需要才加上去的,但后来「想象」设计师也会需要,所以把我想象中他们需要的一些特性也加上去了,毕竟我一开始就打算公开发布这个程序的。

说到这里跑个题,其实我个人对设计师是很崇拜的,我自己设计出的东西只能让自己满意,而他们能设计出让特定群体满意的作品,这个特定群体可以是大多数的普通用户,也可以是特定领域的用户。

产品发布后就有设计师联系我,希望帮我改进图标,甚至说可以不用给他图标原稿,当时我就崇拜得不行了,结果他(她?)说这是「基本生存技能」,我……然后只花了一个晚上,他就改进了不少图标,这让画一个图标就画几天的我来说,真是很震撼的……

第一次发布的帖子里我说过,这个软件三年来就我身边的一些家人和朋友用过(在他们的记忆里它还是叫 PicNotes)。最开始贴图的功能应该是我姐的需求,我觉得很不错,就开始开发了。然后自己成为了贴图的重度用户,自己给自己提了不少需求。后来给师兄用了,他也提了不少需求,比如旋转图片、撤销所有标注等等。

只要是他们需要的,我都会努力加进去,为什么不呢?他们也会为我考虑,觉得是 PicNotes 应该有的功能才会提出来。

π:Snipaste 这么多的功能,这些里面有多少是你自己本身的需求,多少是别人朋友提的?你如何权衡一个他人提出的功能是否应该做?

可以说 90% 以上都是我自己本身的需求吧,其实在我发布之前,有很多功能是我身边这些人也不知道的,但这并不影响他们愉快地使用啊。

有些用户总抱怨 Snipaste 太复杂,我想说,你只用你需要的功能的话(嗯,大部分用户就需要截图……),Snipaste 可以直接上手。不需要的那些功能,你非要想学会,那当然是有难度的。

如果想要学会一个高级工具,那学习成本自然也是要的,世界上并不存在不需要学习成本但却很强大的工具。强大的工具通常还有一个共性,就是一旦你掌握了它,它带给你的回报远远超过你当时付出的时间和精力成本。

我在帖子里和官网是这么说的,你如果提一个功能,我「很可能」去帮你实现它;如果你需要某一个选项,请「尽管」告诉我。

前者的「很可能」,是相对于你去给大公司的软件提要求来说的。对于大公司,你提的要求都不一定能到达软件的决策者那里,所以能获得支持的可能性是很小的。而对于 Snipaste(或者其他个人或者小团队的项目),只要你提建议的途径是开发者认可的,那么你的声音就可以确保被他听到,它被实现的可能性也就大大增加了。

当然,并不是说你提了就会被实现,开发者有他自己的考虑和坚持。至于我自己,我不希望 Snipaste 成为大而全的「截图」软件,说到专业的截图,比 Snipaste 优秀的软件并不少。

此外,我也希望 Snipaste 里尽可能不出现很少用户才需要的功能,即希望每一个功能都有比较大的用户群。

后者的「尽管」,是因为每个用户都是不一样的,开发者可以建议用户怎样去设置软件(即软件的默认设置),但不应该要求用户一定要接受那样的设置。而很多这一类设置,其实在代码里都是已经存在的。如果用户需要自定义某个设置,我很乐意弄个选项把它暴露出来,代码量低,也不影响程序体积和性能,用户又开心,何乐而不为呢。

但有些选项则不是代码里已经有的,要增加它可能会影响到程序的其他流程或逻辑,这种我就会慎重考虑。另外有些选项则会违背我的设计原则,这种我就直接不会考虑。

未来的 Snipaste

π:目前已经是你心目中 Snipaste 的最终形态了吗?还是说之后还会有其他想扩展、改进的?

不不不,这并不是 Snipaste 的最终形态,虽然它已经比较完整了,虽然它已经可以让大多数用户长期稳定使用了。有一句话我说了很多次,就是对我自己来说,Snipaste 1.0 就已经完全满足我自用了。

后来的版本修复了不少 bug,是因为我自用的时候不会遇到那些 bug,比如双屏、主屏在右,比如快捷键设置,我自己就用默认配置,所以设置为其他快捷键有问题,我没进一步测试到。

但是满足我自用,并不代表我自己没有进一步的需求了。我自己的计划列表里,还有一些我认为很有用、但实现有困难的功能被我搁置了,我希望以后能实现它们(不,我并不是只滚动截图那些)。有些用户也提出了一些很有建设性的意见,我也希望把它们加入到 Snipaste,所以 Snipaste 其实还有很大的发展空间。

但是,你就停留在现在的版本也行,它应该已经很为你提供很大助力了。

π:在 V2EX 的主题帖中,我们发现 iPic 的作者也想为 Snipaste 的 Mac 版本出一份力,希望结合 iPic 图片上传图床的功能让 Snipaste 的体验更好,你怎么看这件事?

是的,在 Snipaste 1.0 发布之初 iPic 的作者 Jason 就给我发邮件了,说希望能够合作,也希望能为 Mac 版贡献一份力。

我当然是很赞成的,因为 Snipaste 也不打算把图片上传等功能囊括进来,毕竟它只是一个本地的贴图软件。如果和第三方 App 的作者合作,只需接入他提供的 API 即可,为什么不呢?Jason 也非常热心,给我分享了很多他作为独立开发者的想法,我受益良多。

其实我个人是非常羡慕个人开发者的生活的,开发自己喜欢的 App,顺便养活自己,还有一群支持自己的用户,这大概就是程序员的理想状态吧。

相关阅读:《幕后 | 他独立开发了「图床神器」iPic,并想坚持做小圈子里的个性化产品》

π:有将 Snipaste 开源的想法吗?为什么?

在我决定把 Snipaste 免费的那一刻,我也决定了会将 Snipaste 开源。

Snipaste 是我独立开发的,开发中遇到的很多问题,都是通过 Google、stackoverflow、 Qt 社区和 Github 搜索解决的,可以说是得到了免费的专业指导,所以我希望自己也能回馈一下。

另外一个开源的动机是来自 Mac 用户的强烈呼声,希望能尽快为他们提供 Mac 版,但靠我个人肯定是没这么快的,所以我想如果开源了,进度会快很多。

但后来有一些用户很真诚地给我提意见,说不要轻率地开源,对产品未必好,开源之后贡献代码的人也未必多,比较大的项目,稳定地维护起来也不轻松。后来我又看到有人把我的程序打包加密还挂上他们的捐赠链接,我真的就震惊了……所以如果现在把代码开源了,也许会发生更坏的事情。

因此,为了 Snipaste 的发展,近期我是不会开源的。目前的考虑是,当 Snipaste 积累了一定的用户群,有了一定的口碑和名气之后,再考虑开源的事情,那时候大概能把作恶的人的影响降到最低吧?

其实,Snipaste 受欢迎并不是编写它有多困难,实现它的技术有多么厉害,主要是它的一些设计理念抓住了很多用户的痛点。我很乐意在有空的时候,把 Snipaste 里面的一些技术写成文章分享出来。

π:大家对 Mac 版本的 Snipaste 呼声非常高,能透露一下预计在什么时候可以发布吗?

这个问题我在 1.5 版发布的时候简单说了一下,就是真的没办法给出具体的时间表,只能说最近两个月是不会出稳定版的。因为接下来这两个月我现实中非常多事情,不可能花很多精力在 Snipaste 身上。

独立开发和好软件

Snipaste 是免费软件,它也很安全,没有广告、不会扫描你的硬盘、更不会上传用户数据,它只做它应该做的事。

π:判断一个软件的好坏,你有哪些标准?你认为一个理想的好软件是应该功能足够强大吗?还是其他?

好软件的首要要求,我认为是只做它应该做的事。这包括两个方面,一个是实现合理,能不用到的资源就不要去调用,另一个是不作恶。

关于不作恶,Snipaste 中文主页有一句话:「Snipaste 是免费软件,它也很安全,没有广告、不会扫描你的硬盘、更不会上传用户数据,它只做它应该做的事」,这句话被很多介绍 Snipaste 的网站都引用了,为什么都不约而同地引用这句话,原因我想大家也明白。

我并不是指责某些大公司软件的做法,毕竟它们并没有强迫用户去用。国内的 Windows 用户习惯了免费,但公司要赚钱,所以在软件上加了一些东西,所以有说法是「免费的东西最贵」,是很对的,用户其实并没有占到便宜。

但是,其实是有其他方法能从免费用户上面赚到钱的吧,比如争取让免费用户转为付费用户,国外的很多公司就是这样,所以国外的免费软件并没有给人普遍不可信任的感觉,这并不是崇洋媚外,这是现实。

细心的用户也许也留意到了,Snipaste 中文官网和英文官网的基本是一句句照搬翻译的,但英文官网唯独缺少了上面那句话的翻译,因为我觉得国外的软件普遍都做到了,我没必要把它当做一个亮点拿出来说。

我很希望有一天,国人的软件也能得到大家的普遍认可。这并不遥远,大家都在努力,现在也已经有很多国人出品的优秀软件了。

其次,好软件当然就是切中了你的痛点。你需要它,它对你来说就是好软件,虽然对其他用户来说,它可能并没有什么可取之处。所以这种好软件通常都是小巧而专精的,我希望 Snipaste 作为「贴图」软件也是如此小巧的,截图功能只是为了让贴图功能更好用而增加的一个辅助。用户如果需要大大增强截图的功能,我可以考虑出一个专精截图的另一个软件,虽然我很怀疑这样的必要性,因为这类软件市场上并不少见。

π:像 Snipaste 这种功能较为全面的软件通常采取完全付费或部分功能付费的模式,为什么你采取完全免费的模式?

不瞒大家说,我在付费和免费之间是挣扎了很久的。

我其实需要赚钱,所以一度是打算基础功能免费,高级功能收费的。但这样一来,势必就会大大减少用户群:一个软件发布之初,如果大家听说它还有高级功能,但是需要付费才能使用,很多人可能就连免费版本也不愿意去尝试了,这是人之常情。而我希望更多人的人去尝试 Snipaste,去体验贴图功能如何可以提升你的工作效率,这是我最终选择将 Snipaste 免费的根本原因。

另外,也是因为我目前无法给大家提供稳定的「售后服务」,没办法对付费用户负责,所以 Snipaste 现在不能是付费软件。

最后还有一点,就是我认为基础的工具软件应该是免费的,就是那些给最普遍的用户使用的软件,比如 Everything,它的免费给广大的 PC 用户带来了效率的极大提升,我希望 Snipaste 能向它看齐,也成为那么一个软件。而那些针对专业用户的软件则就应该是收费的,毕竟你都用它来完成专业内的事情了,相当于它在帮你做专业工作了,为什么还不肯为它付费呢?

说到这里,其实 Snipaste 也「有可能」出付费的 Pro 版,针对有强迫症的用户、完美主义的用户以及有专业需求的用户。但大家可以放心,免费版现有的功能不会被剥夺,虽然我内心是很希望能把贴图分组功能分离出来,毕竟这也是高级用户才需要的功能……

那么大家可能会问了,Pro 版大概什么时候出,我也不知道……有些特高级功能(请允许我这么称呼,因为免费版的 Snipaste 已经有不少高级功能了)是我很早就在计划的,有些是现在的一些专业用户提供的,能不能实现出来我也不知道。但如果出了 Pro 版,已捐赠的用户会有不同程度的奖励,以感谢他们对我的早期支持。

π:现在有越来越多的在校学生会想要尝试独立开发做一些东西出来,对此你有何建议以及经验分享?

我也很鼓励大家去独立开发一些作品的,可以很好地「修炼」自己,这种提升,是遵照别人的吩咐任务式地写代码无法获得的。建议的话,我说四点吧,希望能对大家有所帮助。

第一,你想做的产品,必须你自己有这个需求,就是说你自己要用。

做一个自己都不需要的产品,我觉得结果不会好,过程也不会享受。如果你自己就用的话,即使做出来不受用户欢迎,你还可以自用呀!开个玩笑,其实如果你自己很喜欢它,那么肯定也会有其他用户很喜欢他的,所以会不会有用户群,其实并不是你一开始就应该考虑的。

只要你觉得你需要,你就去做吧。当然,调研也要做一下,不要重复造「有名的」轮子。就是说,如果这个功能还没有很有名的作品,那你就有机会。

第二,即使你想做的功能已经有了类似的产品,甚至很出名的产品,也不一定要就此打退堂鼓。

只要你觉得有可以改进的地方,特别是有很多可以改进的地方,那么就可以去做。但是,也不要为了保险起见,把所有同类产品都试用一遍。你每用一个产品,你都会受到它的影响,你的思路会因此受到限制。

比如 Snipaste 的截图就受到了 QQ 截图的影响,没法扭转了,所以我在实现截图的时候,也不再敢去试用其他截图产品,就是怕受到它们影响。是的,即使是有名的 FastStone 和 Snagit,我之前都没有用过。

第三,试试做一个桌面产品吧。虽然现在移动 App 很火,但我觉得很多都是伪需求,能沉淀下来让用户愿意长期使用的 App 其实不多。

也许你会说桌面软件都发展 20 年了,该有的软件早就有了,市场已经饱和了。但毕竟桌面才是生产力的主战场啊,而生产力工具天生就是有不断的改进、创新的可能。相信你平时使用电脑时也有感觉不顺手的情况,很好,那或许就是你可以着手的地方!

第四,产品从 1.0 到 2.0 很容易,但是从 0 到 0.1 很难,所以不要犹豫太多,想做就去做。

π:推荐几款在 Windows 上你个人喜欢的工具型软件。

是的,我是 Windows 铁粉!当然,这并没有贬低其他操作系统的意思。我只是说 Windows 是我个人用得最顺手的系统,因为几乎不管我需要什么功能,我都能找到相应的软件。实在找不到了,更好,是时候自己写一个了。:-)

其实,每一个系统都是如此,只要用得精,那么它对你来说就是其他系统无可取代的。

以下都是我开机启动的工具(一部分)

  • Snipaste: 哈哈,还是要在这里打个广告。
  • Everything:神器,用过的都懂,实在想不出不装它的理由。
  • Listary:国人开发的优秀软件!我也很佩服它的作者,软件运营得很成熟,用户社区也维护得很好。有人说 Everything 和 Listary 只取其一即可,但我觉得一起食用效果更佳。Listary 更多的是一个应用/命令启动器,以及在文件夹内快速定位文件,但面对重名文件的时候就比较无力,Everything 正好可以弥补。
  • KeePass:有了它,现在几乎我所有账号的密码都是随机密码了,和 KeeFox 一起食用简直完美。操作体验也非常合理高效,符合我的习惯。我无法把 Mac 系统作为日常使用的系统,很大一个原因就是 KeePass 在 Mac 没有好用的客户端。我倒是很希望自己能为它写一个,但我对 Mac 开发实在不熟悉,而 KeePass 也实在太复杂了。
  • StrokesPlus:鼠标手势软件,之前用的是 StrokeIt,但停止开发很久了,也有一些无法忍受的 bug,后来发现了 StrokesPlus,没想到更强大。这是另一个我在 Mac 平台找不到替代的软件。
  • AutoHotkey:效率用户的必备吧,基本是键盘哪里按的不爽就用它去改。但实际上还能做很多其他事情,只要你肯想!我说 Windows 几乎没有我用不顺手的地方,ahk 有很大功劳。
  • f.lux:这个是确实能缓解眼睛疲劳的,不过我没有用它的那一套随时间变化调色温的理论,我是全天都固定在 5600K,这样对屏幕颜色的改变也不大。
  • Ad Muncher:以前是收费软件,去年开始免费了,应该是很强大的工具,然而我却用只用它来过滤 QQ 聊天窗口的广告……
  • SourceTree:我是 GUI 的拥护者,所以能不用命令行我就不用,SourceTree 减少了我的记忆成本,同时让我享受到了 Git 的便利。
  • Telegram:这是把聊天工具做到极致的典范,而且它还很年轻,还在不断进步,并且也是用 Qt 开发的!
  • OneNote:Evernote 我只用来剪藏网页,做笔记还是得 OneNote. 我很遗憾大学期间没有结识 OneNote,不然我大学期间学的的很多知识就可以经常回顾而不至遗忘了。要说它的缺点,我只能想起两个,一是无法播放 GIF,二是手机端太重了,让人没有欲望去经常打开它。

还有一些是需要用到的时候才会翻出来的软件,这部分不好列举,就不说了。但 NirSoft 网站的这个作者还是要安利一下的,他的软件都非常专精、干净、实用,我曾经把他所有软件的简介给读了一遍,然后选了几个自己需要的收藏起来。

(文末栏目图来自 Business vector designed by Akdesign


阅读更多「幕后」故事 >