转载

乐观的程序员

  英文原文:Programmers are Optimists

  程序员可谓是我曾见识过的最为乐观的一群人了。而且,很荣幸地告诉你,我也是其中一员,嘿嘿!

  但是我绝对没有贬低其他人的意思,我的意思是我们程序员只是凡事都习惯性地会往好的方面想。项目、技能、技术、规格、以及各种的未知因素……

  特别是一些未知的因素——因为无法预测,所以可能随时会出现问题。变量实在是太多了。

  有时候我们觉得自己完全能在一小时以内完成任务,但是却因为突发情况导致不得不忙上一整天。

  但是作为程序员,我们总是设想为最简单的情况,甚至是在需要考虑 PI 的条件下也是如此。

  还有一种职业,也常常需要给出各种不确定的猜测——医生。但是,当医生预估错误的时候,很多人常常会觉得很开心,有木有?

  下面让我给你讲个关于这两种职业预估的故事。从中我们或许可以对程序员的乐观主义略知一二。

乐观的程序员

  关于这两种职业预估的故事

  上周五,我的肩膀受伤了,具体说来是锁骨和肩膀之间关节位置,当时我正在玩长板,不知道是怎么回事,重重地砸在了柏油路面上,疼死俺了!

  然后早上我就不得不用左手吃早餐,右手甚至连勺子都拿不起来。

  在急诊室的时候,医生告诉我,骨头和关节看起来没什么大事(错位什么的都没有),但是我肯定是伤到筋了。听到这里,我想 3 个星期的痛苦肯定是免不了了的。“如果特别地疼,就吃点止疼片”,医生郑重其事地表示。

  然而,今天,才过去 6 天,我的肩膀就已经好了 90% 了。今天早上我咬咬牙就可以做 60 个俯卧撑(平时能做 150 个)。甚至跳绳都行了。而且,昨天我的右臂拿了 4 公斤的重物也丝毫没事。

  一两天以后,我就彻底痊愈了,大大短于医生的预估时间。但是我毫不介意,心里非常开心。

  至于程序员的预估

  我需要做一个网页分割算法,目的是决定一个网站中哪部分是标题,哪部分是侧边栏等等。这是一个很有意思的问题,因为任何人都希望主要内容能做到生动有趣。

  该算法在本周早些时候开工,要做的就是合并结果返回给原始的 HTML,以便于利用这些信息。

  “星期五早上就能搞定!”我信誓旦旦。

  但是其实这真的很难的好不好!因为需要用的是我最讨厌的编程语言(Java),相关的经验一点也没有,这种范式也是我不喜欢并且以前都是尽量避免的,再则这个库也是我在两周前刚开始接触的。

  但是我相信自己哪怕并不完全理解这个任务,周五上午肯定能交工!当我预估项目完成时间的时候,这个想法就这么自然而然地映射在我的脑中。我的第一反应就是这应该没错,因为我是一个资深的程序员嘛!

  但是,我并没有按时完成!

  一开始,我不明白什么是 boilerpipe 的对象层次——我花了很多时间就为了扩展特定对象的相关功能。

  接着我发现我使用的 HTML 解析器是线性的,所以没有明确的方法可以确定哪些子节点属于什么父节点。

  最后我几乎将所有的时间都用在了将计算结果添加到 HTML 中——在 DOM 中的每个节点前添加数字。

  我的个神哪!

  乐观的程序员

  当你和一个程序员交流的时候,最好谨记,这个群体都是乐观主义者!是的,即使是最最心灰意冷、总是四处碰壁的老程序员也经常出奇的乐观。因为我们是这样一类人:

  • 总是研究技术方案会改变的项目
  • 使用一堆未知的工具,然后应用于未知的领域……直到 win
  • 每一个新项目的环境各不相同
  • 每隔几年就需要更迭所有的工具

  如果你不够乐观,那就无法作为一名程序员存活下来。

  话说,其他行业的人,能像我们这么乐观吗?

  译文链接:http://www.codeceo.com/article/programmers-are-optimists.html

  翻译作者:码农网 – 小峰

正文到此结束
Loading...