目录

  • 众所周知的坑,可以不学
    • 一、操作系统底层源码
    • 二、数学知识
    • 三、编译原理
    • 四、喜欢把学习的知识强加于业务
    • 五、不要向往大公司
    • 六、不要面向面试学习
  • 知道不学什么,才有更多时间学习需要的知识
    • 一、学习业务相关的技术
    • 二、做一个有产品思维的人(product-minded engineer)
    • 三、做一个善于沟通的人
  • 总结

新的一年要开始了,你一定长进了不少,但还在自责自己学习的不够多。让我来猜猜,这一年里面,你可能学习了:

  • 数据结构与算法
  • 操作系统底层原理
  • Spring底层源码执行路径
  • 你学习了许多篇极客时间,掘金小册,付费课程等
  • 等等等等

学习了这么多东西,你用上了多少,或者你在一些地方,强行使用不该使用的技术,这个可比不使用任何先进技术,危害大得多。

网络上的知识纷繁复杂、千奇百怪,良莠不齐,在这样一个知识可以随意戳取,网络上什么都可以学习到的时代,相比之下最宝贵的,反而成为了你有限的时间和生命,相比于学习什么知识,你需要做的是克制自己不去学什么在这个年末,我想跟你聊聊新的一年该怎么学习。

众所周知的坑,可以不学

一、操作系统底层源码

我想除非你去华为从事操作系统相关的工作,否则不要去过度深入的了解操作系统底层,于你自己无益,而且会浪费掉大把宝贵的时间,关于操作系统,你能了解一些cpu指令操作、时间片轮转大概的道理就行了。

二、数学知识

有一些程序员觉得,数学和编码有很大的关系,学好数学对编程有很大的好处,否则怎么面试都在考算法呢。

其实程序数据中的算法,跟数学不能说毫无关系,但是你学到初衷毕业的数学知识也够用了,算法中很多是思维方式,而不是数学知识,你在编程中很难遇到一个业务,让你自己使用一套极度复杂的数学原理。

可以不去学习数学知识,有兴趣的话,把leetcode的题型刷一遍就可以了,这个不用我提醒,你在面试之前一定会刷leetcode。但我个人觉得,面试完就不要再去刷leetcode了

三、编译原理

有一些程序员在知道代码运行后,想去深究代码是什么运行的,就开始去研究编译原理,其实编译原理是一门很深的学问,如果你不是从事相关工作的,你穷尽所有努力可能也就是知道一个皮毛,而且就算你精通了编译原理,参与过java的程序编译工作,对你把自己的业务做好也没有任何增益。

四、喜欢把学习的知识强加于业务

我看到很多程序员,喜欢学习,但是为了巩固自己学习的知识,喜欢把自己学到的东西强加到业务上,拿到锤子,眼中满是钉子。这是我最想提醒了一类程序员,因为他们用心努力,积极进取,但是用错了方式,如果能让他们看到这篇文章后,转变思维方式,这篇文章也算有了一点小小的作用。

如果你醉心于学习新知识,而这些知识可能未必适用你的业务,那么你就会错失适配你的业务的最佳适配技术,此所谓把时间精力用错了地方。

在你的工作中,应该采用反向思考方式,当下或者后续迭代的业务中,可能会用到什么技术,然后去学习之。

五、不要向往大公司

我想有很多技术人员很向往大公司,认为大公司里面,技术栈复杂,可以学习高并发、高可用等等一些实践。

首先,大公司也是分事业部的,事业部下面也是各个部门,可能它的业务体量还不如你们公司的
其次,有人觉得大公司,平台大,工资高,有人看到脉脉上,阿里,腾讯,字节动辄百万的薪资,心动不已,其实也要业务发展的好才行,而大公司那样好的业务,也是十不存一,而且不会把好处轮到一个新人,你放心,进去你就知道后悔,围城一般
最后,就算是学技术,其实很多小公司的人,远胜大公司,我这么多年的职业生涯中,一个有接近百人的研发团队的公司,里面的技术水平其实就不比大公司差了,而且这样的公司机会更多,大公司看似好,其实都是他们的公关人事等人特意宣传,故意引诱你的,真实情况并不一样,不管你是刚毕业还是职场老鸟,小公司其实不比大公司差。

六、不要面向面试学习

其实,面试考的东西都是八股文,算法,找工作的时候背一背刷刷题就行了,平时工作中做这些事情,叫做舍本逐末。再不济,花钱报个班,现在阿里P7都是报班批量培养了。P8以上算是业务老板,不是培养技术培养的出来的。面向面试去学习的人,我也是见过及其多的,以此勉励,避免误入歧途。

知道不学什么,才有更多时间学习需要的知识

在这样一个信息爆炸的时代,知道自己不要去学什么,才有时间去思考自己要去学什么。

一、学习业务相关的技术

其实,你面向面试去学习,都是去学一些八股文,刷一些算法,未必实用,而你既然在一家公司了,就算这家公司没有达到你的标准,怎么才能把事情做好,在任何公司都是一样的,如果你钻研的知识,既有水平又能在业务中使用,这是你在任何公司都应该去锻炼的能力,而那些拿着锤子到处找钉子的开发者,是最末流的,我曾经属于最末流,但早已跳出,希望你也能。

二、做一个有产品思维的人(product-minded engineer)

曾经的我认为研发就应该全力研究技术,尽量让技术满足产品的要求就好了,其实不然:

  • 产品的需求,可能用另外的技术也可以实现,而且大大节省研发工作量
  • 产品一般不懂技术,不知道你使用一样技术的工作量
  • 一个方案可能有多重实现方式,但是在实现细节上哪个和当前业务更匹配,是需要和产品研究的

三、做一个善于沟通的人

有一些人觉得,技术人员只要专心做技术就行了,其实只有好的沟通才能成事,不要害怕,走出来,勇敢去说话:

  • 与上级沟通,可以让上级及时知道项目进展,有误风险
  • 与下级沟通,可以让下级知道你们的目标,达成统一战线
  • 与产品沟通,可以做出来更加有产品思维的技术实现,促进业务迭代
  • 与测试沟通,可以让测试人员知道测试的关键点,要注意的事项,防止线上出问题
  • 与有能力者沟通,用别人的能力来帮助你,让你的事情更容易达成
  • 与其他研发沟通,及时了解研发配合难点,找到解决方案

要做一个合格的程序员,沟通能力一定要好,埋头苦干,成不了事。

总结

关于新的一年寄语,我跟你分享了你不应该去学什么,这样你才有更多的精力专注于自己要去学什么:
不要只专注于硬实力,做程序员,到一定阶段后拼的其实是软实力
我说的可能不是完全对,你可以在博文下面留下你的意见和建议,我们一起探讨学习。

程序人生(二)在这个信息爆炸的时代程序员怎么去学习相关推荐

  1. 思维方式-《慢思考》书中的精髓:在信息爆炸的时代,如何提高专注力,高效使用大脑。

    <慢思考>书中的精髓:在信息爆炸的时代,如何提高专注力,高效使用大脑. <慢思考>的作者是欧洲工商管理学院. 荷兰自由大学.比利时根特大学管理学院教授特奥·康普诺利,研究领域极 ...

  2. 信息爆炸的时代,太早进入社会不是好选择

    01 我们所处的信息爆炸时代中,人们总希望自己是无所不知的,希望自己可以跟上时代的步伐并且站在时代的前沿,但是信息太多不仅会混淆视听.分散注意力,还会影响人的判断. 但也正是这样一个信息畅通的时代,人 ...

  3. 信息爆炸的时代怎样来读书

    到底怎么样才叫看书? 目录: 一.引入 二.经历了就能理解 三.读书要分级 四.只读经典 五.别吝惜你动笔的那点时间 一.引入 看到这个题目的时候你可能会感到有点好笑:"这还用问,看书就是把 ...

  4. 微信小程序绘制二维码(附微信小程序开发学习手册)

    一.前言 在日常的小程序项目中,会经常遇到需要动态绘制二维码的需求.使用场景很多,例如绘制在海报上,例如制作票务码.核销码等等. 这篇文章是应一位好友的需求而写的,也希望能够给有需要的同学一些帮助. ...

  5. 程序人生(二)汉语拼音之父周有光去世——一个播音专业安卓程序员有感

    转载请注明出处: http://blog.csdn.net/iwanghang/article/details/54429514 觉得博文有用,请点赞,请评论,请关注,谢谢!~ 今天是2017年1月1 ...

  6. python安装与程序_二、Python安装和第一个程序

    <1.Python语言介绍 1.官方介绍:Python 是一款易于学习且功能强大的编程语言. 它具有高效率的数据结构,能够简单又有效地实现面向对象编程.Python 简洁的语法与动态输入之特性, ...

  7. 信息大爆炸的时代!知识付费的时代!不应该怎么做!去执行?应该怎么办?

    这个时代是个信息大爆炸的时代;每天早上当我们睁开眼迎接我们的或许不是一杯温热的牛奶而是手机里各种App推送来的大量信息.许多人习惯于机不离手晚上睡前和早上醒来第一件事情就是先看手机;手机改变了我们的生 ...

  8. 信息爆炸时代,对待信息的三种方式

    为了锻炼自己的写作能力,开始准备多写一些文章,除了技术文章之外,也练习总结一些能提高自己认知的文章.目前的想法是听一些好的讲座,然后用文字写下优秀人的想法,以此来提高自己的认知与写作能力. 第一篇文章 ...

  9. 【写文章 奖C币 换好礼】文章上 “程序人生”,拿着C 币换好礼!

    各位童鞋们,小编每天会在CSDN社区选1到2篇精彩原创文章在微信公众号"程序人生"(微信号:coder_life)进行推送.不是技术文章,是与程序猿(媛)工作.生活相关的奇闻趣事哦 ...

最新文章

  1. dubbo在idea下的使用创建 服务者,消费者 注册中心
  2. 管理“我的右上角” : 介绍菜单栏图标软件 Bartender
  3. sdk开发包如何使用_SDK如何使能行业?华为昇腾要用软件充分释放硬件性能
  4. JDK1.3安装出现/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory Done.
  5. KVM 管理与使用说明
  6. “我觉得,这个项目只需要 2 个小时”
  7. python用sort()函数对列表进行排序,从最后一个元素开始判断,超详细讲解,图文+视频
  8. 华为数通ensp命令(二)
  9. Windows快捷键设置
  10. 期权、期货及其他衍生产品 第二章 课程笔记整理
  11. 《Google SRE》读后感
  12. 2021年山阳中学高考成绩查询,陕西省山阳中学2018年高考成绩公布,2018年高考再创辉煌!...
  13. System.InvalidOperationException: Timeout expired. Max Size Pool connections.
  14. 如何将英文的PDF文档翻译成中文简体?
  15. [学习笔记]模拟退火
  16. 微型计算机ccc认证样品测试,CCC认证、检测中国赛西64102188
  17. 微型计算机原理与接口技术(周荷琴 冯焕清)第六版 课后习题答案 第一章(部分答案)
  18. 三、存储系统(三)主存储器
  19. 如何区分IO密集型、CPU密集型任务?
  20. 百度关键词排名查询工具

热门文章

  1. c语言实现简单通讯录(仅代码)
  2. 【padStart() 和padEnd()方法】
  3. maya中英文对照_Maya中英对照
  4. C# 解析迅雷链接成正常的Http链接
  5. rtorrent命令行使用
  6. uncooked 计算机术语,物流专业英语和计算机基础练习题[].doc
  7. vr全景拍摄需要的器材有哪些?都有什么作用呢?
  8. 小程序生命周期(onLaunch、onShow、onHide、onReady、onLoad、onUnloa)
  9. 哪个洗脱一体机好用?性能好洗地机排名
  10. 江西理工大学matlab考试,江西理工