自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

悲催的程序員悖論

開發(fā) 后端
這從某種意義上來說是個悖論。通常我們的直覺是,差勁的程序員才會把時間花在蹩腳的技術(shù)上,而優(yōu)秀的程序員的時間是用在高新技術(shù)上的。沒錯吧?我在實踐中發(fā)現(xiàn)了這個悖論,而直到后來我才明白原因。且聽我一一道來。

題目中所指的程序員悖論的定義如下:

 優(yōu)秀的程序員常常會花大部分的時間去做他厭惡的工作,使用他同樣厭惡的工具和技術(shù)。

這從某種意義上來說是個悖論。通常我們的直覺是,差勁的程序員才會把時間花在蹩腳的技術(shù)上,而優(yōu)秀的程序員的時間是用在高新技術(shù)上的。沒錯吧?我在實踐中發(fā)現(xiàn)了這個悖論,而直到后來我才明白原因。且聽我一一道來。

[[124337]]

程序員鄙視什么樣的工作?

對于那些有經(jīng)驗的程序員而言,簡直就是明知故問,不過在這里我主要是給非編程人士解釋一下。

如果一件事完全可以自動化完成,那么那些優(yōu)秀的程序員通常是對此不屑一顧的。如果強迫程序員去做完全可以讓機器(通常是計算機)就可以辦到的事,他會氣得想揍你一頓。程序員的愿望是能讓機器來干完所有的活,是所有哦,哈哈。而只有那些機器辦不到的事,程序員才會有興趣去搗鼓一下。

這是任何一個身心健康的程序員的本能想法。

下面給一個需要自動化完成的事例。假如程序員在瀏覽代碼文檔的時候,需要修正791行的bug。文件總共有1000行,但是他的文件編輯器只能顯示30行。大多數(shù)人會直接選擇向下滾動——滾動——滾動,然后一直到791行。但是作為優(yōu)秀的程序員,能干這么愚蠢的事嗎?他會寫一個能自動跳轉(zhuǎn)到具體行數(shù)的編輯器。例如,“Ctrl-L -> 791 -> Enter” 就是我所用的編輯器。

這個例子很簡單,復(fù)雜的也有。

究其原因就是,一個優(yōu)秀的程序員討厭去做這種機械的、重復(fù)的事情,因為這些繁瑣的小事會打斷他們的思維過程。思維是那么的脆弱,一旦被打斷,就像火車一樣,需要整理一段時間之后才能再次啟動。如果每隔5分鐘就需要做點手動的工作,那么你的思維火車恐怕到不了任何地方。在日復(fù)一日的工作中,程序員需要使用各種工具各種技術(shù)來完成各種項目。所以無怪乎他們會喜歡那些“體力勞動”相對較小的工作,并且特別厭惡需要大量手動操作的項目工作。他們喜歡幾乎都不需要手動的技術(shù)和工具(比如Python,Django 和git),討厭需要大量手動的技術(shù)(這個我就不給例子了,大家自由發(fā)揮)。

但是因為工作需要,程序員在使用可愛迷人的自動技術(shù)的同時,也不得不使用面目可憎的需要手動操作的技術(shù)。這時候區(qū)別就來了,優(yōu)秀的那些程序員會試著不去運用這些惱人的技術(shù),但是也有他根本無法避免的時候。有時是因為他正寫著的軟件的需要,比如,所有程序員在做WEB程序時,無法避免的要使用令人頭大的HTML語言。有時候這些落伍的技術(shù)不能被淘汰的原因僅僅只是因為大家都在用,而程序員需要和大家協(xié)作這么簡單。

時間都被浪費在這些落伍的技術(shù)上

從這個角度來看文章開頭提出的悖論就容易理解了。這種差勁的技術(shù)占用了程序員大部分的時間和精力,而那些好的技術(shù)則不是。每個程序員每天的時間和精力都是有限的,就因為軟件本身的問題,使得他們把大部分的時間精力致力于那些讓他們討厭的技術(shù)和工作上。就是這個原因,那些優(yōu)秀的程序員苦不堪言!

我特別希望能在文章的***提出解決這個問題的方法什么的,但是很遺憾沒有。我們能做的就是盡量減少不好的技術(shù),讓它們滾出我們的生活,而對于那些不能避免的,牢記一個字——忍吧。

責(zé)任編輯:張偉 來源: html5tricks
相關(guān)推薦

2020-09-14 06:55:47

面試程序員MVC

2011-03-22 10:49:53

2013-04-17 09:57:22

2019-04-26 09:55:10

面試程序員動態(tài)網(wǎng)頁

2014-03-28 10:30:20

程序員碼農(nóng)

2020-03-26 15:12:35

程序線程協(xié)程

2011-02-16 09:18:50

人才

2019-11-28 10:55:12

項目開發(fā)公司

2012-06-21 16:37:06

諾基亞WP8

2015-06-11 10:00:06

CISO數(shù)據(jù)泄露企業(yè)安全管理

2011-08-17 10:47:02

亞馬遜EBS

2017-04-01 09:13:48

編程語言框架

2013-08-20 09:33:59

程序員

2011-05-13 14:34:02

程序員

2015-08-13 09:19:37

2017-11-14 21:30:15

2012-11-22 14:00:26

程序員

2012-03-06 09:22:46

程序員

2013-04-15 10:55:09

程序員

2012-11-08 09:49:30

C++Java程序員
點贊
收藏

51CTO技術(shù)棧公眾號