如何成为“10倍效率”的开发者

开发 后端 项目管理
作为一名程序开发者,除了要求更好的代码质量以外,开发效率也是不可忽略的。从Brad Feld的一篇文章The Rise of Developeronomics中提到的“10倍效率开发者”的概念!下面文章将给出如何去提高这么诱人的开发效率的答案。

Brad Feld的一篇文章The Rise of Developeronomics中提到了“10倍效率的开发者(10x developer)”的概念(伟大的开发者的效率往往比一般的开发者高很多,而不只是一点点),Adam Loving在读了之后受到启发,并向多位大牛(Ben Sharpe、Collin Watson和Jonathan Locke)询问如何成为“10倍效率的开发者”,***得到了以下的答案。

1、只做需要做的工作

◆  使用敏捷方法;

◆ 全心全意做UX设计;

◆ 沟通***;

◆ 编码也许不是解决问题的办法;

◆ 过早的优化是一切罪恶的根源;

◆ 选择最简单的解决方案。

2、站在巨人的肩膀上

◆ 使用开源框架;

◆ 使用简洁语言(如HAML、Jade、Coffeescript);

◆ 不要做重复的事情(不要重新发明轮子);

◆ 利用包管理器来进行公共和私有代码分配;

◆ 不要任凭巨头(如微软)的摆布而修复库中的一个Bug;

◆ 不要让你的雇主逼你学习;

◆ 自主学习并为自己设定新的目标。

3、了解数据结构和算法

如果你不知道什么时候应该使用快速排序、不懂辨认O(n2)程序、不会写递归函数,你将无法成为10倍效率的开发者。使用多种语言你才能清楚不同的框架是如何解决相同问题的。尽可能去了解底层命令(plumbing),以便能够作出明智的决定(Web框架是怎么存储session状态的?Cookie到底是什么?)。

4、不要怕买工具,它可以节省你的时间

Ben说:“昨天我花50美元买了一个位图字体工具,它帮我节省的时间成本绝对超过200元。”

5、集中注意力

不要整天开着你的电子邮件、Twitter、Facebook等,在工作时将它们最小化或关掉它们,戴上耳机。Tiny hack说:“即使不听音乐我也戴着耳机工作,这样便不会有人打扰到我。”

6、尽早并且经常性地进行代码重构

有时,你不得不放弃漂亮的代码转而去寻找真正对项目有用的代码,但没关系,如果你的现有项目中有这样的代码,***的方式便是不要看它,并重构。

7、只管去做

将你的业余项目分享到Startup Weekend中。在我开始转到Unix和Ruby on Rails上之前,我买了一台Mac,使用Windows虚拟机花了一年时间做.NET项目。

8、挑选一个编辑器,并掌握它

高效开发者喜欢用文本编辑器胜过IDE编辑器,因为这样可以学到更多东西。无论什么情况,尽量使用键盘快捷键,因为熟练使用一件工具的前提是熟悉它。

在选择编辑器时,认真考虑并挑选***的(Emacs或Vim),因为它们是通用的。其次,挑选你的***平台最支持的。使用宏,不断地写代码;使用Mac上的TextExpander为整个段落创建快捷方式;使用Visual Studio或SublimeText的自动补齐功能;使用支持按行/列分割窗口的编辑器,这样你便能同时看到单元测试和代码(或模型、视图)。

一定要想清楚后再写代码。Adam说,“我有朋友在一个大项目组里工作,他们组里***效的程序员是一个高位截瘫用嘴叼着棍子敲代码的人,他总是在写代码之前想得很仔细且很少出错。”

9、整洁的代码胜过巧妙的代码

要想让其他人能够读懂你的代码,尽量使用最少的代码来完成任务。遵循DRY(Don't repeat yourself)的原则,使用明确定义的对象和库,将任务分解成小而简单的代码段。

10、潜意识是强大的工具

离开10分钟往往就可以解决一个问题。控制编程时间,给自己一个多姿多彩的生活,劳逸结合能让你在工作时更高效、更愉悦。当然,即便是上了年纪的程序员也知道,以最少的时间完成***效的工作是成为10倍效率开发者的必要条件。

作为一个程序员,我觉得在职业生涯中***的一件事儿就是从电脑前站起来,去拜访那些在某一领域有所建树的人们。

11、推动自身和团队进步

重视批评,以包容的态度接受批评并提升自己是非常重要的事情。没有这个基础,你不可能成为一个高效的开发者。一位智者曾经说过:“聪明的人善于从自己的错误中学习,而智慧的人善于从别人的错误中学习。”

英文原文:http://adamloving.com/internet-programming/10x-developers

原文链接:http://www.iteye.com/news/23799

【编辑推荐】

  1. 为什么程序员都是夜猫子?
  2. 编码20年的老程序员分享所积累的20条编程经验
  3. .NET程序员快来Visual Studio刷“成就”
  4. 关于程序员成长的一点思考
  5. 程序员应该读的故事:三个事和三个问题
责任编辑:林师授 来源: ITEYE
相关推荐

2013-06-07 10:07:28

开发者优秀开发者

2015-07-22 16:08:46

OpenStack开源贡献代码

2023-12-06 17:57:07

开发云服务

2013-11-29 15:04:04

独立开发者手游开发

2017-02-10 12:02:39

Node开发者

2020-07-22 01:21:26

软件开发开发代码

2014-05-22 10:43:26

移动开发者优秀

2010-08-24 08:58:42

开发者

2012-01-16 11:05:22

红帽PaaS 开源

2009-09-11 08:44:36

2015-06-19 14:48:20

iOS开发

2015-06-17 10:03:04

程序员iOS开发

2015-09-01 09:53:04

Java Web开发者

2020-10-19 12:21:38

GoPython开发者

2012-03-07 09:41:01

Java

2020-10-22 15:05:43

开发者技能工具

2013-01-18 11:24:34

设计产品开发

2011-10-10 14:56:24

Android开发者

2012-06-13 01:23:30

开发者程序员
点赞
收藏

51CTO技术栈公众号