每日壁纸

程序员如何在业余时间提升自己?

Published on
/17 mins read/---

在自省过程中,我们经常会问自己这么几个问题:这段时间我尝试了什么新事物、有了什么变化、得到什么成果。

近年来,“自主学习”“业余提升” 相关话题备受关注。

程序员工作繁忙,如何在忙碌中利用碎片化时间学习或做感兴趣的事?无论是应届生、两三年经验的职场人,还是资深从业者,都在关心这一问题。

下面是4 名淘系技术的工程师,分享他们的业余提升技巧与时间安排,希望能为你提供参考。

01 淘系技术部 去来

这个话题非常现实,我的方法就是发现工作以外的时间在哪。程序员的一天其实挺忙的,每天能留出的时间可以分几块:

通勤时间

我的通勤方式是地铁,每天大概需要花 40 分钟在地铁上,这段时间一般用来读书,一年累计下来能读完 2-3 本。

阅读习惯培养

有些人可能不太爱看书,其实不同类型的书吸引力确实差很多,找到自己感兴趣的书才能培养阅读的习惯。

本科的时候我自己也是更爱打游戏不爱看书,在研究生阶段偶然看了一本《基督山伯爵》,才开始喜欢上阅读的。书里的很多故事不好拍成电视剧或电影,这些有趣的故事能让我在代码之外找到更多乐趣。

那之后慢慢开始找书看,在朋友圈看看好友分享的,和同事们也有交流看到的好书。前段时间恰逢建党 100 周年,组里的几个小伙伴毅安、增群对《毛泽东选集》产生很大兴趣,我也在读中共中央文献研究室出的《毛泽东传》,有很大收获。

午休时间

这段时间不是很长,吃完饭大概还有半个小时,习惯午睡的同学可以趁机休息会,为下午的工作养足精神。我个人更习惯和同事遛弯,交流最近生活上的新闻。

晚上下班后

一周锻炼 2-3 天,在外跑步、跳绳,或在家跟着 keep 练。没有好身体,心情也不好,其他都干不好,所以对自己的健康还是要多关注一些。

IT 从业者白天坐的时间太久,用眼时间很长,晚上尽量别玩太久手机。健身是给身体充电,读书是给头脑充电,利用一些更加碎片化的时间,我会翻一翻知乎和微信公众号上和人工智能相关的技术专栏,看下行业动态。

周末

除了吃喝玩乐,继续阅读、健身还有写作。阅读是被动接收信息,我还有一个小目标就是自己写文章,尝试打造个人技术影响力。

去年定了一个小目标,微信公众号的关注超 500(超过 500 就可以加广告,赚流量分成,哈哈)。写了几篇,只吸引了自己朋友圈里的人关注,分析原因:一是内容还不够精彩,二是微信公众号没有公域推荐机制。

于是又转到知乎上,通过写文章与答题,目前已经收到 1k 多粉丝。分析了粉丝来源之后,发现大部分都是来自一两个优质的回答,头部效应很严重,所以再写文章还是要出精品,争取早日有一篇自己的 10w+。

02 淘系技术部 玖伍

其实提升自己没有秘籍和诀窍,只要愿意花业余时间去学习,再加上长时间的坚持,就可以成为大神。

阅读

我个人比较喜欢读书,喜欢读纸质的书。记得刚开始工作的时候,很多东西都不会,只会写 CSS 切页面,是一名真切图仔,同时自己又特别想成为大神。

然后就每天中午吃完饭在工位上看一个小时的书,下班后也会留在公司看两个小时的书再回家。就这样每天中午和晚上一边看书一边写 Demo,前期的提升速度还是非常明显的,基本上每天都能感觉到自己学会了新知识。

我比较推荐多读一些技术书,特别是纸质书,熟悉我的同学都知道我有非常多的书。一本书从填选题表到最终出版,中间会经历很多步骤,出版社专业的编辑也会和作者一起反复的校验和修改好多遍,上市之后再经过读者的认可,这样一本书的内容质量是非常有保障的。根据经验,图灵出版的书质量都非常高。

学习资料

学习资料非常重要,要阅读高质量的第一手资料。很多时候我们学习某个技术,发现怎么都学不会、搞不懂时,可能不一定是我们笨,也有可能是学习资料有问题。

我见过很多文章讲某个技术,即使那个技术我事先已经会了,也确实看不懂文章里在说些什么。我也见过很多文章,可能作者自己也不是很懂某个技术,他只是把一些其他文章拼凑起来。

不好的学习资料通常内容晦涩难懂且没有把技术讲清楚,而高质量的学习资料通常会很清晰且精准地把一个技术讲透。因为讲解清晰明确,所以学习起来也不会太复杂枯燥。

JS 框架、库、工具等,我一般会从官网和口碑较好的纸质书籍中学习。基础知识我一般通过阅读高质量的纸质书籍 + 阅读 W3C 的规范来学习。Web 性能领域我通常在 Chrome 开发者官网和 web.dev 里的文章来学习。

具备一定的基础知识后就可以判断出学习资料的质量,这时候就可以关注一些公众号或者明星程序员来获取一些知识。

写作分享

除了学习,我还会利用业余时间写文章、做技术分享等,将自己学到的知识分享出去。切身体会,将自己学到的知识分享出去对自己的成长有很大帮助,有时候写文章的过程中会发现自己对某个知识也没有真的学透。

而且写作和分享可以让自己学会思考并锻炼思考能力,而思考能力其实很重要。

坚持

最后,坚持才是最重要的。我们的职业生涯,其实是一场没有终点的长跑比赛,很多人可能想问怎样才能跑得更快,把这场比赛赢。

其实在这条没有终点的赛道上,短期内快一些没有任何意义。大部分人跑到中途就主动放弃了,这就是为什么大牛那么少。唯一能决定这场比赛输赢的,只有两个字叫 “坚持”。

在这条赛道上跑赢的,不是那些跑得快的人,而是为数不多坚持跑的人。他们能跑赢,只是因为他们还在跑。

书单推荐

最后推荐一些书单,全都是我自己看过的觉得非常不错的书:

  • JavaScript 相关的书籍:《你不知道的 JavaScript》(上中下三本)、《深入理解 ES6》、《JavaScript 高级程序设计》
  • CSS 相关的书:《CSS 世界》(这类书我自己没有看,但我看张鑫旭博客学的 CSS,他出版的书我虽然没看,但凭着对作者的信任,而且作者还专门为这本书做了个官网,感觉还是蛮用心的,质量应该是可以保障的)
  • JS 框架相关的书籍:React 相关我没有看过不做推荐,Vue 相关的推荐一本:《深入浅出 Vue.js》
  • Node.js 相关的书籍:《深入浅出 Node.js》(只看过一本朴灵大大写的,质量还行,别的没看过,所以只推荐这本)
  • 其他优质书籍:《算法 4》、《Web 性能权威指南》(作者是前任 W3C 性能工作组主席,译者是李松峰老师,虽然这本书出版快 10 年了,但我感觉还是值得一看的)、《重构》、《码农翻身》、《代码整洁之道》、《软技能 - 代码之外的生存指南》、《金字塔原理》

03 淘系技术部 岳溪

这个话题非常现实,我的方法就是发现工作以外的时间在哪?程序员的一天其实挺忙的,每天能留出的时间可以分几块。

业余时间如何分配,如何保持高效的工作状态?

  1. 首先还是要规律生活,早睡早起,比如晚上尽量逼迫到点就睡,晚上的熬夜必定带来白天的萎靡。
  2. 保持锻炼,规律健身、跑步运动,缓解工作的疲劳,也给工作注入更多的体能资本,健身房的一声大喊,工作的疲劳一扫而空。
  3. 业余时间还是要慢下来,品味生活。比如对某一时期的历史感兴趣,不妨系统研究研究,然后结合了解的知识,再制订一个长期的业务学习计划。总之还是要做一些让能力能够专注的事情,给生活多一些愉悦,需要愉悦。

工作上多线程切换真的会带来效率提升吗?

有时会感觉事情很多,陷入忙碌后容易在多件事情上来回切换,最后的结果经常是一件事都没有做好。普通人真的是不适合多线程工作,有时不妨多想想,要思考,适当的慢下来,分清事情的主次,然后集中精力一件件完成,往往效果会更好。

面对新技术如何学习,快速入门?

还是要具体问题来分析,面对工作的难题,需要深入理解时,我通常会读读经验帖,找一本好书或资料,以解决问题为目标制订系统学习的分阶段目标,阶段目标可以防止总目标 lost。

最后来一个团队广告,欢迎加入智能设计应用部,团队每周有篮球活动,定期有足球休闲赛,欢乐多多。

04 淘系技术部 勇剑

“业余时间” 对自己提升相比 “工作中” 的提升,不同的地方是,我们可以有选择性的针对自己薄弱的点去提升。那么首先要了解自己有哪些需要提升的地方,才能有针对性的去提升。

个人理解,作为技术人员提升的主要方向不外乎技术基础、沟通技巧、推动能力等等。业余时间的话,主要可提升的还是技术基础,这个也比较好去有针对性的学习。

自我分析

首先需要有自己的一份技术栈大图,明确哪些已经掌握、哪些还不太熟悉、哪些完全不懂,然后就可以针对自己的薄弱项进行针对性的学习。

当然还有一些是我们还完全不知道的技术,这就需要我们经常去关注业界动态了。针对这些,可以视情况去参加一些线下的 meetup,跟大佬面对面的交流。献上我自己的一份个人技术大图:

透过现象看本质

在学习过程中,要注意透过现象去看本质,常说的 What、How、Why,在学习的过程中要常去思考。

不给自己设限

总结来说就是不设限,尝试去寻找自己的突破点,在自己的技术边界不断拓展,而不是不断的去做一些重复的事情。

至于提升的方式那就很多了:首先一手技术资料肯定是各种官方网站;对于各种中间件的学习,看源码是最好的方式(github);想更系统化的学习话,可以读一些书、专业 paper,都是比较不错的手段;还可以通过一些社区,跟其他人一起学习,交流心得,取长补短。

避免直接网上搜索的拿来主义式学习,另外看多少不代表你会多少,付诸实践、产出结果才是我们的最终目标。

Keep improving

NOTE

本文为转载,原文链接:程序员如何在业余时间提升技术能力?