为什么我开始减少逛技术社区,而是去读非技术的书?

我得承认,我有过很长一段时间的 技术社区上瘾

每天上班第一件事,就是打开掘金、Hacker News、InfoQ,把热门文章刷一遍。通勤的地铁上,也要用手机看看今天又出了哪个新框架的测评、哪个Vite插件又有了更新。

我生怕错过了什么,感觉一天不刷,就会被飞速发展的技术时代抛弃。这种信息焦虑,我想很多工程师都有。

但大概从去年开始,我刻意地减少了这个仪式。我把每天早上刷文章的一小时,换成了读一些看起来和编程八竿子打不着的书。比如,心理学、经济学、历史、甚至小说。

一开始只是想换换脑子,但慢慢地,我发现,这些非技术书,反而帮我解决了很多工作中遇到的、最棘手的技术问题。

这篇文章,就是想聊聊我这个转变背后的思考。


技术的天花板

工作了五六年后,我遇到了一个很明显的瓶颈。

我发现,再多学一个JS的新语法、再多会用一个Vite插件,似乎都不能让我的能力产生质的飞跃。我的技术深度和广度,足以解决日常工作中99%的技术难题。

但我发现,工作中真正难的,往往不是技术本身。而是:

  • 为什么我们团队的沟通效率这么低,一个简单的需求能来回拉扯好几天?
  • 为什么这个看似简单的项目,开发过程中总是不断地范围蔓延?
  • 我该如何向非技术背景的老板,证明这次重构的必要性和长期价值?
  • 面对一个全新的业务,我该如何设计一个能在未来3年内,适应各种不确定性变化的技术架构?

我意识到,这些问题的答案,在MDN文档里、在Stack Overflow上,是找不到的。它们是关于人、关于系统、关于决策的复杂问题。而我当时的技术知识库,对解决这些问题,几乎毫无帮助。


我的书架,以及它们教我的事

于是,我开始漫无目的地,从技术之外的领域寻找答案。下面,我想分享几个对我影响最大的领域和书籍。

心理学,理解人
  • 推荐阅读:《思考,快与慢》、《影响力》、《非暴力沟通》

作为工程师,我们习惯于和确定性的机器打交道。但我们的工作,却无时无刻不在和不确定的人打交道------用户、产品经理、同事、老板。

心理学,尤其是认知心理学,教会我理解了人性的非理性。

  • 理解用户:读了《思考,快与慢》后,我开始理解为什么用户会做出那些不合逻辑的操作,为什么有时候更优的设计反而没人用。这让我在做UI/UX设计和评审时,不再只是一个技术实现者,而更能代入用户的直觉系统去思考。
  • 理解同事:读了《非暴力沟通》后,我改变了我在Code Review里的沟通方式。我不再说"你这里写得不对",而是说"我看到这个实现,我担心在XX场景下可能会有风险,你觉得呢?"。我发现,当我开始关注对方的感受和需要,而不是直接评判时,技术沟通变得顺畅了许多。
系统思考 看透架构的本质
  • 推荐阅读:《第五项修炼》、《系统之美》

系统思考,教会我最重要的一个概念:世界不是由一条条独立的因果链组成的,而是由一个个相互关联的反馈回路组成的。

这个思想,彻底改变了我对软件架构的看法。

  • 理解技术债:我不再把技术债看作一个孤立的坏代码问题,而是把它看作一个会自我增强的反馈回路。坏代码 -> 开发效率降低 -> Bug增多 -> 救火时间增多 -> 更没时间写好代码 -> 坏代码更多。这个循环一旦形成,不从外部打破,系统就会慢慢崩溃。
  • 做出更好的技术决策:我不再追求完美的、一步到位的架构,而是去寻找那些能适应变化的、演进式的架构。我开始用机会成本去评估技术选型,用延迟和滞后效应去理解一个技术决定可能在半年后带来的影响。
历史/传记 获得古人的经验和战略
  • 推荐阅读:《人类简史》、《罗马帝国衰亡史》、各种历史人物传记

历史,是研究成与败的宏大案例集。它能让你跳出眼前的一个个项目,去思考技术浪潮的更迭。

  • 获得历史感 :为什么jQuery会衰落?为什么React的Hooks范式会成功?为什么当年的AngularJS会失败?这背后,和历史上的技术革命、王朝兴衰,遵循着相似的规律------它们是否解决了当时最核心的矛盾?它们是否降低了开发成本?
  • 做出更聪明的长期判断:这种历史感,让我在做一些长远的技术规划时,能更好地判断什么是真正的趋势,什么是短暂的泡沫,从而避免团队把宝贵的资源,投入到一个注定会很快消亡的技术上。

这次的分享,可能有点务虚😁,但它是我近几年最真实的感受。

程序员的工作,是把一个清晰的需求,翻译成高质量的代码。

而工程师的工作,是把一个模糊的、充满不确定性的现实世界问题,转化为一个可靠、可维护的系统。

想从程序员蜕变为工程师,需要的远不止是代码能力。

我依然每天写代码,也依然关注技术动态。但我不再焦虑于错过了哪个新库。我把更多的信心,放在了那些从非技术书籍里学来的、更底层的思维模型上。

因为我知道,这些东西,可能比我今天写的任何一行代码,都要保值得多。

你们说是不是?🙌

相关推荐
米丘3 分钟前
Rollup 打包工具
前端
We་ct4 分钟前
LeetCode 74. 搜索二维矩阵:两种高效解题思路
前端·算法·leetcode·矩阵·typescript·二分查找
moneyinto4 分钟前
Three.js 必背核心方法
前端
wuhen_n6 分钟前
Vue3 组件中的图片懒加载与渐进式加载
前端·javascript·vue.js
叫回忆6 分钟前
elpis的npm抽离与发布
前端·javascript
wuhen_n14 分钟前
Vite 构建层面的图片优化:从压缩到转换
前端·javascript·vue.js
hashiqimiya15 分钟前
vue项目组装-路由-文件修改地方
前端·javascript·vue.js
_饭团25 分钟前
C 语言数据存储全解析:原反补码、大小端与 IEEE 754 浮点数
c语言·数据结构·算法·leetcode·面试·蓝桥杯·学习方法
回到原点的码农26 分钟前
TypeScript 与后端开发Node.js
javascript·typescript·node.js
Mike_jia27 分钟前
ChatClaw:5 分钟打造你的个人 AI 智能体
前端