即兴旧闻 Weekly #001

date
Jul 18, 2021
slug
weekly001
status
Published
tags
summary
type
Post

产品与服务

Supabase

开源的 Firebase 替代品,由 YC 孵化支持。官网在国内无法访问,在国内应该也无法访问它的服务。
 

Twemex

Twitter 的一个浏览器扩展,可以自动显示你 follow 的人的最有趣想法,帮助你减少无意义的屏幕滚动。
 

Clover

笔记应用 Clover 发布正式版本,官网做得特别惊艳。
 

Inside Intercom

Intercom 是一个客户服务 SAAS 公司,致力于帮助公司更好地与客户交流。这家公司的博客内容营销做得特别好,主题涵盖:客户支持、市场、销售、产品设计、研发工程等。
 

Front End

Dan Abramov 访谈实录

字节跳动 Web Infra 团队对 React 核心开发者 Dan Abramov 的访谈实录。
Dan Abramov 访谈实录
本文首发于同名微信公众号「ByteDance Web Infra」 Dan Abramov 访谈实录 译者注:本译文是在「在线对话 React.js 核心开发者」一个半小时直播的基础上进行的原文翻译,包括了直播中的所有问答内容,尽可能保留了 Dan 回答的中心语义,部分表达为了语句通顺、方便理解,适当使用了成语或短语替代。文章超过 1.5w 字,文中包含了大量的专业概念与启发性思想,通读大约需要 30 分钟。建议先收藏下来,慢慢阅读。最后祝大家都能够有所收获! 主持人:Hi Dan,来跟观看直播的小伙伴们打个招呼吧! Dan:嗨,大家好! 主持人:现场大多数人都已经认识你了,可不可以再介绍你一下你自己? Dan:谢邀,我是 Dan,是 React 的核心维护者之一,过去 5 年一直在 React Team 工作。这差不多就是我的自我介绍了。 12 岁开始编程 主持人:我从你的博客中看到,你从 12 岁就开始编程了,非常的厉害,你是怎样对编程产生兴趣的呢? Dan:应该说是机缘巧合吧,我其实并不是自己主动去学习编程的。当时在学校做作业的时候,我很喜欢做一些展示。我不知道大家现在还用不用 PPT ,当时我用的是 PowerPoint 2003 ,PPT 中内置了一种编程语言。如果你点击右键打开菜单,可以完成一些宏录制的操作。这些操作会产生很多小的程序,我起初不知道它们是什么,但是我非常的感兴趣,之后我就买了一些书,从此开始了编程的学习。 React 状态管理工具 主持人:这是你第一次和中国的工程师见面,我们这边准备了很多问题,你准备好回答热心网友们的提问了吗? Dan:我准备好了。 主持人:你对 React 状态管理工具怎么看的? Dan:我想不同的人可能会选用不同的库,如果要我来做推荐的话,我可能不会去推荐任何一个特定的库。真正重要的问题不是选择什么状态管理库,而是理解「状态」的类型,理解「 状态」是什么。因为「 状态」是一个比较笼统的、比较大的概念,我认为我们不应该去浮于表面地去讨论哪个库更好,而是去看你要处理的状态是什么种类,使用这些库的目的是什么,选用不同方案带来的差异是什么。比如说,有一些 UI 状态,针对的是显示的 UI 组件。针对文本输入框来说,文本内容有哪些,文本是否被选中,是否处于 focus / hover 状态,或者是记录当前页面被选中的 Tab 之类的,这些都是 UI 的状态。另一种状态更像是 cache,缓存从服务器返回的数据,它可能更像是某种草稿。所以我们需要结合实际的需求去选择状态管理工具。对于 UI 状态来说,我个人不推荐使用任何库,使用 React 自带的状态就够了。可以使用 React State 或者是 React Context,通过组件树将状态传递下去。对于数据缓存的场景来说,我并不推荐使用 "状态管理" (此处 Dan 用手比了个引号 ✌️✌️)相关的解决方案。我更建议你使用一些专门用来处理数据缓存的库,比如 React Query, Apollo 和 React Relay 。 主持人:现在很多人都想用 React Hooks 和 Context 去代替 Redux,你刚才的回答也提到了类似的点,你可不可以分享一些 React Hooks 背后的设计理念?
 

Inside the React Core team

React Core team 一遍自我介绍性质的博客。令人惊讶的是,整个团队只有一名成员在学校主修计算机专业。
React 核心团队重视以正确的方式做正确的事情。有时候,这意味着在经历低谷时对彼此要有耐心,不管是情感上的还是技术上的。它意味着寻求帮助和第二意见,而不是试图独自做所有的事情。这意味着你要有这样的信念,即你不是在上传代码、编码、发布,并不意味着你没有提供价值。
 

迈入现代 Web 开发

字节内部 All in One 前端框架。所做的事跟阿里在做的大同小异,但是文章本身分析了很多过往技术栈的缺陷,以及未来可改进的方向,非常值得一读。
 

Exploring Front-End Testing

前端测试入门。除了阐述了测试的基本概念与分类,还列举前端测试的各种模式与流行的工具库。
 

iPod.js

iPod on Web,建议在移动端访问。
 

其他

四分之一人生危机

一位 Google Designer 的焦虑与克服焦虑的过程。
 

1.4万字马斯克访谈实录

马斯克在 Axel Springer Award 的访谈实录。文末有访谈视频。国内媒体和马斯克自己的 Twitter 往往在刻意展现他浮夸的一面,这个访谈里的马斯克又是一个完全不一样的人。
你需要感受生命。生命的感官体验,你不能太沉迷于冰冷的大脑皮层逻辑。你需要在第三方视角中感受它,问问你自己,你的心在说什么?然后花点时间去欣赏生活中许多美好的事物。
 

电子书时代,你为什么还需要书架?

电子书时代,纸质书和书架的意义。书架和纸质书的作用不止停留在表面,它还和电子书暂时无法替代的一种阅读模式有关:随意的、偶遇式的阅读。
 

The Kiffness X NumNum Cat X Violin

最后,感受一下人类和动物共通的可爱本质。
 

© Sytone 2021