程序员自学网站
学编程的程序人,迟早会撞上那个问题:教程看完了,员自轮子造过了,学网接下来呢?程序去年我认识一个转行的前端,把某培训班的员自课刷了三遍,简历投出去石沉大海。学网后来他花了两个月泡在FreeCodeCamp上,程序把每个项目的员自提交记录都公开在GitHub,第三周就拿到了面试。学网区别不在课程质量,程序在于他被迫自己解决问题——这才是员自自学的真正门槛。
FreeCodeCamp是学网我第一个想推的。它把前端、程序后端、员自数据可视化拆成认证路径,学网每道题都在浏览器里直接写代码,错了立刻红字报错。最值钱的是那五个实战项目:给非营利组织做网站、写一个API、搞数据可视化。做完不是拿个电子证书就完了,代码得公开,别人能看见你提交了多少次、卡了多久。这种透明感逼着你不能糊弄。
但纯靠它也不行。我见过有人卡在递归那章整整一周,论坛帖子翻烂了还是懵。这时候需要换个角度——MDN Web Docs不是教程,是字典。别指望它教你编程,但当你搞不清Array.prototype.reduce的参数顺序时,它比任何视频都靠谱。我习惯把MDN和FreeCodeCamp搭配用:前者查语法,后者练手感。
再说个偏门的——Exercism。它不教新课,只给练习题。你选一门语言,它扔过来几十道小题,做完后有个真人导师给你批注。我去年练Rust时,导师指出我用了太多clone(),直接贴了所有权转移的替代写法。这种反馈在免费平台里少见。缺点是节奏慢,一道题等两三天批注很正常,急性子可能受不了。
视频党可以看The Odin Project。它把全栈路线拆成课程,但每个知识点都配了阅读材料加项目。比如学完CSS Grid,立刻让你复刻一个设计稿。它不喂饭,文档扔给你自己啃。我认识一个后端转全栈的,跟着Odin做了三个月,现在能独立接小项目。他说最痛苦的是Ruby on Rails那章,文档写得像天书,但硬啃下来后看其他框架都轻松了。
国内的话,菜鸟教程适合零基础快速过一遍语法。但别指望它带你做项目,它更像速查手册。我一般用它查Python的字符串方法或者SQL的JOIN写法。另一个是LeetCode——不是刷题网站吗?对,但它的讨论区藏着大量解题思路。我卡在动态规划时,经常先看前三个高赞回答,再自己重写一遍。别一上来就刷Hard,按标签从Easy开始,每天两道,坚持一个月就有感觉。
说个反常识的:GitHub本身是最好的自学网站。找个star多的开源项目,比如Vue或React的源码,点进issues看别人怎么提问、 maintainer怎么回答。我去年想搞懂React Hooks的闭包陷阱,翻了二十几个issue,比看十篇博客都管用。还有,直接clone下来跑测试,改一行代码看哪里报错——这种破坏性学习比被动看教程快得多。
最后提一嘴Stack Overflow。别把它当问答版,当搜索工具用。你遇到的90%的报错,上面都有现成答案。关键是学会搜:把错误信息用引号括起来,加上语言名,比如"TypeError: Cannot read property 'map' of undefined" react。搜不到再提问,提问时贴最小可复现代码,别扔一整个文件上去。
这些网站有个共同点:它们不承诺“学完就能拿offer”。它们只提供工具和场景,剩下的靠你自己折腾。我那个转行的朋友后来总结了一句话——看视频是别人嚼碎了喂你,做项目是自己找食吃。饿不死的,都活下来了。