打卡这个功能在我脑子里转了大概有一个月才真正落地。不是因为它技术上有多少难度,而是我在想一个问题:人为什么要打卡?
健身要打卡、背单词要打卡、喝水要打卡、早起要打卡——好像生活中每件小事都能被打卡。但打了卡之后呢?该不去的健身房还是不去,该背不下来的单词还是背不下来。
那为什么还要做这个功能?
打卡不是为了记录,是为了看见
我自己的想法是这样的:打卡记录的不是「做了什么」,而是「今天还在坚持」这个事实。
人的记忆是靠不住的。你觉得自己上个月运动了很多次,翻一翻记录发现其实也就去了几次。你觉得最近状态不好,结果一看打卡日历——好家伙,明明每天都在坚持。
所以打卡最重要的意义不是监督,而是反馈。它在你自我怀疑的时候拉你一把,在你沾沾自喜的时候让你清醒一下。
这也是为什么我坚持用颜色区分过去、现在、未来三个状态:
- 过去的日子用棕色调呈现——像老照片一样被妥帖保存,不能修改,只能回看
- 今天用最醒目的色彩突出——这是你唯一能把握的时刻
- 未来的日期用淡蓝色虚化——你可以看,但不能提前打卡
这个设计不是拍脑门想的,它对应着一种时间观:历史已定,当下可塑,未来不可知。
为什么不能补卡
很多人问过这个问题。我的回答很直接:补卡这件事,本质上是在欺骗自己。
昨天没运动就是没运动,昨天没写东西就是没写东西。补上一个记录并不会让昨天的时间重新来过,它只会让打卡数据变得不真实。
数据如果不真实,那它对你的反馈也就失去了意义。
所以打卡只能当天操作。错过就错过了,接受它,今天继续。这才是打卡这件事教给你的真正道理——接受不完美,然后继续。
打卡是一种诚实的自我对话——你可以骗别人,但骗不了日历。
一天可以打多次卡
这个倒是后来才想通的设计。
一开始我觉得一天一次就够了,后来发现自己有时候早上跑完步打个卡,晚上写完东西又想打个卡——它们是不同的事情,应该被分别记录。
所以现在每条打卡记录都是独立的:你可以标记跑步、阅读、写作,也可以自定义内容。一天可以有好多条,每条都带时间戳。点开日期,能看到那天所有记录的卡片,像一本微型日记。
密码保护
打卡页面不需要登录就能查看,但想要记录需要输入密码。
这是故意的。打卡这件事本质上是很私人的——你不需要让所有人都知道你今天做了什么。但同时,打卡记录本身又带有一定的社交激励属性(看着自己的连续天数会有成就感)。
折中的方案就是:查看公开,记录私密。
你可以把打卡页面分享给朋友看,但他们没法替你做记录。密码的存在,让打卡保持了它应有的严肃性。
关于那些统计数字
页面顶部的统计区不是随便放上去的。总天数、连续打卡、累计次数、类型数——这四个数字分别回答了你最关心的几个问题:
- 我坚持多久了?
- 我有没有断过?
- 这个月怎么样?
- 我的生活丰富吗?
这些数字加在一起,就是你跟时间的关系。
写在最后
打卡是一个很简单的功能,但围绕它做的设计决策并不简单。要不要补卡、要不要分类、要不要公开、要不要统计——每一个选择背后都是对人的行为习惯的思考。
最后我想说的是:打卡不是为了发朋友圈,不是为了炫耀连续天数,甚至不是为了自律。打卡是为了让你在若干时间之后回头看的时候,能对那时候的自己说一句:
「嘿,那段时间你没白过。」