給黑客們的程式設計挑戰

edithfang發表於2014-12-07
就在不久前,當讀Hacker News上的一篇文章時,我偶然遇到了一個看起來有點愚蠢瑣碎的程式設計小迷惑。我確信只要我坐下來想一會兒分分鐘就能搞定它。然而,這個問題困擾了我好幾周,然後一瞬間我發現自己頓悟了,接著坐下來就解決問題了。我還能說什麼,它真的很難,比我能忍受的更難。下面是這個挑戰的規則:
 
“你必須寫一個能輸出自身的程式。你可以使用任何一門程式語言來寫,但你必須保證在它的原始檔裡至少有一個字元,也就是說,它不能是個空檔案。”
 
當然,如果你只是開啟檔案然後把它列印出來這算作弊,所以你不能這麼做。
 
我不會告訴你答案的,你自己嘗試出來將會帶給你更多收穫和樂趣。
 
我為什麼會這麼做?
       
當你成為一名真正以寫程式碼為生的程式設計師時,你很可能就有解決你每天遇到的程式設計挑戰的本事。唯一一些能讓你停下來的就是時間和程式碼質量了,但如果你忽略掉這些,你可能就只會寫出醜陋、不可維護、蠻力但還能解決問題的方案什麼的。
 
當你開始解決這個問題時,你很快就會意識到用平常那種蠻力的方式只會導致麻煩。
 
如果你把自己當做一個黑客或者程式設計的極客,你一定能感受到解決這個迷惑的強烈驅動力。我不能脫離開強大的洞察力,或者一些開創性的學習經歷,只有當你心裡變得溫暖時,你才能最終讓這個程式輸出它自身。
 
用你的聰明才智愉快地解決這個問題吧!
       
為黑客正名
       
“黑客”一詞是作為“用創造型性的方式去解決問題的人”初意而發明的,只是後來有些不懂規矩在網際網路世界尋求刺激、搞破壞的“駭客”出現,然後無知的媒體們為了博得噱頭便開始用“黑客”一詞做擋箭牌,漸漸地現在黑客被抹黑,以至於現在表明立場的時候都說自己是“傳統黑客”,既恪守規矩,創新性地解決很難的問題的人。沒有最初的那幫黑客,現在我們的電子、軟體技術要落後好多年,他們才是人類進步的功臣。
       
原文:http://shiroyasha.github.io/a-challenge.html

(翻譯:PHP100_Alex)
來自:PHP100
相關閱讀
評論(1)

相關文章