技术世界的无涯学海

文章目录

    • 1. 前序
    • 2. 学习目标
    • 3. 学习方法
    • 4. 提升计划
      • 4.1. 扎根基础
        • 4.1.1. 网络【扎根基础】
        • 4.1.2. 操作系统【扎根基础】
        • 4.1.3. 计算机原理【扎根基础】
        • 4.1.4. 数据结构与算法【扎根基础】
        • 4.1.5. 数学【扎根基础】
        • 4.1.6. 编译原理【扎根基础】
        • 4.1.7. 设计模式【扎根基础】
        • 4.1.8. 分布式【扎根基础】
      • 4.2. 面向应用
        • 4.2.1. 数据库
        • 4.2.2. RPC
        • 4.2.3. 消息队列
        • 4.2.4. 并发编程
        • 4.2.5. JVM
        • 4.2.6. 性能调优
        • 4.2.7. 大数据
        • 4.2.8. 云原生
    • 5. 读书
    • 6. 背单词

1. 前序

前些日子与领导谈话 —— 一位工作了13年的老阿里人,前面也是谈笑风生,直到他问到我给自己的定位是什么,专注的方向是什么,未来又打算如何给外面的公司介绍自己,一连串的发问像一连串的响珠炮,狠狠地砸在我的脑袋上,一时间竟无语凝噎,思忖了半天也没有想出一个合适的答案来,最后也只是吞吞吐吐把自己的本行说出来 —— XXX。领导微微一笑,淡淡的说:“XXX也很大,有A也有B,当然还有C和D……”,总之这一番话还没说完,我已经变成了霜打的茄子,呆呆的坐在那,像找不到妈妈的小天鹅 —— 所以说它是丑小鸭。

老实说,我从毕业到现在三年多的时间里,兜兜转转做了很多事情,他们都是我喜欢的,但又苦于平台又是无法深耕的。刚毕业我直接做了Web后端开发 —— 增删改查,后来我自学了React全家桶成了一名还算合格的前端 —— 《React踩坑笔记 —— 一个后端程序员的React进击之路》,再后来我成了一家转型公司的技术Leader搞一些我所谓的架构 —— 实际上那时看起来更像是全栈+DevOps工程师。个人拥抱开源,做过两三个开源项目(比如 gridexcel),而且有不少公司在用,评价还不错,朋友圈里很多人头都是冲着开源项目来的(哈哈),还有幸给某国外知名名开源项目提过PR并合入主分支,紧接着我学习了一些大数据,又学了半年的深度学习,还没学出个模样,一个契机我跑去做了云计算,拥抱OpenStack拥抱Kubernetes,再到现在的中间件 —— 身世浮沉雨打萍。

也正是因为我学了很多东西,关注过很多方向,学的东西越多,关注的方向越多,也愈发的体会到基础的重要性,如今互联网的世界里或者说是计算机的世界里,再高大上的概念无非也就是考研408,这就像是如今我们生活的这个世界,像三体小说里的那个世界,科技一直再进步,高大上的概念层出不穷,但是基础理论、基础科学基本没什么突破。或许,在这种状态下,扎根基础才是正确的长期发展之道,为此我拜读了很多大佬的自我总结,最终结论也是如出一辙 —— 程序员不是青春饭。随着当下中国对底层技术的需求越来越大,未来程序员的发展通道、职业长度只会越来越好。扎根基础技术领域的程序员,到了40岁左右,有了一定积累之后,才可能真正了解这个领域,做出核心关键贡献。

可以看看这篇文章,感受下大佬的语重心长 —— 《入选2021全球青年领袖榜单,蚂蚁何征宇的技术人生》

总之对我来说,就是重学基础,在工作实践中探索方向,追求卓越,追求创新。

2. 学习目标


  • 专注基础技术
  • 贯注工作实践
  • 关注学术方向

3. 学习方法


  • 《新框架(新工具,语言)从入门到精通的正确姿势》

4. 提升计划


工作日 节假日
{1,}讲 {5,}讲

4.1. 扎根基础


4.1.1. 网络【扎根基础】

  1. 《趣谈网络协议》
  2. 《网络编程实战》
  3. 《Web协议详解与抓包实战》
  4. 《Linux高性能服务器编程》

4.1.2. 操作系统【扎根基础】

  1. 《深入理解操作系统 # 码农的荒岛求生》
  2. 《Linux性能优化实战》
  3. 《趣谈Linux操作系统》
  4. 《Linux内核技术实战》
  5. 《Linux内核设计与实现》

4.1.3. 计算机原理【扎根基础】

  1. 《深入浅出计算机组成原理》

4.1.4. 数据结构与算法【扎根基础】

  1. 《数据结构与算法之美》

4.1.5. 数学【扎根基础】

  1. 《程序员的数学基础课》
  2. 《重学线性代数》
  3. 《数学之美》
  4. 《什么是数学》
  5. 《马同学图解数学》
  6. 《天才的引导历程》

4.1.6. 编译原理【扎根基础】

  1. 《编译原理之美》
  2. 《编译原理实战课》
  3. 《计算机程序的构造和解释》
  4. 《现代编译原理》

4.1.7. 设计模式【扎根基础】

  1. 《设计模式之美》
  2. 《设计模式之禅》

4.1.8. 分布式【扎根基础】

  1. 《分布式协议与算法实战》
  2. 《分布式技术原理与算法分析》
  3. 《ZooKeeper实战与源码剖析》
  4. 《从Paxos到Zookeeper:分布式一致性原理与实践》

4.2. 面向应用

4.2.1. 数据库

  1. 《MySQL实战45讲》
  2. 《MySQL技术内幕:InnoDB存储引擎》
  3. 《高性能MySQL》
  4. 《MySQL参考手册》
  5. 《分布式数据库30讲》
  6. 《后端存储实战课》
  7. 《ElasticSearch核心技术与实战》
  8. 《ElasticSearch权威指南》
  9. 《Redis核心技术与实战》

4.2.2. RPC

  1. 《闪电侠Netty源码分析》
  2. 《Netty源码剖析与实战》
  3. 《RPC实战与核心原理》
  4. 《深入浅出gRPC》

4.2.3. 消息队列

  1. 《Kafka核心技术实战》
  2. 《Kafka核心源码阅读》
  3. 《深入理解Kafka:核心设计与实践原理》

4.2.4. 并发编程

  1. 《Java并发编程实战》
  2. 《Java业务开发常见错误100例》
  3. 《Java并发编程的艺术》

4.2.5. JVM

  1. 《Java性能调优实战》
  2. 《深入拆解Java虚拟机》
  3. 《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》
  4. 《实战Java虚拟机:JVM故障诊断与性能优化(第2版)》

4.2.6. 性能调优

  1. 《系统性能调优必知必会》

4.2.7. 大数据

  1. 《从0开始学习大数据》
  2. 《Flink核心技术与实战》
  3. 《HBase不睡觉书》
  4. 《Hadoop技术内幕:深入解析Hadoop Common和HDFS架构设计与实现原理》
  5. 《Hadoop技术内幕:深入解析YARN架构设计与实现原理》
  6. 《Flink原理、实战与性能优化》
  7. 《HBase企业应用开发实战》
  8. 《Hive编程指南》
  9. 《Spark技术内幕:深入解析Spark内核架构设计与实现原理》
  10. 《Spark GraphX实战》
  11. 《Hadoop构建数据仓库实践》
  12. 《Storm分布式实时计算模式》
  13. 《Spark大数据处理技术》

4.2.8. 云原生

  1. 《Go语言从入门到实战》
  2. 《Go语言圣经》
  3. 《Go语法树入门》
  4. 《etcd实战课》
  5. 《深入剖析Kubernetes》
  6. 《Service Mesh实战》

5. 读书


  1. 书读百遍其意自现(山重水复疑无路,柳暗花明又一村) —— 不至于看不懂时,,垂头丧气;
  2. 上下文很重要;
  3. 总分总 ——
    1. 总——把握整体结构;
    2. 分——消化细节,知其然知其所以然;
    3. 总——回味穿插,由一生二,由二生三;
  4. 使用PC阅读电子书时,可以开两个Tab —— 有一个用来读,一个用回溯。

6. 背单词


  1. 看英文识中文
  2. 将多个中文释义串成句子,便于全面、且快速记忆
  3. 联想助记:音、形、它音它形它意

你可能感兴趣的:(学习笔记,学习心得,数据库,kafka,flink,java,分布式)