作为程序员,你的编程技术是从什么时候开始突飞猛进的

85 阅读4分钟

以下文章来源于古时的风筝 ,作者风筝

作为程序员,你的编程技术是从什么时候开始突飞猛进的呢?

遥想我的编程之路,我想可能是在这三个节点。

第一次是在我能访问百度的时候。 

第二次是在我能访问 Google 的时候。 

第三次是在我能用 ChatGPT 的时候。

开个玩笑啊,以上这三个确实对我有很大帮助,但更多的是提高解决问题的效率。假设你在一个没有网络的环境中开发,遇到问题智能读官方文档或者调试源代码,而通过搜索引擎和 GPT 们则可以更快的定位和解决问题。

言归正传,编程技术的提高更多的是编程思想的提升,不是简单的掌握语法那么简单,而是能用更好、更优的思路解决实际的需求和过程中碰到的问题。

回想起我上学的时候,并没有真正的好好学那些计算机基础课程,比如《操作系统》《计算机组成与原理》,甚至连 C 语言也学的不咋滴。真正的学习这些还是在上班之后。主要是我觉得这些玩意儿太过理论化、过于枯燥。后来回想可能是因为智商平平,听说智商一般的人都不爱学这些。

那时学了 JavaScript、C#,做个网页,弄个客户端程序,觉得这才是编程,能真真切切的看到东西,很有成就感,觉得自己太厉害了。

第一次技术突飞猛进

刚毕业的那年在公司产品部做产品、改 bug,当然技术也是慢慢提升的。直到有一天做一个功能,在网页上展示一个多级树形结构的目录,也就是文件夹和文件的结构,然后用户可任意勾选某些文件夹和文件,之后将被勾选的目录和文件打包为一个压缩包下载,要保持原有的目录结构。

大家可能一眼就能看明白,递归读源目录展示成树状结构,然后再递归一级一级压缩,最后发送到浏览器。

但是当时写了一天,愣是没写出来一个完全正确的逻辑。没错,就是这么菜。

到晚上下班后,一个 10 几年经验的大牛同事过来问我在做啥,于是我把需求和问题给他说了。然后他嚼着槟郎,坐下来,一边给我讲递归的难点在哪儿,一边哒哒敲代码,5 分钟之后,启动程序,一点儿问题没有。

没文化的我只能在心里感叹:xx,怎么能这么厉害呢!

从那之后才发现,我离大牛还有着十万八千里呢。还专门写了好几天的各种递归,直到彻底将递归弄明白了。之后又在大牛同事的指点下,把大学没怎么好好学的基础都认认真真学了一遍。

后来,我们技术老大指定我为「项目部专职技术顾问」(公司分产品部和项目部),各个项目上遇到不能解决的问题都先来找我,我解决不了的再找我们老大,基本上 99% 的问题我都能解决。那时候我毕业两年,过来问问题的同事不少都比我大好几岁。骄傲又不能太骄傲。

那段时间内,能感觉到我的技术确实在快速增长。

第二次突飞猛进

第二次就是开始独立设计整个系统的时候。之前最多就是设计几个模块,项目架构都是大牛们搭好的,我们只要照猫画虎往里套就行了。

而轮到自己设计整个系统的时候,从技术选型到项目搭建、数据库设计,以及旁路配套组件等等,这时候才发现之前以为自己掌握的东西其实千疮百孔,很有多方面没有掌握或者只掌握了皮毛。

那时候我已经在创业公司了,没有可以倚靠的大牛了,只能一边摸索一边大量、快速的学习相关内容,然后在项目开发的过程中再一点点改进。

在那段时间,也可以感觉到技术在快速增长,更多的其实是架构思维方面的进步,从具体的代码编写上升了一个维度,关注架构的设计。

以上是感受不明显的两次进步,作为程序员来讲,每天都要学习,当然每天也都在进步,只不过随着经验的增长,进步的空间也没那么大了,感受也就不那么强烈了。

你有没有在某一段时间或者某一瞬间突然悟了的感受,有没有得到大牛的指点,让你受益匪浅的。