1.克服惯性
将大块任务细分为微任务。
2.关注大牛
你想学的或许是一门新的
编程语言、应用框架或者是新的工具,一旦你确定了想要的是什么,就立刻去收集相应的优秀群体所做的一些优质的
工作成果。这些可以从
YouTube、Vimeo、HackerNews、各种博客,甚至是你的微博好友那里获取。关注别人做了些什么可以给你强大的信心,让你觉得 “You
can do it, too!”
3.建立知识网
当你对自己要
学习的东西建立了信心之后,接下来要做的就是做一块海绵,然后开始疯狂地吸收知识。从
Google搜索关键词“beginner tutorials”开始吧,搜索一些跟你要学习的知识相关的入门教程。如你所知,Nettuts+上面有成千上百的各种教程供你选择,StackOverflow上面也有很多学习资源。此外,
Quora也是一些不错的选择。通过浏览这些网上的资源之后,如果想要集中精力学习某一方面,这时就需要阅读一些相关的书籍了,个人推荐在
Amazon上面寻找一些评分较高的专业书籍来
提高自己。
4. 多听多看
随着你对技术的深入挖掘,你可能会想利用更多其他形式的学习资料,比如podcasts,screencasts等等。我的建议是多用
iTunesU,这上面有很多很专业的知识可以让你对于特定的领域进行深入的探索。
目前,有很多的网站都有提供
在线教育服务,你可以在下面几个网站上找到自己需要的教程:
· Udemy
· CodeCademy
· CodeSchool
此外,你也可以看一些免费的会议视频材料,比如YouTube上面的Google IO,以及Confreaks!
5. 行动起来
用你所掌握的技术做一个个人的小项目,设计一些简单的功能并且实现
他们。毫无疑问,你会遇到很多的
绊脚石,当遇到它们的时候,在StackOverflow或者Google上面搜索之,解决之。你已经踏上一条成为某一领域专家的
旅程,遇到的困难挫折越多,你会变得越睿智。有句老话说得好,“专家是犯错
最多的人”,这意味着他们尝试了很多疯狂的事情来探索这门技术的极限,最后,对于这门技术是如何
运作的就可以知根知底。拥有这种洞察力之后,他们便可以
随心所欲的运用这项技术去按照自己的意愿完成想做的事情(当然,是做好的事情)。
6. 写博客
如果你想走的更远(比如想像Nettuts+上面的职业作者一样),你也可以制作属于自己的screencasts。总的来说,写博客能够
提升你的个人沟通能力,这与你学到的技术同样重要。
7. 感受技术的脉搏
社交网络已经广泛应用于人们的日常交流以及
发现新鲜事物。Twitter和Facebook是信息的主要来源,与此同时,有很多的网站提供更专注的资讯,如前面提到过的Quora网站,这上面有很多涉及面很广的一些话题供人们评论。在这上面可以找到很多知名大牛的建议以及观点。
8. 参加聚会以及会议
尽管社交网络很棒,但是没有任何事物可以取代面对面的交流。在你住的附近参加一些小组聚会,在这里你可以找到志同道合的伙伴。你可以知道他人在做的一些有趣的项目,同时也可以在他人的帮助下解决一些自己遇到的难题!同样的,技术会议对于分享经验以及增长技术大有帮助!
9. 拥抱GitHub
GitHub是全世界
开源项目的标志性“建筑物”。它是知识以及优质代码的宝库。当你对某项技术自我感觉良好的时候,下一步便是在GitHub中浏览寻找有趣的项目。阅读开源代码,尽可能多的阅读。这样做的话,你能够学到很多东西,比如说:
·
如何管理规模较大的项目
· 项目中应用的有趣的库
·
代码规范以及代码
全局设计
· 文档风格
· 测试规范
· 解决诡异问题的方法,以及发现项目中有问题的地方
所有的这些知识都在等待着你去挖掘。有趣的是,这些知识的通过一个简单的标签就可以得到,那就是“
好奇心”。
10. 专注学习
如果你担心上述的学习过程太迟缓,那么你也可以尝试一下快速学习模式。你或许听说过“24小时学会某某某”,但是这种方式不是我所推荐的。我认为更
合理的是用几周的时间去学习。你可以尝试一下类似“七周学会七种语言”或者是“七周学会七种数据库”等
学习方法。尽管这些讲的是语言以及数据库方面的学习,但是你在学习其他技术的时候也可以运用这种思维。
有一个不太相同的学习风格是“困难学习模式”,这种观点的前提是没有人可以真正掌握一门技术,除非每天都练习。所以,想要成为专家,你就需要不停地进行练习。异曲同工的是你可以查看Katas 和 Koans,他鼓励的使用你学的知识来解决问题。这些可以让你更好地入门以及接受那些陌生的概念,勇敢走出自己的舒适区,开始学习新知识!
学习一门交叉的技能
编程是一项左脑的运动,它利用的是大脑的分析能力,一步一步地寻找解决问题的方法。为了发挥右脑的功能,你可以尝试从事一些创造性的活动,比如说画画、3D建模、折纸、乐器甚至是制作家庭相册等。事实上,编程同样需要大量的创造力。或许你曾经遇到过类似的事情,你在睡梦中找到了问题的解决方案。这是因为你的右脑处理问题的方式很不同,它可以从各种地方获得信息。
敏捷开发权威人士Andy Hunt就这个话题写了一本书《
程序员的思维修炼》。如果你想点燃你的每一个神经元,建议你开始学习一门交叉的
技能。
总结
掌握一门
新技术振奋人心,这是一项影响你思维的新的体验。但是首先,你必须克服你的惯性,一旦你做到了,你便
开启了从web的每个角落学习知识的旅程。我希望上面讲的十点能够给你的学习旅程带来一些帮助或启发。