在日常工作里肯定会发现很多有趣的事情,极品程序员所做的事就是很有意思的。事实上,现在所讨论的极品程序员主要是从他们的判断力、行为举止、个人态度和匪夷所思的工作方式上来判断的,有的时候这些程序员一味的只是追求文档上的内容,而不擅于用分析方式来解决问题。

几乎每一个软件开发者多多少少都会出现头脑短路的现象,也就是说,下面所列举的各种极品程序员类型,总有一款是属于你的。

  1. 钟爱型程序员:万般宠爱集于一种技术

这种类型的程序员所遇到的致命错误就是:只钟爱一种技术,对别的技术不来电。其实这不是什么值得表扬的优点。因为这种程序员看上去就像是“天生注定爱上这种框架的程序员”,对于自己喜欢的技术可以说是放不开、丢不掉。甚至在生活里也是一个打破砂锅问到底的人。

不管问题是什么,他的回答总是跟他的性格类型脱不了关系:

  • “嘿,我们需要在Rails框架里实现一个内容管理系统,但是我们应该用哪一个数据库呢?”——Mongo数据库
  • “多用户博客呢?”——Mongo数据库
  • “关键业务一致性系统呢?”——Mongo数据库
  • “库存管理系统?”——Mongo数据库
  • “电子病历系统?”——Mongo数据库
  • “分布式数据仓库?”——Mongo数据库

钟爱型的程序员在任何软件开发项目里都会找出各种各样的理由,也不管这些理由是否具有实际意义。但是,一旦你试图反驳他的观点或者是想法的时候,他们在感情上是无法接受的,即使你和他的关系特别好也是没有用的。如果他知道自己的想法错了,也不会告诉任何,而是更愿意在最后一秒的关键时刻偷偷的使用别人的正确方案。

  1. 匠心型程序员:保守主义者,不到万不得已不做修复

匠心型的程序员的目标是至高无上的:不考虑成本,尽一切可能保护系统的正常运行和系统的完整性。除此之外,这类程序员信奉一个很简单的哲理,这个简单的哲理也就是引领他们在软件开发和管理实践中的一个基本准则:只要还能将就使用,不到万不得已千万不要去修复。

不管什么样的软件,只要是在奥术师的保护下,就一直是使用那个平台、那个部署程序、那个数据库还有那个永远不会改变的操作系统。但是你不必担心,因为匠师会一直盯着这些看上去老旧的组件,也许他不能赢得每一场战斗,但是他一定会为了每一场战斗而凶猛拼杀。

在匠师的世界观里,过去也代表着未来。所以,他将会和那些想要升级他的1981年发布的的PASCAL代码库的人作战到底,哪怕是泪流满面。

  1. 未来派程序员:赶潮人,追求最前沿的技术

未来派程序员可以说是奥术师程序员的对立面——今天就是未来,任何使用昨天的开发工具编写的代码在未来派眼里看来都是无与伦比的厌恶。他们的目标可不是什么哲理——追求最新最前沿的技术。

如果你看到未来派程序员甩着鼻涕在你面前吹嘘最近在Hacker News上看到关于JavaScript的最新消息而滔滔不绝的时候,你千万不要惊讶,因为他们没像是在Justin Bieber演唱会上那样在你面前尖叫就已经很照顾你了。即使有的时候在Microsoft Research or the Server and Tools Team发布新产品的时候,即使他们根本不理解那些产品的用途,也会显得很热情。

不过,需要提醒的是,如果你是一个未来派程序员,那么DevOps工程师,QA工程师和Release工程师这些职位是未来派程序员的天敌。

  1. 信息囤积者型程序员:小心谨慎,不愿公布代码

信息囤积者型程序员是一个很谨慎的人,但是对自身的谨慎行为充满不确定性。他们生活在一个认知失调的世界里:对自己的工作感到自豪,但是需要帮助的时候又不愿意让别人知道。

所以囤积者通常会隐藏代码,不愿意公布代码。小心翼翼地避免访问记录,更不愿意别人跟踪他所做的一些修改记录。他最大的恐惧就是遇到代码合并冲突,因为这样的暴露风险是最大的。

也许囤积者型的程序员很乐意告诉你他的工作是多么了不起,但是如果你想要知道他的代码估计会很难。最终,信息囤积者型的程序员注定要失败,这样的做事行为不被别人接受,存在也是没价值的。只希望在短期内能有较好的改善。

  1. 艺术家型程序员:质量?>美观?不可兼得

艺术家型程序员简直就是囤积者和未来派程序员的表兄弟,艺术家型程序员会倾入所有的心思来构建完美的代码行。此外,艺术家型程序员也是一个易动感情的人——他所创造出的软件就是他感情的流露,也是他个人才华的生动化身。

艺术家型程序员还会考虑这样的问题:如果我使用的JavaScript里不添加分号的话,在语句上是不是更加漂亮呢?如果把这个块包装起来,是不是更加完美?他们最在乎的是美观,其次才是质量。

艺术家型程序员也不是这个行业所提倡的那种程序员,他们无法客观的讨论评价自己的作品,也无法定位自己在同事当中的位置。

  1. 孤岛型程序员:性格孤僻者,代码就是一切

孤岛型程序员是整个程序员行列里最孤独的人,这样的程序员在软件创造方面有很多很大的欲望,但是他们的短板是不愿与人交往。孤岛型程序员的理想工作条件是与外界交流最好是保持在最低限度,而且严格控制在他方便的时候。他的生活里只是代码,没有人类。

但不幸的是,现实和理想往往是有很大的区别的,但是这些程序员必须为了生存而去公司谋求工作,于是被迫与同事或客户沟通,这对他们来说的确是一个巨大的负担。所以他们只能躲避——躲避会议、躲避电话沟通、关闭邮件接收器等等。他们遇到问题的时候宁愿查询上百件项目文档也不愿意问自己的队友。

和信息囤积者型程序员一样,孤岛型程序员注定要失败。软件开发就像是一项团队运动,不接受那些不遵守规则的另类。

  1. 敏捷型程序员:急功近利,常常半途而废

敏捷型程序员是一个功利主义者,致力于需求改善软件效率,以及个人和团队的生产力。但不幸的是,他对“敏捷”哲理的理解和实施策略实在是呆板和僵化,不禁使人发笑。

敏捷型程序员的初始意图是很高尚的:改善软件开发方式。这样的程序员做起事情来是比较雷厉风行的,但是也有缺点:任何讨论时间超过四小时的问题最后都会变成泡沫;任何在最后冲刺阶段所做的项目基本上都会缩水。

另外值得注意的是,大部分敏捷型程序员都有一个通病:自命不凡。在程序开发过程当中,尤其是在选用一些小的组件的时候,坚持己见,导致网络文件系统出现错误或者是驱动程序实现效果不理想。

  1. 文盲型程序员:编程入门者,功底浅薄

顾名思义,文盲型程序员在阅读别人的源代码的时候总是会遇到很多麻烦,有的时候基本上是看不懂别人的代码。

换句话说,文盲型程序员和孤岛型程序员像是一对表兄弟,只对他们钟爱的编程语言花时间去理解基本的编程结构,全面掌握编程语法,但是看到其他程序员所写的代码的时候,完全是一窍不通。在这种情况下,我们称之为“code-blind”程序员。

当面对其他开发者问“你为什么不使用我们标准的接口来生成一个对话”的时候,文盲型程序员通常是盯着自己的脚尖然后是喃喃自语。

以上只是列举了一部分类型的极品程序员案例,当然,极品并不代表不好,只要把这种极品特征合理应用,它就会成为你的特长。不知道你是不是一个极品程序员?
文章转载自 开源中国社区 [http://www.oschina.net]

8 种极品程序员,你属于哪一种?相关推荐

  1. 各式各样的极品程序员 你属于哪一种

    本文作者Aaron是MarkedUp创始人兼.Net开发者.在这篇文章里,作者根据自己平时在工作中的所见所闻,列举了几个比较有代表性的极品程序员类型.他们各有自己的特点和性格,在软件开发工作中,这种特 ...

  2. 8种极品程序员,你属于哪一种?

    在日常工作里肯定会发现很多有趣的事情,极品程序员所做的事就是很有意思的.事实上,现在所讨论的极品程序员主要是从他们的判断力.行为举止.个人态度和匪夷所思的工作方式上来判断的,有的时候这些程序员一味的只 ...

  3. 各式各样的极品程序员,你属于哪一种

    摘要:极品程序员,或许在你看来就是那些比较另类的程序员.但是这里所列举的极品程序员的类型不是你想象的那样.他们除了极品这一特征之外,还具备其他优点.本文详述了宠物专家型程序员.奥术师型程序员等等. 本 ...

  4. 各式各样的极品程序员

    ---转自CSDN, http://www.csdn.net/article/2013-12-24/2817904-The-Taxonomy-of-Terrible-Programmers 本文作者A ...

  5. 程序员应该抛弃的10种思维定式

    程序员应该抛弃的10种思维定式: 一.会议恐惧思维. 一提到开会,程序员的脑袋就大了,厌恶会议会形成习惯,当然,没有哪个人喜欢冗长.频繁.无效的会议.参加高效会议,是高效沟通的一种方式,如果一味的排斥 ...

  6. 程序员白头发是怎样一种感受?

    原创文章,欢迎转载.转载请注明:转载自IT人故事会,谢谢! 原文链接地址:程序员白头发是怎样一种感受? 程序员白发年龄相对提前,主要原因是用眼过度导致的肝血不足, 白头这个,遗传也有一点吧,貌似跟睡眠 ...

  7. 霍炬:程序员爱写脚本是种病

    霍炬:程序员爱写脚本是种病 投递人 itwriter 发布于 2016-09-16 22:00 评论(22) 有3033人阅读 原文链接 [收藏] « » 如果你就是程序员,或者你熟悉程序员这个群体, ...

  8. 初级程序员经常犯的10种错误,网友:工作几年了都还在犯

    初级程序员经常犯的10种错误,网友:工作几年了都还在犯 小编在网上经常容易看见#程序员如何升职#.#程序员的进阶之路#这样的话题,于是我整理了一些网上的资料并结合自己的经验,梳理出了10种初级程序员经 ...

  9. 【新书速递】程序员必会的40种算法

    算法是计算科学的核心,在求解实际问题的过程中发挥着重要作用.程序员.算法设计师.架构师.数据分析师等信息技术相关从业人员都应学习算法设计基础知识,积累基础算法,掌握典型的机器学习算法.自然语言处理算法 ...

最新文章

  1. 什么样的编程语言,竟然能融资 1.6 亿?
  2. [SSH] Eclipse+Struts+Hibernate的简单应用
  3. sql OFFSET 和 ORDINAL
  4. Swoole安装popen()找不到
  5. TCP三次握手、四次挥手、socket,tcp,http三者之间的区别和原理
  6. GAE 随机获取实体
  7. 2017.5.7 过河 失败总结
  8. ios系统微信浏览器、safari浏览器中h5页面上拉下滑导致悬浮层脱离窗口的解决方法
  9. iperf3多平台网速测速
  10. 浏览器清除缓存快捷键
  11. 信号指示RSSI与显示格数关系
  12. 电信光猫 中兴ZXHN F412破解
  13. 步进电机主要技术参数
  14. python版钉钉回调
  15. 万年历单片机C语言报告,51单片机万年历C语言
  16. 学大伟业(杭州分校)数学联赛 GA3-1 国奥专题班
  17. n3k配置vpc是否还需要配置hsrp_连结7000系列交换机使用HSRP配置示例
  18. 线性表的应用——多项式的计算
  19. 【Web技术】1257- 基于FFmpeg的图片合成视频
  20. 网络嗅探器设计(一)

热门文章

  1. 自考计算机系统结构总结知识点,自考计算机系统结构复习资料.doc
  2. 游戏背景音乐的种类—BGM
  3. 【离线语音专题④】安信可VC离线语音开发板二次开发语音控制LED灯
  4. 椭圆曲线加密(ECC)elliptic curves cryptography
  5. Sakai的安装使用 1
  6. Python django 个人餐厅管理系统
  7. harry - 用类和对象做吃鸡的人物角色
  8. Java Swing布局管理器(详解版)
  9. linux宿主机文件拷贝,docker容器里怎么复制文件到宿主机
  10. 创建sop的9个步骤