过去两三年,工作中一直使用飞书,云文档是其核心功能之一,使用频率也很高,就逐渐发现以文档驱动的方式来工作挺不错,虽然最初有点抵触,觉得写文档会浪费很多时间,但时间久了发现好像不是这样的,这里就简单聊聊我认为的好处。
异步沟通。这一点对程序员这种需要集中精力、摒弃干扰的工作来说挺重要的。在写代码的时候需要一段不被打扰的时间,如果通过聊天工具来沟通,那就随时可能会被打扰,如果暂时关掉通知,等过后再去翻聊天记录又是效率很低的方式,因为聊天工具中的信息过于分散,且无效信息过多。
信息密度和质量高。如前面所说,文档的信息密度要远高于聊天工具,并且写文档相较于聊天,仪式感会更强一点,聊天的沟通方式是想到哪说到哪,而写文档会倾向于先理清思路再去写,因此从文档中获取到的信息会更好一点。
磨刀不误砍柴工。写文档浪费时间吗?确实是要花费一些时间,但写文档的过程也是整理思路的过程,比如你要开发某个复杂的功能,先写个文档梳理一下思路,让脑子里有个整体的框架,再去写代码效率就会高很多,也可以减少代码推翻重来的情况。
可追溯。现在的文档工具基本都有历史记录功能,可以看到一个文档的变更历史,当然这不是为了甩锅和防止翻脸不认人(虽然确实可以哈哈哈),主要是这样可以了解一件事的变化过程,比如可以从某个需求的 PRD 文档变更历史中找到某个功能的设计思路和考量,了解前人的想法。
知识沉淀。文档写多了,日积月累下来可以沉淀和整理为一个知识库,当团队有新人来的时候,通过查看这些文档就可以完成快速上手,而不需要别人手把手地讲解。
综上,你可能会说为什么不用邮件呢?我觉得一是邮件的效率很低,目前为止也没有哪个邮箱工具可以方便地整理、收集和回溯大量内容;二是文档不只是文字,也可以是表格、思维导图、画板,甚至是待办事项等,邮件还是很难做到的;三是文档不仅仅是用于沟通,也可以是只给自己看的。
技术
From Web to Native with React
Expo 官方博客的一篇文章,虽然有点像推广 Expo 的软文,但内容还是挺不错的。本文从一个 熟悉 React 的 Web 开发者角度来介绍怎么开发 React Native 应用,内容包含原生组件和 HTML 标签的类比、样式库、常见错误和原生应用特有概念这几部分,让不了解 React Native 的开发者可以轻松上手。
The Architecture Behind A One-Person Tech Startup
这是一篇长文,作者介绍了他自己的一人科技初创公司所使用的技术架构,内容包含负载均衡、缓存、数据库、CDN、日志、支付和订阅等等各方面的内容,内容比较全面,虽然是几年前的文章了,但大部分内容放在现在还是适用的,可以用做参考。
如何开发 JSSDK?
想要发布一个 npm 包很简单,但是开发一个开发体验好、易于维护和迭代的 SDK 还是比较难的,需要考虑的内容很多,本文介绍了一些开发 SDK 的经验,内容包含如何设计 API、如何发布和更新等各方面的内容,可以学习借鉴一下。
开源
Tremor Raw
Tremor 在往期中推荐过,是一个用于构建 Dashboard 的 React 组件库,而 Tremor Raw 是他们的新项目。Tremor Raw 本质上也是个组件库,但它的组件更丰富,并且参考了 shadcn/ui 的思路,组件不需要通过 npm 安装,而是直接从他们网站上复制代码,然后粘贴到自己的项目中即可。
智元 Fast API
一个开源的 LLM API 管理系统,可以用于统一管理各个大语言模型的 API,并且可以对权限统一管理,对使用量进行统计,不过页面大多都是简单的信息罗列,没有做很好的可视化展示。
Vue Mini
一个基于 Vue3 的小程序框架,相较于原生小程序的开发方式,Vue Mini 的开发体验会更好一点,但是它只支持微信小程序,不可以跨平台,并且项目处于比较早期的阶段,稳定性还有待验证。
产品
flomo 4.0:做更好的思考工具,增援未来的自己
flomo 是个典型的小而美的产品,各种功能做的也都很克制,最近新发布了 4.0 大版本更新,增加了「相关笔记」功能,但没有随潮流添加 AI 相关功能,这点还是比较值得赞赏的。