懒惰只是程序员脱颖而出的第1步,之后的7个习惯才是你开挂秘诀

花的时间越多就能写出越可靠的代码吗?

不一定。

那如何才能写出优秀代码的呢?

懒惰是一个良好的开始!

Perl 编程语言的原作者 Larry Wall 曾说过,伟大的程序员都有三个优点:懒惰、急躁和傲慢。

为什么这样说呢?

1、懒惰会促使他们去写一些省事儿的程序来辅助他们或别人更好的工作,这样他们就无需再去回答一些不想回答的问题。 2、没耐心会激励他们去写一些程序,不等你提出就主动满足你的需求。 3、傲慢会促使他们写出可靠无误的代码,因为他们不想受到批评和指责。

为了最大限度得提高你的就业能力,你不需要成为一个伟大的开发者,而是一个高效的开发者。

分享7个习惯,帮让你成为高效的开发者。

原文为翻译文章,作者为Paul Rubens,由Aylee翻译。

每天至少写4个小时代码

乍一看,这条建议很没有意义,因为大部分程序员在他们的电脑桌前要写至少8个小时的代码,很多甚至是10个小时。然而,Copyin 的 创始人兼CEO Peter Nixey 认为,他们实际上只有很少的时间花在了实际开发工作中,“我曾经从事的项目中,开发者把他们的时间大部分都消磨在了会议、乒乓球、午餐等上面,”他说。“所以,纯粹写代码的时间是没有4个小时的,但令人惊讶的是,在办公环境中这点是很难实现的。”

为什么呢?

Nixey 解释说,一个很重要的因素就是,要保证开发者在那4个小时内不能被打扰。因为一旦你全身心投入进去,你的大脑就处在高速运行中,一旦中间被打断了,可能会需要你花一个小时的时间才能找回原来的感觉和思路。

怪不得那么多程序员都不喜欢在编程中受到打扰呢。

配合开发团队

作为团队中的其中一员,学会和你的同事相处是成为一个高效开发者的重要组成部分。开发者网络 Scalable Path CEO Damien Filiatrault 认为,这要比你有经验丰富的编码技能更重要。

Filiatrault 说,无论他多么有才华,就问一个关键的问题,“和他们一起工作有趣吗?”如果答案是否定的,“那可能会影响整个团队的士气,”他补充到。

但这不仅仅是自大的家伙单方面造成的问题。如果开发人员太好或者因为某些原因不适应团队环境也可能会出现一些问题。例如,Filiatrault指出,“世界上任何一个角落的开发者都想尽可能的避免冲突,而他们可能又不愿承认自己无能为力,这也是一个问题。”

利用业余时间编码

如果你写代码仅仅是为了钱,那么你很难在新的领域学到新技能以及经验。这也是为什么 Added Bytes 的创始人Dave Child会说,为了娱乐而去编码是很重要的。

他说:“我所知道的最好的开发者,他们业余都有自己研究的项目领域。”

那些开发者不会为他们的小项目使用他们在工作中需要的技能,Child补充道。相反,他们会利用一些业余项目来增加自己的技能,同时让自己跟上新技术发展的步伐,这才是真正让他们兴奋的。

学会写潦草的代码

很少有项目会需要开发者去天才般的创建华丽丽的代码作品:它们所需要的通常是一个可以在上面建立具体功能的通用平台。

Nixey说最好的方式就是快速写一些可运行的作品,然后从中受益。

“不管你的代码是邋遢也好,重复也好,命名很烂也好,”他说,“代码只是一种解决方案的表现形式,之后你可以去重构它,让它看起来很好。”

不要在相同的工作上停留过长时间

Child说,一个保证不失去自己编程优势的有效方式就是去重新找一个工作,然后让自己融入到开发团队中。因为一旦你掌握了工作所需的所有技能,你就进入了一个死胡同,你的技能很难再提升,你也很难成为一个更好的程序员。

“你需要不断挑战自己,”他说。“如果你在一个地方工作了好几年,那么你可能已经最大限度的学到了当时想学的东西,所以不要再待在那了——继续前行,去寻找新的挑战。”

永远不要停止学习

软件技术更新的非常快,这意味着现在很多重要的编码技能可能很快就会过时。所以,如果你打算在软件开发领域有一个长期的发展,及时了解新的编程语言和技术趋势是非常重要的。

开发公司Progress Software的首席布道官Todd Anglin说,“事实很简单但也很残酷,你现有的知识是不足以你去消费一辈子的,你必须做好不断去重新学习的准备,因为你现在所拥有的知识未来是不能满足你的需求的。”

他还补充说,清楚并专注于你感兴趣的领域,而不是试图成为各行各业的高手是很重要的。“对你想深入学习的领域,要保持如饥似渴的态度和持续的激情。不要试图去啥都学,因为这是不可能的——要保持专注,不断学习。”

Filiatrault也同意Todd的看法。“也许你每一份开发工作都会有一半之前没有做过的事情,所以你要有的重要的技能就是知道如何去学习,去寻找信息,”他说,“如果你有了这项技能,那么不管你需要什么你都可以通过自学拥有了。”

因为热爱去编程

Gregor Riegler是Be a Better Developer博客的一个作者,他说,选择自己热爱的领域是至关重要的,这样才能确保自己能够全身心投入项目中去。

“产生动力最重要的因素是你关心代码能够做什么,”他说,“也许它可以以某种方式让一个app运行,也许它会让一台机器以你希望的方式工作。”

无论如何,他补充说,“你要真正去享受自己正在做的事,并尝试获得最佳效果。如果你能从中找到快乐,那么恭喜你,你一定会写出伟大的代码。”

原文发布于微信公众号 - 养码场(yangmachang0)

原文发表时间:2017-08-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏速成应用小程序开发平台

微信小程序商城社交+电商购物获取流量多样化更能提高拉新与转化

对于微信平台来讲,电商可是离用户钱包是最近的,它肯定也想从这块蛋糕中分得一块,近期小程序也陆续开放了许多与电商有关的功能,加之创业者许多成功的先例,小程序走电商...

16830
来自专栏王磊的博客

程序员进阶之路—如何独当一面

今天和大家分享一下,程序员如何独当一面这个话题,这是一个很大的话题,我把他分成三部分来谈:   一、需求转换的能力或者叫理解需求的能力;   二、分配时间的能力...

36950
来自专栏LiveEdu在线科技教育平台

10条建议分享:帮助你成为与硅谷工程师一样优秀的程序员

成为一名硅谷的工程师可能是很多中国程序员的梦想。硅谷被公认是目前世界上云集了最多优秀工程师和知名科技公司、创业公司的地方,吸引了全球无数投资者、创业者和工程师的...

23390
来自专栏腾讯大讲堂的专栏

腾讯发布《2017中国移动游戏质量白皮书》,专注手游品质提升

引言1月8日,腾讯质量开放平台WeTest正式发布《2017中国移动游戏质量白皮书》。 此次的《2017中国移动游戏质量白皮书》,分别从研发概况、市场硬件环境、...

29250
来自专栏互联网杂技

清晰、高效、一致、美观 - 关于设计原则的优先级排序

我们在Salesforce的产品设计团队当中有个不成文的规矩:无论谁拿出一份什么清单 - 功能列表、研究报告,或者哪怕只是体恤衫名录 - 无论什么,只要是清单的...

371130
来自专栏镁客网

镁客请讲 | Bello李松毅:用AI赋能招聘,实现前期工作的自动化、智能化

小王是一位HR招聘专员,简略来讲,每天上班之后,他需要上网更新招聘信息,并发布新的招聘岗位。另外,他还需要每天查阅并筛选主投简历,继而电话或邮件邀约候选人面试…...

14620
来自专栏前沿技墅

架构整洁之道:优秀设计或多余,有效设计最可取

一位经验丰富的软件工匠,也是追求简化软件设计和实现的思想领袖。他是畅销书《实现领域驱动设计》和《响应式架构:消息模式Actor实现与Scala,Akka应用集成...

14810
来自专栏新智元

华为正研发情感 AI,赋予AI助理高智商、高情商

12830
来自专栏企鹅号快讯

量子计算开启云计算通往新世界的大门

随着数据的海量增长,机器处理数据所需的时间也越来越多。增强现实、虚拟现实、人工智能、机器人、实时分析和机器学习算法都需要云计算提供无限快速且无限计算能力和无穷大...

30850
来自专栏Java面试通关手册

选择技术方向都要考虑哪些因素

本文主要是作者读安晓辉老师的《程序员程序员职场进阶 32 讲 》中关于“选择技术方向都要考虑哪些因素”这部分做的一些笔记和自己的思考。在这里分享给各位!

10030

扫码关注云+社区

领取腾讯云代金券