帖子上了首页以后,我没急着做新功能,先回头改了反应测试

前几天,我把 PickTests 最近的开发过程发到了 Indie Hackers。
PickTests 是我正在做的一个在线能力测试网站,目前已经上线了反应时间、瞄准训练、序列记忆、数字记忆、多目标追踪和斯特鲁普 6 项测试。
帖子后来出现在了 Indie Hackers 首页的 Build Board。评论慢慢多起来,有人问我为什么还在坚持用原生 JavaScript,有人提到手机上的触控问题,也有人建议保存最近成绩和个人最好成绩。
其中一条评论问:
用户完成一次测试以后,为什么还会回来?
这个问题刚好问到了我一直有些发虚的地方。
PickTests 中文首页很早就写着一句话:
重复测试、比较成绩,看看自己有没有进步。
我一直觉得这句话挺适合这个网站。
用户不需要注册,也不一定要和排行榜上的人比。今天测一次,过几天再回来,看看自己有没有快一点、记得多一点,这就够了。
但当时的页面其实没有把这件事做完整。
用户完成一次测试,看到一个结果,然后关掉网页。下次再打开,页面又从头开始。
假设第一次测出 236 毫秒,第二次测出 255 毫秒,他可能觉得自己变慢了,也可能根本记不清上次究竟是多少。
网站允许用户重复测试,但比较这件事,基本还是靠用户自己记。
成绩记录并不是看到这条评论后才想到的。之前做结果页时,我就考虑过个人最好成绩和最近记录,只是每次准备开始,总会觉得先做下一个测试更划算。
这个功能就这样一直往后排。
那条评论也没有突然给我一个答案,只是让我又回头看了一遍首页上的那句话。既然我已经写了“和自己比较”,页面至少应该先把上一次的结果留下来。
八轮有点长,五轮也不一定适合所有人
我先动手修改的是 PickTests 里的 反应时间测试。
这类反应时间测试的流程很简单:页面等待一段随机时间,信号出现后,用户立刻点击,最后得到一个以毫秒为单位的成绩。
第一个能运行的版本并不难写。
真正让我反复改的,是一次反应速度测试到底应该进行几轮。
之前的版本设定为 8 轮。
我当时的想法是,只测一次很容易受到走神、误触和设备状态的影响。多测几轮,再取一个平均值,结果会稳定一些。
这个理由没有错。
但我自己把测试完整跑过几次以后,也能感觉到 8 轮有点长。只是临时点进来玩一下的人,做到一半可能就不想继续了。认真测完一次以后,也未必马上愿意再来 8 轮。
我在 5 轮、8 轮和 10 轮之间来回想过。
后来发现,这个问题可能本来就没有一个能照顾所有人的数字。
所以我没有继续选,而是把两种情况都留下来。
只想快速试一下,可以选择单轮测试。想得到相对稳定的结果,可以完成 5 轮,再看平均成绩和每一轮的结果。
做完以后回头看,这不是什么很大的功能。只是不用再要求每个打开页面的人,都按照同一种方式完成测试。
有人只是想点一下看看自己的反应有多快。有人会连续测几次,想知道自己还能不能再快一点。
这两种人都很正常。
先让页面记住一点东西
轮数调整完以后,我开始处理成绩记录。
现在重新打开页面,还能看到最近的测试结果、最快成绩和平均成绩。记录只保存在当前浏览器里,不需要注册,也不会要求用户填写邮箱。
我没有做账号系统。
对现在的 PickTests 来说,那样太重了。用户只是打开一个测试,点几下屏幕,看看结果,没有必要先注册、验证,再记住一个密码。
本地记录当然也有问题。
它不能跨设备同步,清除浏览器数据以后也会消失。严格来说,它甚至算不上一个完整的用户系统。
但对目前这个阶段来说,我觉得先这样就够了。
至少用户第二次打开页面时,不用再凭印象猜上一次测了多少。首页上那句“和自己比较”,也不再完全依赖用户自己的记忆。
评论区还有人建议增加复制成绩的功能,方便把结果发到 X 或 Discord。这个想法我记下来了,但没有马上做。
测试结束以后,结果页到底应该放多少东西,我到现在也没有完全想清楚。
只放一个数字,多少有些单薄。把历史曲线、排名、分析和分享按钮都堆上去,又会让一个本来很轻的测试变得像一份报告。
现在的结果页只是我暂时找到的一个位置,不一定就是最后的样子。
这些记录会不会真的让用户回来,我也不知道。
我目前没有足够的数据证明,增加一个历史最好成绩,就能解决回访问题。只是从产品本身看,如果网站说的是“和自己比较”,它就不应该每次打开都像第一次见到用户。

第 7 个测试还没开始
做到 6 个测试以后,我原本已经在考虑下一个页面了。
打字速度、点击速度,还有其他记忆和注意力测试,都可以继续往下做。
增加一个新测试的变化很直观。首页会多一张卡片,网站看起来更丰富,也会多一个可能被搜索到的页面。发布时,也很容易整理成一次看得见的更新。
回头修改已经上线的页面,没有这种爽感。
调整轮数、整理结果页、处理手机上的点击区域,这些事情很难写成一条显眼的更新日志。用户用得顺利时,可能根本不会注意到背后改过什么。
但我把现有的 6 个页面重新点了一遍,还是发现了不少差别。
有的测试结束后立即显示结果,有的会多停留一会儿;有的结果页解释得比较完整,有的主要留下一个数字;部分页面在手机上已经比较自然,部分页面还带着桌面端的操作习惯。
单独打开一个测试时,这些问题都不算严重。
连续使用几个页面后,就会感觉它们更像六个分别完成的小项目,还没有完全连成一个整体。
所以第 7 个测试暂时还没有开工。
接下来先继续整理已有的页面。哪些成绩值得留下,手机上还有哪些地方不顺手,不同测试的结果页能不能尽量保持一致。
什么时候开始做第 7 个,我现在还没定。
至少这次重新打开反应测试时,页面不会再完全忘记上一次发生过什么。
目前上线的测试,都可以在 反应测试 直接体验。

浙公网安备 33010602011771号