(前排提示:红字提取文章主要内容)
种一棵树最好的时间是十年前,其次是。。。对不起,没有其次!
一_前言
想先问你一个问题:你今年多大了?
如果你还不到22岁,那么先恭喜你,你可以慢慢种树。
如果你已经超过了22岁,那么请加油,你也可以种树,但是你得每天晚上得12点之后睡觉,早上7点起床才能种好一棵树。
我是Baldwin,一个25岁的程序员,今天看到一个视频,仿佛看到了几年前的我。视频的大致内容是一个人大声的说“我才20岁,我再玩一年又能怎么样?等我21一岁的时候,我一定给你活出个人样”,视频很快跳到了他28岁的时候,但是他还在说“我29岁的时候一定给你活出个人样”,我不知道你有什么感觉,我只是想起了我刚毕业那会儿,毕业晚会上我讲的那番话,我说,我这大学四年可以用八个字来概括“碌碌无为,一事无成”,但是我相信我以后一定能作出一番事业。一晃眼就要毕业一年了,回首这一年,似乎我还需要那八个字来总结这一年,好像做了很多事,但是让我去讲,好像优什么事情也没有做成。
你是跟我一样么?那你可真够惨的。
这一年我总是想做很多事,想学习很多新知识,但我又总能找到借口去放弃。定下的每周末学习的目标,总是抵挡不住小伙伴找我爬山的诱惑,一年也没有完整学习到一个新的知识点;定下的每天更新博客的计划,也因为跟小姐姐打游戏而放弃;今年最长的年假,本打算好好学习一些新知识,但实际上是每天跟基友打刺激战场;说好了每天晚上跟朋友一起跑步,但是因为有一天下雨而中断后就再也没去过......
你呢?也是跟我一样么?
二_对比
前阵子加了CSDN博主交流群,认识了很多大佬,有些比我大的,在公司里担任主程或者是创业公司老总,有些跟我是同龄人,但是任职于大厂,年薪几十万,或者是深入某领域的硕/博士,有些还是在校大学生,但是精通算法,博客排名前100,985/211优秀学子。
再看一下我,25岁,某小公司程序员,双非本科,不会算法,技能单一,博客排名落后。似乎我没有一件事能做好,但这又能怪谁呢?这一切不都是我自己的原因么?
我最不喜欢的就是贩卖焦虑的文章,但是此刻的我真的感受到了那么一丝丝绝望,我拿什么和这些优秀的人比?拿梦想还是拿白日梦?
郁闷之下我喝了半杯白酒,恍惚间想起了高中英语老师经常说的那句话“现在你不吃学习的苦,将来就要吃生活的苦”,更加的郁闷。
三_思考
酒醒之后,我想了很多,难道我的人生就这样了?我就这样一辈子?平庸到死亡的那一刻?难道我已经一辈子都追不上别人了么?
不行,我是一个爱吹牛的人,以前吹出来的牛,无论如何也要变成现实!
那我应该怎么办?
还有一件值得庆幸的事,十年前的那棵树苗,现在还在我手里,我现在还有精力种树。
我追不上别人么?
不见得,他们10点钟睡觉的话,那我12点钟再睡好了,他们8点钟起床的话,我就7点钟起床吧?
我没有别人有天赋怎么办?
我一直相信一个词“勤能补拙”,我不需要比他们更有天赋,我只需要每天比他们多进步一点点就好。程序设计中有一种思想叫做“空间换取时间”,那么我要做的就是“时间换取空间”。
四_行动
那么我们应该怎么做呢?
无论是现在处于哪一阶段,下面的内容可能都会对你有帮助。
1.计划学习
“学习”二字,不应当是一时兴起,也不应当是漫无目的。有计划的学习能够大大提高我们的学习效率,也能让我们能够看到自己慢慢的在进步,而不至于中途放弃。下面分享一下我的学习计划
工作日学习计划
时间点/段 | 内容 |
8:30-9:30 | 公家车上,学习大佬们总结的知识 |
9:40-10:00 | 打卡,工位上用二十分钟时间刷LeetCode |
13:00-14:00 | 阅读源码或总结源码编码技巧自己写一段代码 |
19:10-20:00 | 下班路上,构思夜里要写的博客内容 |
29:30-? | 写博客,博客写完之后就学习新语言知识 |
周末/节假日计划
每天更新最少一篇文章
2小时学习新语言,并结合学习内容写出一个Demo
总结这一周所学内容
完善自己的开源项目
LeetCode三等难度题各一道,并总结解题思路
学习一道新菜式
给父母打一通电话
2.学以致用
俗话说“光说不练假把式”,只学不练同样也是假把式。天天只顾着看书,看资料,等你到最后总结的时候你会发现,你就像那掰玉米的黑熊一样,最后只有最近摘的那个玉米。这里说一下我之前去参加XES面试的时候,面试官跟我说的话,他问我的问题我没有答上来,我信誓旦旦的跟他说“这个知识点我绝对看过,但是我真的记不起了”,他跟我说“你知道你为什么记不住这些么?因为这些知识根本不是用来记住的,他是你在实践中养成的习惯,编程不是背书,知识点多到你这辈子都背不完”。现在工作中我深深的体会到这句话的正确性,就像我之前一直在看Spring 框架的知识点,但总是前面记住了,改天又忘记了,直到我看完源码,然后手写了一个Spring框架之后,我是真的明白了这个框架的内容(查看阅读源码的正确方式请点击我)。
所以说,学习了知识之后,把学到的知识真正用在实践中才行,否则跟没学一样。
如果你是一个有工作的人,那么你可以在你得项目里加上自己所学习的技巧或者组件,如果实在没法在项目里用上,或者组里的大佬不愿意加这些组件,那就自己写一个练手项目,把自己学得内容加到这个项目里来。
我学习了SpringBoot,现在正计划把我们公司的回调模块改成SpringBoot框架,我学习了新的组件,我就把这些用的上的组件加在了项目里,目前来看,项目的运行状态都还不错,我进步的同时还能优化公司的程序,何乐而不为呢?
如果你现在还是一个学生,那你可能很难去接触到公司框架,那我非常建议你先从博客系统入手,设计一个完整的项目,在项目里加上自己所学,这样到最后,你即可以巩固学习到的新知识,还得到了一个属于自己的博客系统,拿出去在同学面前装B也是杠杠的。
3.博客记录
要记得将我们学到的内容通过博客的形式记录下来。
其实这不仅仅是记录,更是加深你对学习的知识的印象,同时还能找到你在学习中所遗漏的知识点,每次写博客的时候我都发现,学习一个知识点可能需要30分钟,但是通过博客把它写出来,并且要让别人也看的懂,往往需要3个小时以上,因为我在写的时候不断的去回忆这些知识点并且还要学习很多引申的内容,然后写完我不仅学会了这个知识点,还学会了很多其他的内容。
4.会找资源
最近经常优读者私信我,说找不到资源,其实我们现在得益于发达的自媒体,网上是有很多详细的学习资源的。
如果你是一个萌新,那我建议你直接去B站搜索你想学的内容,你会发现有很多大佬/高校/培训班发了很多的视频资源,跟着这些视频去学习,完完全全足够你入门,除了B站之外,还有很多慕课网站,上面也有很多高校资源,都讲得很详细,绝对足够你去学习。
如果你已经入门,或者是一位大佬想学习新的知识,那么实话说,看视频是我觉得学习效率最低的方式,现在我们可以选择一个进阶的学习方法——博客,博客精简的总结了相关的知识点,能够让你快速的了解这门技术,还有大佬们的心得,能让你优更深的理解。
如果你觉得博客还不够好,那我推荐你去看书,动物书(图灵)系列是我见过比较好的书籍,看完后你会发现,别人博客里面写的内容书上都有,甚至书上会更加的详细。
说一下我对于培训班的观点:是一种学习方式,但是如果你已经有一定的编程基础,还是自学比较好。
5.远离娱乐
就在我写博客的时候,我不自觉的刷了10分钟手机,本来只是想看一下信息,没想到就差点陷进去,幸好我及时脱身,否则今天这篇文章又写不完。
现在手机和电脑上可以用来娱乐的软件真的太多了,常常不在意就浪费了很多时间在这些没有营养的东西上面,在这里可以分享几个小技巧
-
在公司的时候手机不充电,回家的时候让手机处于一个没有电的状态,等到你要学习的时候,把手机关机放在远离你的地方去充电
-
卸载掉电脑和手机里的游戏(包括QQ和微信),当你实在忍不住玩游戏的时候,手机里又没有游戏,最起码在你安装游戏的这段时间你可以学习一段,尽量在游戏安装完成之前让自己进入贤者模式,然后重新卸载掉游戏
-
作者做得比较绝,前几天把电脑系统换成了优麒麟(Ubantu),都没有办法玩游戏,只好安心学习,而且优麒麟系统更适合编程
这里需要说明一下,远离娱乐值得不是不娱乐,可以按时让自己娱乐一段时间,毕竟劳逸结合才是最好的。
6.保持健康
身体是革命的本钱,有一个好身体才能更好的去学习进步,不要学一天,病三天,最后还没有成为大佬,人就已经先不行了。
如果你有闲钱办健身卡,一定要抽出时间去健身;如果你没有钱,但下班比较早,那也可以每天跑跑步;如果你没有钱,下班有晚,那就一定珍惜周末,抽出一天时间去爬一座山。
坚持锻炼不仅可以有一个强健的体魄,还可以让你变得更坚韧,不至于很快放弃学习。
五_总结
如果你还年轻,那就从现在开始珍惜时间,不要等到我这个年纪去后悔为什么十年之前没有种树。
如果你跟我一样,已经错过的最好的年纪,那不要怕,最起码明天还是由我们自己决定的,珍惜现在,未来的一段时间辛苦一些,但是不要再让下一个十年自己再碌碌无为。
如果你比我年纪还大,但是还没有成就,也不要担心,生命不息,战斗不止,现在开始还来得及,只是可能会辛苦一些。
最后,祝你们在你们人生中下一个十年不再迷茫,不再退缩,当你回首的时候。
改变自己,从现在开始!!!
Make the change,just do it!!!
一个人的生命是应该这样度过的:当他回首往事的时候,不因虚度年华而悔恨,也不因碌碌无为而羞耻。 ——尼古拉·奥斯特洛夫斯基《钢铁是怎样炼成的》