我做了两个很小的网站,到现在也还在慢慢改
我做了两个很小的网站,到现在也还在慢慢改
我一直挺喜欢做一些很小的网页。
不是那种一开始就有完整商业计划、用户系统、付费方案的产品,很多时候只是觉得“这个东西如果有个简单的网页就好了”,然后先动手做出来。
WheelPage 就是这样开始的。
最早其实只有一个随机转盘。输入几个选项,点一下,让转盘替你随机选一个结果。功能很简单,但自己真正做的时候,还是会碰到很多以前没想过的细节:选项怎么编辑,转盘怎么停得自然,手机上怎么操作,刷新以后哪些东西应该留下来。
做着做着,我又发现并不是所有随机选择都适合用转盘。
只有两个结果的时候,用抛硬币更直接;需要随机数字的时候,掷骰子更合适;两个人随便分个胜负,又有最简单的石头剪刀布。
所以后来 WheelPage 才慢慢变成了现在这样。
其实我没有特别想把它包装成一个多厉害的产品。对我来说,这几个东西有一个共同点:需要的时候打开,用一下,然后就可以关掉。
这种工具如果为了显得“功能很多”,再加一堆用不到的东西,可能反而失去了原来的意义。
骰子是里面让我花时间比预想中多很多的一个
一开始我也觉得,无非就是随机出一个数字。
但后来还是想把它真的做成一个会滚动、碰撞、停下来的 3D 骰子,所以用了 Three.js 和 Cannon-ES。
做到 D4、D6、D8、D10、D12、D20 以后,才开始碰到一些很具体的问题。比如不同骰子怎么判断朝上的面,物理引擎已经停了但视觉上还是歪的怎么办,D12 为什么总有一些姿势看起来不舒服。
这些问题都谈不上多高深,可真正做一个东西的时候,时间往往就花在这些地方。
也是因为做 WheelPage,我慢慢发现自己其实挺喜欢这种“小问题”。
它不宏大,但很具体。今天解决一个,明天再改一个,页面就比昨天稍微好一点。
后来我开始做另一个完全不同的小站
最开始只是一个反应力测试。
等屏幕变化,马上点击,然后看看自己用了多少毫秒。它甚至比随机转盘看起来还简单。
但我自己反复测试以后,很快发现一个问题:同一个人每次测出来都不一样。
可能这一轮 210ms,下一轮 190 多,再下一轮又慢了一点。偶尔还会出现一个特别好的成绩。
那到底哪个才算自己的水平?
也是从这里开始,我没有继续急着做下一个测试,而是先回去改这个已经做完的页面。后来加了多轮测试、最近成绩、最好成绩,让一次测试不再只有一个孤零零的数字。
我现在反而觉得,这个改动比“再增加一个新功能”重要。
因为第一次测到 205ms,过一段时间回来又测到 195ms,这两个数字放在一起,才开始有一点意义。
测试慢慢多了起来
后来才陆续有了序列记忆、数字记忆、瞄准训练、多目标追踪和斯特鲁普测试。
这些东西最后被我放到了一起,成了现在的 PickTests。
但如果现在问我 PickTests 最重要的是什么,我可能已经不会回答“里面有多少个测试”。
我现在更在意的是:
一个人测完以后,下次为什么还会回来?
所以我最近想得更多的是成绩、历史、比较、变化这些东西。
让用户不是测完拿到一个数字就结束,而是下一次回来时,还能知道自己之前是什么样。
两个看起来没什么关系的小项目
WheelPage 和 PickTests 看起来其实没什么关系。
一个是随机工具,一个是反应、记忆和专注力测试。
但做了一段时间以后,我发现自己在两个项目里做的事情倒挺像:没有急着把它们变得特别“大”,而是在一些很小的体验上来回修改。
WheelPage 的骰子停歪了,我会想办法让它站得舒服一点。
PickTests 测完一次什么都没留下,我就开始想是不是应该记住一点东西。
这些都不是什么很大的功能,但自己每天真正用的时候,就是会一直看到它们。
然后忍不住想:
这里是不是还能再好一点?
现在大概就是这样的状态
可能这也是我现在做独立项目比较喜欢的一种状态。
没有什么很漂亮的成功故事,也还谈不上做出了什么了不起的产品。很多时候就是想到一个东西,先做出来,然后自己不断用,再一点点发现原来哪里不对。
有些东西最后可能没人用,有些可能会慢慢长大。
现在我也不知道。
所以还是先继续做吧。
至少回头看的时候,今天的它们都比刚开始的时候多了一点东西,也少了一些我后来觉得其实没必要的东西。
这大概就是我目前最真实的开发状态。
本作品采用《CC 协议》,转载必须注明作者和本文链接
关于 LearnKu
推荐文章: