搜 索

我为什么做这么多 App

  • 3阅读
  • 2026年09月13日
  • 0评论
首页 / 编程 / 正文
人们问我:你一个人,为什么要做这么多 App?
我的答案很简单:这些不是"产品",这些是我的"技能"。 每一个 App,都是我在生活某个战场上打了很久的仗,最后把打法沉淀成了一段可以反复运行的代码。它先服务我,再服务像我一样的人。

一、一个人的操作系统,需要一套自己的 Skills

我们每个人都在运行一套"个人操作系统":早上几点醒、如何学习、钱怎么花、旅行怎么规划、身体怎么练。绝大多数人这套系统是"出厂设置"——凭感觉、凭惯性、凭意志力。

而意志力是最不可靠的资源。它会随着一天的消耗而枯竭,会在深夜的短视频面前一败涂地,会在健身房第三组卧推的时候告诉你"差不多了"。

所以我做出了一个决定:凡是我反复失败、反复挣扎、反复需要的事情,我就把它做成一个 App。 把意志力的问题,变成系统的问题;把"我今天要不要坚持",变成"这个流程今天自动跑了没有"。

这就是我理解的 Skill

  • 它来自一个真实的、切身的痛点
  • 它是我亲手打过的仗,不是想象出来的需求
  • 它把我的经验"蒸馏"成一个可以重复执行的工具
  • 它安装在我身上先跑通,再交给别人
flowchart LR A["切身的痛点"] --> B["反复挣扎与失败"] B --> C["总结出打法"] C --> D["做成 App = 安装一个 Skill"] D --> E["先在自己身上跑通"] E --> F["蒸馏出可迁移的方法"] F --> G["服务和我一样的人"] G -.->|"他人的反馈"| C E -.->|"新的痛点"| A

下面是我目前的"技能树"。每一条分支,都是一段真实的、带血带肉的历史。

mindmap root(("我的个人 Skills 树")) 生活节律 早点睡觉 早睡提醒 App 禁用 睡眠森林 睡眠调整计划 睡眠代价 倒扣手机入眠 学习成长 烤鸭英语 听力 阅读 写作 口语 财务管理 钱钱记账 旅行记账 多币种 分摊结算 行走世界 亚欧非大环线 路线规划 听背景故事 攻略沉淀 身体训练 练伴 训练记录 进步曲线 训练指导 效率协作 刻迹 多客户端同步 多流程编排 AI 管理助手 时间管理

二、早点睡觉:一个人早睡的抗争史

如果要选一个 App 代表我"为什么做这么多 App",那就是《早点睡觉》。因为它不是一次做出来的,它是一场持续多年的战争的战报

第一阶段:早睡提醒——天真的开始

最初我以为问题出在"忘了"。于是我做了一个最简单的功能:到点提醒。

结果是:提醒来了,我看一眼,划掉,继续刷。我发现自己根本不是忘了睡觉,我是清楚地知道该睡了,但就是不想停下来。提醒解决的是信息问题,而我的问题是欲望问题。

第二阶段:App 禁用——从提醒到强制

既然提醒没用,那就把刀伸向真正的敌人:那些吞掉我时间的 App。到了设定时间,短视频、社交、游戏统统锁死。

这一步真的有效果。但我也发现了新的漏洞:人在被禁用的时候,会本能地去找替代品。锁了 A 我就打开 B,锁了 B 我就打开浏览器。强制手段的边界,永远追不上人钻空子的本能。

第三阶段:睡眠森林——从对抗到经营

我开始意识到,光靠"堵"是不够的,还要"疏"。于是有了睡眠森林:你每一次按时入睡,就会种下一棵树;坚持一周,森林就会成型;熬夜,树就会枯萎。

这一步的意义在于,我把"早睡"从一件被剥夺的事,变成了一件有收获的事。它把负反馈换成了正反馈,把"我又没睡好"变成了"我的森林又长大了"。

第四阶段(进行中):睡眠调整计划

一个长期两三点睡的人,不可能今晚就十一点睡。硬来只会躺床上失眠两小时然后放弃。所以下一个功能是渐进式调整:每天提前 15 分钟,用两到三周把作息平移到目标时间。尊重生理规律,而不是跟身体硬碰硬。

第五阶段(规划中):睡眠代价

我想把"熬夜"这件事的代价可视化:这一夜熬掉的不只是几小时,还有明天的注意力、这周的健身表现、这个月的情绪基线。让代价从抽象变成具体的数字,让"再刷十分钟"的每一次决定都能看见它的账单。

第六阶段(规划中):倒扣手机入眠

这是我自己最想要的一个功能,灵感来自一个极其朴素的动作:把手机屏幕朝下扣在床头。 App 用传感器检测到这个姿态,就进入入眠模式,开始计时;一旦翻起来,森林里的树就开始摇晃。这个功能没有任何高深的技术,但它抓住了入睡前最关键的那一秒:手机放下的那一秒。

timeline title 早点睡觉 · 功能演进史 第一阶段 : 早睡提醒 : 发现问题不是"忘了"而是"不想停" 第二阶段 : App 禁用 : 强制有效但边界追不上钻空子 第三阶段 : 睡眠森林 : 从剥夺变成收获,负反馈变正反馈 第四阶段 : 睡眠调整计划 : 渐进平移作息,尊重生理规律 第五阶段 : 睡眠代价 : 把熬夜的账单可视化 第六阶段 : 倒扣手机入眠 : 抓住放下手机的那一秒

这六个阶段,每一个都是我在某个凌晨躺在床上、清醒地看着天花板的时候想出来的。它们不是功能列表,是一份逐渐升级的作战方案。 而且每一步的失败,都比成功更有价值——正是失败告诉我下一步该往哪里走。

flowchart TD A["晚上到点了"] --> B{"早睡提醒"} B -->|"看一眼继续刷"| C{"App 禁用"} C -->|"找替代品"| D["睡眠森林
正反馈驱动"] D --> E["睡眠调整计划
渐进平移"] E --> F["睡眠代价
看见账单"] F --> G["倒扣手机
进入入眠"] G --> H(("真正睡着")) B -->|"乖乖睡了"| H C -->|"没找到替代品"| H

三、烤鸭英语:烤鸭路上的血泪史

"烤鸭"是考雅思的人对自己的自嘲。烤过的人都知道,那种被反复烤、反复烤不熟的感觉。

我做《烤鸭英语》,不是因为我英语好,恰恰是因为我在这条路上摔得够多

  • 背单词背到 A 开头的都认识,B 开头的就模糊,背了一个月还在 abandon
  • 听力总是在最后一题的那个数字上丢分,而那个数字我明明听到了
  • 写作永远在 6 和 6.5 之间反复横跳,不知道问题出在结构还是词汇
  • 口语 Part 2 一开口就是"Well, um, I think...",然后大脑一片空白

市面上的雅思 App 很多,但它们都是"老师视角"——从考纲出发,告诉你该学什么。而我需要的是"考生视角"——从我今天错的那道题出发,告诉我为什么错、下次怎么不错。

所以《烤鸭英语》里的每一个功能,都对应着我一次具体的失败:

我踩过的坑我做的功能
单词背了就忘基于遗忘曲线的复现,只重复我真正记不住的
听力数字、拼写丢分专门的数字听写、拼写听写训练
写作分数卡住不动拆解高分范文结构,逐段对比自己的作文
口语开口就卡题库计时练习,录音回放,听自己哪里在拖
备考没有节奏,越临近越焦虑按考试日期倒推的每日任务
flowchart LR subgraph 我的血泪 A1["单词背了就忘"] A2["听力细节丢分"] A3["写作卡在 6.5"] A4["口语开口就卡"] end subgraph 蒸馏出的方法 B1["遗忘曲线复现"] B2["数字与拼写专项"] B3["范文结构拆解"] B4["计时录音回放"] end subgraph 交给下一个烤鸭 C["少走我走过的弯路"] end A1 --> B1 --> C A2 --> B2 --> C A3 --> B3 --> C A4 --> B4 --> C

这就是我说的蒸馏:把我付出的时间和挫败感,压缩成一套下一个人可以直接用的方法。我多走的每一步弯路,都变成了别人可以少走的一步。


四、钱钱记账:只在出去玩的时候记账

很多记账 App 想让你记一辈子的账。我试过,坚持不过两周。日常生活的花销太琐碎,记账本身就变成了负担。

旅行的时候不一样。旅行是一个有明确开始和结束的"项目",有预算、有多币种、有跟朋友的分摊、有回来之后想复盘的欲望。这时候记账不是负担,是刚需。

《钱钱记账》就是为这个场景做的:

  • 一次旅行一个账本,出发建立,回家关闭,不给日常生活添麻烦
  • 多币种自动换算,在国外掏出的每一张钞票都能换成一个我熟悉的数字
  • 多人分摊结算,旅行结束时一键算清谁该给谁多少,不用在群里翻聊天记录
  • 按天、按类别复盘,让我知道下一次预算该往哪里倾斜

它是一把只在特定场景下才拔出来的刀。它不贪心,不想占据我的每一天,它只想在我最需要的那几天做到最好。这也是我对"Skill"的另一层理解:一个好的 Skill 知道自己什么时候该出现,什么时候该退场。

flowchart LR A["出发:建账本
设预算·选币种·加同伴"] --> B["路上:随手记
多币种自动换算"] B --> C["结束:一键结算
谁给谁多少"] C --> D["回家:复盘
按天·按类别"] D -.->|"下一次预算"| A

五、亚欧非大环线:做攻略做到吐之后的产物

如果你做过一次跨越十几个国家的长线旅行攻略,你就知道那是什么感觉:几十个标签页、上百条收藏、Excel 表格里塞满了航班时间和签证要求,最后你已经不记得自己为什么要去这个地方了。

《亚欧非大环线》就是我做攻略做到吐之后,愤怒中想出来的东西。

它解决两个问题。

第一个问题:路线本身。 把一条大环线上的城市、交通、签证、季节、预算串成一条可以拖拽调整的线,而不是散落在各处的碎片。

第二个问题,也是我自己最需要的:听背景故事。 我发现攻略做到吐的根本原因,是信息和意义的割裂。我知道要去伊斯坦布尔,但在赶路的时候我早就忘了它为什么叫君士坦丁堡、为什么它站在两大洲之间。所以我做了一个功能:在路上、在飞机上、在等车的时候,戴上耳机,听目的地的背景故事——历史、传说、地理、为什么这座城市会长成今天这个样子。

这个功能让我在到达一个地方之前,就已经和它有了情感联系。攻略是"去哪、怎么去",背景故事是"为什么去、去了看什么"。前者是逻辑,后者是灵魂。

flowchart TD A["想走一条亚欧非大环线"] --> B["打开几十个标签页做攻略"] B --> C["做到吐
只剩信息,没了意义"] C --> D{"痛点拆解"} D --> E["路线碎片化"] D --> F["知道去哪
忘了为什么去"] E --> G["可拖拽的环线规划"] F --> H["听背景故事
路上戴耳机就能听"] G --> I(("既知道怎么去
也知道为什么去")) H --> I

六、练伴:在健身房撸铁时想出来的 App

《练伴》诞生在两组深蹲之间的休息时间。

那时候我坐在凳子上,脑子里在想一个问题:我上周这个动作做了多重?多少次?这周到底有没有进步? 我不知道。我只有一个模糊的"感觉好像差不多"。

而健身这件事最残酷的地方就在于,没有记录就没有进步。身体是最诚实的系统:你给它的刺激如果和上周一样,它就没有任何理由变强。

所以《练伴》要做的事情很朴素:

  1. 记录每一组的重量、次数、感受,快到在组间休息的 60 秒里就能完成
  2. 画出进步曲线,让我看见每个动作的重量、容量在过去几周是怎么爬升的
  3. 指导下一次训练:根据上一次的表现,告诉我今天该加重还是加次数、该推进还是该退阶
  4. 让训练更高效:把每一次去健身房的 90 分钟,都花在真正能让我变强的事情上

它叫"练伴",是因为我希望它像一个懂行的训练伙伴:不会替我举铁,但会在我要偷懒的时候说"上周你做了 8 个,今天来 9 个"。

flowchart LR A["训练前
看上次记录"] --> B["训练中
组间 60 秒快速记录"] B --> C["训练后
进步曲线更新"] C --> D["分析
该加重还是加次数"] D --> E["下一次训练指导"] E --> A C -.->|"看见进步 = 动力"| B

七、刻迹:一个人同时跑很多条线,靶子到底在哪

前面五个 App,每一个都在解决一个具体的战场。但当我真的开始同时维护五六个 App、几条产品线、几个平台的时候,一个更上层的问题浮出来了:我自己,成了瓶颈。

我的一天是这样的:手机上收到一条用户反馈,电脑上有三个终端在跑,平板上在看设计稿,浏览器里开着十几个标签页,笔记软件里躺着昨天没处理完的待办。想法在通勤的时候冒出来,记在手机上;回到电脑前,忘了记在哪里;晚上想复盘,发现今天到底做了什么、每件事花了多少时间,一片模糊。

这不是某一个工具的问题。这是多客户端、多流程之间没有一条主线的问题。每个工具都很好,但它们彼此不认识,而我是唯一在它们之间来回搬运信息的人。搬运本身,就吃掉了我一天里最清醒的那几个小时。

《刻迹》就是为了终结这种搬运。它的名字来自"刻下痕迹":我做过的每一件事、花过的每一段时间、想到过的每一个念头,都应该被自动刻下来,而不是靠我事后回忆。

它做三件事。

第一,多客户端合一。 手机、电脑、平板、浏览器,不管想法从哪个入口进来,都落到同一条时间线上。通勤时手机上一句话,回到电脑前它已经在那里等着,带着上下文,而不是孤零零的一行字。

第二,多流程编排。 我同时在跑的每一条线——《早点睡觉》的新功能、《练伴》的 bug、下一趟旅行的攻略、一篇要写的文章——都是一条独立的流程,有自己的阶段和节奏。刻迹把它们并排放着,让我一眼看见每条线走到哪了、哪条卡住了、哪条该推进了。不是把所有事情堆成一个待办列表,而是让每一条线有自己的轨道。

第三,AI 管理助手 + 时间管理。 这是刻迹真正不一样的地方。传统的时间管理是我来规划、我来执行、我来复盘,三件事都靠我。刻迹里的 AI 助手接过了其中最消耗的两件:

  • 规划:早上它根据每条流程的进度、截止时间和我过去的精力曲线,给出今天该攻哪几条线、大概各花多少时间
  • 执行中:我切换客户端、切换任务,它在后台把时间自动归到对应的流程上,不需要我手动开始、结束计时器
  • 复盘:晚上它把一天的痕迹整理成一份简报——时间花在哪、哪条线推进了、哪条被打断了几次、明天该从哪里接上

我不需要再"管理"时间,我只需要做事,时间自己被刻下来,AI 帮我看清它的形状。

flowchart TB subgraph IN["多客户端 · 想法从哪来都行"] P["手机"] C["电脑"] T["平板"] W["浏览器"] end IN --> L["刻迹 · 统一时间线
自动刻下每一段痕迹"] L --> F1["流程 A
早点睡觉 v6"] L --> F2["流程 B
练伴 bug 修复"] L --> F3["流程 C
下一趟旅行攻略"] L --> F4["流程 D
写一篇文章"] F1 & F2 & F3 & F4 --> AI["AI 管理助手"] AI --> R1["早:今天攻哪几条线"] AI --> R2["中:时间自动归到流程"] AI --> R3["晚:一日简报与明日接口"] R3 -.->|"第二天"| R1

它和其他几个 App 的关系,有点像操作系统和应用程序:前面五个 App 各管一个战场,刻迹管的是我怎么在这些战场之间调度自己。它是我给自己安装的第一个"元技能"——一个用来管理其他技能的技能。

flowchart LR A["想法冒出来"] -->|"任意客户端"| B["自动落到时间线"] B --> C["AI 归入对应流程"] C --> D["推进 · 时间自动计入"] D --> E["晚间 AI 简报"] E -->|"明天从哪接上"| A E -.->|"精力曲线越来越准"| C

八、这些 App 的共同基因

把这五个 App 放在一起看,会发现它们有一套完全一致的底层逻辑:

维度早点睡觉烤鸭英语钱钱记账亚欧非大环线练伴刻迹
起点我睡不着我考不过我算不清我做攻略做到吐我记不住进步我成了自己的瓶颈
战场深夜的床备考的桌子异国的街头几十个标签页健身房的凳子多个屏幕之间
核心洞察意志力靠不住要从我的错题出发只在该出现时出现信息要有意义没有记录就没有进步搬运信息比做事更耗人
蒸馏物一套渐进的作战方案一条少走弯路的路径一把场景化的刀一条有灵魂的路线一个懂行的伙伴一个会调度我的助手
服务对象所有熬夜的人所有烤鸭所有出去玩的人所有想走远路的人所有想变强的人所有多线并行的人

把六个 App 分层来看,五个在"战场层",一个在"调度层"——这就是为什么它们不是一堆散落的工具,而是一套有结构的个人系统。

它们都遵循同一个三段式:

flowchart TB subgraph S1["1 · 切身需求"] A["我自己真的需要
不是想象出来的用户需要"] end subgraph S2["2 · 蒸馏自己"] B["把挣扎的过程
压缩成可重复的方法"] end subgraph S3["3 · 服务他人"] C["先在自己身上跑通
再交给和我一样的人"] end S1 --> S2 --> S3 S3 -.->|"他人的反馈让方法更锋利"| S2

九、为什么不做"一个大 App"

一定有人会问:既然逻辑都一样,为什么不合成一个"超级 App"?

因为 Skill 的本质就是单一、锋利、可插拔。

  • 一个人可能需要早睡,但不需要考雅思
  • 一个人可能常年旅行,但从不进健身房
  • 一个 Skill 应该在它的战场上做到极致,而不是在一个庞杂的界面里做一个入口

更重要的是,每个 App 独立存在,才能独立进化。《早点睡觉》从提醒到倒扣手机,走了六个版本,它的迭代节奏和《练伴》完全不同。如果绑在一起,任何一个的进化都会被其他的拖慢。

就像人的技能一样:你不会把"游泳""做饭""开车"合并成一个技能。它们各自练、各自精进,只是都装在同一个人身上。

当然,这些 Skill 之间需要一个调度者。这正是《刻迹》的位置:它不合并任何一个 App,它只负责让我在它们之间高效地切换。战场层各自锋利,调度层负责统筹,这才是一个人的操作系统该有的样子。

flowchart TD ME(("我 · 一个人的操作系统")) ME --> K["刻迹 · 调度层
多客户端 · 多流程 · AI 时间管理"] K --> A["早点睡觉"] K --> B["烤鸭英语"] K --> C["钱钱记账"] K --> D["亚欧非大环线"] K --> E["练伴"] A -->|"独立迭代"| A1["v6 倒扣入眠"] B -->|"独立迭代"| B1["错题驱动"] C -->|"独立迭代"| C1["场景化账本"] D -->|"独立迭代"| D1["背景故事"] E -->|"独立迭代"| E1["训练指导"] A1 & B1 & C1 & D1 & E1 -.->|"进度与耗时回流"| K

十、结语:我在做的,是把自己写成代码

回到最初的问题:我为什么要做这么多 App?

因为我不相信意志力,我相信系统。
因为我不想让每一次挣扎白白消耗,我想把它们沉淀下来。
因为我知道,如果一个问题我反复遇到,那一定有成千上万的人也在反复遇到。

每一个 App,都是我在生活某个角落里打过的一场仗。我把打法写下来,先装在自己身上,验证它确实有用,然后交出去。

一方面蒸馏自己,一方面服务他人。

这句话不是口号,它是我做每一个 App 时的顺序:先解决我自己的问题,再看它能不能解决别人的问题。因为一个连自己都没治好的药方,没有资格开给别人。

这份技能树还会继续长。睡眠代价、倒扣手机入眠只是下一批。而《刻迹》的出现,意味着这棵树已经长到了需要一个调度者的高度——当 Skill 多到我自己都管不过来的时候,就再造一个 Skill 来管它们。只要我还在生活,还在挣扎,还在某个凌晨盯着天花板、某个组间休息坐在凳子上、某个做攻略做到吐的深夜、某个在多个屏幕之间来回搬运信息的下午——就还会有新的 Skill 长出来。

因为归根结底,我做的不是 App。

我是在把自己,一个功能一个功能地,写成代码。

评论区
暂无评论
avatar