如何在移动开发者的寒冬中破冰而出?
前言
在这个行业,每隔一段时间都会出现新的技术,好焦虑呀,到底该学什么?14年移动开发出现了大量的泡沫,随便一个培训机构培训几个月出来的在北上广都是8k起,现在感觉移动开发工程师供应需求方都要饱和了。招聘公司每天简历都要收到上百封,很多移动开发面试都接不到电话。该怎么办?要学习RN吗?要学习后台吗?在校的准程序员们学习android还合适吗?现在移动端不景气,是不是要学习新的语言,逃离移动端技术?
应该关注哪些技术?
这些问题,每天都会有人在群里议论,也会有人经常在群里求工作职位坑。那么我的看法是不要纠结学什么,先学了再说,与其抓住变量(新的技术手段)还不如好好学习,我特别喜欢《暗时间》的一段重视知识的本质:对于程序员来说这一点尤其重要,程序员行业的知识芜杂海量,而且总是在增长变化。很多人感叹跟不上新技术。应对这个问题的办法只能是:抓住不变量。
底层知识永远都不过时。算法数据结构永远都不过时。基本的程序设计理论永远都不过时。良好的编码习惯永远都不过时。分析问题和解决问题的能力永远都不过时。强大的学习能力和旺盛的求知欲永远都不过时。你大脑的思维方式永远都不过时。
我在刚入行时,一直在追逐最新最热的技术,几年过去了,才发现在,新的知识永远在增长,感觉自己很无力,有一天无意间在网上看到Google的面试问题类型,我惊讶的是在面试题中没有最新的技术,甚至不是在某一种语言下的知识,而是通用的知识,算法数据结构,设计理论,编码规范,那时我懂了,想起刚出来的时候去一些公司面试被问到算法,一脸懵逼,并且还理直气壮和面试官说“开发用到算法的地方不多呀,记不住也很正常。”,现在回想起来当初的想法真是给自己找借口,因为算法本身比调用API要难,你连难的东西都学好了,还学不会简单的API调用吗?本质上面试官是想看看你的学习能力和逻辑能力。
如果学好底层不变量,现在的大数据,云计算, AI 学习起来都是事半功倍,你以为你没有基础就能学好大数据,云计算,AI?我们不要拘泥于某一门语言而是先修炼好内功,你的在这门语言的造诣是否高深,最终还是由你的内功深厚程度来决定的。
应该如何学习?
我们知道该学习什么了,那么如何学习了?
在这个信息爆炸时代,我们每天阅读大量的信息(微信公众号、微博、简书、知乎、CSDN、掘金 .....),阅读过后总感觉自己学习到了很多新知,但是一周过后我们能说出来的收获又有多少呢?
这不禁让我想起塞内加的《论生命之短暂》中的一句话“如果一个人出海遇到狂风暴雨,被变换肆虐的风吹得团团转,你可能会觉得他航行了很远。其实航行得并不远,只是浮沉动荡的时间长而已。”,没错如今的知识就像出海时遇到的狂风暴雨,我们只是被吹的原地团团转而已,并没有在知识的海洋航行很远。
互联网的强大足以让我们查找到我们想要学习的资料,但是太多垃圾信息也掺杂在其中,如:大数据广告,错误的资料,恶意的评论,吸引注意力的热点信息,这些东西无疑是对我们有百害而无一利的,那么如何避免出现这些信息呢?看本书吧,成体系,由浅入深,循序渐进,没有我刚才所说的垃圾信息,只需要支持几十元的书籍费用,让你的学习事半功倍。
现在网上的视频也很多,牛人的收费课程也不少, 要不要去参与?
以通过阅读书籍为主。市面上的视频和收费课程,大多是内容都是来自书籍中的,太阳底下无新事。
以终为始先定一个目标,比如学完后写一篇教程,然后去学习,这样更加有动力,有意思的刻意练习,更为有效。知识经过整理,才更容易理解,容易理解的只是才更容易记忆。你想想所谓的高手是不是本质上就是在遇到对应问题场景的时候,能够快速调起自己的脑海中的解决方案,并且成功的解决掉这个问题。
管理学中有个很不错的模型,它非常适合用于学习,PDCA。
PDCA循环又叫质量环,是管理学中的一个通用模型,最早由休哈特于1930年构想,后来被美国质量管理专家戴明博士在1950年再度挖掘出来,并加以广泛宣传和运用于持续改善产品质量的过程。
PDCA是英语单词Plan(计划)、Do(执行)、Check(检查)和Adjust(纠正)
P (plan) 计划,包括方针和目标的确定,以及活动规划的制定。
D (Do) 执行,根据已知的信息,设计具体的方法、方案和计划布局;再根据设计和布局,进行具体运作,实现计划中的内容。
C (check) 检查,总结执行计划的结果,分清哪些对了,哪些错了,明确效果,找出问题。
A (Adjust)纠正,对总结检查的结果进行处理,对成功的经验加以肯定,并予以标准化;对于失败的教训也要总结,引起重视。对于没有解决的问题,应提交给下一个PDCA循环中去解决。
以上四个过程不是运行一次就结束,而是周而复始的进行。
总结:前期准备、中期执行、后期回顾
如何应用呢?
假设要学习设计模式。
step1 计划:明确目标,分别把常用的23种设计模式列出来,一周学习一种。
step2 执行:按照计划学习,学习完成之后写一篇自己对设计模式的理解。
step3 检查:写完之后,请朋友阅读,自己和别人的文章对比进行多维度的比较。
step4 纠正:现在大家都喜欢看写的有趣的,可以改改自己的写作风格迎合大众的喜好。这个类图画的不错,以后每篇都要画类图。
有人肯定会说了,我也知道学习很重要,但是我就是坚持不下来。
没错,我们人性天生懒惰,大部分的人都是半途而废的专家,其实很多时候,不是我们比别人笨,而是别人比我们更坚持。高德纳先生曾经说过“过早退出是一切失败的根源。 兴趣遍地都是,专注和持之以恒才是真正稀缺的。”,可见坚持的重要性那么接下来我们就来说说如何更容易坚持。
怎么样更容易坚持?
《暗时间》中提到过这样的一个方法给自己设立一个进度条。
如果你把任务分割了,你就有了进度条,你就知道,事情在不断的进展,你总会完成任务或到达你的目标,你会有一个时间估计。反之如果没有这个分割,整个的任务或目标对你来说就只有两种状态——“完成”和“未完成”,如果不幸是一个比较漫长的目标,那么你会发现你的进度条总是“未完成”,一次又一次的等待未果会耗尽你的耐心,让你下意识的产生“这事什么时候才能完呢?”的疑惑,没有分而治之,你就不知道未来还需要付出多少努力才能达到目的,这就会让你心生怯意,不敢进一步投入时间,免得血本无归。在这样的心理下,不少人就会选择保守策略——退出,以免到头来花了时间还一事无成。
当你已经能够坚持下来持续的学习了,那么最后我建议你把你的学习成果分享给其他人,为什么?请看下面。
为何分享?
我是一个喜欢分享的人,以下是我的分享经历。
-
14年写博客
-
15年录制教学视频
-
16年写开源项目
-
17年做直播、公众号
从最开始的写文章(只需要写),到录视频(先写好讲稿,然后开始讲,要注意声音节奏),再到直播(直接面对听众)。通过不断跳出自己的舒适区,使得自己快速的成长。
以下是我在分享得到的好处:
-
没写文章的时候感觉自己很厉害啥都懂,但是写的时候却写不出来,这其实就是对这个知识理解的不过透彻,从而可以认识自己的不足。
-
每个人都是从不懂到懂,写出好的文章可以帮助他人理解这个知识点,助人为乐。
-
当你的文章得到曝光之后,会有更厉害的人指出你文章的错误,从而获取反馈提升自己。
-
一个人的能力边界很小,认识更多人志同道合的朋友,可以组织齐心合力把分享做的更好。
-
更多的面试机会,让你的简历众不同,上面说了每天简历这么多,你要是有自己的博客你就更容易被选出来。
-
出版社编辑主动找上来,约你出书。
-
各大相关平台运营找你合作。
-
你会被更多人知道。
总结
通过本篇文章我们知道了
1.关注哪些技术?
底层知识。
2.如何学习?
阅读书籍结合PDCA学习方法。
3.怎么样坚持?
加强反馈,给自己设置一根进度条。
4.为何分享?
提升自己,帮助他人,构建个人影响力。
请注意以下2个重点:
1.请把注意力放在真正值得的事情上。
2.贵有恒何必三更眠五更起,最无益只怕一日曝十日寒。-- 毛泽东
最终达到在寒冬中破冰而出!