本文是html5tricks原创翻译,转载请看清文末的转载要求,谢谢合作!
题目中所指的程序员悖论的定义如下:
优秀的程序员常常会花大部分的时间去做他厌恶的工作,使用他同样厌恶的工具和技术。
这从某种意义上来说是个悖论。通常我们的直觉是,差劲的程序员才会把时间花在蹩脚的技术上,而优秀的程序员的时间是用在高新技术上的。没错吧?我在实践中发现了这个悖论,而直到后来我才明白原因。且听我一一道来。
程序员鄙视什么样的工作?
对于那些有经验的程序员而言,简直就是明知故问,不过在这里我主要是给非编程人士解释一下。
如果一件事完全可以自动化完成,那么那些优秀的程序员通常是对此不屑一顾的。如果强迫程序员去做完全可以让机器(通常是计算机)就可以办到的事,他会气得想揍你一顿。程序员的愿望是能让机器来干完所有的活,是所有哦,哈哈。而只有那些机器办不到的事,程序员才会有兴趣去捣鼓一下。
这是任何一个身心健康的程序员的本能想法。
下面给一个需要自动化完成的事例。假如程序员在浏览代码文档的时候,需要修正791行的bug。文件总共有1000行,但是他的文件编辑器只能显示30行[......]