0%

2021过去了,我都干了些啥?

2021年又过去了,不得不让人感叹岁月如梭、光阴似箭!正值元旦假期,刚好有时间梳理一下这过去一年的种种,思来想去,还是不过"平凡"二字罢了。

1. 去年计划完成情况

每年的年底,我都会做一下年终总结,也定制一下新的一年的计划。现在回过头去看,发现去年的计划完成度也只有40%,很多事情还是没有能够完成。一方面,计划可能定得过高,完成起来有一定的难度;另一方面,自身的自制力还有待提高,很多事情没有能够坚持去完成;再者,诸如读书这样的事情,如果阅读了但是没有去理解、梳理和总结,还是很难形成系统的经久不忘的知识。

先从工作和生活上来聊聊计划之内的事情,然后,作为一个技术人,着重从技术和个人能力修炼上自我剖析一下去年一年所完成的技能。

1.1. 生活篇

从2021年开始,我计划每年带父母、老婆和孩子们出去旅游至少一次,2021年完成了这一目标,虽然走的不远,但是回想起来还是满满的幸福感。

作为技术人,平时难免加班加点的工作,陪伴家人的时间很少。所以,一家人出去旅游一下也是一种不错的选择。我们在端午节花了几天时间去了峨眉山、乐山大佛,本想着错开人流高峰时间,结果没想到去乐山大佛的时候还是遇到了人流洪峰,整整排队3个小时才看到了大佛😅。两天下来,从攀登峨眉山的兴奋,到看到金顶的激动,到漫长排队看大佛的百无聊赖,到看到大佛的肃然起敬,再到后来的精疲力尽,真的是波澜起伏、人间百味!玩了两天下来,我们都已经疲惫不堪,不过远离尘世的喧嚣,静下心来仔细品味一下生活,享受人生中的酸甜苦辣,何尝不是一件幸福的事情呢?

ems
Figure 1. 峨眉山金顶(图片来源网络)

生活习惯上,仍然没有太大的变化。虽然计划着要改变自己晚睡的习惯,然后还是没有做到。明明知道熬夜带来的危害,但还是深夜十二点还在电脑上敲敲打打的写着代码……今年,希望自己能够克服这个毛病,养成早睡早起的习惯,做到严格自律,以免将来后悔。正如《自律的人生更自由》里说的:与其躺到病床上后悔,不如现在就做出改变。

1.2. 工作篇

年初时,老总制定了明确的目标,每个阶段完成的任务都列的清清楚楚,可是完成情况却很糟糕,主要是酒店行业的产品在疫情影响下推动起来相当困难。比如,我们推出的一套酒店服务人员综合素质能力培养的产品,本来预计下半年应该会有比较上规模的用户使用,可惜在疫情影响下,酒店经营者自身尚且难保,更别说在员工的软硬技能上再下功夫了。这一点在2020年全年已经体现的非常突出了,可以说新冠疫情对酒店行业的冲击是常人难以想象的,虽然2021年酒店业有一些复苏,但是同2020年比还是增长不大,而且实现营收增长的多为企业级连锁酒店。

image 2022 01 03 20 10 02 397

在公司待了5年了,目前而言公司的业务线还没有真正地走上正轨,前期的产品铺垫几乎没有收到任何效果,尤其是在这几年疫情的影响下,每迈出一步都显得那么沉重。今年,我们着重再打造酒店人员实习平台,解决职业院校学生实习管理难、数字化程度低、信息化建设落后等问题,尽管现在产品已经足够完备,但是缺少验证她的用户群,22年的工作重心必定在产品的推广和优化上。希望新的一年,公司能够顺利推动业务,打磨出更高效、更易用的产品。

1.3. 技术篇

学习的技术,最好的入口是官方文档,大多的技术官网都会有n分钟guide,可以教你一步步由浅入深入的学习。当然,前提是英语必须要好,否则阅读起来非常吃力,而且会影响我们的阅读的积极性。当然,也可以借助 Chrome 的翻译工具来阅读,不过这种机器翻译准确性很难保证,所以我经常是先阅读英文,不懂的地方或者不重要的地方在通过翻译工具去阅读。技术的学习离不开实践,如果只阅读不实践,最后读过的东西也成了过眼云烟。

去年,我学习了这些技术,很多技术都是经常使用,但是没有系统地梳理它们,所以花了一些时间专门去进行系统性的学习。现在看来,在技术上花费的时间还是太少,今年需要付出更多的时间来继续钻研技术。

  • Spring Cloud

去年,我将 Spring Cloud 从原来的 Edgware 版本升级到了 Hoxton 版本,将 Spring Cloud 的很多组件都换成了 Spring Cloud Alibaba 的,比如注册中心从 Eureka 换成了 Nacos。升级过程中,还是遇到了很多问题,最后都一一解决了。一个最大的问题是网关,原来的是 Zuul 1.x 版本,后来换成了 Spring Cloud Gateway,但是后者是基于 WebFlux 的,这是一个实现了响应式标准 Reactive Streams 的异步响应式编程框架,底层默认使用 reactor 框架,这对于我们团队而言是一个全新的技术,我们不得不下功夫去学习。

  • WebFlux 与响应式编程

响应式编程是一门较新的技术,目前的响应式框架,除了较早的 RxJavaVert.x 之外,还包括专用于开发云原生应用的 Quarkus,以及 Spring 家族的 WebFlux

在项目中,使用 Spring Cloud Gateway,必须先去学习 WebFlux 和响应式编程,目前来说,对其掌握还不够系统和全面,所以今年的目标是要系统的去学习 WebFlux 和响应式编程。

  • Spring

从源码层面学习了小部分 Spring Framework 的技术,如 Spring 的启动过程、容器的设计、AOP等,还有大部分内容还没有完成,今年的目标是继续学习Spring源码。

  • Java并发编程

并发编程可能大多开发者使用很少,但是它绝对是Java开发者必须掌握的技能。随着现代计算机处理核心越来越多、处理能力大幅提高,并发编程已经是必不可少的提升性能的主要手段。去年,我系统地对Java并发进行了梳理,从线程、线程池,到synchronized、Lock、volatile,再到 AQS、CAS,再到 JUC 包的并发工具,都一一进行了学习,收获很大,今年的重点是将这些内容整理成文并发布出来。

  • 设计模式

去年,也系统地学习了面向对象的23种设计模式,通过自己编写案例、绘制类图,对设计模式的理解更深入了一些。但是,我只将创建型、结构型的模式 整理成文,发布了出来,行为型模式还没完成,所以今年的重点是完成这缺失的部分。

  • Docker

Docker也是去年计划需要掌握的技术,去年对Docker进行了大量的学习,整理成笔记。本着架构遵循业务需要的原则,公司目前使用 Jenkins + Nexus + Maven插件 + Shell脚本的方式来部署和管理Docker。不过受时间,Docker的内容我就发了 这几篇,今年会慢慢补上。

  • Go语言

Go 是一门很好的语言,具备良好的性能,据说被称为下一代的C语言,非常适合用来开发中间件。去年初步学习了一下Go的基础知识,今年和明年计划对其进行系统的学习,并使用它开发一些中间件。

  • 领域驱动设计

去年通过阅读《领域驱动设计精简版》电子书,初步了解了一些领域驱动的概念,今年计划继续深入学习。

2. 读书篇

古人有云:"活到老,学到老!"有意义的人生总是在不断的学习和成长,而读书是学习的主要途径。每个人都应该读书,不光要读书,还应该读好书,好的书籍才能为我们指明方向,指引我们奋力前行。

去年开始,我计划每年读至少5本书,不论是技术还是其他书籍,只要能够提升自己,都不妨一读。如果是一本好书,可能会重复的去读,去深究。

下面我仅对读过的书做简短的说明:

  • 自律的人生更自由

一本小书,列举了大量的案例来说明自律的重要性,内容还算充实,但是显得有些抽象和空泛,没有说明具体如何去做,而是谈一些概念性的东西,读过之后能记住的内容不多。

  • 领域驱动设计精简版

适合初步了解(入门)领域驱动设计的一本小册(电子书),要具体实施还需要系统性地学习。

  • Java并发编程的艺术

一本注重讲解Java中并发编程原理的书籍,适合有一定Java基础的开发者阅读,内容丰富、全面,但是有些内容作者介绍的比较泛,内容过于抽象,读者很难理解。

  • Http权威指南

比较经典的书籍,讲解了Http的方方面面,内容丰富,缺点是一些比较抽象的概念讲解的不透彻,理解起来比较费劲。

  • Java编程思想

读过好几遍了,去年又重新读了后十二章,每读一遍都有收获。它应该是讲解Java语言最经典的著作了,可惜目前只有基于JDK5的第四版,不过仍然是开发者必备书籍,用最容易理解的语言讲解Java语言,尤其是其案例设计非常的优雅。

  • 大话设计模式

基于C#语言讲解设计模式的书籍,通过一个个案例讲解设计模式,通俗易懂,可惜不是Java语言,缺点是讲解有些模式时所举的案例有些勉强,应用场景阐述的也不是很明确,适合初学设计模式的开发者阅读。

  • 区块链技术指南

一本讲解区块链技术的书籍,从技术层面而非应用层面介绍区块链的发展和用到的技术,目前正在阅读中,计划今年完成阅读。

3. 2022年计划

今年,重点是继续系统地完成去年未完成的事情,然后阅读一本计算机基础方面的书籍,保持对新技术动态的跟踪。

3.1. 技术研究

  • Java并发编程

上半年继续梳理并发编程的内容,完成相关文章。

  • 设计模式

上半年完成设计模式中行为型模式的部分的文章。

  • WebFlux

全年的重点,完成响应式编程和WebFlux的学习,撰写成文。

  • Docker

下半年的重点,继续完成Docker的学习,撰写成文。

  • Spring源码

继续研究Spring源码,辅以官方文档和《Spring技术内幕》一书,争取完成主要内容的源码梳理。

  • Go语言

下半年,继续完成Go语言的学习,并尝试实践并编写一些简单的程序。

  • 代码量

2021 github
Figure 2. 2021 github提交次数

去年,在 Github 上的提交数才300多一点,今年的目标是突破500,如果自己能够按照既定目标边学习边实践,那么提交数肯定会超过这个目标。

3.2. 读书计划

所读的书籍辅助完成技术研究目标,下边列出的是技术方面的书籍,还会阅读至少一本其他方面(管理、修身等)的书籍。

  • Spring响应式编程

  • Java并发编程实战

  • 设计模式 可复用面向对象软件设计

  • Docker技术入门与实战

  • 深入理解计算机系统

  • Spring技术内幕

  • 深入实践DDD:以dsl驱动复杂软件开发(泛)

  • 区块链技术指南(泛)

这个目标似乎有些远,也想自我挑战一下,不过需要精读的就那么基本,何况有两本都是以前读过的,再仔细研读一番,应该收获不小。除了计划的6本之外,最后两本主要还是以略读为主,主要了解这些技术和方法,做到心中有数。

3.3. 生活方面

新的一年,生活上,除了锻炼自控能力外,继续保持足够自律。

  • 继续带着家人出去旅游一次

  • 早睡早起,保证晚上11点必须睡觉

  • 远离短视频app,通过其他阅读app来浏览和阅读新闻

  • 尽量保证公共交通出行,这样能多走路锻炼

4. 总结

总之,作为技术人的我们,除了保持对技术的高度热情之外,还需要找到适合自己的休息和锻炼的方式,现在一身的职业病虽然见证了工作的辛酸,但也是个人自控能力不足的表现,除了你最亲的人,没有人会再去心疼你。

新的一年,希望能够按照计划充实地过好每一天💪🏻。

~赞赏是不耍流氓的鼓励😄~

欢迎关注我的其它发布渠道