自从运营了公众号以来,应该说分享了不少的技术干货和人生感悟,也应该帮助了不少程序员和开发者。最近发现了一个问题,就是经常有开发者私聊我说:我遇到了一个什么什么问题,怎么解决。我一看问题,明明就分享过相关问题的解决办法,或许他没看。还有的开发者说:上次分享的那篇文章我找不到了,现在要用。我亲自给他找出来,发过去。有时候,我真的很忙,不能及时回答你们问题,也不可能所有的问题都帮你们解决,希望你们在提问题之前能够多想办法自己解决,走投无路时再来找我。我感觉「授人以鱼不如授人以渔」,所以分享一下我平时的学习方法和思路,你们也就少麻烦我一点。
如何学习呢?我平时是通过这样的方式来学习的,可以分为四点:充分利用碎片化时间,常常潜水在各大技术社区和开源网站 ,善于使用学习工具,顺手写成自己的博客。其实可能说起来简单,做起来是真难,我不否认人的惰性极具魔力,让人难以自控,但是有时候想想自己的技术瓶颈和腰包时,再牛逼的惰性也抵不过穷光蛋(开玩笑)吧,「 话糙理不糙」 。fighting,少年吧。
利用碎片化的时间,其实就是在延长自己有意义的生命。 在 这个高节奏的社会,工作越来越多,能自由支配的时间越来越少、越来越碎,想花个一大段时间做点自己的事情,却总是会被各种各样的琐事打断,想要专心敲会代码时,却总是莫名其妙地去刷微博,看朋友圈,聊微信。而且我相信大多数程序员都是在一线城市,上下班的路上也得一两个小时,地铁上的时间完全可以利用。如何充分利用这些时间呢? 如何让自己在时间不得不切碎的情况下仍然能够保持高度的专注力?如何拒绝被动碎片化?
我来说说我的做法,说到碎片化就必须说说「 番茄工作法」 , 番茄工作法是简单易行的时间管理方法 , 使用番茄工作法,选择一个待完成的任务,将番茄时间设为25分钟,专注工作,中途不允许做任何与该任务无关的事,直到番茄时钟响起,然后在纸上画一个X短暂休息一下(5分钟就行),每4个番茄时段多休息一会儿。所以我用了一个「 Todoist」的应用来管理自己的任务和时间,每天晚上睡前给自己制定第二天的任务,比如第二天哪个时间段必须做哪一件事,是否完成都会进行提示和标记,严格控制自己,如果自己规定的那个时间段没有完成任务或者被别的事情耽误了,那就当天找时间也得补救回来。而我在上下班的地铁上,我都是看一些公众号推送的技术文章或者技术类的电子书,还看人文科技类的书,看这些公众号和书真的非常有收获。要不你们想想我哪有那么多时间去写技术文章,分享公众号啊?俗话说得好:「 时间就像海绵里的水, 只要你愿意挤,总还是有的」 。一个人的成长,不对自己狠点,哪那么容易成功啊!知道我做公众号的不容易了吧。
如何搜索,怎么搜索,学过计算机的知道计算机里有个「 情报学」 吗?我记得大学的时候学情报学以为是跟电视剧里演的一样,带着耳麦,敲着密码打字机,滴答滴答的玩卧底呢,MD,原来学的就是信息检索和图书馆搜索内容。里面教你怎么搜索你想要的信息。不要遇到错误就直接把log日志的信息复制粘贴到浏览器里直接搜,应该把那一行信息提取出相应的几个「 关键字」 ,关键字之间打上「 空格」再搜索。
要善于潜水和浏览各大技术社区和论坛,开源网站什么的,搜索的时候用「 Google」 比较靠谱,遇到新的控件的使用,不要百度找使用方法,而是应该首先查「 API」 文档。遇到问题在 「 StackoverFlow 」 应该能找到解决方案。 没事的时候,多去开源社区比如「 GitHub」 上逛逛,遇到好的开源项目不要star了就没事了,看看人家的思路,是怎么写的,要喜欢「 刨根问底」。
总结成一句话:使用新东西的时候,应该先查Android官方API文档,再去Google,或者StackoverFlow,剩余时间多逛逛技术论坛和开源网站,github肯定会让你「 受益匪浅」 。
利用碎片化的时间学习看到了很多好的技术文章,在浏览技术社区的时候看到了更好的解决办法,浏览GitHub的时候,看见了比较牛逼的开源项目,还来不及学习怎么办?这时候好的学习工具就非常有用了。以前记得老师常说:「 好记性不如烂笔头」 。确实是啊,尤其是我们做技术的,每个控件的属性和方法我们不可能记住,也记不住,只能记住一些常用的。互联网时代,我们肯定不会用「 笔」 去记东西啊,那不就成了「 拿着大刀长矛参加现代化的战争」 吗?
给大家推荐几个比较好用的记笔记的工具,印象笔记也就是evernote和 有道云笔记。在浏览器上安装上相应的插件,可以把网站里的文章,论坛里的内容一键保存到自己的云端。举个例子,如下:
是不是非常方便?功能很强大,可以保存整个页面,也可以只保存网页正文内容,还可以隐藏网站里的广告,还能截图。手机安装了相应的app之后,点击分享按钮,可以一键分享到云端自动保存,随手很方便。随时随地的保存和收藏自己看到的好文章。等到自己有空的时候,再去看自己保存的东西学习,以后「 非著名程序员」 再也不担心我的学习了。我们以后再也不用麻烦「 非著名程序员」帮我找东西了。
我平时在地铁上浏览公众号文章或者其他技术社区时,看到好的文章就马上一键保存到云端笔记中,它们可以直接同步到手机端app和电脑端,等到我用到时或者有时间时就会进行学习,并整理。「 好记性不如烂笔头」还有另一层的意思,就是光看不写是不行的,所以你收藏了,得去学习和实践,把它们变成自己的东西。
举个例子:比如「 非著名程序员」推送了一篇好的文章,不要收藏到微信收藏里,直接用Evernote一键收藏到云端,到了公司或者有时间的时候,打开去学习,自己去写一个类似的东西,只有在自己亲手写代码的时候,才会知道遇到哪些坑,如果光看是不行的。再比如「 非著名程序员」在github上开源了一个项目,记得star一下,等自己有时间的时候去研究透,变成自己的东西。写这一段没别的意思,就是想给自己「 无耻」 的做一个广告。哈哈……
我以前说过很多遍写技术博客好处,可以归纳总结自己的知识点,方便自己学习等等,利用碎片化时间在技术社区看到好东西,利用工具保存到了云端,并学习了,那就把自己学习到的东西进行归纳总结,遇到的坑填一填,整理成技术文章,发布出去。如果你按照这个思路去学习,你的技术会在「 潜移默化中修炼成仙」 的。不信的话,赶紧去试一试。
嗯,就这样,不说了,又啰嗦了。最烦自己这么啰嗦了?你们烦吗?