1. 克服惯性程序员
万事开头难,克服惯性是学习新技术的第一步。举个平常生活中惯性存在的简单栗子,当咱们看电视的时候会由于遥控器不在身边而懒得换台。幸运的是有不少的小技巧能够调动咱们的积极性,帮助咱们克服惯性。对于我来讲,微习惯是一个很好用的小技巧。与其被手头的任务吓到,不如将任务细分为一个个具体的微任务,而后挑选其中的一个开始作起。就“拿到遥控器”这个例子来讲,首先扭动你的脚趾,向前伸出,而后推进整我的离开沙发。下一步,身体滑到地上,用脚拿到遥控器,而后起身。经过完成一个个的微任务,你会发现本身克服了惯性,而且这项任务再也不显得难以完成。这个方法能够被应用到学习新技能的过程当中。关键就是将大块任务细分为微任务。web
2. 关注大牛面试
学习新技能的第一步是明确要学什么。它能够是任何你有激情去学,而且想深刻学习的一些东西。这种原始的学习欲望很是重要,这种欲望能够在你的学习低潮期给你提供动力。你想学的或许是一门新的编程语言、应用框架或者是新的工具,一旦你肯定了想要的是什么,就马上去收集相应的优秀群体所作的一些优质的工做成果。这些能够从YouTube、Vimeo、HackerNews、各类博客,甚至是你的微博好友那里获取。关注别人作了些什么能够给你强大的信心,让你以为 “You can do it, too!”数据库
3. 创建知识网编程
当你对本身要学习的东西创建了信心以后,接下来要作的就是作一块海绵,而后开始疯狂地吸取知识。从Google搜索关键词“beginner tutorials”开始吧,搜索一些跟你要学习的知识相关的入门教程。如你所知,Nettuts+上面有成千上百的各类教程供你选择,StackOverflow上面也有不少学习资源。此外,Quora也是一些不错的选择。经过浏览这些网上的资源以后,若是想要集中精力学习某一方面,这时就须要阅读一些相关的书籍了,我的推荐在Amazon上面寻找一些评分较高的专业书籍来提升本身.网络
4. 多听多看框架
随着你对技术的深刻挖掘,你可能会想利用更多其余形式的学习资料,好比podcasts,screencasts等等。个人建议是多用 iTunesU,这上面有不少很专业的知识可让你对于特定的领域进行深刻的探索。编程语言
目前,有不少的网站都有提供在线教育服务。王婆卖瓜,这里要首推咱们本身的Tuts+ Premium。想要学习PHP或者JavaScript?这里有你最须要的资料。另外,你也能够在下面几个网站上找到本身须要的教程:工具
Udemy学习
CodeCademy
CodeSchool
此外,你也能够看一些免费的会议视频材料,好比YouTube上面的Google IO,以及Confreaks!
5. 行动起来
如今你已经看了一波又一波的教程以及视频资料,而且对于想学的技术已经有了一个至关深刻的了解,接下来作些什么呢?没错,是时候理论联系实际了,实践是检验真理的惟一标准。
用你所掌握的技术作一个我的的小项目,设计一些简单的功能而且实现他们。毫无疑问,你会遇到不少的绊脚石,当遇到它们的时候,在StackOverflow或者Google上面搜索之,解决之。你已经踏上一条成为某一领域专家的旅程,遇到的困难挫折越多,你会变得越睿智。有句老话说得好,“专家是犯错最多的人”,这意味着他们尝试了不少疯狂的事情来探索这门技术的极限,最后,对于这门技术是如何运做的就能够知根知底。拥有这种洞察力以后,他们即可以为所欲为的运用这项技术去按照本身的意愿完成想作的事情(固然,是作好的事情)。
6. 写博客
在你进行你的探险之旅的时候,实时记录下你的成长以及犯下的错误大有裨益。在技术领域,博客是最简单易得而且受欢迎的表达载体。当你准备落笔的时候,你会强迫本身整理思路,而且对积累下来的零散的知识片断进行结构梳理。说不定,经过互联网的分享,你的经历和分享会给别人的成长带来帮助。
若是你想走的更远(好比想像Nettuts+上面的职业做者同样),你也能够制做属于本身的screencasts。总的来讲,写博客可以提高你的我的沟通能力,这与你学到的技术一样重要。
(伯乐在线注:关于写博客,咱们已在多篇文章中鼓励你们去博客。好比这一篇《即使没有读者,你也要写博客》
7. 感觉技术的脉搏
社交网络已经普遍应用于人们的平常交流以及发现新鲜事物。Twitter和Facebook是信息的主要来源,与此同时,有不少的网站提供更专一的资讯,如前面提到过的Quora网站,这上面有不少涉及面很广的一些话题供人们评论。在这上面能够找到不少知名大牛的建议以及观点。
浏览StackOverflow上面的众多话题是一个颇有意思的过程,你能够看到他人如何探索某种技术的极限。事实上,在人们利用技术作一些疯狂的甚至是荒诞的事情的时候,技术也随之不断的成熟起来。
所以,若是你想要感觉到技术的脉搏,而且想确认它是否值得学下去,在StackOverflow上面试着搜索一些话题,看看这个讨论社区的广度与深度。最值得看的是投票最多以及热门话题。你也能够尝试在GitHub上面进行搜索。
8. 参加聚会以及会议
尽管社交网络很棒,可是没有任何事物能够取代面对面的交流。在你住的附近参加一些小组聚会,在这里你能够找到志同道合的伙伴。你能够知道他人在作的一些有趣的项目,同时也能够在他人的帮助下解决一些本身遇到的难题!一样的,技术会议对于分享经验以及增加技术大有帮助!
9. 拥抱GitHub
GitHub是全世界开源项目的标志性建筑物。它是知识以及优质代码的宝库。当你对某项技术自我感受良好的时候,下一步即是在GitHub中浏览寻找有趣的项目。阅读开源代码,尽量多的阅读。这样作的话,你可以学到不少东西,好比说:
如何管理规模较大的项目
项目中应用的有趣的库
代码规范以及代码全局设计
文档风格
测试规范
解决诡异问题的方法,以及发现项目中有问题的地方
全部的这些知识都在等待着你去挖掘。有趣的是,这些知识的经过一个简单的标签就能够获得,那就是“好奇心”。
10. 专一学习
若是你担忧上述的学习过程太迟缓,那么你也能够尝试一下快速学习模式。你或许据说过“24小时学会某某某”,可是这种方式不是我所推荐的。我认为更合理的是用几周的时间去学习。你能够尝试一下相似“七周学会七种语言”或者是“七周学会七种数据库”等学习方法。尽管这些讲的是语言以及数据库方面的学习,可是你在学习其余技术的时候也能够运用这种思惟。
有一个不太相同的学习风格是“困难学习模式”,这种观点的前提是没有人能够真正掌握一门技术,除非天天都练习。因此,想要成为专家,你就须要不停地进行练习。殊途同归的是你能够查看Katas 和 Koans,他鼓励的使用你学的知识来解决问题。这些可让你更好地入门以及接受那些陌生的概念,勇敢走出本身的温馨区,开始学习新知识!
学习一门交叉的技能
编程是一项左脑的运动,它利用的是大脑的分析能力,一步一步地寻找解决问题的方法。为了发挥右脑的功能,你能够尝试从事一些创造性的活动,好比说画画、3D建模、折纸、乐器甚至是制做家庭相册等。事实上,编程一样须要大量的创造力。或许你曾经遇到过相似的事情,你在睡梦中找到了问题的解决方案。这是由于你的右脑处理问题的方式很不一样,它能够从各类地方得到信息。敏捷开发权威人士Andy Hunt就这个话题写了一本书《程序员的思惟修炼》。若是你想点燃你的每个神经元,建议你开始学习一门交叉的技能。
总结
掌握一门新技术振奋人心,这是一项影响你思惟的新的体验。可是首先,你必须克服你的惯性,一旦你作到了,你便开启了从web的每一个角落学习知识的旅程。我但愿上面讲的十点可以给你的旅程带来一些帮助或启发。
若是您有不一样的学习方法,我很但愿您也来分享,请尽管留言吧!