2016年夏天,我蹲在宿舍铁架床下捣鼓着二手笔记本电脑。当时为了省300块装机费,我决定自己装系统。结果不仅把D盘格式化了所有游戏存档,还让电脑彻底蓝屏。室友回来看到满头大汗的我,打趣说:"你这折腾的劲头,不去学编程可惜了。"
抱着「程序员能修电脑」的误解,我在淘宝花9.9买了套教学视频。前三个月基本在重复以下循环:
时期 | 学习方式 | 日均代码量 | 头发掉落速度 |
2016-2017 | 看视频+无脑抄写 | 20行 | 正常 |
2018-2019 | 做实际项目 | 300行 | 2倍速 |
好不容易学会写计算器程序,我帮学校食堂做了个"智能选餐系统"。上线当天,有位同学输入身高180cm体重50kg,系统直接推荐了"建议转送殡仪馆"。这个项目让我在全校「社死」两周,却意外获得教授指点:"代码要像炒菜,既要知道火候,更要考虑吃的人"。
2019年实习时,主管让我修改段二十年前的VB代码。当我看到满屏的Goto
语句时,突然顿悟了《代码大全》里说的:"烂代码是最好的老师"。
连续三个月每天写真实项目代码(不是练习题),突然发现自己能预判bug出现的位置。就像打游戏记住怪物刷新点,这种让我开始主动啃《重构》《设计模式》这些「武林秘籍」。
学习阶段 | 知识获取方式 | 知识留存率 |
被动学习 | 看视频/读书 | ≤15% |
主动实践 | 做项目+改bug | ≥70% |
现在团队新人总以为我有什么黑科技,其实每次看到他们崇拜的眼神,我都想起那个把==
写成=
导致服务器崩溃的夜晚。真正让我蜕变的,是这些笨功夫:
窗外的梧桐树黄了又绿,工位上的马克杯从「面向对象编程」换成「面向工资编程」。当新来的实习生第N次问起「怎么快速成为大神」时,我指了指墙上贴着的便利贴——「昨天最好的表现是今天最低的要求」。