为什么非要搞这个“生命竞赛”?
闲不住。你看我平时分享的那些东西,都是自己用手敲出来,真金白银试出来的。这个“生命竞赛”的项目,说白了,就是我给自己搞的一套数字记账本,但它又不像普通的记账本,我硬是把它做成了一个带点游戏性质的生命管理系统。为啥要搞这个?
去年那阵子,身体突然报警了。医生让我少看电脑,多运动,别老是给自己找气受。那段时间我心里憋屈得很,总觉得自己的人生跟一滩烂泥似的,没个奔头。我当时就抓着这股怨气想,能不能搞个东西,把人生目标、健康指标、存款数字,都像游戏数据那样量化起来?搞输了就得重新来,搞赢了就给点“成就奖励”。
说干就干,我开始琢磨工具。我最开始想着,用Excel得了,简单粗暴。结果,不到三天就发现,数据一多,联动一复杂,那界面卡得跟ppt似的,根本没法看。我赶紧把思路转了,找了些现成的开源框架开始搭架子,想用手机就能随时随地录入数据。那段时间,我简直是魔怔了,白天上班,晚上就窝在书房里,对着屏幕吭哧吭哧。
第一次推倒重来,血亏两个月
我这人做事喜欢一步到位,第一次写代码的时候,我把所有功能都想塞进去。包括什么复杂的习惯养成机制,精确到小时的效率统计,还有个鬼知道谁会用的社交分享模块。我投入了整整两个月,终于搞出了一个“初版”。自己一试用,差点没气死。
- 界面复杂: 密密麻麻的按钮和数字,看起来像华尔街的交易终端,根本不像一个能让人放松使用的工具。
- 运行效率慢: 数据库结构搞得太复杂,每次启动都要加载半天。我用的手机配置不算差了,但每次点开都像在等飞机起飞。
- 方向跑偏: 我一开始是想做个“工具”,结果做成了个“负担”。每天为了给系统录入数据,花的时间比完成目标的时间还长。
我当时看着那个臃肿不堪的程序,心一横,决定全砍了重写。那两个月的心血,挺疼的。但我知道,如果再不砍,这个项目就彻底废了。我这回吸取教训,把目标调整到最核心的三个字:“活下去”。
更新日志里都写了什么?
推倒重来后,我的节奏就稳定多了。这回我学聪明了,从小处着手,频繁迭代。项目名也正式定下来叫“生命竞赛”。我的更新日志里,记录的都是这些土办法:
版本1.0到1.5:解决卡顿问题。 我把以前复杂的后台逻辑,全部简化成几个核心的记分板。数据结构也重写了一遍,以前那种互相牵扯的表结构全扔了。现在启动速度基本秒开,感觉舒服多了。为了达到这个效果,我那段时间熬夜盯住了内存分配,把所有能省的地方都省了。
版本1.5到2.0:界面大调整。 以前那个黑灰的配色,看着就压抑。我直接换成了温暖的色调,并且把所有不必要的提示都藏起来。核心数据显示要求大而清楚,让人一眼就知道自己今天赢了没有。这中间我反复请老婆和朋友试用,让他们告诉我哪里不顺手,哪里看起来乱。
版本2.0至今:功能迭代。 重点放在了“同步”上。我自己有好几个设备要用,每次手动导数据简直要命。我研究了半天,终于搞了个简易的云同步方案,虽然比不上大公司的流畅,但至少能保证数据不丢,而且不同设备间切换时,数据能跟上。这个同步功能我修修补补快半年才勉强稳定下来。
关于“在哪下载”这个要命的问题
很多人问我,你这个东西这么好玩,在哪下载?我听到这个问题就头疼。
我这个东西,毕竟是我自己瞎搞的,没有走那些大平台的官方流程。我想着就上架到App Store或者安卓市场算了,简单。结果我研究了一下那些上架流程,简直要崩溃。各种证书,各种隐私政策,各种审核要求,光是准备那些材料,感觉比我写代码还费劲。
而且作为一个纯粹的个人项目,那些平台还要收年费、抽佣金,我就是自己玩玩,还要倒贴钱去伺候那帮人,简直是扯淡。
我选择了一个最土的办法:自己搭建了一个简陋的下载页面,然后手动把安装包放上去。每次更新,我都得手动替换文件,再把更新日志发到我的小圈子里。虽然麻烦,但至少省去了和那些平台扯皮的时间。
每次有人问“在哪下载”,我都得私下发个地址给他们,并且嘱咐他们,这是我个人瞎搞的,出了问题别怪我。这感觉就像在卖盗版碟,但没办法,这就是个人独立开发者的现状。这个“生命竞赛”的路,看来还得继续自己摸索着走下去。