自学成才的工程师,往往比科班出身的更能打
别再迷信课堂那套了。
正规教育确实有点用,但它本质上是为了批量生产而优化的 —— 把混乱的实战经验硬塞进学期时间表里,熬成一套套 “标准答案”。这些东西能让你混个及格,却教不会你凌晨三点生产环境崩了时该怎么救场。
纳西姆・塔勒布说过,“有目的的折腾” 才是精进之道 —— 在真实场景里反复试错、保持好奇,每一次循环都带着明确的目标(比如上线一个功能、搞定一场故障),而不是瞎玩。
说白了,你得在现实里摸爬滚打才能学真本事,不是靠 syllabus(课程大纲)那几张纸。
那些靠 “折腾” 封神的狠人
莱纳斯・托瓦兹搞出 Linux,不过是因为不爽 MINIX,自己动手重写了一遍,纯粹为了挠自己的痒;玛格丽特・汉密尔顿在阿波罗登月时现场调试制导代码,硬生生造出了现代软件可靠性的雏形;无数开源项目的维护者,一开始都是把自己的笔记本玩崩了,然后一点点拼凑修复才入门的。
他们没人先学完 “step - by - step” 的教程再动手。真本事都是摔出来的 —— 允许失败,且失败真的有代价。
为什么试错比 “标准答案” 更管用?
反馈来得比谁都快。崩溃日志给你的教训,比十次测验都狠。
边界情况会自己蹦出来。真实用户能玩出教科书作者想都想不到的操作。
记住的东西刻在骨子里。拼死搞定的 bug,肌肉记忆都忘不了。
创造力被逼着爆发。没路可走的时候,你自然会造出一条来。
再说说导师:是助力,不是拐杖
好的导师能帮你加快反馈速度,拓宽点视野,但螺丝刀终究得握在自己手里。代码评审有用,是因为多了双眼睛帮你看实验结果,而不是让它替你做实验。
怎么练出自己的 “折腾神功”?
搞点让自己发怵的副业项目。
把所有东西都装上监控,让每次失败都能留下 “案发现场”。
给自己设点限制(不用框架、48 小时必须搞定),逼着自己想歪招解决问题。
把代码发出来。公开处刑是最狠的导师。
每周复盘。写点短评,说说哪儿崩了,学到了啥。
导师、课程、博客(包括这篇)都只是催化剂,成不了真功夫的替代品。最牛的工程师,都是在野地里上线、搞崩、再修好软件,硬生生攒出一身 “伤疤” 的。
赶紧去折腾吧,以后你会谢自己的。