随笔(01)

​  博客有很久都没有更新了,2020年底立下的flag一个也没完成。20年底说着每周一更,每月4更,到今天已经5月份了,算下来欠下了将近20篇文章。原因有很多方面,一方面是自己精力有限,另一方面是由于感觉自己学的东西不成体系,太过零散,没办法凑出一篇博客的内容。所以就没往博客上发,发在了新的随笔上,链接如下:个人随笔,后续会把链接放到友链上,方便访问。

​  说一下这几个月来的成果,年初一段时间基本都在为了换工作而在疯狂的背八股文。工作稳定后也在思考,感觉光靠被八股文不够,对某些东西的理解还是不够透彻,都是靠死记硬背。就像提到HashMap就想到数组+链表+红黑树。你说真正理解了吗?其实并没有,数组到链表其实还好理解,但到了红黑树就一问三不知了,到现在为止我也没搞清楚红黑树的定义,以及是如何实现的。这只是一部分。花时间仍然可以去理解,不算太大的瓶颈。主要的瓶颈在kafka等类似的中间件上,比如说kafka是分区有序的,数据是顺序写。但道理是如何实现顺序写了没有一篇文章去讲清楚。这时候已经明显的感觉到软件知识已经不够用了。需要结合硬件一起来看待。不去了解硬件你根本不会理解顺序写、随机写到底是什么。软件学到最后真的发现就是:数据结构+算法,甚至有些时候觉得两者就是一个东西。

​  计算机科学速成课给了我很大的启发,它让我感觉到以前的学习方向都是错误的。觉得曾经学习的知识都太过上层了,无法融会贯通。看了几章视频后我发现,可能作为2一个软件工程师就不应该分什么前后端,甚至语言在我眼里也变得不重要。因为无论什么语言无非都是对二进制的高度抽象,最终传输给计算机的还是一个一个”0”,”1”字符。这时候才发现自己原来所看待问题的方式太过上层了,不管什么语言语法,始终都是建立在硬件之上的,”九层之台,起于累土“。只有真正的理解了硬件的实现,才能更好的去理解软件。最后的最后软件剩下的只有:架构的核心思想+数据结构+算法,三者组成了软件的灵魂。

​  后续一周一更的博客应该是很难实现了,觉得目前的自己太过于浮躁了,需要花时间好好的沉淀一下。去思考如何抛开语言,抛开前后端的思考问题。一个优秀的程序员不应该被语言牵绊。诚然,每门语言都有各自的特性,每个方向都有各自的知识,一个人是不可能学尽所有的知识的。目前其实自己的方向还不是很明朗,始终无法贯通前后端和各个技术栈。看过“左耳朵耗子”、七牛云CEO”许式伟“、刘超等各位大牛的几篇文章后,发现他们好像已经摆脱了语言,方向的束缚。可以和你从java聊到go,从前端聊到后端,从redis聊到kubernetes。希望自己有朝一日能够达到他们这样的水准。

​  最后再重新立一下flag,以后博客两周一更新,随笔基本上会随时更。后续的重点方向应该会放在计算机组成原理这块。也会花部分时间继续学习应用层的知识,两者各占一半吧。其实说了那么久自己都是站在一个技术人的角度思考,后续应该也会跳出技术人的桎梏,去思考一下自己的人生。