2024.8.19记录
序 我是一个在技术方面特别是新技术上有点观念误区甚至“偏执”的人,今天跟老大聊了一下,感觉之前对于技术的看法跟社会现状有较大偏差,特此记录以警示未来的自己 文 我这个人从小对电子产品比较感兴趣,特别是电脑这一方面,但其实也就是玩嘛,到处鼓捣,没有真正深究一些计算机或者程序最本质的一些东西。 到了大学因为这个兴趣选择了计算机科学与技术专业,才算真正意义上接触到计算机。 那个时候因为CPU、GPU这种东西肯定是新一代的比旧一带的更加优秀,所以理所当然的认为,软件行业跟硬件行业也一样,新的也一定比旧的好,一定有完美的编程语言或者技术。 那个时候天天刷哔哩哔哩,刷帖子,看各种视频,最多的就是C、C++、C#那个语言最好,看各种解析和对比。 那种内行人一看就知道是营销号的视频,我却在大一的时候看的津津有味。 因为我总想选择一个最好的编程语言,在起步就超过他们,那个时候我断断续续学了C、C++、C#,那个时候我还看不起别的语言,感觉这御三家才是最好的。 什么Python、Java之流,在那时的我看来都是不入流的东西。 现在想起来那个时候真的愚蠢,浪费了太多时间,哪怕真正的去学习一下这三门语言也好,天天就在对比,想走捷径,三个语言都是浅尝辄止,哪怕真正搞懂一门语言也不会如此钻牛角尖。 到了大二,开始接触了框架。那个时候学校开了Java,虽然不喜欢,但是为了成绩(没错那个时候我很看重班级成绩),只好拿时间去学java。 但是后来慢慢的接触的多了,发现Java比C、C++这种编程语言好用太多了(其实就是菜,没学明白C和C++),但是Java几乎所有常用的操作都能通过标准库实现、通过第三方库实现,因此就毫不犹豫的选择了Java作为主要方向。 确定好编程语言后,毛病又犯了,又开始比较各种框架,各种技术,甚至一个Json解析库我都要比,总是想找最好的。 又是一整年,对比后端对比Springboot、Quarkus、Ktor,前端对比Vue、React,客户端对比Compose、Jfx、electron、RN等等来来回回折腾, 跑各种测试,各种对比,想找出一个最好的框架。 这种情况一直伴随了我大一大二整整两年,来来回回换了各种技术,各种框架,但也只不过是用不同的方式来实现一个简单的增删改查而已。 回头一看,自己好像啥都会,却也好像啥都不会,简单的业务都能做,复杂的业务只会CV。 开发该有的基础素质一点没有,用不到的却花费了很多时间。 到了大三,进入公司实习才发现,稳定可靠,生态完善才是公司的首选。 以前在我看来,Springboot漫长的启动时间、丑陋的Xml式Sql,甚至在我眼里“不入流”手动式项目部署,都是公司里的常态。 刚到公司的时候,我很想把我所用所学应用到项目中,跟老大提议更换docker部署,集成CICD,引入DevOps等现代化开发理念,想引入Java新版特性,都被婉拒了。 在公司和职场眼中,所谓的优雅、新技术,都不如稳定性和可维护性重要,在他们看来,不引入新的技术栈,将项目平稳地进行就好。 老大找我聊天的时候这样告诉我,公司注重的永远是业务,他们不注重你的技术,也不在乎你的代码是否优雅,只要项目能实现业务,性能凑合的过去,就够了。 出去找工作的时候也是,公司虽然会有技术要求,但是亮点永远是业务能力。技术大部分都可以学,但是业务能力是没法速成的,这才是核心竞争力。 直到现在的我才真正理解到,技术仅仅是个服务于业务的工具而已,软件要实现功能,这才是他的根本。 结 希望引以为戒吧。浪费了太多时间。