不良程式設計文化
“這程式碼真垃圾”,當我們翻查一些程式碼尋找一個特別討厭的bug時,同事大聲這樣說。“是嗎”,我回答到。
像這樣的譴責,以及其它一些類似的話,在辦公室裡經常會聽到,而且頻率在增加。而最令人不安的是,這程式碼並不是特別的糟糕。我這話是什麼意思?不能把它們寫的更好嗎?當然!大多數的程式碼都有改善的空間——只要有足夠的時間和資源。垃圾程式碼確實有,我們都看得見,而且都是我們自己寫的,但這並不是問題。
問題是我們有一個不良的“這程式碼真垃圾”文化。
這是一種我感覺在web開發社群中越來越常見的文化。接著上面的例子,我請同事解釋一下,解釋為什麼這程式碼很垃圾,我得不到一個直接的答覆。
“這還不垃圾,你看這程式碼”,他回答說,那種趾高氣揚我需要仰頭才能看到他,緊鄒的眉頭就好象是說,如果不能看出這程式碼有多爛,那就是個傻子。結果你知道怎麼著?我開始感覺有點傻了。我差點就忍不住開始跟著他一起嘲笑,認定這程式碼真的有多爛,多糟糕。
在我繼續下面的內容之前,我發現上面的內容並沒有在最好的光線下描繪我的同事。所以,讓我彌補一下。他是個非常好的小夥。坦白的說,他是我見過的最和善的小夥之一。他友善,有一個他很愛的家庭,他跑馬拉松,樂於助人,聰明,等等等等。還有一點要說明:他是一個經驗不多的新手。他還在學一些基礎的開發知識。這沒什麼好羞愧的,我們都經歷過這個階段。那麼,為什麼這樣一個友善、聰明的小夥,在他參與的第一個大型web專案上,他的第一反應就是去指責一些程式碼很垃圾?——他甚至還沒有真正的去理解它。
生活規律:垃圾往下倒。
這個問題並不單獨出現在程式設計師新手中。很多精明人士都有這習慣。你也許是一個奇才,一個久經考驗的程式設計師,但如果有這樣一種習慣,整個團隊和專案都會受到負面影響。因為新手們把你當作知識和經驗的源泉。越多的人擁抱這種“這程式碼真垃圾”文化,這種文化就會越被認可,越成為模仿的物件。很快,程式設計師開始變的不是積極在專案上出力,而是去貶低別人在專案上的貢獻。最大嘴、最反面的程式設計師很快就成了最受尊敬的人。所有人都受折磨,專案受影響,而一部分人卻能能得到讚美,為倒是都是垃圾而感到心滿意足。
我們應該怎麼做?
沒有人想顯得愚蠢,沒有人想自己的工作被認為劣質。一旦“這程式碼真垃圾”文化開始傳播,唯一能確保自己在別人之上的辦法就是貶低別人。最終,這變成了一種負能量,而不是想著去解決問題。
那麼,對這樣的一種特殊現象有什麼解決方法?阻止它。不要不加思索的否定別人的程式碼——在沒有原因、沒有理解的情況下。有很多的方式可以處理那些看起來有問題的程式碼。如果發現程式碼中有異味,想辦法改進它。從理解這些程式碼開始,在此基礎上修正。如果你發現專案中有一些不良風氣,不要跟隨。如果有人對你說“這程式碼真垃圾”,問他為什麼,然後瞭解查明,去做一些事情讓它變的不垃圾。向最初寫這些程式碼的人瞭解,也許他們這樣寫程式碼是有原因的。幫助他們,而不是詆譭他們。
下一次,當我發現從顯示器裡飄出可疑的異味時,我會轉身問我的同事,“我們如何改進這段它?”因為,我們要面對它們,有時候程式碼會很垃圾,但這不意味著我們也去變成垃圾。
相關文章
- 程式設計不良人小專案合集說明程式設計
- 從百度的PPT文化看程式設計師晉升程式設計師
- 文化館展廳設計公司告訴你為什麼要建設智慧文化館
- 團隊文化建設:擁抱黑客文化黑客
- Java 網路程式設計(TCP程式設計 和 UDP程式設計)Java程式設計TCPUDP
- 程式設計思想 面向切面程式設計程式設計
- 程式設計師週刊(第1期):餓了麼的技術文化是什麼?程式設計師
- 程式語言設計,程式設計哲學程式設計
- 程式設計模式-表驅動程式設計程式設計設計模式
- 程式設計小記-程式設計規範程式設計
- 從程式設計到養生程式設計程式設計
- 【go網路程式設計】-HTTP程式設計Go程式設計HTTP
- 十、GO程式設計模式 : 泛型程式設計Go程式設計設計模式泛型
- 程式設計和網路程式設計入門程式設計
- JAVA網路程式設計(2)TCP程式設計Java程式設計TCP
- 程式設計師何苦為難程式設計師?程式設計師
- 【程式設計素質】程式設計思想總結程式設計
- 美女程式設計師觀點:程式設計師最重要的非程式設計技巧程式設計師
- 程式設計師是貧寒學子翻身的不二途徑,你知道狼性文化嗎?程式設計師
- 盤點多媒體展廳設計企業文化展廳設計中的優勢
- 玩轉 PHP 網路程式設計全套之多程式程式設計PHP程式設計
- 【1024程式設計師節】程式設計師,你學程式設計的初衷是什麼?程式設計師
- Python程式設計:探索有趣的程式碼設計模式Python程式設計設計模式
- Java 網路程式設計 —— 非阻塞式程式設計Java程式設計
- Windows程式設計系列:圖形程式設計基礎Windows程式設計
- 五種Java程式設計高效程式設計方法 - BablaJava程式設計
- Java程式設計師學習Rust程式設計 - infoworldJava程式設計師Rust
- 程式設計師如何獲取新程式設計技能程式設計師
- 幽默:程式設計師成功完成程式設計的眼睛程式設計師
- 【網路程式設計】阻塞IO程式設計的坑程式設計
- 程式設計思想之冪等性 | 程式設計之道程式設計
- 凱撒文化攜手上海交大設立AI創新設計工作坊 塑造文化創意產業新優勢AI產業
- windows核心程式設計--程式Windows程式設計
- 無程式碼程式設計程式設計
- [python] 多程式程式設計Python程式設計
- Python多程式程式設計Python程式設計
- 文化館展廳的設計方案需要注意哪些問題?
- 歷史文化展廳在設計上需要遵循哪些原則?
- 程式設計師程式設計入門一定知道!程式設計師需要學什麼?程式設計師