我给团队做分享:不聊学什么,而是聊可以不学什么

上周,我看到我们组一个很努力的新人,午休时间还在看一篇关于"Astro Island Architecture"的文章,眉头紧锁。

我走过去问他,最近在研究这个吗?

他说:"不是,就是看社区里大家都在聊,感觉再不学就跟不上了。唉,要学的东西太多了,每天都有新东西出来,根本学不完,很焦虑。"

这句话触动了我。我发现,我们这个行业,无论是技术文章、社区分享,还是培训课程,都在疯狂地告诉大家"要学什么 ",却很少有人告诉大家"可以不学什么"。

新的技术探索倒是挺好的,可以接触到不一样的东西,但是咱们的时间和精力是有限的。

所以,我在上周的团队分享会上,做了一次特别的分享,主题就是这个:作为业务团队的前端工程师,我们应该如何做减法,聊聊那些我们可以暂时不学的东西。


我们为什么会如此焦虑?

在聊"不学什么"之前,我们得先想明白,我们的焦虑是从哪来的?

  • 社区的炒作 :新技术需要热度,布道者需要影响力,培训机构需要生意。他们会不断地告诉你,某个技术是未来,不学就会被淘汰。
  • 简历驱动:我们害怕自己的简历上,技术栈不如别人那么"时髦",所以不管用不用得上,先学了写上去再说。
  • 同行的压力:看到同事在聊微前端,在聊WASM,自己完全插不上嘴,那种感觉确实不好受。

这些都是真实存在的压力。但作为过来人,我想说的是,一个工程师的价值,并不取决于他知道多少个技术名词。


我的可以不学清单

下面这份清单,是我结合我们团队的业务现状,给大家开的一份"学习降噪"指南。它不代表这些技术不好,只是说,在现阶段,你可以把它们从你的学习列表里移出去,等真正需要的时候再说。

1. 可以不学:有些类库和框架

  • 比如:微前端(Qiankun, Micro-app)、WebAssembly(Wasm)、WebRTC、复杂的图形学(Three.js, WebGL)等。

  • 我的看法:这些技术非常强大,但它们是为了解决特定领域里,那5%的极端复杂问题而生的。比如,微前端是为了解决"多个团队、多个技术栈、共同开发一个巨石应用"的协同问题。你先问问自己,你的项目有这么复杂吗?

    对于我们95%的日常业务开发来说,它们就是一无是处。不仅没用,还会让你对自己的能力产生怀疑。

2. 可以不学:每周都在冒出来的新轮子

  • 比如:又一个新的状态管理器、又一个新的CSS-in-JS方案、又一个新的请求库。
  • 我的看法 :前端社区在 状态管理CSS 方案这两个领域,有点内卷。大部分新轮子,只是对现有成熟方案(比如Zustand, Pinia, Tailwind CSS)的某个点,做了些微创新,或者换了一种写法。它们能解决的问题,大概率我们现有的工具也能解决。

3. 可以不学:过于底层的源码细节

  • 比如:逐行去研究React Fiber节点的具体结构、V8引擎的JIT编译过程、Webpack的Tapable事件流架构。
  • 我的看法 :这可能是最有争议的一点。我承认,理解源码对个人成长有益。但作为团队的Leader,我更关心投入产出比(ROI) 。理解React的虚拟DOM和key的作用,非常重要,这能让你写出更高性能的代码。但你需不需要去逐行阅读React的源码,搞懂Fiber节点的每一个属性?对于绝大多数业务开发者来说,不需要。

那我们应该把精力放在哪?

做完了减法,我们再来做加法+。我认为,对业务团队的工程师来说,最宝贵的精力,应该投入在这三件事上:

1. 你能吃饭的技术

就是你团队当前正在用的核心技术栈,比如我们团队的React + TypeScript + Next.js。

把它玩到精通。不是会用API就行,而是要懂它的设计哲学、性能瓶颈、最佳实践,以及围绕它的一整套生态。这是你解决日常工作中80%问题的根本。

2. 永远不会过时的内功

  • 语言基础:JavaScript(异步、原型链、事件循环)、CSS(布局、层叠上下文)。
  • 计算机基础:网络(HTTP协议、浏览器缓存)、浏览器(渲染原理、安全)。

这些东西,可能不像新框架那么酷,但它们是"心法"。无论上层框架怎么变,这些基础十年后也依然是前端的基石。

3. 解决当前问题的技术

这是我最推崇的学习方式: 问题驱动式学习

当你的项目真的遇到了一个靠现有技术无法解决的问题时------比如,你需要做一个复杂的在线文档,遇到了协同编辑的难题------这个时候,你再去有针对性地学习WebRTC或者CRDTs。

这种带着问题去学习的方式,目的性极强,效率是最高的,记忆也是最深刻的。


写在最后

我做这次分享,不是想让大家躺平,而是希望大家能从被动焦虑中解脱出来,变成一个主动学习者。

一个程序员的价值,最终体现在他解决问题的能力上,而不是他知道多少个技术名词。

所以,放轻松。你不需要学所有东西。把基础打牢,把手头的业务做好,想清楚你遇到的下一个问题是什么,然后去找解决它的最好工具。

你们怎么看?

相关推荐
zhilin_tang3 小时前
Linux IPC 为什么要这么架构
linux·c语言·架构
namekong87 小时前
清理谷歌浏览器垃圾文件 Chrome “User Data”
前端·chrome
开发者小天8 小时前
调整为 dart-sass 支持的语法,将深度选择器/deep/调整为::v-deep
开发语言·前端·javascript·vue.js·uni-app·sass·1024程序员节
盈创力和200710 小时前
构建未来工业感知层:以太网多参量传感器的融合架构与技术实践
嵌入式硬件·架构·以太网温湿度传感器·多参数传感器
李少兄10 小时前
HTML 表单控件
前端·microsoft·html
学习笔记10111 小时前
第十五章认识Ajax(六)
前端·javascript·ajax
消失的旧时光-194311 小时前
Flutter 异步编程:Future 与 Stream 深度解析
android·前端·flutter
曹牧12 小时前
C# 中的 DateTime.Now.ToString() 方法支持多种预定义的格式字符
前端·c#
勿在浮沙筑高台12 小时前
海龟交易系统R
前端·人工智能·r语言
歪歪10012 小时前
C#如何在数据可视化工具中进行数据筛选?
开发语言·前端·信息可视化·前端框架·c#·visual studio