> For the complete documentation index, see [llms.txt](https://weekly-essay.mikey.wang/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://weekly-essay.mikey.wang/zh/2022-nian/w02-cai-chao-shi-nian-jia-gou-gan-wu.md).

# W02-蔡超十年架构感悟

周末听了蔡超的一个讲座，主题是他近十年的架构工作感悟，蔡超是前亚马逊中国的首席架构师。我总结了一下核心内容，其实都是“常识”，复杂的事物抽丝剥茧后露出的就是“常识”。

**“问题”与“技术”。**&#x7B2C;一层是讲“钉子”与“锤子”的关系。从“问题”开始，而不是“技术”。蔡老师举了一个例子，多年前一个团队的RD为了技术热情，将一个小项目的MySQL改为了当时AWS刚出的一个NoSQL数据库——DynamoDB。由于没有考虑到NoSQL不太擅长的事务、数据一致性等问题，硬生生把这个小项目的维护成本从1个人变成一个团队。第二层是将架构设计中，“提出问题”往往难于“解决问题”。 引用《设计原本》里的一句话，“设计最难的部分就是去设计我们要设计什么样的问题” 。

**“简单”与“容易”。**&#x67B6;构是把交付变简单的过程，而非追求复杂化。简单（simple）与容易（easy）不同，容易是把复杂交给用户，简单是把复杂留给自己。正的简单其实是来自于不容易的，复杂才容易，简单蕴含了巧妙在里面。引用乔布斯的一句话，“简单可以比复杂更难。你必须非常努力的把你的想法想清楚之后你才有可能把事情做的很简单。但是这个努力是值得的，因为一旦你达到了这个目的，它会给你带来排山倒海的能量。为了能达到真正的简单，你必须思考的足够深入。”

**“实践”与“学习”。**&#x8FC7;度繁忙使人落后，因为你没有时间去更新你的知识。最可怕的噩梦是，工作中面对的问题越来越复杂，你会觉得越来越难以应付，只有通过不断加班来解决，而越加班越没有时间学习，这是一个恶性循环。721学习法成立的前提是，事儿要有挑战，人要有优秀对标，1/10的输入分量要在不同的阶段做适当调整。拿健身举例，越到后期，训练量的提升所带来的收益越小，饮食营养、作息时间会越来越重要，可以与训练相当。“实践”与“学习”就如同“训练”与“营养”，输入结构需要及时调整。
