如果给“开始学编程需要准备的东西”列一份清单,这位开发者刚入行时的答案是:所有热门的框架、语言、工具,最好全都过一遍。多年后回头再看,那份清单上真正必需的选项,是零。
他最初对“好程序员”的理解很简单——掌握尽可能多的编程概念,见过足够多的工具。技术圈每天都在冒出新东西,让人很容易产生一种错觉:只要我追得足够快,就能成为那个什么都懂的人。但时间越长他越发现,这条路没有终点,而追平一切本来也不是目标。
有一类声音会说:先把基础打牢,把重点概念学完,再动手做东西。这种思路看起来很稳妥,不容易踩坑。但它有个隐蔽的问题——准备阶段是永远结束不了的。文档越攒越多,工具越出越新,如果非要等“完全准备好”才开始,那第一步永远迈不出去。
他后来更认同另一种路径:不等自己变强再动手,而是直接上手做一个小项目。做得不好没关系,会卡住也没关系。卡住不是能力差的证据,反而是真的在学习的信号。遇到问题就去翻文档,很多解法其实早就写在里面,就看愿不愿意沉下心查。
比起一节接一节刷教程,亲手完成几个小项目往往更有效。教程给的是确定性,项目面对的是真实的混乱,而后者逼着人学会检索、尝试、修复。读别人写的代码也同样值得花时间——理解别人的思路和取舍,相当于站在对方经验上往前走一步。
节奏这件事他也想提醒所有人:不要指望一次性把该学的全学完,那只会让人更快疲惫。每天推进一点,比一周猛攻一天更能形成惯性。还有一件被低估的事是分享——把学到的内容讲出来,整理表达的过程本身就在加深理解,而听到的人说不定也会因此少走一段弯路。
两种路径放在一起,结论并不复杂:知识总量没有那么重要,重要的是试错、卡住、再来的循环,是日复一日保持推进的状态。框架永远学不完,语言永远有新的,真正的分水岭在于是否愿意面对“不知道”的时刻,然后继续往前走。
他说自己如今也还在学,还在实验,还有很多事情没搞明白。而这一点,恰恰是开发这份工作中最有意思的部分——没有真正做完的那一天,但也因此,始终有新鲜感可以期待。
热门跟贴