程序员的修仙之路-筑基篇
也许很多人都被这个文章的标题吓到、吸引或者迷惑,那我告诉你,这篇文章不是一个程序员的穿越玄幻,不是一个程序员的无聊之谈,里面没有算法公式,亦无程序员的心路历程。它只是一套学习方法与学习工具的使用。这只是我的修仙心法,被我无意中在路边摆摊的大爷处获得。整个心法的核心就是四个字“持续积累”。如果你已经做到这四个字,那么我告诉你,赶快走人,别看了,看多了会走火入魔,继续你自己的修仙之路就好。
言归正传,废话不聊了,围绕着持续积累这一口诀,采用我这套方法,不管你是新手程序员,还是nb的程序员,保证你在3个月内筑基,6个月出窍,12个月渡劫,不信你就试试,下面就和我整齐划一的修炼起来。
一、 万事开头难的筑基
下面我们通过分解动作来讲解筑基如何的练。
第一步:需要确认你要修炼的方向。那么如何确认自己修炼的方向哪?这你别问我,问我还不如去问知乎,哪里牛人多。因为有人说技术方向就是前端与后端,也有人说技术方向实质就是选择语言,我想说的是这都不重要,重要的是你能够在一个技术方向与一个语言上持续积累,时刻都要记住这个心法口诀。
不过个人还是需要给点建议的,只选技术方向,不要选择具体的技术语言,语言可以很快就学会,这玩意比中国话好学的多,语言就用当下你在用的就好,把它学透,你就具备学会所有编程语言的基础了;那么说技术方向怎么选,技术方向这玩意其实也不好选,IT技术发展的太快了,个人建议是分主业与业余爱好两种,一种是给你当下赚钱的,另一种是将来可能让你赚钱或养生的(程序员也要考虑退休生活),如果这样,其实就好选了,主业选当下最热,最成熟稳定的,业余爱好选自己一眼就喜欢的,就兴奋的,和找女朋友差不多。
意见给完了,这篇文章里,我们假设主人公就是一个叫泰山的程序员,他选择了前端的技术方向,同时业余学习python,说实话,学前端业余学C还是有难度的。那么我们开始第二步。
第二步:准备筑基。这里我想首先说明一点,你虽然可以是一个小白程序员,也可以是NB程序员,但咋说也踏上了修仙之路,不能整天抱着书本看,在网络上闲逛,必须在江湖上历练,说白了就是得干活,你还没成仙哪,还得吃饭不是,还不能辟谷。所以你得参与一个项目,以这个项目为基础,开始边修边练。那么我们看看小泰山是如何准备的。
1、我是一个前端程序员,我的目标是前端的斗战圣佛。那么前端都需要掌握哪些知识,都需要哪些内容我必须在项目中持续积累哪,没啥对与错之分,按照自己需要的来梳理一下。直接上泰山梳理的思维导图。
思维导图梳理
是不是感觉头大了,这还没展开哪,随便一划拉就这么多,算了吧,还是别修仙了,这会我告诉你,别怕,筑基不是三个月让你学会这些,只是让你知道有这么多,别说三月,就是让你一年时间把这些内容看完,估计也不会成仙,充其量就是个纸上谈兵的废材而已。看见标红的了吗?这是泰山这个项目中要用到的知识,就从这些入手开始。
2、善用工具,让你的研发能力、研发思路得到可视化的积累。知识点基本归纳的差不多了,不够的后续再补充,也知道路有多远了,那就开干吧,但是等等,开干谁不会啊,等着领导派活就行了。我说的不是这个,得把你干活过程中的心得体会、收集的资料、动脑想的东西,在不经意间记录下来,这时候需要一个好工具不是。那么这个工具有啥要求哪,第一得能够随时记录查阅资料的关键点,第二得便于整理和管理这些知识资料;第三便于查阅与浏览。但是泰山是个小白程序员,需要动不动就问度娘啊,所有大部分解决问题的知识都在网上。找了半天,知乎、百度一顿搜索,前辈一番请求,这是一个叫堆塔思维的产品摆到了泰山面前,产品名字很大,也许作者没做完吧,不过没关系,能用就行,满足需求就好,它的浏览器插件不错,而且这好是前端调试神器google浏览器上的一个插件,叫webtick。安装有点麻烦,不过搞前端的泰山来说这不是问题。迅速的按照教程安装完成,开始准备自己的知识标签了。具体标签下图所示。
标签整理
行了,就先这么多吧,后续持续根据情况再加标签。下面说一下webtick的使用,它是一个浏览器插件,安装完成后,只有两个快捷键,ALT+1与ALT+2,一个是文本标注,一个时区域截图标注。例如,我查找electron项目打包时,找到这篇文章,我就可以把觉得有价值,或者帮我解决问题的部分标注出来,然后记录标题和批注,记录它帮我解决了什么问题,有哪些启发。如果觉得全篇是个好文章,我会采用截图的方式,直接把标题截取下来,作为一个可视化的阅读标签使用。
信息标注
通过在参与项目工作过程中,顺带着使用这个工具,记录了很多有价值的碎片化的知识,记录下来的结果如下图:
标注内容整理
一般情况下,你需要在每天工作完成之后,打开这个工具,将每天标注的内容做好标题、批注与分类标签。泰山在使用3个月后,发现自己平均每天会标注7-8条左右,涵盖的知识点基本覆盖项目内容,并有一部分扩展。按90天计算的话,差不多积累700左右个零散的知识点,而且都是自己当时不会的,对自己有启发的知识点。
第三步:开始筑基。这部分需要说明的一点就是,牢记持续积累的口诀,每天给这些知识点打标签,每周有时间翻看这些知识点。如果你能坚持三个月,那么我告诉你,你就可以筑基了。或者是你已经完成了筑基,如果你是个程序员小白,你基本上已经是团队主力了,如果你是个NB程序员,估计新的技术方向你基本已经入门了。那么筑基实际上就剩下最后一步了,打坐冲关吧,还记得标红的那些内容吗,逐个按照知识点将你收集的零散知识,整理成知识架构。下面泰山以electron为例。用的工具还是堆塔思维,因为其牛逼的就是,之前插件收集的知识,甚至于pdf阅读标记的知识,都可以快速的集成到思维导图中。
思维整理
整理完是一个非常庞大的思维导图,目的还是让三个月收集的碎片化的知识形成一定的体系,然后了解体系的构成,并明白自己还欠缺的内容,因为在项目工作中,可能有很多内容没有涉及到,待有时间的时候,在进行补充完善。
这些只是你需要梳理的一部分,根据不同的主题,可以分别梳理成思维导图,当你把现有涉及到主题只是分别梳理完成,基本上,你筑基已经完成了。是时候准备出窍的修炼了。
下面我们把万事开头难的筑基过程在提炼总结一下。
1、 牢记口诀,持续积累;
2、 找到一款好用的积累工具,例如泰山使用的堆塔思维产品。
3、 确定自己的技术方向,一定要积极的参与现有的项目,多干活没错。没有项目就自己策划个产品做做。
4、 梳理自己需要掌握的知识体系,制作知识收集标签。
5、 持续的在工作过程中,解决问题过程中,思考问题过程中检索、查阅、阅读的知识点收集起来。
6、 反复的总结梳理。
7、 3个月后,你肯定成功,不信你试试。