我设计并开发 App,让生活更好。
做 App 之前
四年级时,我在本子上画游戏,同学花钱来玩。2017 年,上大学之前,我开始做网站。上了大学,课间只有十分钟,来不及排队买吃的。于是我做了一个食堂点餐的 App,学生就不用排队等了。后来学经济学的时候,我用 R 做 Web App。界面给人什么感受,我一直本能地在意。
我联合创办了 Nala,河内附近的一处度假村。从 2022 年起,我负责它的运营和品牌,和那里的员工、品牌合作方一起工作。在网上,我成了 TikTok 上的“Tớ là Lộc”,粉丝约 10 万,有的视频播放量达到数百万。我还给 Nàng Mơ 做了两年内容顾问,那是一个在 TikTok、Facebook 和 YouTube 上运营的创作者品牌。到 2024 年,媒体这边的工作收入不错,却让我离真正喜欢做的事越来越远。
于是我从中抽身,待在家里。别人觉得我在扔掉自己的未来。我是在造一个新的:那些我希望世上能有的 App。就是下面这五款。
baseline 在 App Store 查看
动脑的事,交给 App。




-
在健身房
训练的时候,我要练的是身体,不是脑子。
到了健身房,打开 App,看今天练哪些动作。动脑是 App 的事。
-
第一次尝试:拖两次
我很早就选了拖动。数字键得一下一下地点,箭头又占屏幕。
第一版要拖两次:一次调重量,一次调次数。我每天都用,用了将近两周。还算可以。
-
图表
用着用着,我觉得少了点什么:一张图表,把今天的重量和上次的放在一起比。我就做了一张。
有了图表,拖一次就比拖两次更合理:上下调重量,左右调次数。
-
你来试试
手指按住数字,然后拖动。往上是加重。往右是多做一次。方块就是你这一组,和上次的画在一起比。
-
对自己说话算数
一开始它只给我自己用。有没有别人用,我不在乎。后来我发现,这可能就是我练得断断续续的原因,而坚持练下去,正是这个 App 的目的。
所以我加了社交的部分,好让自己有点压力。但不要太多。我设计的排行榜只给一件事打分:你对自己说话算不算数。举多重,练多勤,都不算。你说每周练四次,也练满了四次,就和说七次、练满七次的人并列。
Lockeat 在 App Store 查看
从一张照片开始。
从 14 岁到 26 岁,我的体重一直上上下下。我下过苦功,身体也不止一次变了样。然后一切又反弹回去,每经历一轮,羞耻就多一分。
回头看这十二年,我才明白,不是我有什么毛病。我一直想用一阵一阵、强度大到撑不下去的努力,去解决一个长期的问题。我佩服的那些健康的人,并不是每天早上都要打赢一场大仗。好好吃饭,早就成了他们生活里平常的一部分。
所以我做了 Lockeat,一款每天记卡路里的 App,只围绕一条原则:待在 App 里的时间尽量少,效果尽量大。记一餐,拍张照片就行,一两秒后估算就出来了。我定的目标是只点一下。实际上线的版本要点三下:打开相机,拍照,保存。
我想要自律,但不要那种被管着的感觉。Lockeat 不会催你完成每日目标,也不会让你为吃下去的每一点东西纠结。
拍照记录的流程,我先在 Claude Design 里做了原型。App 打开就是日历:每一天只是一个简单的总数,底部放着一个相机按钮。日历上没有卡路里圆环,也没有进度条。先记录,后评判。
所有数字都是估算,不是医疗建议。
Elsewhere 在 App Store 查看
留在你的手机里,不声不响。
Elsewhere 把个人照片和视频留在设备上,藏在一个不起眼的外表后面。
它在主屏幕上的图标,由你从十二个里挑。iOS 允许 App 换图标,但不允许改名字,所以名字始终是 Elsewhere。
lifelong 在 App Store 查看
那一个人。
lifelong 是一个仅限两人的私密空间。没有通讯录,没有信息流。
它的助手叫 Tơ,在手机上运行。只有在你们叫它读、而且两个人都打开了开关之后,它才会读两人的聊天。你们俩谁都可以再把它关掉。
它也是我差点放弃的一款 App。一次分手之后,我对它失去了希望,打算做的改动大到几乎等于重写。
我决定,一次痛苦的经历,不该改掉这款 App 对健康、幸福的关系的描绘,所以保留了原来的版本。它现在大约做到了我想要的 30%,我还在继续改进。
Knowless 在 App Store 查看
一个界面,一个按钮。

-
在香港走丢
小时候,我在香港走丢过。我不会说当地的话。
后来出门,去中国内地,去其他我不懂当地语言的国家,手机都用不了流量。每一次我想要的都是同一样东西:一个不用联网的翻译工具,让我能听懂别人,也能和他们说上话。
-
第一次尝试:雷达
第一版是一个一直在听的雷达。我设想它只靠声音就能判断说话的人在哪儿。
它做不到。我的手机录音拿不到空间音频,所以录音里没有任何信息能说明声音是从哪儿来的。我读到过,新一点的机型也许可以。我没有那样的手机。我停手了。
-
第二次尝试:眼睛
于是我不用耳朵,改用眼睛:两个摄像头同时开,找出正在说话的那张脸。
手机发烫,电量直掉,还卡死。这个方案我也放弃了。
-
我自己的耳朵
纸面上,给吵闹的地方做降噪,听起来很合理。后来我用自己的耳朵听了一段很吵的录音。我听不清自己说的话。
降噪做得再多也救不回来,所以我放弃了这个想法。这就是我说的“人在回路”(human in the loop):我得不断检查,自己提的要求到底合不合理。
-
最后留下的
一个界面,一个按钮。按下,说话,翻译。
第一版原型还保留着对话记录。为了赶上 Shipaton 按时上线,我把这个也砍了,结果还是差点错过截止日期。它大概是我做过的最简单的 App。
-
一个效果,做了两天
一个很小的功能,做起来却极其复杂:文字怎么出现。语音先变成一个猜测,立刻显示出来,这样才有实时的感觉。接着再修正这个猜测。一个长句说完,还会结合上下文再修正一次。
这几种状态,每一种都得看着对,中间等待的那一段也一样。我在 App 和设计稿之间来来回回,花了两天多。
有些东西不该在那儿。不是每个人都会注意到。
像乐高
同时做好几款 App 的时候,它们之间开始接得上了。给这一款做的一块,能拼到另一款上,像乐高。baseline 起初是 lifelong 里的健身部分;2026 年 8 月,我把它拆出来做成独立的 App,几天后,Lockeat 又从 baseline 里分了出来。
baseline 里的信息流,又来自另一款 App。那款我做出来了,等它跑起来我才看清,那个想法离现实太远,行不通。有时候,我会后悔花在它上面的时间。但它的信息流搬进了 baseline,正好合适。
同一套规则
baseline、Lockeat 和 Knowless 都用我自己维护的一套小型设计系统,叫 Ground & Signal。它的想法是:这几款 App 长得完全不像,用起来却是一个样。它的规则:
- 两个界面,其余用弹层。
- 只用一种强调色,标出你当前所在的那一项,和唯一值得做的那个操作。
- 动效用来说明正在发生什么,不用来表演。
- 小字说真话。
- 撤销就够用的地方,不弹警告,也不要确认。
- 只陈述,不喝彩:没有连续打卡,没有徽章,没有夸奖。
我怎么工作
我先做原型,再开发,而且动作快。2026 年 8 月 26 日,Lockeat 成了一款独立的 App。到 8 月 28 日,它的拍照记录流程(一张估算卡片、一个分量滚轮、三种滑动手势)已经是 Claude Design 里一个可以点击的原型,并且做完了一轮 AI 辅助的评审,对照 iOS 允许的做法,一个界面一个界面地过了一遍。第二天,开发规格文档就照着它写了出来,细到要保留原型里动效的手感。
在那个阶段,我做了两个决定。估算不是测量,但我决定 App 仍然只显示一个简单的数字,并把背后的推理过程实时流式显示出来。另外,有一张设计稿让我觉得不对劲:后来发现,原因是示例的食物图片里混了 AI 生成的照片。从那以后,Lockeat 对图片有了一条规则:只用真实饭菜的照片,不用 AI 生成的,也不用影棚拍的图库照片。
我用 AI 工具开发(Claude Code、Bitrig),用我能拿到的最好的模型,并且全程紧盯。AI 给我的很多想法并不可行,不过有时候它也让我很佩服。累得不行的时候,我先让模型把方案审一遍,再自己读,看有没有不合逻辑的地方。决定权始终在我手里。
36 秒看完五款
在我的手机上,这五款放在同一个文件夹里,文件夹叫 Quality life。
五款 App,为了有质量的生活。
关于我
不管做什么,我都尽量让设计成为其中最重要的部分之一;每一款 App,从第一个原型到上架 App Store,都是我自己一手完成。
我想把这些带进一个团队。我住在河内,在看 UI 设计和产品设计岗位,河内、胡志明市或远程都可以。我在家办公,设备齐全,按越南时间(GMT+7)工作。
联系方式
阅读说明
图片下面没有配图注,所以在这里一并交代。手机界面图是真实界面的截图和合成图,里面填的是示例内容;Elsewhere 图库里的照片是生成的,内容是虚构的;Lockeat 有一张单日视图经过裁切。视频片段剪自我自己做的演示视频和预览视频,Knowless 里的句子是事先写好的。Knowless 那一章里的三幅线条画(一个雷达、两个摄像头、一段带噪声的波形)是为这个页面画的草图,不是截图。你可以上手试的两个界面,是为这个页面做的小型复刻,不是 App 本身。lifelong 有两张截图修掉了 iOS 的浮层(辅助触控按钮和录制指示器),36 秒剪辑里的章节编号做了遮盖;App 自身的界面保持截取时的原样。只有 36 秒剪辑有声音,而且只在你点了播放之后才有。它是演示画面,不等于各 App 当前版本的实际内容。
照片来源
Lockeat 的界面和视频里用到的 Wikimedia Commons 食物照片列在这里,都做过缩放和裁切;每张照片仍沿用它自己的许可协议。清单包含整套照片,所以不是每一张都出现在这个页面上。
- My Quang Da Nang, Dragfyre, CC BY-SA 3.0
- Ly pặc xỉu sữa đá ở Q1 ng18th8n2022, Phương Huy, CC BY-SA 4.0
- Cơm tấm SG (cơm sườn) ng27th9n2020 (3), Phương Huy, CC0 1.0
- First bite of the pho in The Big Bowl, Andy Li, CC0 1.0
- Bún chả Hàng Mành (2), Viethavvh, CC BY-SA 4.0
- Hủ tiếu bò kho, Tonbi ko, CC BY-SA 4.0
- Bánh mì thịt nguội, Minh Nguyen, CC BY-SA 4.0
- Món chè ở Bình Long năm 2020, Phương Huy, CC BY-SA 4.0
- Gỏi cuốn, Tran Hai Duong, CC0 1.0
- Crispy Vietnamese Pancake (Banh Xeo) - Xin Chao, Eastbourne 2026-08-14 (1), Andy Li, CC0 1.0
许可协议全文:CC BY-SA 3.0、CC BY-SA 4.0、CC0 1.0。标题中的西文使用 Fraunces 字体(SIL Open Font License),中文使用你设备上的字体。Apple、iPhone 和 App Store 是 Apple Inc. 的商标;本站与 Apple 没有关联,也未获得 Apple 的认可。
