1. 程式人生 > >狼與哈士奇

狼與哈士奇

狼是自然界中真正的掠食者,而哈士奇不過是人類的玩物。兩者長得確實很像,就如同IT界的Programmer和Coder。如果用狼和哈士奇來隱喻這兩種職業,Programmer無疑是軟體業真正的狼。

一 “哈士奇”的習性

  • 他們寫出機器可以理解的程式碼。
  • 他們的程式碼依靠註釋讀懂。
  • 他們只在工作時間寫程式碼。
  • 他們不喜歡看書,但偶爾會看看視訊。
  • 他們只會閱讀別人的部落格,自己從來不寫。
  • 他們關注的僅僅是進度。
  • 他們僅僅是複製程式碼。
  • 遇到問題他們會直接問同伴。
  • 他們總是認為自己會的很多,喜歡用海量的“精通”來裝點自己的簡歷,假裝高手。
  • 他們每天沉寂在C+V的死迴圈中,並不斷地抱怨需求變更。
  • 他們會因為學會了某種程式碼的寫法,而驕傲自滿。
  • 他們一邊在被動地接受需求,一邊在抱怨不合理的需求。
  • 他們不會檢查自己的程式碼,在測試暴露缺陷之前,他們往往難以發現。
  • 他們不認為自己要為程式碼質量負責,那應該是管理者和測試的事情。
  • 他們在拿到任務後會直接開始工作。
  • 他們往往具有文件恐懼症。
  • 他們並不崇拜專業人士。
  • 他們擅長推卸責任。
  • 他們對編譯警告棄之不理。
  • 他們只是在寫可以執行的程式。
  • 他們會拖延不喜歡的任務。
  • 他們更容易放棄自己的設計。
  • 他們的程式設計往往止步於編碼的表象。

二 “狼”的習性

  • 他們寫出人可以讀懂的程式碼。
  • 他們的程式碼風格統一併具有自描述性。
  • 他們不僅在工作時間,在業餘時間也會寫程式碼。
  • 他們會看大量的書籍,閱讀大量技術資料,當然也會看視訊。
  • 他們不僅閱讀別人的部落格,他們自己也會寫部落格,他們認為分享知識是快樂的。
  • 他們不僅關注進度而且更關注程式碼的質量,提供現實的進度方案,在上司面前堅持自己的意見。
  • 他們複用程式碼而不是複製程式碼。
  • 遇到問題他們會嘗試自己解決,訪問社群,然後才會詢問同伴。
  • 他們總是認為自己還能做的更好,並對那些巨人由衷地敬佩,在不是高手時不假裝高手。
  • 他們經常在思索如何能夠解耦,用靈動的設計應對突然到來的變更。
  • 當掌握某種程式碼的寫法,他們看到的往往是背後深層次的問題,並向專業水準看齊。
  • 他們會對不合理的需求說不,並在工作中嘗試影響他們的領導。
  • 他們會經常重構自己的程式碼,並維護自己的缺陷核對表。
  • 他們認為提高程式碼質量是自己的責任,併為自己的過失而負責。
  • 他們在拿到任務後,會在行動之前,進行分析和計劃,而不是馬上編碼。
  • 他們往往會認真閱讀專案文件。
  • 他們和希望提高軟體開發技能的人為伍,參加交流會,加入某個社群參與技術討論。
  • 他們敢於承認錯誤。
  • 他們將警告與錯誤同等對待。
  • 他們在構建自己徹底理解的程式。
  • 他們將不喜歡的任務認為是對自身的磨礪。
  • 他們往往堅持自己的設計。
  • 他們的程式設計往往深入語言,觸及思想。

三 做狼還是哈士奇

  狼和哈士奇的隱喻意味著Coder難以在技術實戰中戰勝Programmer,但現實是,往往Coder更受歡迎,如同哈士奇更討人喜歡一樣。原因很簡單,Programmer在眾多Coder之中顯得格格不入。Programmer能更快更高效地完成任務,他們討厭加班,抵制低效的流程,他們對自己的能力深信不疑,並經常堅持自己的意見,對不合理的需求說不。這些,在僱主的眼裡就是叛逆。而Coder就低調很多,他們甘於加班,對設計沒有意見,不會對需求說不,出了問題他們總在說,這是別人的問題。他們兩者的程式碼,在外行看來沒有差別。在僱主眼中,往往那些閉嘴加班的員工更應該重用。

  也許,Programmer們並不想讓自己被孤立,但現實卻是殘酷的。人們缺少包容,善意的提醒,也可能會被認為是賣弄,是對權威的挑戰。狼只有在狼群中,才能得到自身的認同感。軟體的構建者是Programmer而不是Coder。如果你是一匹狼,而你有感受不到團隊的認同感,那你不妨換一換環境,因為,和臭棋簍子下棋,永遠無法進步。

  如果你是位開明的領導者,當你讀到這篇文章時,我真切地希望你能留意那些“帶刺”的員工,因為很可能,他比你團隊中的其他人都看的更遠。

  如果你是名程式設計師,那麼請你選擇到底是做狼還是哈士奇。狼可能沒有安穩的生活,沒有豐盛的午餐,但卻擁有強大的力量,自由,以及尊嚴。

原文連線

相關推薦

狼是自然界中真正的掠食者,而哈士奇不過是人類的玩物。兩者長得確實很像,就如同IT界的Programmer和Coder。如果用狼和哈士奇來隱喻這兩種職業,Programmer無疑是軟體業真正的狼。 一 “哈士奇”的習性 他們寫出機器可以理解的程式碼。 他們的程式碼依靠註釋

的壽命有多長

寵物狗 哈士奇的壽命到底有多長?一般來說狗狗的壽命維持在10-15年,品種不一樣老化的也不一樣,大型犬老化的比較快,小型犬則稍微慢點。其實這和平時主人是怎麽餵養他們,有沒有定期的去帶著他們檢查身體,定時打針吃藥有關,平時只要註意關心點哈士奇的身體情況和運動和疾病

CSS3 SVG實現可愛的動物和狐狸動畫

今天,我想向大家展示如何巧妙地使用HTML、CSS排序動畫和SVG濾鏡把生活中可能最可愛的東西之一——動物畫到網頁上。我們將探討繪製動物的兩種技術:一種使用純HTML和CSS,另一種使用內聯SVG背景影象。 此演示高度實驗性質——動畫SVG濾鏡目前僅在Chrome中可用。 所涉及的動畫也很複雜,因此本教程將

01揹包-01 高數Umaru系列(9)——

高數奧馬魯系列(9) - 哈士奇 時間限制:1000毫秒記憶體限制:65536 KiB 提交 統計資訊 問題描述 由於高數巨養的喵星人太傲嬌了,要天天吃新鮮貓糧而且還經常欺負高數巨,所以高數巨決定買幾條哈士奇嚐嚐鮮。這天高數巨來到了二手狗市場買哈士奇,高數巨看完了所有的

SDUT 4367 “跳啊跳”

哈士奇“跳啊跳” Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description      哈士奇喜歡

哥本(aspnetx)

這個筆記系列主要記錄了在BI專案中,如何搭建環境進行原始碼管理以及文件管理。 用到的產品包括: TFS Express Sharepoint Visual Studio SQL Server 配置Sharepoint2013支援文件版本管理筆記 搭建程式碼管理環境之服務端 搭建程式碼管理環

九. 常用類庫、向量希5.向量及其應用

構造 pty obj 元素 init container right setsize 使用數組 Vector(向量)是 java.util 包中的一個類,該類實現了類似動態數組的功能。向量和數組相似,都可以保存一組數據(數據列表)。但是數組的大小是固定的,一旦指定,就不能改

5.2夫曼樹——夫曼樹夫曼編碼

node i++ insert 編碼 urn all IV right style #include <stdio.h> #include <stdlib.h> struct TreeNode{ int Weight; Huffm

[BZOJ 1412] 羊的故事

TP span size int clu TE %d break lin Link: BZOJ 1412 傳送門 Solution: 非常明顯的最小割模型: 將所有點分成兩個互不相鄰的點集,且要求代價最小 建圖: $<S,sheep,INF>$ $<w

Pinpoint 集群環境部署尼源碼搭建

jre_home 環境 mixed java source lin npoi grant 配置 安裝java 安裝迪士尼源碼搭建(企 娥:217 1793 408) cd /home/vagrantcurl -OLtar -xzvf jdk-8u112-linux-x64.

資料結構——第二章樹和森林:04夫曼樹夫曼編碼

1.結點的路徑長度:從根結點到該結點的路徑上分支的數目。 2.樹的路徑長度:樹中每個結點的路徑長度之和。 3.樹的帶權路徑長度:樹中所有葉子結點的帶權路徑長度之和WPL(T) = ∑wklk(對所有葉子結點) 4.最優樹:在所有含n個結點,並帶相同權值的m叉樹中,必存在一棵其帶權路徑長度取最小值的樹,稱

數據結構——第二章樹和森林:04夫曼樹夫曼編碼

一個 例如 stat state 森林 ont 技術 圖片 http 1.結點的路徑長度:從根結點到該結點的路徑上分支的數目。 2.樹的路徑長度:樹中每個結點的路徑長度之和。 3.樹的帶權路徑長度:樹中所有葉子結點的帶權路徑長度之和WPL(T) = ∑wklk(對所有葉子結

C類 牛客練習賽31-B贊迪卡之聲妮莎奧劄

-- cstring end class init 代碼 color names stream C類 牛客練習賽31-B贊迪卡之聲妮莎與奧劄奇 題意: 兩個人輪流腐蝕道路,每兩個點間只有一條道路,誰最後沒有可以腐蝕的道路及輸了。(兩個都是聰明的) 分析: 不是每條路都能走,

灰太光頭強

         國產動畫是不是都是一個導演導的?         《喜洋洋與灰太狼》跟《熊出沒》頗有一些相似的地方,那就是灰太狼跟光頭強都是充當

贊迪卡之聲妮莎奧札

奧札奇軍團降臨!贊迪卡陷入危機!無盡輪迴鎢拉莫和真理屠夫寇基雷帶領著這群龐大的掠食者在贊迪卡肆意破壞。旅法師妮莎瑞文必須要阻止這一切。 在贊迪卡時空的一角,有 n 個寇族的部落。為了抵禦奧札奇的進攻,這些部落之間聯絡密切。在任意兩個部

資料結構演算法 (七) 夫曼樹(Huffman)夫曼編碼

1.演算法思想          哈夫曼樹又稱最優二叉樹,是一種帶權路徑長度最短的二叉樹。所謂樹的帶權路徑長度,就是樹中所有的葉結點的權值乘上其到根結點的路徑長度(若根結點為0層,葉結點到根結點的路徑長度為葉結點的層數)。樹的路徑長度是從樹根到每

資料結構知識整理 - 夫曼樹夫曼編碼

主要內容 基本概念 構造思路 儲存結構 構造演算法 哈夫曼編碼的引入 求哈夫曼編碼   基本概念 1)路徑:由一個結點到另一個結點之間的所有分支共同構成。 2)路徑長度:結點之間的分支數目。 3)樹的路徑長度:從樹的根

夫曼樹的搭建夫曼編碼

什麼是哈夫曼樹 在介紹哈夫曼樹前,我們先介紹二叉樹的基本概念,以便大家更好地理解哈夫曼樹: 路徑:兩個節點之間分支的連線即兩個節點之間的路徑。 路徑長:兩個節點之間路徑所包含分支的和。 深度:根節點的深度為0,其子節點的深度為1,往下逐一遞推。 子節點數:和

資料結構-2-夫曼樹夫曼編碼 原理詳解

 首先,介紹下什麼是哈夫曼樹。哈夫曼樹又稱最優二叉樹, 是一種帶權路徑長度最短的二叉樹。所謂樹的帶權路徑長度,就是樹中所有的葉結點 的權值乘上其到根結點的 路徑長度(若根結點為0層,葉結點到根結點的路徑長度 為葉結點的層數)。樹的帶權路徑長度記為WPL= (W1*L1+W

建立夫曼樹並進行夫曼編碼夫曼譯碼

圖例 以上圖例解釋: c語言實現程式碼: #include<stdio.h> #include<malloc.h> #include<string.h> #define N 100 #define