程序员常犯的5个非技术性错误

标签: 程序员 技术 错误 | 发表时间:2011-06-30 16:23 | 作者:(author unknown) 煜
出处:http://news.cnblogs.com/

  一个好的软件开发人员需要培养两种技能:技术技能和非技术技能。不幸的是一些开发者只注重技术的部分,以致养成一些陋习,下面是最常犯的5个非技术性错误:

  0. 缺乏自律

  Jim Rohn曾经说过:自律是目标和成果之间的桥梁。我一直认为,不论是成为一名软件开发人员,亦或是想在生活的其它任何领域取得成功,自律都是最珍贵的技能之一。事实上,很少有人兼具智慧和自律。

  Steve Pavlina强调了自律的5个基本原则“……容忍(Acceptance)、毅力(Willpower)、努力(HardWork)、勤勉(Industry)以及坚持不懈(Persistence)。将每一个单词的首字母提出,构成一个缩略词:鞭子(AWHIP)。这样更便于记忆,因为很多人总是把自律和鞭策自我联系在一起。……”我力荐大家阅读Steve Pavlina写的关于自律的一系列文章

  正如我以前的文章每天写出好代码的5个建议中解释的一样,对于自律,我的个人做法是每天遵循以下步骤

  • 将一天要做的事情列成清单。
  • 一次只做一件事。
  • 正确做事。
  • 不要半途而废。
  • 与其道歉,不如补救,而放弃最不可取。


  1. 自我意识过甚

  据我的经验,程序员有点自我意识过甚,但凡过于自我的人都很难意识到这点,以下几个指标可以帮助你认识到自己是否自我意识过甚。

  • 你认为自己是最棒的程序员。
  • 你抵触交流。
  • 你要求检查代码,是为了炫耀而不是为获得建设性的建议。


  网上有很多关于程序员及其自我主义的文章,我在此推荐两篇,一篇是来自Mike Bernat的《无私的程序设计(Egoless programmin)》,另一篇是来自stackoverflow.com与此相关的讨论“你如何控制自大”。

  2. 不善沟通交流

  Woodrow Wilson说:“我若要说上十分钟,须花一个星期准备;若是十五分钟,需三天;若是半个小时,需两天;若是一个小时,我现在就能准备好。”

  沟通是我们人类的主要活动。做一个优秀的交流者,这不容易,但就我们的职业而言,却是必不可少的技能。对于设计、代码、同行评估、文档编写、试着去说服别人自己的设计是最好的、编写代码等等,我们总在交流意见。

  擅长沟通的人通常会像这样阐述事情:

  • 专注。他们只说需要理解的内容
  • 清晰。容易理解。
  • 简洁。增一分则太过,减一分则不足。


  对成为一个更好的沟通者,我有两个建议:

  • 如果自认不是个好的沟通者,事先做好充分的准备直到达到集中、清晰、简洁的要求
  • 交谈之中,首先倾听,思考妥当后再说出自己的看法。


  在我先前发布的文章《在开发团队中做出决定的七个最佳惯例》中,有更多关于提高交际能力的小窍门。

  3. 忽略用户

  “如果我们不关心用户,自有他人关心。”你在此的唯一原因就是服务用户,但有时候很容易忘记这一信条。我曾经所在的团队只注重于技术和平台,而不是令用户满意。我们花费一个多月的时间创造一个构架,却未能给用户带来任何价值;到开始使用的时候,我们发现它完全不适应用户的需要。

  4. 不能合理安排工作

  开发者们总是为自己镀金,他们研究新的或更有趣的技术;做所有觉得更酷的工程处理方法。这样无疑妨碍到了项目,但我并不是说时不时投入到旁的活动中是不正常的。诚然我们都需要分散注意力,但是你若发现自己老是处于前面所提到的状态,那么你有必要重新考虑自己优先处理工作的方式。我再次推荐你读每天写出好代码的5个建议这篇文章。

_


  译文出处:伯乐在线- 职场博客 - 程序员
  译文链接:http://www.jobbole.com/entry.php/977

  原文:Alberto Gutierrez  翻译:敏捷翻译 - 唐瑭

  如需转载,但请注明原文/译文出处、译文超链接和译者等信息,否则视为侵权,谢谢合作!


  本文链接:http://news.cnblogs.com/n/106974/

  相关新闻:
  · 技术面试能发挥多大效用呢?(2011-06-16)
  · 想写代码?离开你的电脑吧!(2011-06-23)
  · 老一代开发者们需要花更多时间去了解新一代的玩家们(2011-06-02)
  · 停止编程(2011-06-30)
  · 程序员招聘平台CodeEval今天正式上线(2011-06-10)

相关 [程序员 技术 错误] 推荐:

程序员常犯的5个非技术性错误

- 煜 - 博客园新闻频道
  一个好的软件开发人员需要培养两种技能:技术技能和非技术技能. 不幸的是一些开发者只注重技术的部分,以致养成一些陋习,下面是最常犯的5个非技术性错误:.   Jim Rohn曾经说过:自律是目标和成果之间的桥梁. 我一直认为,不论是成为一名软件开发人员,亦或是想在生活的其它任何领域取得成功,自律都是最珍贵的技能之一.

【外刊IT评论网】程序员最容易犯的几个技术上的错误

- iVane - 外刊IT评论
本文是从 Top technical mistakes of programers 这篇文章翻译而来. 请在评论里分享你的想法和经验,因为我们都需要从这些错误中吸取教训. 如果你对编程不感兴趣,你的代码一定会写的很烂. 结果不仅仅你的事业没有任何前途,你的团队也会因此而痛苦不堪. 对诸如抽象、多态、接口、异常处理最佳方案等编程概念不熟悉的人写出的代码必然是设计糟糕,可读性和可维护性都极差.

Mark Lutz:Python程序员的常见错误

- - 博客 - 伯乐在线
译注: Mark Lutz 是《Learning Python | 学习Python》的作者之一. 在这篇文章中,我将总结新老Python程序员常犯的一些错误,以帮助你们在自己的工作避免犯同样或类似错误. 首先我要说明一下的是,这些都是来源于第一手的经验. 我以讲授Python的知识为生. 在过去的7年里,我已经给上千名学生讲授上百堂Python的课程,同时看着这些学生们犯同样的错.

程序员技术练级攻略

- etalkr - 博客园新闻频道
  伯乐人才网6月9日发表了《写给即将入行的程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id是Mailper)告诉我,他希望在酷壳上看到一篇更具操作性的文章. 因为他也是喜欢编程和技术的家伙,于是,我让他把他的一些学习Python和Web编程的一些点滴总结一下.

Java 程序员容易犯的10个SQL错误

- - ITeye博客
Java程序员编程时需要混合面向对象思维和一般命令式编程的方法,能否完美的将两者结合起来完全得依靠编程人员的水准:. 技能(任何人都能容易学会命令式编程). 模式(有些人用“模式-模式”,举个例子,模式可以应用到任何地方,而且都可以归为某一类模式). 心境(首先,要写个好的面向对象程序是比命令式程序难的多,你得花费一些功夫).

PHP程序员最常犯的11个MySQL错误

- - 外刊IT评论
对于大多数web应用来说,数据库都是一个十分基础性的部分. 如果你在使用 PHP,那么你很可能也在使用 MySQL—LAMP系列中举足轻重的一份子. 对于很多新手们来说,使用PHP可以在短短几个小时之内轻松地写出具有特定功能的代码. 但是,构建一个稳定可靠的数据库却需要花上一些时日和相关技能. 下面列举了我曾经犯过的最严重的11个MySQL相关的错误(有些同样也反映在其他语言/数据库的使用上).