為什麼程式設計師不會最簡單的100到1的輸出?
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
我最近寫了一本書,是關於我們作為程式設計師應該停止抱怨,專注於發展技能的。
其中一個資料要點是基於我在兩個月的時間裡為我的一個客戶執行的22場程式設計師職位面試。
雖然這很難被認為是可取的樣本數量,但它確實暴露了一些關於程式設計師的有趣事實。下面這兩個看似完全無關的問題,是我們在面試中不同時間段提出的:
- 談談當前單位或管理人員的哪些事情是你不喜歡/不滿意的。
- 解決一個簡單的程式設計問題(絕對比著名的Fizz Buzz 問題要容易得多)。
我們的目的是為了研究抱怨和編碼能力之間的相關性。下面是我們收集的資料集合(當然由於我沒有攜帶秒錶,所以已經將資料四捨五入至單位秒):
儘管曲線並不是非常一致,但是總的趨勢依然十分明顯——抱怨和解決簡單程式設計問題的能力之間有很強的聯絡。
挺有趣的,是不是。而更有趣的是,這個實際要求應聘人員解決的程式設計問題難倒了很多人,並且我敢保證這問題絕對比Fizz Buzz 問題要容易得多:
- 約14%的人無法在10分鐘以內解決—— 這時我們需要提下一個問題了。
- 約40%的人需要5分鐘以上的時間才能解決問題,和/或不止一次的修改。
- 只有約14%的人能在2分鐘及以內解決這個問題。
- 約82%的人在解決問題之前,至少得修改一次。 (這意味著實際上他們第一次寫的程式碼是錯的!)
那麼他們要解決什麼問題呢?
輸出100到1。
這就是問題。
關鍵點是什麼?
一開頭你就需要寫“for(int i = 0;”,然後再繼續——在“for(int i = 0;”之前,你不能寫任何東西,並且你不能使用兩個迴圈。
按照這個方向試試。最多兩分鐘,最多4行程式碼,包括花括號在內——但是如果方向不對,就會衍生出很多很多行程式碼。
如果你能在合理的時間內,不犯錯誤地輸出正確的結果,那麼我們就認為你的答案是正確的。
但是特別讓人難以理解的是,無數程式設計師面對這問題——抓耳撓繞,絞盡腦汁,最後甚至於不得不放棄。
不相信?那我告訴你,我曾碰到過兩個程式設計師,在10分鐘攻擂失敗之後,居然說這個問題太複雜了,他們搞不來。
雖然這個小小的試驗顯示了抱怨與技能之間的相關性,但卻並沒有建立任何因果關係。換句話說,我們從這些資料上看不出,是因為程式設計師不具備完成工作的足夠技能才抱怨的呢,還是因為愛抱怨從而使得他們不具備做好工作的技能,這是無法確定的。
也許程式設計師之所以技能不嫻熟是因為喜歡怨天尤人喋喋不休地抱怨,又或許是因為他們總是在抱怨,從而降低了我們對於他們的期望值,不會對他們做過多的要求,於是他們自己也鬆懈了,甚至連最基本的程式設計技巧也荒廢了。
無論是哪種原因,現在存在於IT行業的一個非常可悲的事實就是,你甚至都不需要使用Fizz Buzz這種難度的問題來考校程式設計師的優劣,—— 只要讓他們輸出100到1就夠了。
譯文連結:http://www.codeceo.com/article/why-programmer-not-print-100-1.html
英文原文:hy Can't Programmers Print 100 to 1?
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- 為什麼程式設計師不遵循簡單性?程式設計師
- 為什麼有的程式設計師不會程式設計?程式設計師
- 為什麼新人不會程式設計程式設計
- 程式設計師為什麼不寫單元測試?程式設計師
- 我們程式設計師為什麼會感覺到累程式設計師
- 為什麼程式設計師會有最喜歡與最討厭的程式語言?(earthly)程式設計師
- 程式設計師為什麼不應該加班程式設計師
- 為什麼女程式設計師會這麼少?程式設計師
- 好程式設計師:為什麼很少見到工資高的程式設計師炫富程式設計師
- 程式設計師為什麼會憂慮自己的未來?程式設計師
- 為什麼你還是學不會程式設計程式設計
- 為什麼說程式設計師最花心,有圖為證程式設計師
- 為什麼程式設計師做外包會被瞧不起?程式設計師
- 程式設計師什麼都會程式設計師
- 什麼樣的程式設計師最易漲薪?程式設計師
- 程式設計師最恐怖的噩夢是什麼?程式設計師
- 程式設計師最恐怖的夢魘是什麼?程式設計師
- 程式設計師職場——為什麼驕傲會妨礙我們程式設計師的進步程式設計師
- 不會git的程式設計師,會不會被鄙視?Git程式設計師
- 為什麼要投資程式設計師的幸福?程式設計師
- 漫畫:為什麼程式設計師會死不瞑目程式設計師
- 程式設計師最核心的競爭力是什麼?程式設計師
- 最簡單的C程式設計--順序程式設計C程式程式設計
- 為什麼大多程式設計師黑php不黑python?程式設計師PHPPython
- 為什麼程式設計師新手要考慮接單?程式設計師
- 設計師為什麼要學程式設計,開發者為什麼要學設計?程式設計
- 為什麼程式設計師的工資那麼多!憑什麼?程式設計師
- 為什麼程式設計師反而是最痛恨軟體的人?程式設計師
- 女程式設計師,為什麼比男程式設計師少???程式設計師
- 實驗1_C語言輸入輸出和簡單程式應用程式設計C語言程式設計
- 最爛的1%程式設計師生存指南程式設計師
- 什麼樣的任務程式設計師會認為沒有價值程式設計師
- 你想成為什麼級別的程式設計師?程式設計師
- 為什麼微軟製造差的程式設計師?微軟程式設計師
- 程式設計師,為什麼如此迷茫?程式設計師
- 我為什麼是程式設計師?程式設計師
- 我為什麼會從程式不喜歡加{}到加{}
- 程式設計題:為什麼最後一個a是1不是5程式設計