文章来自:https://zhuanlan.zhihu.com/p/665413542
最大的感受:变成 28 岁了
好吧,开个玩笑,下面是正文。
一定要提一点,这篇文章中很多观点都是受到了这个视频的影响:经验分享:非计算机专业的人如何转行程序员(宿琛)(视频分享人是我的高中同学兼好友,我的 Gap 受到了他的很多影响)
我硕士毕业时是 26 岁,然后校招进入一家航天国企,负责 Web 后端开发,工作了一年之后发现个人成长和挑战的空间极其有限,同时发现自己很喜欢编程,但不是计算机专业,没有系统学过 操作系统、计算机网络、数据库、分布式、计算机组成原理 等课程,同时自己又对这些底层原理有着极强烈的好奇心,根据 learn from the best 原则,将目光投向了北美四大计算机名校,并从其中挑选出了 5 门课程,基本涵盖了计算机所有基础领域:
(这些课程在我决定 gap 时还不算特别“出圈”,但现在计算机学习者都应该听过了,我很开心这一点,我希望每个计算机学习者的简历上都可以出现这些课程)
但是随着真正开始学习,我发现这些课程都及其硬核,需要花费大量的时间思考和写代码(我曾经和 b 站一个粉丝破万的数据库开发老哥聊过,他说 CMU15-445 这门课需要写的代码量比他在公司一年写的都多)
问题一:为什么不能边上班边学习,要选择 Gap 脱产学习?
我当时的处境是,工作收益除了工资外,基本没有个人成长,而且我相信年轻人最宝贵的就是时间,如果利用下班时间,预计一门课需要半年,还得是风雨无阻天天坚持学习,预计这些课程全部学完需要 3 年左右的时间,即我 30 岁的时候,可以扎扎实实地学完这些课程(扎扎实实的定义是,独立思考并完成课程所有的 Lab 与作业),但这个时间对我来说太晚了,我希望用一年的时间,毕其功于一役。而且还有一点:一天学 1 小时,一次学 3 天,和一次性学 3 小时,效果是完全不一样的(参考《deep work》和《心流》)
另外就是,我相信那句话:种一棵树最好的时间是十年前,其次是现在。我只是勇敢地践行了这句话。
问题二:Gap 期间经济来源?
得益于我前单位(这个词果然一股浓浓的国企风)对应届生的慷慨,我在上班的一年时间攒了 10 个 W,用于支持我 Gap 期间的花销。
另外,父母身体健康,而且都有养老金,不需要我支持。也是我可以选择 Gap 的重要客观原因,我很感激这一点。
这些课程本就是开设给全世界最优秀的本科生以及研究生的,所以有难度很正常,尤其是 CMU15-445 和 MIT6.824 这些课程,所有的 Lab 都是一脉相承的,后面的 Lab 是建立在前面的 Lab 基础之上的,如果前面的 Lab 卡壳,后面的 Lab 就会做不下去。
面对这些问题的时候,不要慌张,认真看所有的视频、所有的教案、所有的资料以及所有的 guide,就是这么朴素,因为计算机是建立在布尔代数之上的科学,他里面没有黑魔法,沉下心去,所有的东西都是人想出来的,即使你认为发明那些概念的人是天才,但并不代表它们是不可理解的,就好比“补码”确实是天才的发明,但它依旧很好理解。
这里强推我经常看的一个鸡汤:翁恺:计算机世界没有黑魔法
而且经过我实际学习的经验,这些课程之所以称为“神课”,不光是因为其知识密度大,更主要是其难度设计合理,而且给学生提供一个很合适的动手环境,是一个你跳一跳,就能够到的高度,绝对不会出现下面的情况:
所以只需要沉下心来,就像"左耳朵耗子"说过的:“在这种环境下(短视频大量充斥我们的生活),你根本不需要努力的。你只需要踏实一点,像以前那样看书,看英文资料,你只需要正常学习,根本不用努力,就可以超过你身边的绝大多数人。”
我身边的同学朋友也问过我:你有没有后悔?从前单位辞职,只为了学习计算机底层原理?
我当然有,如果说没有一丝丝后悔,那是骗人,在 Gap 的一年中,我也经常在某个深夜想:我是不是当时太不懂得珍惜了。我也会焦虑,尤其是偶尔刷手机,看到一些文章的标题:
这种焦虑的心态在过年时期达到了顶峰(亲戚,你懂得)
但我很清楚,悲观和焦虑会迅速毁掉一个人,如果有习惯性的焦虑,那么这个人会在思想、行为、情绪、身体等方方面面遇到问题;比如生活中很小的问题都会看上去像不可逾越的高山、情绪会很差,行为上变得被动和犹豫不决、身体上则是没有胃口、失眠、容易疲倦等等;
所以我意识到,如果任由悲观和焦虑在我头脑中泛滥,我的 Gap 一定会拉胯的,最后的结果就是:想学的课程没学完,还找不到新工作。
意识到这一点后,我迅速制定了以下计划并执行:
得益于这三点,我最终度过了最焦虑的时期(大概是我 Gap 半年的时候),而且事实也证明了,正是因为我采用乐观的心态去应对 Gap 期间发生的各种问题,我才顺利学完了这些课程,并且最终拿到了满意的 offer。
我的 Gap 算是画下了一个句号,至于这个句号是否圆满,至少我自己是满意的,接下来我会去工作了,但我是带着更强大的头脑和更乐观的心态投入到工作中,我希望自己能创造一些有意义的东西,并能够为开源世界做出一点贡献,正如我的签名那样:make the world a litte better
最后,放上一些我最近一个月找工作时的暖心瞬间吧,让我明白,只要认真努力,这个世界总有人会欣赏你,学习计算机底层原理,就是做正确的事。
至于职场不接受 Gap Year?我觉得重点是解释清楚 Gap 做了什么
市场上太需要基础扎实的程序员了,以下是我投递简历的一些回复,
写在最后:如果你还是学生,并且比我还要年轻(毕竟我都 28 了),扎扎实实打基础,不必焦虑所谓的“计算机没了”,但行好事,莫问前程,更何况这个“前程”,我已经替你趟了一遍,我可以拍着胸脯说,只要扎扎实实学完这些课程,认真夯实自己的基础,不骄不躁,不去盲目追求最新的框架和技术,在计算机的世界里,一定有你的容身之地~加油!
小彩蛋:文章开头的 5 门课,其实漏了两个领域,分别是编译原理和计算机图形学~我也没学过,无法给出任何建议。但他们已经在我的todolist上了~
··········· END ··········
近期文章精选 :终于要做选择了...
翻车了,Lombok 这玩意儿有坑!!!
比 MyBatis 快了 100 倍
还在Docker中跑MySQL?恭喜你,可以下岗了!
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有