国外的技术佬们是怎么提升技能的?我翻了翻,发现跟国内的同学差不多。
本文是Denis Gobo做的一个调查表,调查程序员/开发者一般都是通过哪些途径来提升自己在技术领域的技能水平的《How Did You Improve Your Tech Skills》,文中给出了一些对程序员有用的方式方法,但是每个人的喜好不一样,所以各有偏重。不过,要是真的能按照所列出的这些方式方法去做,提升效果一定很大。
参加活动,沙龙,技术聚会:
参加一些高质量的沙龙,总是有一些专家出席做相关演讲,比如最近的Node.js线下沙龙。
参加培训:
公司总会为员工的科技技术做一些培训,有兴趣的可以参加提升自己的技能。培训就是一个最快的入门途径。
参加讨论会:
参加一些类似于Google IO、Build、JavaWorld、WWDC、SQLPass等等,去接触一下你所使用的产品的真正的创造者。
回答问题:
个人举得最有效的提升办法就是回答别人的问题,就像QA网站StackOverflow。
边吃边学:
如果你有吃饭的时间,那你就有学习的时间;如果你有和团队成员编写代码的时间,那你就有开发设计的时间。同理,蹲坑的时候也可以翻翻osc和eoe的客户端,想了解一些运营知识的,还可以关注知乎的运营问题。
加入一个开源项目:
开源项目是最能锻炼人的一个途径,在这个过程里,你可以思考很多东西,比如说这个代码为什么要这样写?为什么要用这样的方式?使用了多少个设计模板等等,github账号你得有一个。
读书,读代码,读博客:
可供程序员阅读的书可以说是汗牛充栋,这里就不列举了。阅读代码可以让你见识到更多的框架;可以让你发掘出更多的API。阅读你所关心的专家的博客,可以 帮助你学习到更多的代码组合和技巧,同时遇到不解的问题还可以留言提问,何乐而不为呢?。
发表博客:
编写博客也可以让人保持清醒、更有斗志。在发表博客之后,读者会就你的错误提出指正,为了避免这样的情况,在发表之前会通读好多遍,并做一些研究,以防出现问题,这也是技能的一种进步和拓展。
通过做Kata来实践:
Kata是空手道里的招式,也可以用在编程技术里。可以阅读这篇博文加以理解,Using Code Katas to Improve Programming Skills。这个事情,臣妾搞不懂啊。
写书:
在技术领域的大多数人都会写一本书,因为写一本书需要花很多时间去做调查和研究,除了要确保你的代码是正确的之外,你还要做很多其他的事情,在这之前你可 能只是个码农,但是一旦你出版了这本书之后你就是这方面的专家了。当然,写书最糟糕的地方就是最初的反馈信息里有很多别人指出的错误,如果脸皮不够厚的话 可能是一个棘手的问题。
这是一个伟大的事情。Android开发入门与实战(第2版)就是由eoe社区数十名版主和会员共同编著而成。
看视频教程,听播客,看在线研讨会:
从播客和在线研讨会上也能学到很多东西,关键是在自己的电脑上将播客和研讨会力学来的知识进行代码验证是最好的进步环节。
在给出这个调查表之后有很多程序员/开发者给出了回复和选择,一起来看看他们平时都是怎么来提高自己的技术水平的:
很明显,大多数人喜欢把阅读书本、代码和博客作为一种提高技能的手段。同时也有让人惊讶的现象:那就是通过做Kata来实践、参与开源项目、订阅科 技读物的比例实在是太低了,因为这三项在大部分人看来是最容易的,而且效率也是最显著的。另外,写一本书的竟然占到了8%,也很让人吃惊。除了这些,你觉 得还有哪些方式是可以提高你的技术水平的呢?