聊聊成为大神路上的过程(决定伟大水平和一般水平的关键因素,既不是天赋,也不是经验,而是[刻意练习]的程度,要多看别人的代码)

每个人都在成为大神的路上,只不过有的人在走,而有的人在跑。

写在前面的话

在开始正文之前我先跟大家分享一个我身边的例子。我有两个朋友,A和B。B从高一开始打dota,A从高二开始,到高中毕业的时候,A已经是一个 2100分的大神级别的人物,而B只有1200分而已。为什么A打的时间比B短,而水平却比B高呢?是天赋?是智商?似乎都不是。

我对两个人还是比较了解的,虽然同样是打dota,但是A和B之间有着很大差别的。A除了像B一样打dota之外,会看一些成名已久的大神的教学视 频,会看自己打dota的录像然后反思,会逛贴吧学习一些新的打法以及连招,会不断练习自己做得不好的地方。然后A成了大神,而B依然是一只菜鸟。

其实成为大神的路上,真的有一些捷径,不论是打dota、销售,还是开发。

自我定位以及目标

“我是蒙奇·D·路飞,要成为海贼王的男人。”草帽同学的这句话既霸气又充满哲理。假如现在的你是一个小菜鸟,但你想要成为宇宙无敌超级工程师,那 么你需要一个目标:我是要成为超级工程师的男人(妹子)。当你从心底有了这个目标之后,你的每天都会有一种充实感,虽然哥现在很菜,但过一阵子哥可就是大神了。强大先从精神开始。

经验与成就

为什么有的人工作5年,仍然不是专家,而有的人只用2年时间,表现足够卓越?

心理学家 Ericsson 的研究发现:决定伟大水平和一般水平的关键因素,既不是天赋,也不是经验,而是[刻意练习]的程度。

我坚信重复是通向精通的必由之路。任何一种技能(包括码代码),只要经过连续不断地磨练和改进,最终效果都将变得异常惊人。

之前也和朋友讨论过一个问题,近几年培训的人越来越多,就业压力相对来说越来越大,很多人会出现恐慌的情绪。但如果你真的足够优秀,那么这种问题其实都不是问题。

学好英语

根据HOPL编程语言在线数据库的统计,全球有8500种以上的编程语言,大概2400种起源于美国,600种是在英国发展起来的,160种是来自加拿大的,75种是在澳大利亚发展起来的。换句话说,世界上三分之一以上的编程语言是在以英语为母语的国家发展起来的。

就Android开发者来说,通读官方文档和training都是很有必要的。so,好好学习英语吧。

找到成就感

我实习的时候,我的经理告诉我,如果你从你的工作中找不到成就感,那么你可以考虑转行了。对于码代码,在你眼里无论这是一份工作、事业或者志业,都可以赋予其意义。有了意义就会有成就感,它会成为一种精神力量和内在动力,与工作形成一个良好的循环。譬如写博客,如果没有成就感,或许小哥我早放弃了。

点满技能点

如果你不知道该学点什么,去招聘网站翻翻简历吧。在你所在的领域里,总会有你不熟悉的技能,找到它,干掉它。如果你的技能点是满的,那就发散思维,学习一些进阶技能和相关的其他方面的技能点,其实开发远比想象的要复杂。

好的身体是革命的本钱

长时间坐在电脑前会伤害你的身体,如果不能减少工作时间,那就尽量保持正确的坐姿,如果有条件的话,换个站立办公桌也是不错的选择。选择一个适合自己的锻炼方案,相信我,当你老了,你会庆幸自己能坚持锻炼。

拖延症、计划和时间管理

拖延症是指自我调节失败,在能够预料后果有害的情况下,仍然把计划要做的事情往后推迟的一种行为。这是一种普遍现象,博主上大学的时候写论文,每次都是在最后一天的最后一两个小时搞完,论文质量简直惨不忍睹。

我们的人性啊!

合理的计划可以有效的解决拖延症的问题,每周给自己一个计划,坚持完成,想不成为大神都难。

学会管理自己的时间,让效率飞起来。关于这方面大家可以看下《暗时间》和番茄工作法。

知其然与其所以然

这点很重要,这点很重要,这点很重要,重要的话要说三遍。

对于这点最深的感触是实习的时候经理提的一点要求:做任何事,先要想明白,再能给别人讲明白,然后再去执行。所以那会我们在做开发之前先要跟他汇报,给他讲明白,然后才能开发。优点也很明显,这样下来bug比之前少很多。

在这顺便建议一下大家写博客,做完东西整理思路总结一下,然后分享给大家,加深理解的同时还能获得成就感,一举多得。

我是这样解决问题的

首先遇到问题不要怕,要知道这个世界上那么多前辈,你所遇到的大部分问题,之前肯定有人遇到过并且已经解决,要学会使用google。

其次,这里有一条准则与大家共勉:

WHAT,WHEN,WHY,HOW。

它是什么?它在什么场景下发生?它为什么会是这样,有没有其他原因?它是怎么做到的?

如果你觉得自己处理信息的能力又比较弱,不妨这样试试。做任何事情之前,有意识的让自己来一遍what, when, why, how。

时间久了,你会发现逻辑变得严谨,不会钻牛角尖了,工作变得轻松,debug也不头痛了。

与时消息、与时谐行、与时俱进

每天抽出半个小时左右的时间阅读一些领域内的博客, 理解目前的技术发展方向,与时代同步,让技术历久弥新。

代码评审

大多数程序员都有一个错觉:手头上的项目永远是最烂的。如果你也是这么认为,那么尝试去改变它吧。

代码评审(code review)是一个用来提高程序员的极好的方法。

开源项目

阅读流行的开源项目,是学习编写可维护代码和软件开发流程的好方法。比如最近流行的google出品的 MVP模式demo 、 EventBus、Picasso等等。

结语

做一个行动派。

世界上最遥远的距离是在想到和做到之间。

如果只是看清了一些事情而不去改变它,那又有什么意义呢?

稿源:伯乐在线

http://www.oschina.net/news/86501/how-to-be-great

时间: 2024-10-12 19:25:34

聊聊成为大神路上的过程(决定伟大水平和一般水平的关键因素,既不是天赋,也不是经验,而是[刻意练习]的程度,要多看别人的代码)的相关文章

程序员之歌 - 大神去哪儿

程序员之歌,大神去哪儿 演唱:群猿       起调 菜鸟:大神,你会唱<小猩猩>么 大神:不会啊... 菜鸟:那我教你哦 大神:额,好吧 菜鸟:一步一步调程序,猩猩加班到天明 大神:额,你有调错哦 大神&菜鸟:(一起笑) 菜鸟A:我们公司有个人很酷 菜鸟B:设计接口架设服务 菜鸟C:他的代码有一点难读 众菜鸟:指引我们走出迷雾 老板A:谢谢你在这,我的老朋友 老板B:你是我用过最好的下属 老板C:支撑起无数产品的蓝图 众老板:按时上班,风雨无误 众菜鸟:大神,大神,我们去哪里呀 众菜

关于代码的一些心得体会(大神勿喷)

关于代码的一些心得体会   前  言 Lms 入行也有很久了,一直都只是忙着工作学习,却一直没能好好静下心来好好整理一下自己.时间久了,慢慢的代码越来越熟悉,敲起来也越来越顺手,自己缺总感觉有些不对.我总觉得代码不应该就是这么简单,不应该像写记叙文一样,一条一条慢慢的就罗列出来了,返回去看了看自己刚写代码的时候功能也都能够实现了.但是还是有那么多可以优化的地方.我觉得好的代码不应该只是把功能实现那么简单,我觉得好的代码应该有以下几条特点:第一,命名要规范,第二,可复用性,第三,就是注释.当然,当

大神手把手教你写一个页面模板引擎,只需20行Javascript代码!

只用20行Javascript代码就写出一个页面模板引擎的大神是AbsurdJS的作者,下面是他分享的全文,转需. 不知道你有木有听说过一个基于Javascript的Web页面预处理器,叫做AbsurdJS.我是它的作者,目前我还在不断地完善它.最初我只是打算写一个CSS的预处理器,不过后来扩展到了CSS和HTML,可以用来把Javascript代码转成CSS和HTML代码.当然,由于可以生成HTML代码,你也可以把它当成一个模板引擎,用于在标记语言中填充数据. 于是我又想着能不能写一些简单的代

【python】抄写大神的糗事百科代码

照着静觅大神的博客学习,原文在这:http://cuiqingcai.com/990.html 划重点: 1. str.strip() strip函数会把字符串的前后多余的空白字符去掉 2. response.read().decode('utf-8','ignore')  要加'ignore'忽略非法字符,不然总是报解码错误 3. python 3.x 中  raw_input 改成 input 了 4. 代码最好用notepad++先写 格式清晰一点 容易发现错 尤其是缩进和中文标点的错误

走在成为大神的路上

以前吧,一直浑浑噩噩,不知道自己到底要什么,要干嘛.现在呢,几乎算是想清楚了,大致就是:成为互联网信息时代的编程技术大神,为这个社会.这个世界.这个时代做出自己的贡献.当然可以不限定于一定要做技术leader或者CTO之类的人,但是自己动手实践参与其中,不正是最有乐趣的地方嘛.有些事情想清楚了,从现在开始去做就好了,总比已知没有想清楚甚至没想过的人要好. 既然有了明确的人生目标,接下来就按照竺可桢校长的三段论:分析问题,制定计划,执行力. 首先是分析问题使其简单化,找出方法.具体的话:1.练习写

HDU Today(自己的代码不知道哪里错了一直没A抄袭大神的)

http://acm.hdu.edu.cn/showproblem.php?pid=2112 本题题目意思非常简单,麻烦的就是处理一下字符串,这是我能力欠缺的地方 #include<stdio.h>#include<iostream>#include<string.h>#define maxint 200000000int map[201][201],visit[201],n,m,s,e;int dis[202];char name[201][32];int find(

为何你跟着滴滴D8级前端大神撸代码,技术却依旧原地踏步?

引子 听说最近有很多小伙伴,热衷于在慕课网上学习各种前端实战教程,并以完成项目为奋斗目标.比如本文接下来要提到的<Vue2.0高级实战之开发移动端音乐App>,这门课程的传授者是来自滴滴D8级的前端大神黄轶,当然也是我推崇的行业偶像之一. 在这里既然提到了Vue这门渐进式的前端框架,我就不得不感慨一下,最近两年,Vue.js在国内的发展可谓是如日中天,红透大江南北(当然功劳也少不了尤雨溪前段时间在上海,北京的演讲,为之宣传布道). 光我从掘金,简书,GitHub等平台上看到的相关文章或个人项目

无法运行的贪吃蛇游戏代码,求大神帮忙修改!

#include <iostream> #include <windows.h> #include <stdlib.h> #include <conio.h> #include <time.h> //使用当前时间做种子 enum dir {up,down,left,right}; //枚举类型enum dir //围墙 class Fence { public: void initFence(); void OutputF(); public:

对话机器学习大神Yoshua Bengio(下)

对话机器学习大神Yoshua Bengio(下) Yoshua Bengio教授(个人主页)是机器学习大神之一,尤其是在深度学习这个领域.他连同Geoff Hinton老先生以及 Yann LeCun(燕乐存)教授,缔造了2006年开始的深度学习复兴.他的研究工作主要聚焦在高级机器学习方面,致力于用其解决人工智能问题.他是仅存的几个仍然全身心投入在学术界的深度学习教授之一,好多其他教授早已投身于工业界,加入了谷歌或Facebook公司. 作为机器学习社区的活跃者,Yoshua Bengio教授在