笑笑李笑来的一年全栈工程师养成说
什么鬼标题,三笑是什么意思?无他,哗众取宠做一次标题党尔。
前阵子李笑来发推说:
算了一下 一个普通人 只要不笨,一年是可以成长为全栈工程师的。用不着一万小时。
— 李笑来 (@xiaolai) 2016年6月3日
此言一出,众皆哗然,讽刺嘲笑论证否定的居多,到今天也不消停。知乎上一个问题《如何看待李笑来说的“一年可以成长为全栈工程师”观点?》更是引来近 150 个回答。
可以抛出我的看法了。我认为一年(甚至更短时间)内学习成长为全栈工程师是完全可能的。对于以此为目标,计划去实施,并且能努力去实践的人,我举十二个👍。
所以此文标题的真正含义是:李笑来说一年可以成长为全栈工程师 -> 部分围观者笑话这种说法 -> 我笑这一部分围观者。
我倒是一直自认是一名全栈工程师,事实上我哪方面都算不上精,不过 web 前后端开发,iOS app 和 Mac 桌面开发都会一点点。(可惜的是两个还在架上的 Mac app 无人问津,赚不足每天的咖啡钱)
事实上不用学究的去探讨什么是全栈工程师。肤浅的说,独自或作为开发团队的一员,有能力在可接受的时间内捣鼓出完整可运行且运行效果还 OK 的软件产品的开发者,我以为就可以叫做全栈工程师。
可是有些工程师不同意啊
有些从业者可能不同意这个观点了。特别是不少工程师苦心专研数载,尚觉得自己离合格的全栈开发还有些差距呢。 特别是少数大牛自恃功力深厚,见门外汉涉入江湖号称一年内要踢大家道场抢大家饭碗,也会觉得荒唐(可否也有一定的慌张?)呢。 特别是现在身处一线的开发者,难免会担心这不是降低了全栈工程师的准入门槛引起了职位的掉价嘛。
不管你同不同意,就是存在“一小撮人”,能在很短时间内速成高手,让别人羡煞。比方说令狐冲能在一年面壁时间内习得独孤九剑,比方说狄云能在二师伯不到一晚的指点下便能打败联手的八个师兄。
Well 武侠是虚构的不算?殊不知程序界也是江湖啊。
很多人不同意不相信,有可能是没意识到或是忽略了下面一些现象:
-
个体之间的学习和其它能力的差异是巨大的。
-
决心(目标驱动)的力量是无穷的。
-
兴趣与利益驱动的学习过程也可以有出众的效果。
-
有些人工作十年,是重复了十次“一年工作经历”;有些人成长半年,却是脱胎换骨多次升级。
-
有开放心智和好的方法,不断然下结论,认识到自己有很多不足,认识到别人有很多优点,有这样特性的人往往能更迅速有效的学习与成长。
程序江湖中真有速成传说吗
有。这里就不拿那些报出名来会吓着你的案列了。说说我身边的:
- 设计师 H,有一天心血来潮说要做 freelancer,开始学 Rails 开发。三个月后我们两个一起开始做一个客户的项目。人家真心不赖,从 PS 到 HTML/CSS 到 JS 到 Ruby,什么脏活累活都干的,关键是都干的有声有色。
- 帅哥 T,毕业前后开始做 Rails 开发,半年后以 remote 方式加入一家美国知名软件咨询开发公司,成为核心工程师。
为什么两个例子都是学 Rails 的?因为我最爱 Rails,然后我欣赏的 NB Rails 开发,都是全栈全端的。
那个,如果你觉得这是我编造的,我可以介绍不少身边的全栈工程师给你认识。
怎样在短时间内成长为全栈工程师或任意软件工程师
斗胆提出一些方法或理论,是否具可行性看官请自行判断,我不是教练,只出方案不提供保证。
-
(依据自身情况)设定学习目标
有目标,才能追踪评估进步,引导自己成长。
-
Just do it,坚持,不轻言放弃
知易行难。开始做,就比动动嘴皮要好上很多倍了。坚持做,则必有进步。
-
学习学习再学习
这也是李笑来说的。朴素却很有道理。
-
筛选资料,优先采用有口碑高质量的学习教材
一般来说,从质量和含金量来考量技术资料,专业书籍优于博客文章,博客文章优于论坛口水架,最差的是 twitter 微博之类。(twitter 上倒有很多闪光的妙语,但不足一百五十字的表达难以技术施教。)
以学习 Ruby on Rails 为例,推荐 Ruby on Rails Tutorial 和 Agile Web Development with Rails 5(及其以前几版)。
如果可以,尽量用英文资料。
-
找一位 mentor
Obi-Wan 和 Anakin 都有顶级的 master,这对他们成为银河系里最伟大的 Jedi Knight 功不可没。如果狗屎运十足遇到一位好 mentor,你的学习成长也会事半功倍。
-
花钱请教练
看到很多人毒舌五万学费由专业教练教授全栈技术这件事。哎,知识其实是最值钱的。
-
阅读学习优秀开源项目的代码
从别人的一招一式中领悟诀窍。
-
边学习边开发一个真实的 app
一年时间,这个 app 可以迭代 20 个 MVP。注意“一个”和“真实”。“一个”:具备完整基本功能,整体有架构有血脉。“真实”:完成后不管功能如何,得是一个工程意义上成品。
做一个 app(不管何种类型),专心致志,使用到各方面技术。
-
与 Google 和 Stack Overflow 做朋友
不管你信不信,这世上真的存在 Copying and Pasting from Stack Overflow with Love 的程序员的。