2024-04-28 10:17:05
过去一周我在做一个新产品(AKA 开新坑),做这个新产品背后有很多契机,最重要的一个原因是:做 MarkMark 疲倦了。
大约一个月前,我匆匆地两次发布我做了一年多的 MarkMark。发布后我就立刻陷入了疲态,短期内不想花更多时间在这个项目上了。这个项目做了一年多,实在是把我的耐心消耗完了。尽管它还有 Roadmap 有待实现,但确实要放手休息一下了。之后我便发了一条推文:
今天和朋友聊到做产品的状态,一个人(或几个人)做产品时,最好还是集中精力并且在不超过三个月的时间内发布出来,所谓「一鼓作气」,不然真的很容易「再而衰,三而竭」。
后来,4 月初刚在杭州见面过的、来自台湾的老朋友 13 在这条推文后回复告诉我一个做产品的“2-2-2”方法:
2 小時 PoC
2 天發測試
2 週上架
我觉得很不错,于是在心里种下了种子:下个产品这么去试试!
前面提到我做 MarkMark 花了一年多,然后疲倦了。做了这么久是「果」,那么「因」是什么?我一直在思考这个问题。
「因」大概是,我在做这个产品的时候又回到了「工程师思维」,沉浸在了如何去实现这个产品上。我在社交网络上分享过,做这个产品我经历过一次技术上的推倒重来(从 SwiftUI 切换到了 UIKit/AppKit)。
这是比较典型的我在做产品过程中会加载的默认心智模型:技术选型很重要,如果没选好,就会留下技术债,影响未来的发展和维护;同时把玩新技术也很重要,这样做产品的过程中,还能体验和玩新的技术,做产品+玩技术两不误。
很遗憾,在 MarkMark 这个产品上,两个都误了:既耽误了产品开发,又让我对 SwiftUI 这个技术充满了质疑。
展开来说的话大概可以满满的写一篇文章。总的来说,2022 年底~2023 年初,我在用 SwiftUI 开发 MarkMark 原型的时候,确实遇到了很多的 Bug 和限制,最后我不得不推倒重来用 UIKit/AppKit 重新实现了一遍。
还有一个「因」是,我作为产品经理,又作为工程师,无时无刻不在「自我打架」:关于产品需求和技术实现到什么程度的打架。尽管我还是会尽可能让自己按一个产品经理的思维去做产品:我会写产品的需求文档,具体到每一个功能时,也会写份文档,但是等到具体的技术实现特别是交互细节时,还是会遇到写文档时没有想到的点,于是又会呈现出「工程师思维」占上风的状态,开始进入玩技术、磨细节的状态……
最后一个「因」,是去年我尝试了引入外部力量来做产品,将产品的各个部分分包出去的方式。但是因为我自身还是在「打架」状态,于是增加人员并没有使产品的开发进入更好的状态,反而因为人手变多,导致我的内心膨胀,使得产品功能膨胀。待我意识到这点后,我决定停止功能迭代,立刻发布,于是就有了一个月前匆忙的发布过程。
开发 MarkMark 是一次失控的过程,但我不是总陷入这种情况的。2021 年我做 PasteNow 那会,还是很稳健的:从产品立项到技术验证到开发原型到最终产品,刚好花了三个月。尽管我后面化了更多的时间去迭代,但是从完成初始版本到推向市场,三个月时间是确凿无疑的,也是非常充实和满意的。这也是前面我那条推文的背景所在,对我来说,三个月是一个我将一个想法实现并推往市场的极限了,再久的话也会累。
既然 MarkMark 做累了,短期内不计划投入更多时间了,但并不代表我能进入另一个「不疲倦」的状态。对我这个兴趣不是特别广泛的人来说,休息比工作在一定程度上更容易疲倦——短期休息还好,一旦十天半月没有做什么有让我看到成果的事情,我就会陷入另一种焦虑:一种无事可做又无法放松的状态。
在这种状态下迷茫着,终于在本周一的某一刻,我在开车时突然想通了一件事,一个在脑海里酝酿了很久的想法。于是再结合前面 13 告诉我的“2-2-2”方法,决定好好实践一把,于是就这么开工了。
尽管依然是自己一个人为主做产品,但我发现一切都不一样了:一旦定下开发周期和 Deadline 后,你就会只着眼于「核心需求」,其他的不重要的需求都会暂时放一边,核心需求完成后,就可以准备发布去获取市场反馈。
如果顺利的话,大约再 7 个工作日的样子(因为中间有五一假期,所以不好定时间),我的新产品就会发布了。这是我在耐心被消耗完后的、以相对较短的周期做产品的一次实践。
之前听说过还有另一种做产品的方式,那就是先出一个产品预览或概念图,然后再上 Waitlist 先收获用户反馈,再去做具体开发的方式。我觉得这种也不错,未来也许会尝试一下这种方式。
写到这里,我依然还没有说我做的是什么产品。这不是重点,或者说这次我不打算用“Build in Public”的方式了,对我来说现阶段最重要的不是 Public or Private,而是用愉快的方式去做一款产品,并且是以不消耗完自己的意志力或耐心的前提下。
最后,用朋友 @njukidreborn 回复我的一条推文来点题这篇文章:「开新坑可以当作一种心理按摩,有利于提高幸福感,最终保证主业的顺利交付。」
PS:题图由 Quotes 制作。
2023-12-31 11:41:11
我已经有好多年没有写年终总结了,但今年又想写了。因为 2023 年是我经历了低谷以后,向外连接和恢复成长的一年。这个变化使得后面一系列惊喜的事情接连不断的发生。那么废话不多说,就这样开始吧。
在 2022 年12 月底「大开放」的时候,我感染了新冠病毒,并且是带着病毒和症状宅在家里跨年的。尚未从发烧状态中完全恢复的我,看了几部轻松的电影(其中一部是周杰伦的《不能说的秘密》),迎来了我的 2023 年。
元旦之后,症状虽然减轻了,但是身体非常虚弱,精神也在过去一年的疫情封控和自我封闭中萎靡不振,对于即将到来的 2023 年没有特别的期待,只想恢复到自己的正常状态,特别是不再是孤立的那种状态,当时发了一条推文:
2022年自我封闭太久了,2023年要多多去社交,线下的面对面的那种。
— 图拉鼎 (@tualatrix) January 2, 2023
2023 年的第一个季度,我恢复得比较缓慢,偶尔会找朋友喝喝咖啡聊聊天,但还是会觉得孤独。三月的时候去了一趟上海,见了一个从事艺术创作的老朋友,我很羡慕她的状态,一方面她在做自己喜欢的创造性的工作,另一方面她有自己的大约每周一次的社交活动,既独立又合群的创造着。
五月份的时候,春暖花开,我终于走出了向外连接的第一步。当月有两件重要的事情发生,一件是生活圈附近有了一个全新的公共空间,叫「玉鸟集」;另一件事情则是我与一个神交已久的村民朋友在终于在线下连接上了,我们在玉鸟集碰头聊天,还不止连接了一个朋友。这次社交成了我后面成为「社交达人」的引子。
我们一群人开始时不时的聚会,一起交流各种各样的东西,从数码产品到软件开发。后来还时不时带各自的朋友一起加入,最后干脆一起组织线下办公。随着我们聚会的增多,很快我们决定进行固定的周期性聚会,于是定下了每周四去固定的咖啡店一起办公的计划,也就是有了后面的「玉鸟集疯狂星期四」。
通过「疯狂星期四」,不仅与本地社区的村民们连接更加紧密了,还认识了更多慕名而来或一带一过来的村外、全国各地乃至全球的朋友:他们来自上海、成都、南京、深圳、北京…还有美国西雅图、斯坦福大学等等。我们在村里可以见到这么多人,想想也是很神奇的经历。
不知不觉中,我发现我达到甚至超越了今年三月份我羡慕朋友时的那种状态,连我自己也觉得不可思议。这算是「天时地利人和」吧:一方面,大开放后,我对自己说,要与外界连接;另一方面,生活圈附近刚好有一个很不错的公共空间的开业,让我们有了活动空间;最后,也正好有一群类似想法、可以一起交流的朋友,通过各种机缘巧合连接到了一起…
向外连接后,我的世界一下子打开了,长期只在 Apple 生态圈开发产品的我,因此认识了不少圈外做事的人,甚至是跨行业的人,于是自己也有点跃跃欲试想做点不一样的事情。特别是 11 月的时候,我去了趟久违的北京,除了见了多年没见的老朋友,也见了些新朋友,在交流中感觉到自己的世界又大了一些。
回杭州后,我开始着手注册美国公司,决定做一些除 Apple 生态之外的不一样的事情。至于能做成什么,那将是 2024 年我要总结的事情了。
我的 2023 年总结差不多就是这个主线了。
「什么?你不打算写点你今年的产品进展如何,今年看了几本书,还有赚了多少钱之类的吗?」
今年确实不打算写这些了。一方面,这些可以量化的数据,我确实没有什么值得分享出来的,毕竟既定的产品也跳票了。另一方面,今年能总结「向外连接和恢复成长」这件事情,我已经非常满足,也充满感激,感恩今年所有连接过的人和事!
不过,我打算分享一些关于个人的「年度精选」,比如今年新发现的乐队,买过的不错的东西等等。目前正在 Twitter 上不间断连载,就暂时不更新到正文了,感兴趣的可以访问我的推文。
祝大家新的一年,找到自己喜欢做的事情,健康开心的成长!
2023-11-27 23:51:55
上周日,当时我起床还没多久,突然接到父母的电话,他们告诉我奶奶走了。我知道奶奶近来身体状况一直不太好,但没想到这么突然。错愕之余,我们立刻开始收拾行李,午饭后就开车回了老家。没能见到奶奶最后一面,一定要好好送奶奶最后一程。
开车行驶在杭甬高速上,奶奶与我的种种回忆便涌上心头。
首先冒出脑海的是一张我出生还没多久和奶奶的一张照片。奶奶抱着我站在老房子旁边的泥路边,开心地笑着。现在三十多年过去了,砖瓦房早就变成了几层的小平房,泥路也变成了水泥路,照片背景的那片绿植,也早已不复存在。但是这个画面,也就是我和奶奶的第一张正式合照,永远刻在了我的脑子里。
然后,我想起了奶奶曾经救过我一命。
当时我应该只有三四岁,还没有很深的的记忆。某个夏天的傍晚,我在院子里玩耍。我家院子里有一口井,我在玩耍过程中一不小心被凸起的井口绊倒,接着就扑通一声掉了进去。
当时大人们都在各自忙碌,一时间没注意到这件事情的发生。奶奶首先注意到了异样,发现我不见了,然后四处找我,最后意识到我掉进了井里。
奶奶二话不说,双脚双手撑着井壁往下爬,快要接触到水面时,手脚合并把我捞了上来,又沿着井壁爬上来。万幸拯救及时,我被捞上来后很快恢复了意识。大人说,我掉下去的时候,应该是撞到了井壁,头都撞出包了,很可能是直接撞晕了,所以才没有什么在水里挣扎的过程。总之,等我恢复意识的时候,周围已全是前来问候的街坊邻里。
有个奇怪的地方是,每当我回想这件事情时,我都是以第三人称视角在看自己的,不知道是灵魂出窍了,又或是我其实没有对小时候的印象,以至于这个是长大以后根据大人的描述才形成的记忆。总之,奶奶救了我一命,不然今天也不会有这篇文章了。
还有一个小插曲是,大人说我后来吵着要把井给填了。但是在农村还没有普及自来水的时候,井是很重要的,怎么能说填就填呢。最后,大人给这口井量身定制了一个金属井盖:可以防止小孩掉进去,但是不影响雨水给井里补水。
奶奶对我很好,很明显的一点是,我喜欢吃什么,她就一个劲的买给我吃。比如,我喜欢吃虾。小学的时候,在小镇里读书,还没什么感觉。后来开始读中学,我去了寄宿学校,几周才会回一次家,每次回家奶奶都给我买虾给我吃。
然而这个故事并不是我喜欢吃,奶奶买给我吃,然后大家其乐融融那么简单。中学时我开始叛逆,已经有自己的想法了。当时我很挑剔,不想天天吃虾,因为我觉得再好吃的东西连续吃两天也会吃腻。我就和奶奶说你要换个菜做给我,我不想天天吃。但是等到第二天午餐,又是一盘大虾摆在那里,我就赌气说不想吃。奶奶也不知道我到底想吃什么,第三天、第四天还是一顿一顿的买虾给我吃。
就这样,每次从学校回到家,我从刚开始吃虾的满足感,到吃太多虾感到厌倦,如此反复,练就了一番吃虾的好本领。现在每当我吃虾时,我都会想起曾经因为吃虾和奶奶赌过气。现在回想不免有些好笑,是我真的太挑剔了,又没有明确的要求,奶奶不让我自己去买已经对我很好了。其实大人们表达爱的方式很简单,他们觉得你喜欢什么,就满足你什么。这算是一种幸福的烦恼。
奶奶是一个非常热情好客的人,会烧一桌好菜,常常给邻里帮忙,也会自己下地种菜,从来没有闲下来的时候。在我从小到大的印象里,她一直比我这个孙子辈的人都要精力充沛,从来不会觉得累。
三年前,因为老家重新装修,奶奶也直接参与一线帮忙,从来没有进过医院的她,第一次因为劳累过度住进了医院。当时我去医院看她,第一次看到如此消瘦的奶奶,很震惊。她看到我来了,很高兴地起身,然后边用手握着自己的手腕边说:「你看我的手腕都瘦了一圈。」当时我很难过,她真是不辞辛苦为这个家付出了太多;我也是第一次觉得,奶奶真的老了,毕竟已经八十多了。
疫情后期因为各种管控措施,出行不易,回老家的频次也比以前低了。奶奶在一年前又因为身体原因进了医院,受限于管控措施和进出不方便,妈妈作为唯一可以陪护的亲属,也直接住进了医院睡在奶奶旁边,一边照顾一边陪同了大半个月。我当时只能通过视频电话,看着奶奶变得更加苍老。
当时我很焦虑,一方面是担忧奶奶的身体状态,另一方面也看到妈妈陪护得也很辛苦,而我却什么也做不了,只能在另一个城市远程关注。后来奶奶出院了,虽然暂时没有什么大碍了,但是很明显又消瘦了一圈,人也没有像以前一样灵活了。
去年年底疫情放开后不久,我也感染了病毒。我在杭州发烧时,又陷入了对家人状况特别是奶奶的担忧中,所幸家人都平安度过,奶奶也没有大碍,我心里的一颗石头也放下了。但是奶奶的整体状况并没有因此变好,今年每次回家,都看到奶奶的反应越来越迟缓…
上次见奶奶是一个多月前,回杭州前,我给奶奶喂了早餐,是酸奶拌了点糖,我一边喂一边很难过,以前的奶奶是很会讲话的,而现在的奶奶见到我只会说「你回来了」。我意识到我熟悉的奶奶已经离我越来越远了,直到上个周末,我真的见不到她了…
幸好她的子孙后代很好地给她送了最后一程:过去几天,各路亲朋好友齐聚,鲜花花圈满堂,治丧仪式隆重,连奶奶生前参与养大的小狗阿黄,在这个过程当中,也一直陪在奶奶身边。我们几次想拉它离开,它都不愿意。爸爸说,奶奶最后几天,阿黄总是去舔奶奶的手,像是知道接下去将要发生的事情。
奶奶走了,我再也见不到她了。我会想念那个我叛逆时期和拌嘴的奶奶,我会想念那个会做了一桌菜后会和我说这个虾多少钱、那个蟹多少钱的奶奶,我会想念那个邻里有什么需要都会主动第一时间去帮忙的奶奶…
我没办法再给奶奶当面表达我的感情了,但我会好好去爱我的家人,爱我身边的人,常常回忆奶奶和我发生的各种事情。
奶奶一路走好!
2023-11-02 20:48:45
两年前的十月,当时 Apple 推出了新款的搭载了 M1 Pro 和 M1 Max 的 MacBook Pro,我立刻订购了 M1 Pro/32GB/1TB 这款,并写了一篇《谈谈定购 M1 Pro 的 16 寸 MacBook Pro 后的一些想法》,展开聊了聊选择这当配置的思考过程。
我很满意这台电脑,并在使用了一年多后补充了一篇《M1 Pro 的 MacBook Pro 之一年体验记》。
两年后的今天,Apple 发布了新的 M3 Pro/Max,原本计划使用 M1 Pro 三到五年的我,却很果断地订购了 M3 Max/64GB 了。我为什么打破了之前的计划?为什么会订购 M3 Max/64GB?这就是我要在本篇中分享的。
先上汇总:
下面展开讲讲:
升级的各项理由重要性不分先后,但是我觉得这条需要放在前面提,这也是我在社交网络上发布的零碎信息中没有包含的,所以打算重点提一下。
老婆目前仍在用 2019 款的 Intel 15 寸 MacBook Pro,我一直计划给她升级成 Apple Silicon 版本,但是没有安排起来。曾想过买新款的 MacBook Air,但因为她下班后用自己的电脑相对较少,没那么大的紧迫感,于是就一直拖着没有升级。
这次正好有理由把我这台留给她用。她平常的主要工作是做做设计,写写文档,M1 Pro/32GB 绰绰有余,所以应该能用上三到五年。这也是我这次决定再订购 M3 Max 的原因。
在开始用 M1 Pro 没多久后,我就遇到了 32GB 内存可能不够用的情况(见此推文),然后心中埋下了下台电脑一定要上 64GB 的想法。
后来,也就是今年,大家多少都知道了 AI 领域的飞速发展,越来越多的人开始在本地玩起了开源大模型。这里一个非常重要的条件就是,内存(或显存)越大,越能玩得转。尽管 32GB 也能玩起来了,但这一定是多多益善的。
出于以上两个考虑,我决定上 64GB 内存。
这时会有另一个声音在脑海飘过来:为什么不干脆上 128GB 甚至 192GB 内存?
首先是价格原因,128GB 需要多六千元;其次我还是相对保守的,我对接下去我到底能否在 AI 这个领域应用起多少还是不明确的,毕竟我想更从容的玩一玩,而不是要用笔记本电脑来部署应用,所以 128GB 就暂时不考虑了。假如真的我再次决策失误了,那我就只好为此买单了。
当然有一点是确定的,不管是 64GB 还是 128GB,一旦程序中出现了内存泄漏,那么多少都是不够的。
我目前的 M1 Pro 是 10 核心的 CPU,其中有 8 个性能核心和 2 个能效核心。而订购的 M3 Max 则有 16 核心的 CPU,其中 12 个性能核心和 4 个能效核心。
单看核心数量的话,性能核心多了 50%,能效核心多了 100%。而从 Geekbench 的评测数值来看:
单核成绩提升不大,约 23%,多核则显著,约 73%。因此这个提升达到了我所期望的高度,就打算升级了。
我的日常工作是在 Xcode 里编译为主的,多核性能的提升能直接减少我编译的等待时间,提升效率。因此从 M1 Pro 升级到 M3 Max 将能直接带来效率的提高,拥有更多时间思考(AKA 摸鱼)。
OK,以上便是这次我订购 M3 Max/64GB 的思考要点了。反过来说,假如我两年前买的是 M1 Max/64GB,那么这次应该就不会考虑升级了。
归根结底,最重要的原因还是:技术世界发展很快,你不可能买到一台三五年也不会过时(或始终保持领先)的电脑。
既然如此,就没必要执着于买一台设备然后一定要让服役几年。生产力工具,如果升级它能带来实实在在效率的提升或解锁更多可玩性,那么升级肯定是最不会后悔的选择。
两年前我从 Intel 升级成 M1 Pro 后,那种酣畅淋漓的感觉,至今仍能回味。希望这次 M1 Pro 升级到 M3 Max,也能带给我这种感受。
读到文章最后的你,希望我的思路能给你一点参考,也祝你买到适合你自己的生产力装备。
2023-06-15 13:35:10
有一段时间没有介绍 PasteNow 的更新了,过去半年,PasteNow 继续稳步迭代,版本号从 2.6 版本到了 2.12 版本,本周刚刚发布了 2.12 版本,让我来简单列举一下最近都更新了什么吧。
首先是两组新快捷键的定义,可以帮助大家打造更快捷的个性化体验,分别是「纯文本模式」和「清空已保存的项目」。前者是可以在粘贴富文本的时候,通过按住一个快捷键来临时切换到纯文本模式,后者是对于有经常清空历史数据需求的用户,现在可以一键清空了。
其次 PasteNow 增强了预览功能,现在只要是 macOS 支持预览的文件格式,不管是图片、视频,还是 Keynote、Word、Excel,只要通过 Finder 复制到 PasteNow 里面后,都可以用按下 Space 空格键的方式来预览内容了,更加方便快捷的找到自己想要的内容。
另外「排除规则」在近期得到了加强,PasteNow 现在加入了过滤特定大小的数据的支持。如果你在日常操作中经常会复制到一些特别大的数据但不想它们被保存的时候,在新版本中可以填写一个大小比如 1MB,这样大于 1MB 的数据就不会保存进来了。
最后 PasteNow 完善了基于 Finder 的一个同步场景。大家经常会在 Finder 里复制文件,这种情况下,PasteNow 只会保存文件的名称+路径,而不会真正把文件内容存储去,但这里会有一个例外——如果是图片文件,则会保存它的预览图。然而只保存预览图会导致给用户一个错误的指示,以为这是图片内容(而非文件),当同步到 iOS 或其他设备时,却发现这个图片内容无法查看或保存。于是在新的版本中,PasteNow 将图片类型的文件处理的更彻底的,将完整保存图片的内容而非仅仅是缩略图,因而可以在同步到其他设备后,也能查看图片详情。
这个特殊处理在提供了便利的同时,可能会有副作用,比如经常处理大量图片的用户可能不想要内容也被同步。关于这点,我会继续接收来自用户的更多反馈以进一步完善。总之目前这样的改动,应该不会再令用户困惑了。
最后,是久违的 618 优惠活动。
PasteNow 和 Manico 开启为期五天的优惠活动。其中 PasteNow 原价 50 元,目前 8 折至 40 元,而 Manico 原价 40 元,目前 7.5 折至 30 元。该价格将为期五天,到 6 月 20 日为止。
感兴趣请访问 App Store 链接: