这篇文章我很早就想写了,工作至今(10年)我对于技术这个东西的体会也越来越多。今天触发我动键盘敲字的是一个事情:我在准备做一个golang内存模型的ppt,准备节后给组内同学分享。但是过程中遇到问题,就谷歌了一下,搜出了我自己16年写的一篇文章。。。我才记起来,16年我看雨痕大神的书的时候,研究过一阵子的内存模型。我越阅读文章越尴尬,倒不是因为文章有错误,而是因为我对这段知识点没有任何印象。于是,我和小白读者一样,重新和16年当时的我进行了知识的沟通。

于是我发了这么一篇微博:

对于这个事情,我首先是很庆幸,庆幸自己当时还留下了自己阅读的心得和文字。但是转念一想,更多的是恐惧,恐惧的是,我不知道我现在头脑里面的技术知识,在几年之后,又会在哪里?唯一所幸我文笔还未辍,几年之后的文章估摸大都还在我的博客中。但是我头脑里面的东西呢?我还会记得多少呢?如果几年后这些知识注定忘记,我现在还有必要学习么?

技术焦虑

现在的技术圈子很火热,任何技术点,任何知识,只要你肯搜索,都能找到资料。但是现在技术圈确实有一个不好的地方,就是贩卖焦虑。这种贩卖焦虑的点并不在于形式,而是一种普遍的心态。特别是对于那种知识点比拼的心态:“xx知道的东西好多,好厉害!我要向xx学习”。我一直宣扬,这种心态千万不要有。xx比你知识点多很多,但是不代表他比你强,比你厉害。程序员如何比拼强弱?要比拼的绝不是知识点的多寡,而是使用知识点的能力强弱。即如何使用你掌握的知识改变行业。

关于晨读,各种账号确实现在很经常发晨读,晨读这件事情,我自己也坚持了三年,现在开的群也在和几个人坚持发。其实我自己也知道,晨读这些内容恐怕没有几个人会看,大多数人恐怕就是浏览了下标题。晨读这个事情,本质是好的,它对收集和发送的人来说是最有利的,基本上收集和发布的人至少需要大致看过这些文章,这对发布的人是一种坚持学习的东西。而但是对于看的人,我自己也知道见仁见智。如果这些晨读标题引起了自身的恐慌和焦虑,我觉得绝对是得不偿失的。

前沿技术

聊聊前沿技术。不管你现在是学习什么前沿的技术,大致一句话应该是没有错的,你所掌握的技术,在你有生之年,是会过时的。这种过时的生命周期是从后端向前端逐渐缩短的。我这里的后端和前端的方向是以靠近真实用户的距离计算的。比如数据库,操作系统这种技术,距离用户最远,用户基本不会感知,他们可能几十年都不会过时,从mysql,linux大致就能看出来。再往前,中间件技术,缓存等技术,大致十几年吧。再往前,后端服务技术,我认为生命周期应该是10年之内。再往前,前端技术,我觉得迭代周期应该是5年之内了。如果有工作超过10年的朋友,应该对我这个时间估计也会有所赞同的。迭代更新是伴随着技术红利的,这里的技术红利指的是新技术的培训,人员更新,市场需求等。越是更新换代快的,越容易抢占这个技术红利。在这个技术红利中,会有一波人才缺口流出,会有一波技术很强的人出现。但是,残酷的是,这波人才缺口,很多情况下是通过淘汰只掌握过时的技术的人员空出来的。所以越靠近用户侧的技术人员越需要跟紧技术迭代的脚步,否则一不小心就会被淘汰。当然也不是说越往后端越舒服,技术迭代慢同时也代表坑位固定,因为在同技术领域沉淀很久的老人会把及格线带的很高,所以基本需要沉淀比较久才能成为比较合格的人才。而且靠近后端的人才一旦遇到技术迭代,那么可能是毁灭性的,究其原因,恐怕一个是深入后端技术比较慢,一个是新的后端技术坑更少。

是不是所有的技术迭代都是好的呢?我的观点是肯定的。新技术的出现一定是为了解决某种痛点,或者填补某种空缺才会出现的。但是,大家往往忘记了,技术是为了解决问题的,有很多公司由于体量,技术人员储备等条件,根本不存在所谓的痛点,但是也莫名其妙引入了各种时髦新技术。技术都不是银弹,使用新技术,一定要承担新技术带来的成本和新痛点。衡量一个新技术引入公司的决策是否正确的标准,恐怕应该是业务是否得到提升。这里说的业务提升,两个方面,一个成本侧减少,一个收益侧增加。在我看来的很多公司,对于新的技术往往是为了革新而革新,所带来对公司业务上的伤害,恐怕更多于旧的技术。所以架构师的价值,特别是业务架构师的价值我认为体现在这里,对整个公司或者部门的业务,人员水平有一定判断,选择合适的技术,有时候,甚至于拒绝新技术的引入也是一个成功的决定。

技术人员的发展路线

可以再聊聊技术人员的发展路线。我认为技术人员的发展路线有两条,一条是改变技术行业,一条是改变业务行业。

改变技术行业的人,这类人我认为现在在中国应该是比较少数的。改变技术行业的人恐怕究其一生,最多只能改变一个、至多两个技术行业。这种人,我认为必须有热衷于某个技术行业的觉悟。基本上我觉得各个语言的创造者、追随者算是这类人,各种数据库,大型开源项目的创造者、追随者算是这类人。这类人比如mysql的精深专家,基本需要在mysql这个领域没有什么解决不了的问题,而且对这个领域有持续的贡献能力。但是我这十年所见,确实遇到的非常少(可能是我的有限的个人经历所致)。

成为改变业务行业的人,我觉得应该是现在大多数的接触程序员所应该追求的。我们之所以有工作,是公司在某个行业希望有所建树,有所作为,所以雇佣你来做这份工作。如果你不能让公司在这个行业有所发展,那么恐怕,你很快会被公司淘汰。所以,这点是我对所遇到的工作几年之后有职业迷茫的年轻人说的,千万不要为了追求新技术而轻易换行业。任何业务,都有技术可以改变的地方,只是你没找到而已,没找到的原因,恐怕就在于你的浮躁。并不是人人都有机会追求各种高并发的CURD,但是人人都有机会踏踏实实写一些CURD,只要这些CURD在某个行业,某个领域确实是起到了作用,对公司起到了正面收益,那么你的工作就是值得的。代码无分贵贱,能让代码起价值的,就是你怎么使用这个代码改变你所在的业务行业。

所以,对于大多数业务行业的程序员来说,在几年期间,选择一个你喜欢的(或者你很看好的)行业,用各种技术来尝试,改变它,对自己也并不需要设限。就和实验室里面做实验的科学家一样。或许最后可能失败,但是所积累下来失败的经验,才是你真正的财富。而且据我观察,如果在某个行业真的长期沉浸思考的人,最后它自己就会变成这个行业的稀缺资源。各个公司所谓的技术总监,大都有这种特质。技术总监做的管理工作,在这个视角看来,是组织一批技术人员用技术改变行业。

总结

希望这篇文章能对刚工作几年,觉得工作无聊的,稍有焦虑的朋友们有点作用。总之,我的出发点是对于年轻的程序员来说,年轻就是资本。但是把年轻放在追逐各种新技术上而乐此不彼,真是很大的浪费。况且很多都是几年后就注定会淘汰的技术,先明确自己的发展方向,如果是业务型技术人员,你的主线,应该是多思考分析自己的业务,自己的知识结构,甚至于团队,再决定自己的时间投入。

所以,不要羡慕知道很多知识点的人,而是要羡慕用这些知识点改变了世界的人。

Hi,我是轩脉刃,一个名不见经传码农,体制内的小愤青,躁动的骚年,2019年想坚持写一些学习/工作/思考笔记,谓之倒逼学习。欢迎关注个人公众号:轩脉刃的刀光剑影。

MORE | 更多原创文章

⑥ 

你技术这么好,总要改变点什么把!相关推荐

  1. 吉林大学计算机科学杨凤杰,吉林大学计算机科学与技术学院 [2005-04] 总第36期...

    吉林大学计算机科学与技术学院 [2005-04] 总第36期 简 报 吉林大学计算机科学与技术学院 [2005-04] 总第36期 2005.9.26 (一) 计算机科学与技术学院党委召开新一届党委全 ...

  2. 技术电子书籍总目录,后面持续更新

    技术电子书籍总目录 SpringBoot实战(第4版)清晰版.pdf Java编程思想第四版完整中文高清版.pdf 图解http下载彩色版 UNIX网络编程卷1:套接字联网API(第3版).pdf J ...

  3. Unity技术之NUnit 总章

    Unity技术之NUnit 总章 简介 在传统软件开发过程中,能够编写单元测试用例是一个需要必备的技能.但是到游戏开发后,进行单元测试往往被忽略掉了,很多技术开发基本上都无法编写测试用例.造成这一问题 ...

  4. 全息技术“量子飞跃”或彻底改变成像技术

    作者:冯卫东  来源:科技日报 科技日报北京2月9日电 (记者冯卫东)据最新一期<自然·物理学>报道,英国格拉斯哥大学的物理学家首次找到使用量子纠缠光子来将信息编码为全息图的方法.这一突破 ...

  5. 重大要素改变中的机会选择包括_种草莓通过IT技术实现,代码“魔法”改变了什么?...

    撰文/蓝科技 你想象过通过代码控制.让草莓口感更佳.味道更好吗? 在绝大多数人的印象中,代码都是高大上的,人工智能.物联网.大数据等背后皆是代码支撑.似乎很少有人想到,代码对农业的影响,是一场中国农业 ...

  6. 《微型计算机原理与接口技术》期末总复习 —— 一篇匆匆忙忙的复习笔记

    这篇复习笔记是针对<微型计算机原理与接口技术>后面几章的 前面的汇编复习内容在 "零.学习笔记总目录" 的 "汇编考前复习" 中 ✅ 这篇笔记中可能 ...

  7. web开发技术和技术分享_2020年将改变Web开发的顶级技术

    web开发技术和技术分享 Web improvement encompasses a gigantic arrangement of rules and procedures each site en ...

  8. 通用技术和信息技术合格考知识点_【精品课】高中信息技术学考+高中通用技术学考-总复习(2019-2020-全考点60小时精讲)...

    [精品课]高中信息技术学考+高中通用技术学考-冲A总复习(2019-2020-全考点60小时精讲) 1. 课程内容介绍: 1)高中通用技术学考: 技术与设计1.技术与设计2(苏教版)(必修) 授课老师 ...

  9. 区块链技术介绍----分布式总帐

    区块链(Blockchain)是比特币的底层技术,像一个数据库账本,记载所有的交易记录.这项技术也因其安全.便捷的特性逐渐得到了银行与金融业的关注.         ​区块链(Blockchain)是 ...

  10. 2020、2021年江西信息技术/通用技术高考知识点总复习资料汇总(含高考视频教学及考纲知识点分布)

    2020年江西信息技术高考考点知识点.历年真题解析 复习资料 /// 所有的文章与视频都是本人精心录制整理,谢谢大家观看,小伙伴们要加油哟! 信息技术基础(必修) 2013到2019江西信息技术高考真 ...

最新文章

  1. java基础之堆、栈、方法区 继承 多态
  2. AtCoder ARC 090 E / AtCoder 3883: Avoiding Collision
  3. pytorch torch.detach函数(返回一个新的`Variable`,从当前图中分离下来的)
  4. 表头大小设置_Excel技巧:单线表头及多线表头的制作方法
  5. java学习(175):method类反射机制
  6. 史上最详细的Linux网卡ifcfg,史上最详细的Linux网卡ifcfg-eth0配置详解
  7. 若依集成knife4j实现swagger文档增强
  8. Mysql like ' ' 会不会用到索引
  9. 【UE4游戏开发】安装UE4时报SU-PQR1603错误的解决方法
  10. 1.2 不停机升级困难
  11. C4D如何将界面和参数设置快速恢复到默认值?
  12. 《明解C语言 入门篇》第4章 程序的循环控制 练习题解答
  13. STM32F072在8M下的软件延时
  14. php占市场份额,PHP 目前的市场占用率(Market Share)
  15. 了解过什么是 DDD吗?一文带你掌握!(至尊典藏版)
  16. 【编译原理】 NFA转变为DFA的子集构造法
  17. OpenCvSharp 棋盘格标定助手
  18. 华为服务器故障灯不开机_华为服务器
  19. 最短路径模板+解析——(FLoyd算法)
  20. JavaScript的字符串去空格

热门文章

  1. PCI Express 16X和PCIE 2.0有什么区别?哪个更好?
  2. RHEL7设置默认启动图形化界面
  3. Git创建SSH命令
  4. 【JavaWeb学习】14综合案例
  5. wifi信号衰减与距离关系_(1)WIFI信号确定距离
  6. php第三方支付sdk,第三方支付 SDK
  7. 常见的74系列集成电路
  8. 如何将苹果手机投屏到电脑上
  9. Node.js-威富通H5微信支付
  10. JVM垃圾回收机制 (垃圾判断,垃圾回收算法,垃圾回收器,五种引用)【jvm】