揭开程序员各种行为的面具
程序员一直都是很善良的IT工种,勤勤恳恳不辞辛苦的工作,不过今天的文章不是为了宣扬程序员的伟大。尽管在互联网的发展中,他们贡献了无数的代 码,用自己的技术推进了互联网的进程。我们还是要扒一下程序员的装13行为,可能会有很多程序员看了本文会十分的愤慨,但考虑到你们很忙,没有时间黑公园 网站,我也就不客气了。 程序员你还说没有装13
写代码离不开各种编程工具,有众多工具供选择便有花样的喜好,对装13的程序员来说,是坚决要抵制IDE的,IDE臃肿缓慢,一定是要用vim加编 译器的组合。vim和emacs就代表高端,用IDE就是low。我不否认很多大牛使用vim,但也有不少写不出好的程序还要用vim装的,很多明明用起 来很吃力,操作不熟练,好像非要用vim才能写出优秀代码一样。 用vim配合各种快捷键、扩展觉得顺手,加上vimer本身优越感,其他的编辑器一如emacs和notepad++ 之流就是渣,深爱一种编辑器便唾弃其他的,即便是口上不说,在黑客马拉松上看到别人在用什么UltraEdit写代码,内心也会鄙夷一番,顿生自己很牛X 的幻觉。 还有自认为Mac写出来的代码比Windows写出来的优秀,去咖啡馆看一看,拿Mac的就两种人,不疼不痒的文艺小青年和自以为是乔布斯的码农。 听说写代码很牛的工程师都用Happy Hacking Keyboard,在好不容易挣了点钱之后,狠下心花了2k多买了个HHKB键盘,还必须得是无刻字版。看着清一色没有任何字母的键盘,一想到也用上了这 么高端的键盘,好像技术能力也飙升了一样。技能不怎么样,装备是不能落下的。
鼠标的发明让用户使用电脑的门槛降低了很多,图形化的界面加上自由移动的鼠标点击方便了操作。在程序员眼里并不是这样的,鼠标对他们来说就是累赘,它是效率的杀手。一定要用各种指令,所有的操作都在键盘上狂敲,这样才能体现出技术水准。 对于某些崇尚开源文化的程序员来说,只有开源的软件才能让他们兴奋,不开源的软件都是受到异样的眼神看待。甚至在他们眼中,是不能理解为什么会有人 写出这么烂的Windows 。他们恨不得所有的软件都是开源的,这样就可以更多的复制那些优秀的代码,而那些自己写的程序则是不希望让外人看到源代码,大多是因为自己代码写的太烂。 不加班的程序员不是好程序员,他们经常以自己在深夜编程为荣,甚至宣称在深夜开发才有灵感。最好还要在半夜发条状态:每天看着星光回家感受特别充实之类的。实际上的原因很简单:碌碌无为的白天引发的愧疚心。 某些自身的需求,比如在豆瓣租房小组里找房,一般人浏览一下小组内容,就可以获得自己需要的信息。程序员们一定要用高大上的方法,要写个脚本,抓一下数据,然后再根据自己的需求关键字检索一下,否则不足以凸显程序员的独特技能。
对于产品的升级,增加新的功能,程序员们会以工程难度大、很难实现为理由,抵触做一些改进,如优化之类的。已经做好的工作不想改动,那么背后真实的原因是什么呢?往往是之前写的代码太烂了,不愿意回首再读,设计之初没有考虑扩展性。他们甚至宁愿重新写,也不愿再改动代码。 在一些上司不太懂技术的公司里,一个项目分配下来之后,程序员会用各种专业的技术语言来跟上司沟通,用上司听不懂的重构、迭代等术语来“阻止”这个项目,实际上不就是为了给自己多争取点项目时间。 程序员的世界里,是恨不得所有的电脑都和他的一样。用最后一点耐心完成某个项目的代码后,提心吊胆的在自己的电脑上运行没有问题了,提交上去之后, 服务器怎么就跑不动了。在我这运行没有问题的程序,为什么在你这边就出现问题了,一定是你的电脑配置有问题。反复问清楚你的情况之后,确定这不是你的问 题,才承认是自己程序的bug。
本来能10行能解决的程序,一些程序员一定要把它拆开,一层一层的用设计模式去做,不断的面向对象的包装,包装的一层一层又一层,码出来100多行 代码,这样他们才感到高兴。虽然不会太影响执行效果,但代码让人无法看,于是下面每一个读代码的程序员都会觉得上一个写代码的是傻X。
说的就是蒙蔽自己的程序员
互联网技术的发展中,程序员的功劳毋庸置疑,他们用一行行的代码打造了很多产品,丰富了我们的各种体验。他们有着心怀用技术改变世界的梦想,但种种 对技术的偏执也产生了很多装13的行为。上文列了这么多的症状,程序员这么一善良的物种未能幸免。我们来看一看程序员装13行为背后的动机。 在电脑发展初期,还没有图形界面的时候,一提到黑客、程序员,我们都会自行脑补他们面对着黑压压的屏幕,敲着各种字符。vim和emacs纯文本的 工作环境也让他们沉浸在写代码的快感中,久而久之vim就代表着老练,以至于后来有些程序员崇尚vim ,以为用vim就代表技术能力强。使用通用编辑器并不是问题,但熟练编辑器的使用和技术能力强是两码事,当你所常用项目中有某个IDE拥有十分吸引你的特 色功能时,尝试使用它。何苦逼着自己很吃力的用vim ,跟自个过不去。 程序员喜欢用自己的技术来解决一些问题,这本不是装13的行为,可以说是值得鼓励的,很多伟大的互联网产品都是从最初一个不经意的意外尝试开始的。 这并不是意味着遇到问题就首先想到用代码解决,花一大段时间来解决一些技术难度不大的问题,没有实质性的意义。非要用技术来解决这个问题,凸显自己好像技 术很强的样子,就是装。 也不知从什么时候开始,加班成为程序员的习惯。在各种传奇的创业团队经历多少个日日夜夜开发的故事鼓舞下,以为半夜开发就能写出很牛X的代码,就能 有更多的灵感。不断的这种事迹,让他们逐渐在潜意识中植入白天写不出好代码的概念,于是白天的工作效率也就很低下,而这种靠深夜开发获得成就感的行为,实 在是可悲。 装13的本质就是不愿意承认事实,用一种假象来蒙蔽别人。对程序员来说,不愿意做一些改动,优化工作,不能理解 为什么在自己电脑上运行没有问题在服务器上就跑不了,这种情况就好解释了。他们找出各种理由来搪塞,试图掩盖事实。真相大多是因为之前的代码写的太烂,可 读性不高。而当自己与其他人合作的时候,看到别人写的代码,心里也会默默的鄙视一番,实际上你写的也好不哪去。 大家都知道了,你装13给谁看
程序员是需要不断的学习的,在还没有写出牛X的产品的时候,好好打怪升级。切合自己的实际需求,来选择合适的工具,技术不怎么样的非要硬逼着自己装 出很牛X的感觉,也就骗骗自己,技能不够用再好的装备也发挥不出来水平,相信玩过游戏的都有过经验。也别非遇到什么问题都想着写个程序来解决,对这样的程 序员们,我有一个问题,你现在有女友吗? 一个简单的问题,好像必须复杂化才能凸显自己的能力似的,于是想方设法的用各种代码设计,码完了自己看着是开心了。等回头需要改动的时候,代码写的一团糟,自己都不忍心回首,就别找理由来忽悠别人了。
【转】
|