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

0. 缺乏自律

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

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

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

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

1. 自我意识过甚

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

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

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

2. 不善沟通交流

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

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

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

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

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

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

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

3. 忽略用户

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

4. 不能合理安排工作

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

程序员常犯的5个非技术性错误相关推荐

  1. 程序员常犯的五个非技术性错误

    一个好的程序员需要培养两种技能:技术技能和非技术技能.然而有些开发者只注重技术的部分,而忽视了其他部分. 下面是程序员最常犯的 5 个非技术性错误: 缺乏自律 Jim Rohn 曾经说过:自律是目标和 ...

  2. Python程序员常犯的十个错误

    不管是在学习还是工作过程中,人都会犯错.虽然Python的语法简单.灵活,但也一样存在一些不小的坑,一不小心,不管是初学者还是资深Python程序员都有可能会栽跟头. 常见错误1:错误地将表达式作为函 ...

  3. 初级程序员常犯错误一览

    作者 | 饶全成 来源 | 码农桃花源(ID:CoderPark) 最近接手其他人做的项目,导致之前的一些幻想破灭了.因为刚工作的时候做项目是php,而php本身的web框架一般只简单区分mvc,稍微 ...

  4. 后端技术:Java 程序员常犯的 10 个 SQL 错误!

    Java程序员编程时需要混合面向对象思维和一般命令式编程的方法,能否完美的将两者结合起来完全得依靠编程人员的水准: 技能(任何人都能容易学会命令式编程) 模式(有些人用"模式-模式" ...

  5. Java 程序员常犯的 10 个 SQL 错误!

    往期热门文章: 1.摸鱼王!2.抖音服务器带宽有多大,才能供上亿人同时刷?3.Spring新版本抛弃JVM,可独立部署,网友:要自立门户???4.记一次因 Redis 使用不当导致应用卡死 bug 的 ...

  6. Java程序员常犯的几类错误

    1.忽视异常 相信很多小伙伴在编程的过程中经常对异常置之不理.针对初学者和有经验的 Java 程序员,最佳实践仍是处理它们.异常抛出通常是带有目的性的,因此在大多数情况下需要记录引起异常的事件.不要小 ...

  7. python编程新手常犯的错误_Python程序员常犯的10个错误

    BY- SENIOR SOFTWARE ENGINEER @TOPTAL About Python 关于Python Python is an interpreted, object-oriented ...

  8. 程序员常犯的4大错误,快看你有没有中招

    作者 | 侯菲艳 出品 | CSDN(ID:CSDNnews) CRUD,代码能跑起来就行 大多数的程序员在写代码的时候,都只关心这个程序能不能跑起来,而这恰恰就是普通程序员和高手程序员之间的分水岭. ...

  9. Python 基础 —— Python程序员常犯的那些错误

    1. 迭代时修改一个列表 删除列表中的奇数 >>>numbers = [i for i in range(10)] >>>numbers [0, 1, 2, 3, ...

最新文章

  1. 如何“主动出击”提升网站的收录速度?
  2. 多窗体、窗体传值、打开唯一窗体操作
  3. 同步文件,不需要密码
  4. 全球及中国卸妆条行业发展规模与营销前景分析报告2022版
  5. 看动画学算法之:排序-归并排序
  6. 计算机应用无法打开,双击磁盘无法打开?_计算机应用_邹志强个人网站—(www.zouzhiqiang.com)...
  7. HTML5 代码要怎样凭“魅力”吸引搜索引擎的注意?
  8. SpringBoot项目文件下载
  9. Cortex-M3 (NXP LPC1788)之GPIO
  10. MATLAB上根号怎么输入,在matlab里面怎么输入开方号(根号)?9的开方怎么写?...
  11. 好的Python培训机构具备的条件
  12. [CF505E] Mr.Kitayutavs.Bamboos
  13. 重磅!吴恩达深度学习又开新课啦!
  14. MySql前瞻,什么是数据库
  15. 创新发明与专利实务的尔雅答案
  16. html5 手机相册裁剪,H5的手机图片裁剪特效
  17. android开发笔记之Google Analytics
  18. GTASA圣安地列斯如何打MOD(简单教程)
  19. 精易模块中普通填表初始化失败的解决方案
  20. TTA(测试时增强)

热门文章

  1. 【转】Dynamics CRM 365零基础入门学习(四)Dynamics 使用profiler插件调试流程
  2. ASP.Net请求处理机制初步探索之旅 - Part 5 ASP.Net MVC请求处理流程
  3. mysql 第二大的数据_MYSQL – 从大表中的第二行中选择数据
  4. 【信号与系统】系统特性
  5. 【JS 逆向百例】百度翻译接口参数逆向
  6. Python3 基础学习笔记 C09【文件和异常】
  7. CCIE-LAB-SDN-第二篇-DNAC中完成VN配置
  8. 【POJ - 2262】Goldbach's Conjecture (数论,哥德巴赫猜想,知识点结论)
  9. 【CodeForces - 589F】Gourmet and Banquet (贪心,思维,二分)
  10. ☆【CodeForces - 764C】Timofey and a tree (思维题,树的性质)