Limboy

昨天看完了第一季,挺不错的。设定很有意思,更有意思的是围绕设定设计的剧情,有点西部世界的感觉。如果通过记忆分割技术,将工作和生活完全分开,会是怎样的情景?个人的自由意志还存在吗?

PS:Lumon 公司的画面看着非常苹果,简洁优雅。会二刷去品一品细节。

YouTube 是典型的明明什么也没做,但忽然就变得比别的平台「崇高」了一点点的例子:

  • 依旧可以匿名访问 Channel / Playlist,也不会展示一个残缺版本。
  • 依旧提供 Channel / Playlist 的 RSS 链接。

饭否居然还活着,还能正常使用···

好的产品应该同时提供安全感和愉悦感,如果在这基础上能再多一些惊喜,就是一款优秀的产品。

安全感:不太能做出意料之外、有破坏力的行为。前几天在用容器接净水器的水时,发生了大量的溢出(没有定量输出功能),这就是产品少做了一步,需要让用户去多做一步。还有就是如果不小心触发了这个行为,也有办法修复,比如邮件的撤销功能,或者 Photos 的 30 天后才会完全删除。

愉悦感:在使用 Telegram 的过程中,就经常能感受到愉悦感。主要由设计、交互、动画来实现。

惊喜:你没想到产品会提供这个功能,又被这个功能惊叹到。它要么让你变得更加便捷,或者带来了新的体验,或者避免了你犯错。然后你就会成为这个产品的忠实用户。

举几个 Cursor 不够智能的例子(w/ Sonnet 3.7):

  • 有一个 async function,其实只要 await 就接收 return value,就行了。但它偏不,就要用这个 Promise,在之后用到这个 value 的地方,都要解开这个 Promise 去 check value,再加上一通 try / catch / finally,导致代码变得异常臃肿。甚至上下文中,其他地方已经有正确的使用示例了,它却好像没看见一样。
  • Tauri 提供了 copyFile 方法,但它非要通过 sidecar 去 run 一个 cp,不仅更复杂,更重要的是这样不 work。
  • 代码中有一处会涉及到调用 Command,然后它用了 useState 去记录这个 Command,我告诉它这个其实用 useRef 更好,然后它还给我罗列了一堆理由,说确实 useRef 更好,那你为什么不一开始就用 useRef
  • 代码中会涉及到多个 Command 的串形调用,它在写代码时,就用了多个 Command 来记录,我告诉它,用一个就行了,结果还是一样,告诉我确实用一个就行了,罗列了一堆好处,那你为什么不一开始就这么做?!

较完整地体验 Cursor 后,最后还是打算回到 GitHub Copilot。AI Agent 在理解意图、找到完整的 Context、使用最新的 Document、写出优质代码这些事情上,还是不够理想(甚至差的很多)。

在限定的 Scope 上,做目标明确的事情,才是目前的最佳实践。这样的话,Copilot 就刚刚好。

国内的产品/作品,往往给我一种感觉:这不是这个产品本该有的样子。通常这是能力和妥协(向上妥协和向下妥协)的双重结果。

下午跟欧文聊天,他提到了普鲁斯特问卷,共有 35 个问题,挺适合自己做一遍的。(标粗的是我觉得可以重点思考的)

  1. What is your idea of perfect happiness?
  2. What is your greatest fear?
  3. What is the trait you most deplore in yourself?
  4. What is the trait you most deplore in others?
  5. Which living person do you most admire?
  6. What is your greatest extravagance?
  7. What is your current state of mind?
  8. What do you consider the most overrated virtue?
  9. On what occasion do you lie?
  10. What do you most dislike about your appearance?
  11. Which living person do you most despise?
  12. What is the quality you most like in a man?
  13. What is the quality you most like in a woman?
  14. Which words or phrases do you most overuse?
  15. What or who is the greatest love of your life?
  16. When and where were you happiest?
  17. Which talent would you most like to have?
  18. If you could change one thing about yourself, what would it be?
  19. What do you consider your greatest achievement?
  20. If you were to die and come back as a person or a thing, what would it be?
  21. Where would you most like to live?
  22. What is your most treasured possession?
  23. What do you regard as the lowest depth of misery?
  24. What is your favorite occupation?
  25. What is your most marked characteristic?
  26. What do you most value in your friends?
  27. Who are your favorite writers?
  28. Who is your hero of fiction?
  29. Which historical figure do you most identify with?
  30. Who are your heroes in real life?
  31. What are your favorite names?
  32. What is it that you most dislike?
  33. What is your greatest regret?
  34. How would you like to die?
  35. What is your motto?

在 Mac (Apple Silicon) 上,whisper.cpp 比 openai/whisper 快了几乎一个数量级。

暗时间能做成的事可能超乎你想象

Blog + RSS 是最完美的配搭

激励我不要虚度每一天的不是梦想,而是富途。

惊天大坑,Tauri 2 的 Command scope 是写在 shell:allow-spawn 而不是 shell:allow-create

挺喜欢这类简洁的画

AI Programming Agent (如 Cursor)有一个特点很像人:喜欢加代码,但不太敢/爱删代码,这种行为如果缺少监督,结果就会是越来越重的历史债务。

人们通常将 AI 比做[半]自动驾驶的汽车,但我觉得将它比作「野马」可能更合适:强大且需要驯服和磨合。少了驯服和磨合的过程,要么不能发挥 AI 最大的效能,要么被它带着到处跑。

不会用 AI 的会被淘汰,错误地使用 AI 会被淘汰得更快

「试吃」其实就是 IAP(In App Purchase)

AI 还有个问题:过于顺从了,它不会质疑你的问题的合理性,而是会想方设法去解答。结果往往在 X Y Problem (https://en.wikipedia.org/wiki/XY_problem) 中越陷越深。

最近一段时间的感受:Coding 确实需要一大段连续的时间。对我来说,光是进入状态就需要 1 - 2 小时。

「想成为独立开发者,但不知道该做什么 App」我一度也被这个问题所困扰,后来就想开了:

  • 用价值投资思维去思考:先保下限(做解决自己问题的 App,即使最后没什么人用,至少解决了自己的问题),再争上限(将产品尽量投递到有类似需求的人,如果这个群体数量大,付费意愿高就更好了)。
  • 80/20:通常很少有某一款产品能 100% 满足需求,往往是覆盖了 80%,剩下 20% 需要通过一些 Trick 去实现,或干脆无法实现。那 20% 就可以是你的产品的卖点。
  • Yak Shaving: 做一个产品通常会有依赖链,而这个链上的一些节点很可能没有成熟的产品,可以借此去完善这些节点(比如用户反馈系统、任务管理系统等等)。

The removal of uBlock Origin from Chrome might lead me to switch to Safari as my primary browser, since it has Wipr 2.

Photos 跳出来的去年一张天目里的照片,像一幅画

老妈在厨房炒菜,老爸坐在客厅看电视,我坐在客厅的躺椅上敲代码,媳妇儿在卧室办公,多年后回想起这个场景,应该会有不一样的感受。

用 Cursor Coding 时,能明显感觉到它有时会有意识地先使用系统一(节能模式),给出的方案是绕过去(workaround),当你告诉它这样不对,push 它去找 root cause 时,才会启动系统二(思考模式)。

AI 还有个问题:你向 AI 提一个需求,它不会跟你 Argue 这么做是否合适,而是想方设法地去实现它。我更希望它能反馈自己的想法,如果有更好的处理方式的话。

「将自己代入」是极佳的学习方式