究竟什么是技术——非科班程序员两年的内心挣扎
我是一名非科班出身的程序员,做Java开发。这几天胡思乱想了很多,也想写篇胡思乱想想到哪写哪的文章和大家分享一下,就当是闲聊吧。
高考报考的时候,由于意外踏入了某著名高校的校长直通车计划,我顺利地进入了这所高校,读上了我曾最为讨厌的经济学专业。这所高校的巨大光环和号称全国第一的专业名气,让我带着满满的骄傲学起了我最不喜欢的专业,过上了不羞不臊的颓废的大学生活。
但不喜欢终究还是不喜欢,从小对计算机的兴趣,以及今后想做技术大牛的梦想,让我选择了转行。过程也很是曲折,在这里就不在赘述了。现如今,经过了两年培训和小公司的历练,我成功进入了某知名互联网公司,回想起转行最艰难的两年,我还是很欣慰的。
但这两年的学习,以及现如今在这家公司看周围同事的状态,让我开始了一些思考。我很痛苦,真的希望有高人能来为我指点。
我开始思考,究竟什么是技术。在前一家小公司,我的目标就是通过学习和积攒项目经验,跳到一家知名的互联网公司。现在回想起来,我所学习的知识,到底是不是技术?也许我的疑问很奇怪,但我就是怀疑我自己。我看了Java基础,看了Spring,看了JVM,还自己按照书本写了一个JVM。当然,我还要继续看多线程,IO等相关的知识。这些算是技术么?当然这在我学习这些知识的时候就产生了这样的疑问,总体给我的感觉就是,太不底层了。于是我开始补计算机基础,看数据结构与算法,看计算机组成原理,还画出了CPU。当时我找各种计算机底层原理的书去看,通俗的有《编码》,专业的有《深入理解计算机系统》,不过只看了个大概。当时好几次都会有豁然开朗的感觉,但我现在回想看,那些又算是技术么?
也许我现在的确走到了一个瓶颈,我就觉得,学什么都不算技术。计算机原理就是0101010。我去看计算机组成原理,也无非是在这个思想下和一些物理知识下的应用罢了,再往上说我看的Java,Spring,JVM,也更是在这种思想下的应用,甚至它们只是在操作系统之上的应用罢了。我就觉得,只有把世间万物的信号转变为010101区描述这种思想,还有物理元器件的发明,才是真正的技术。而我想成为技术大牛的梦想,最终仍然逃脱不出这些最基本的设计。用《三体》的话说,我们都是一群搞应用的俗人罢了。不论是开发工程师,算法工程师,架构师还是什么,这些原本在我看来有很深的技术魅力的职位,变得开始让我怀疑了。
你说,做技术的人大体有个感觉,为什么做技术,就是因为有成就感嘛。所以我抱着这样的想法,在大方向上就没了成就感,这还是一件挺恐怖的事。我不知道我这乱七八糟的想法是不是你们也同样有。你就说其他学科吧,比如物理,就觉得是在不断研究和发现这个世界的自然本质和规律,我就觉得这才是技术。学计算机的搞了个什么呢?不断拼凑0101010输入到电脑里,再不断输出0101010到各种设备里去解读,就总感觉我们是在一个保护层上在探索一样。我不否认我喜欢计算机,但不知道为什么我偏偏在这个时间点有这种莫名其妙的想法,是不是我不该这样想,是不是我沦为了意义党。再用《三体》里那些物理学家突然发现他们的研究只是一个更大的系统的偶然,受不了一个个去死来说。如果有天发现计算机原理不再是010101了,所有的所谓技术统统不就没意义了么。换句话说,我有点觉得,只有凌驾于万物之上的,处于万物底层的东西,才叫技术,才叫本质。
所以,我也特别讨厌那些把简单问题说的特别复杂特别高端的人。你看我写出的文章就比较通俗易懂,而且我觉得技术的本质就是容易理解的。我不知道是不是因为我太low逼了才会这么想,因为说实在的我也的确还没写什么特别高端的文章呢,但我觉得我目前理解的技术,没有理解的时候觉得特别高端特别复杂,一旦理解了我就觉得一两句话的事情。我就觉得既然所有计算机技术最终都能落到010101,干嘛搞各种有的没的。有一种人是不懂装懂,或者以为自己懂了,把一些问题说的郑重其事。我不觉得分布式问题比排序问题高端到哪里去,但我不是指问题的研究不要深入,所谓深入就是细节更多而已。复杂的技术经过更多细节的拆分,每一个细节都能很好的理解,整体也就能通俗易懂,至少我是希望把所有技术都在不是深度的情况下用通俗的语言去描述,我讨厌对某些技术进行高端化的包装,正如现在,我甚至认为技术也不配叫做技术了,哎真是作死啊。
我也曾想过,或许是我现在稍稍懂得了一些所谓的“技术”,但深度和广度上远远不够,等10年之后我彻底明白这些也许有不一样的答案。我还曾想过,或许这些我觉得不是技术的东西,它本身就是技术。当技术拆解得足够小时,就看起来不是技术了,就像计算机所有技术最终都可以用010101来解释一样。我不知道答案是什么,但我知道我现在无法解释我的疑问,我还在探索,并且处于一个极度怀疑自己,怀疑自己所追求的技术的一个阶段。
再来说说这家知名互联网公司吧,或许是因为我才来了两周还不够充分了解,但这两周给我的感觉就是周围人的对于技术的热情以及极客的精神面貌,并不如我所期待的那样,虽然比之前的公司要好一些,但大差不差的。我以为能有一个飞跃,但其实知识换汤不换药,没什么太大区别,这也让我很是失望,也催生了这些天有的这样的疑问。我就在想,过几年之后我也还是他们的样子么?如果他们也是在追求技术的道路上走了这么久最终却还是这个样子,那真的是很恐怖的事情。起码在他们的身上,刚刚接触的这两周,我并没有感觉到技术的魅力。
哈哈莫名其妙说了这么多,可能有些悲观了。我现在的处境,也起码比两年前要好。最起码,我在从事我自己喜欢的工作,苦恼着我喜欢的技术,思考着我自己选择的路。我觉得这种思考不论多痛苦,终究还是幸福的。但我真心希望能有人帮我解答我的疑问,我相信也有很多从事开发工作的人和我有着同样的疑问吧。也许不去想这些,继续在技术的道路上走下去,我会有所收获,也会很快乐。但我不想放过这个问题,如果能带着这个问题的答案,再往下走,我觉得才是真爱。
公众号 - 低并发编程