(转载)编程老手的哪些特点,是值得新手程序员学习的?

作为一个经验丰富的程序员,有哪些事情是你希望在一开始编程的时候就知道的?或者换个方式来说,你认为每个新手程序员应该做或者学什么才能让自己的编程水平更好?

有经验的程序员会做到下面 29 项事情,这也是每个新手程序员应该知道的事情。

如果你想成为更好的开发者,你应该尤其注意第 15 点和第 29 点

1.积极大胆地谷歌。你得知道如何有效地组织搜索关键字,查阅别人写的代码,然后合理地用在代码里,从而解决问题。

2.拥抱变化,坚持不懈。老手程序员在接触新技术时,能欣然接受像个初学者一样处处受挫,并总能在完成工作的同时自学成才。

3.承认细节的重要性。例如变量和函数的命名、CSS 属性的命名、该用哈希还是用数组,以及其他看起来微不足道,但可能对项目有深远影响的事情。

4.承认大多数的“重要决定”其实并没有那么重要。一般的开发者经常在技术选型等“重大问题”上陷入唇枪舌战,而程序员老鸟们会避免浪费时间在骂战中。这一点上,他们就像禅宗大师一样(zen-like)。

5.选择合适的工具解决问题。网上有无数的开源库、工具和框架,让人眼花缭乱。而老手们清楚地知道针对怎样的问题,应该用什么样的工具。

6.明白代码「不值钱」(该删就删)。你必须习惯于删掉几百行代码来重写程序的某一部分,毫不留情。

7.在评估技术的时候要全面。例如,我一直在鼓吹Elixir。它语法优美,社区完善,有很大的潜力。但Elixir诞生的时间太短,所以如果要构建复杂的功能,可能会难以找到能帮你提高效率的开源工具。因此,在评估要不要选择使用一项技术时,你得把所有这些因素都考虑在内。

8.学会说“我不知道”。没有比拒绝承认自己不知道更能浪费一个开发者的时间了。

9.仔细分析错误信息里的线索。传统教育告诉我们:失败是坏事。报错信息这种东西也经常被跟失败联系起来,然而优秀程序员明白,这些错误消息里其实隐藏着能将你指向最终正确解决方案的线索。

10.了解过早优化和必要的“炫技式”优化的区别。老手们清楚在什么时候需要写一些看上去没那么好懂,但会让程序运行更快的代码。

11. 每个人都会犯错,为自己的过失负责。而尤其在团队里,把责任推来推去没有任何意义,因为错误的发生往往不只是一方的因素造成的。

12. 成为你所用的开发工具的重度用户。如果长期在某个开发环境下有相当比例的开发工作,那你应该去掌握使用它的细节。

13. 学会用Vim(至少会一点)。 你至少应该在这个编辑器里学会勉强地移动和翻页。

14. 不要接陌生技术领域的私活。个人做自由职业项目,其中很大一部分挑战就是评估项目时间。不要规划自己未知领域的事情,那会让你处于想当尴尬的境地。

15. 不要数你干活花了几个小时。技术大牛会把时间花在有深度的工作上,并且他们清楚花了多少时间完全不重要。

16. 学会坦然接受批评。当你的代码因为各种原因四分五裂时,你需要培养用理性和逻辑的方式来应对(而不是情绪化处理)。

17. 同有更多经验的人结对编程。没有比这个更高效的编程学习方式了。

18. 一定要先自己做一遍代码审查。当你在GitHub上发起一个pull request之前,先把代码当成别人写的,自己先审查一遍。

19. 认识到做自由职业的难点不是写代码,而是其余的所有事情。销售、推广、客户支持,质量保证以及产品管理,所有这些都会花费大量时间。

20. 发现并解决更大的问题。优秀的程序员不拘泥于眼前的问题,而是清楚如何用更长远的方式彻底的解决这一类问题。

21. 深入了解一些大型开源项目的核心能让你开发时如虎添翼。如果你知道如何给你的项目打猴子补丁(Monkey Patch), 那么你将无所不能。

22. 跳过多数的会议。你的公司雇你是来写代码的,而不是谈代码的。当会议多到失控的时候,不去参加也没有任何问题。而且一旦你开始这样做,别人会更珍惜你的时间。

23.知道什么时候开始回馈。到了某个时候你需要将你的技能和经验传授给年轻的开发人员,就像你的导师当时教授你一样。

24. 能写烂代码。有时候可以当一当“胶带式程序员”。关键是随着时间推移,你需要弄清楚什么时候可以走捷径,什么时候必须走捷径。这其实是最难掌握的技能之一。

25. 礼貌地告诉别人你工作到很晚。如果你是办公室里最后一个,可以发一封简短的汇报邮件。别人一般会注意到邮件上的时间戳的。

26. 像一个领导者(Leader)一样做事,而不是老板(Boss)。老板是让别人为他工作的人,领导者是人们追随的人。做个领导者。

27. 去打打桌上足球。从长期来看,同其他开发者(或不同岗位上的同事)建立联系会比在紧巴巴的期限里交付一个功能更有价值。

28. 在压力下学习。你需要知道如何应对像系统宕机而你要负责将它复原的情况,即使一开始你完全没有头绪。

29. “Move fast and break things” 别让完美主义阻止你做事。错误往往是最好的学习机会。所以别把犯错当作失败,而应该把它们当作值得学习的经历,并意识到:正是不断克服和突破这些错误,作为一个程序员,你才能不断成长起来。

像生活中的很多事情一样,编程也是你做的越多,了解的就越多。所以如果你是一个新手程序员,还是直接去编码吧。记得将这些最佳实践应用在日常工作中,来不断提升你的编程技艺。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,298评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,701评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,078评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,687评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,018评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,410评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,729评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,412评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,124评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,379评论 2 242
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,903评论 1 257
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,268评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,894评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,014评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,770评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,435评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,312评论 2 260

推荐阅读更多精彩内容