前言:
这是一篇朴实无华纯文字的,非技术文,纯属个人总结复盘,思考得失,我尽量跳出我思考的局限性给大家看一看我个人成长道路上的实践!
大纲:
- 2019年度学习内容清单-附学习材料的反思总结
- 技术成长上的反思-我的实践与方法论
- 工作上的反思
- 2020展望
一、2019年学习内容清单
-
碎片阅读
- 58沈剑公众号《架构师之路》几乎所有文章
-
个人公众号(写作四篇文章)
- 《跟我速览redis的六大数据结构》
- 《再探redis对象与底层数据结构的关系》
- 《从单体开始的架构演进》
- 《从网络IO看高性能框架》
-
阅读书籍(十四本)
- Linux内核原理
- 大型网站架构技术
- 架构修炼之道
- go程序设计语言
- MongoDB实战
- 图解HTTP协议
- 代码整洁之道-程序员的职业素养
- redis设计与实现--基础部分
- 高性能mysql--基础部分
- go高级编程--基础部门
- 毛泽东选集卷一
- 终身成长
- 刻意练习
- 原则
-
极客时间(168讲)
- 《网络编程实战》--39讲
- 《即时消息技术剖析与实战》--24讲
- 《后端技术面试》--28讲
- 《数据结构与算法之美》--15讲
- 《MongoDB高手课》-- 35讲
- 《从0开始学微服务》-- 27讲
总结反思:
这一年以来我每天都在不停的学习到晚上十一二点,上下班路上等公交的时候都在看极客时间,隔天去健身房跑步锻炼,身体学习两不误。
通过将所学的知识反馈到工作中,例如工作中出现问题故障的排查,代码层次结构的优化,工程实践的指导,同样一件事情,别人干可能有三分收获,触类旁通,我能收获五分。
回头一看自己所做的事情,所看看的书,还是挺有成就感的。正所谓:不积跬步无以至千里,日拱一卒,功不唐捐。只要坚持下去,回首相看,发现很多曾今认为做不到的事情其实在时间和坚持的力量下面不懈一击。
评论:
- 《架构师之路》公众号
- 场景无敌,互联网应用场景的各种解决办法基本囊括
- mysql基础经验丰富,从索引到优化
总结:沈剑大佬公众号粉丝之巨大是有其道理的,每篇的输出无不以雄厚的输入作为基础,每周几篇,此等毅力非常人能及。行文风格理解起来没有难度,老少皆宜。
- 《毛泽东选集》
- 世界观、方法论神书
- 没有调查没有发言权(事先调查的重要性)
- 学习->实践->总结->反思->学习->实践->总结->反思
总结:中华上下五千年,升级打怪难度能与毛主席媲美的也就刘邦和朱重八两位草根帝王。从毛选结合历史,可以看出毛主席这一生的经历是怎么样的,如何取得如此伟大的成就。譬如毛主席说的实践论,理论指导指引实践,实践后反思以反哺自己的理论,不断完善,成为自己的方法论。譬如《星星之火可以燎原》冷静判断局势,耐心等待,对前途抱有十二万分的信念,谁能想到土八路们最后能封侯拜相?
- 终身成长&刻意练习
- 技能都是可以后天习得的,远没有到拼天赋的程度
- 不要害怕犯错,要从错误中吸取经验教训
- 不要固步自封,要走出自己的舒适区
- 知识和技能是两码事
- 一万小时天才理论是扯淡
- 一万小时要不断突破自己的舒适区,让自己难受,才能让自己成长。
总结:终身成长人生观神书,让人从认知上突破自己的极限,从人为自己不可能到可能。刻意练习方法论神书,在你人为自己一切皆有可能的时候,这本书指引你更好的到达自己的可能!
二、技术成长上的反思
什么是技术?
知道高并发高可用,能懂一些架构是技术,能在一线写业务代码也是技术,更有甚者居于幕后能做PPT架构师也是技术!
技术就是为业务服务,公司业务是赚钱的,为程序员发工资的,当公司业务是仅仅写好CRUD就能赚钱的时候,你的技术就是公司需要的。当用户量上来了,服务宕掉了,让公司损失钱了,需要对技术有更高要求了,要是你的能力跟不上,可能也跟不上公司的发展了~换句话来说就是要招人来解决你解决不掉的问题!
2.1 技术的发展与更新太快,完全跟不上
做技术的普遍都有一种焦虑,就是现在新的语言,新的框架,新的中间件涌现的速度越来越快,这个还没玩熟那个新东西就来了。学嘛,没时间,手头的东西还没学完,不学嘛,又害怕,自己不学别人学习,被淘汰了怎么办。
我曾经也是这样焦虑过,但是经过这一年时间修炼底层内功,发现以前望而生畏的各种技术自己也能琢磨一二~
2.2 打透底层,建立知识网络,以不变应万变
焦虑显然解决不了问题,那么什么能解决问题?
那就是打透底层,建立知识网络,以不变应万变!
最开始我先看的是《图解http协议》,在面试的路上,就捧着书在地铁上看,然后看《Linux内核原理》,再看《大型网站架构技术》,最后当我看完极客时间的网络编程实战后才好像打通了技术世界的大门!
为什么要焦虑呢,没必要嘛~
因为计算机科学只有几十年的历史,计算机的基础理论二十多年来也几乎没有任何突破性的进展。无论哪一门编程语言,哪一个网络框架,哪一种中间件技术,无外乎都要和操作系统打交道,接受操作系统的调度,自己管理或者由系统管理内存,要做到高性能无外乎就是高性能的IO模型,网络传输就是TCP/IP协议占大头,数据库的话就是索引原理还有数据结构等等~
底层技术都一样,不一样的在于应用层的实现,只要牢牢握住了底层原理,应用层再怎么变化都是万变不离其宗!
2.3 跟各类程序员交流心得
我是一个比较学院派的程序员,我在做某些事情的时候喜欢先研究一下这件事情是咋回事,然后往前看三步,思考值不值,再决定做不做!
同样,对于编程这件事,我亦是如此。对于比我优秀的人我从来都是抱着向他们学习的态度,而不是固步自封,洋洋自得~
非常感谢许瑞亮,李雄飞,王秀文等几位大哥,愿意浪费自己的宝贵时间跟我唠嗑,哈哈,何其有幸能够向他们学习。
许瑞亮,一年看书破百本的神人,学以致用的典范,喜欢读书,教我用刻意练习的方式去编程,去学习。我也想像他一样,不那么功利,读几本自己喜欢的书,然而实在是做不到,哈哈,太菜了,只有拼命追赶了。
李雄飞,资深老码农,教会我正确看待技术这件事,技术就是工具,赚钱的一种工具而已,无分好坏,赚钱就好,太真实了~
王秀文,当我焦急于MongoDB性能调优的时候,萍水相逢的老哥耐心的给我在微信上指导了两天。看我急于求成,指出我焦急的心态,并鼓励我戒骄戒躁,踏踏实实的走下去一定可以!有时候来自陌生人的感动是那么的温暖。
还有一些程序员(大多数),认为这些原理那些理论并不重要,现有业务不崩坏即可,觉得像我一样看么多书都是白费,工作中根本用不上。诚然,这种想法并非毫无道理,实用主义的看法并无不妥。
但是,诚如我司在实际业务中遇到的情况,用户请求短期剧增,原有技能水平不足以解决目前遇到的问题,出了问题连问题的本质都看不清,被现实打的满头包,这时候的读者您还认为读书无用论么?
各有各的道路,万般皆法,殊途同归,有人喜欢以夸父逐日的方式去追热点,也有人喜欢diss我来掩饰自己根本没有很强学习能力的本质,也有人喜欢深究底层。具体怎样暂且不表,待五年后再来看看~
三、工作上的反思
不足:这里我必须检讨,我工作上取得的成果是远远不够的,客服系统的bug至仍未修复,纵使有各种各样的原因与借口,没做好就是没做好,这点咱要勇敢的承认。
究其根本,就是学习和工作脱离了,直到看到曹大在朋友群里发表的文章后才幡然醒悟,工作和学习是相辅相成的, 不能割裂。
“工作本来就应该是学习的一部分,是学习中的实践和及时反馈的部分。学习如果脱离工作的实践,是非常低效的。因此每个同学应该对自己工作所在的这个技术和业务领域进行系统性的学习,并在工作反复实践和验证。不同的领域之间其实是融汇贯通的,当你对一个领域精通并总结出方法论以后,很容易上手别的领域”---曹乐《如何成为技术大牛》
优点:谈完不足再来看看优点,我在公司做过两次内部技术分享,本质上是为了统一内部的思想,避免技术选型上走错路了。从结果上来看还是挺有效的,起码能解决问题。
初入我司,很难想象一个开发部上下意见是测试岗位的不重要,认为不需要测试,开发自测就足以。认为做项目不需要前期的需求分析,不需要明确的文档确认,干就完事。
很高兴,经过大半年大家都改变了看法,明年的招人计划中有一个岗位是测试的~
经过数月POS系统的开发,前期需求讨论花了一个月的时间,从开发成果上来说这一个月的时间是值得的,因为我们在需求讨论过程中整个流程和闭环都已经跑通,不存在做到一半发现项目实际牛头不对马嘴的情况。
当然,后期需求方还有反复的现象,但是这已经是个比较好的结果了。我相信在后面的项目中,没人会认为前期需求是浪费时间,后期测试是毫无必要的看法了吧~
四、2020展望
计算机知识学得差不多了,更重要的是在代码上下功夫了,多多参与开源,多多参与技术交流与分享,扩大个人影响力。
在此,立个flag!
- emmm~~~把工作做到最优。
- 明年至少精通三个开源中间件(源码级别),第一个已经选好了,NSQ。
- 明年至少看五本专业书,看十本与工作无关纯属兴趣的书。
- 把购买的极客时间专栏看完!(买太多了---黑脸.jpg)
总结
以上是我的2019总结,相比各位大神来说也许不值得一提,但这是我一年努力的结果,我可以说我找到了自己的方法,抬头看天,低头走路,以后踏实走好每一步!
日拱一卒,功不唐捐!
加油2020!