by 王垠
不少程序員自豪的把本身叫作「黑客」(hacker),把編程叫作 hack。但是卻不知,其實在最高級的程序員眼裏,「黑客」實際上是一個貶義詞。他們更願意被叫作「程序員」(programmer),或者計算機科學家(computer scientist)。固然,你有可能以一個 hack 從「世界一流大學」拿到一個 PhD。可是 PhD 其實不說明任何問題,世界上有太多的人擁有 PhD,其中絕大部分都是 hack。hack 的本質是不會變的——它是低級的工做。程序員
hack 的意思原本是這樣的:當你無法改變一個東西的時候,如何繞過它的毛病達到目的。因此 hack 這個行爲自己就包含了妥協和醜陋。偶爾作一些 hack 無所謂,但是被叫作「hacker」,就表示這我的不能從根本上解決問題,而只是知道如何 hack。好比,繞過某種語言的莫名其妙的毛病,實現一些在別的語言裏早就能夠輕鬆辦到的事情。不少頂級的程序語言專家有能力設計新的語言,從而從根本上解決問題,而不是受到現有技術和語言的限制,因此他們對於「hacker」這個詞有另外的見解。編程
固然我並非歧視 hacker。實際上每一個程序員在某些時候都須要 hack。可是我想說的是,咱們不該該以 hacker 來稱呼本身而且引覺得豪,或者歧視那些不明白這些 hack 的人,由於這些 hack 實際上是不須要存在的東西。因此何不自嘲一下:「我作的事情雖然有用,可是其實就是個 ugly hack。」post
This article was posted at yinwang’s sina blog,
on 2012-07-02.
Though it’s not available on the blog now.設計