如何學編程,JUST DO IT!

jopen 11年前發布 | 6K 次閱讀 編程

如何學編程,JUST DO IT!

        在不知道什么是回調函數之前,Michelle Bu 做出了自己的第一個網頁。他在個人博客分享了這段有趣的經歷。

        Michelle 有一個筆記本上涂鴉的習慣。某次夏季旅行中,他畫了一系列的三角形,覺得很酷。然后,他決定做成網頁,或許能夠讓自己在 Tumblr 上顯得很酷。

        他開始向學習計算機的朋友求教。他們的建議可以總結為一句話 : “去 Google 它”。當他說找不到答案的時候,朋友告訴他去 Google “CSS triangle”。

        “抱歉……CSS 和三角形有啥關系?”

        談話通常會突然結束,或者是“CSS 簡單的說,就是你給 HTML 設定風格”。

        每次談話都讓他感到自己很無能。不過,他還是發現了用 div 和一些 CSS 代碼做出三角形的方法。最初的代碼是這樣的:

如何學編程,JUST DO IT!

        這樣的代碼還要持續 165 行。

        然后,他了解到有個叫 jQuery 的東西,能夠使用名為“Animate”的 API 來改變三角形的屬性。比如,如果使用 $(‘#something’) .animate ({ ‘opacity’: ’0′ }),就能使某個三角形消失。他想到的是,如果想要 20 行三角形接連消失的話,需要 20 行一樣的代碼。

        于是,他把 jQuery 中的代碼貼到了自己的 JavaScript 文件里。后來的代碼成了這個樣子:

如何學編程,JUST DO IT!

        他很高興的發現,代碼發揮了作用,三角形按照他的設想消失和再現。他把代碼給一個真正的軟件工程師看。出乎預料的是,工程師沒有諷刺他,“沒有程序員會做出這種事情”。然后,這位工程師說,“沒有人會寫出這樣的代碼,因為他們不會有這樣的耐心”。

        這逐漸成為了一個愚蠢的破冰話題,“hey,你花了兩個小時解決 CoffeeScript 中的空格問題么?看看我,花了一天的時間, 寫了 21 層函數和 200 行一模一樣的 HTML 代碼。”

        如今,Michelle 要從伯克利大學畢業了,恐怕也不會再去寫什么代碼。不過,他覺得自己從這件事情中領悟到一個道理。

編程是困難的。不要因為你不如身邊的人擅長‘Google 它’而感到難過。永遠不要讓參加黑客馬拉松的勢利眼阻止你為貓做 Twtter 或者做公廁 Yelp。即使是最傻的主意(比如試圖去做個可以消失和再現的幾何動畫)也能提升你的編程能力。學習編程更多是學會去學習——而學習的最好方法是‘做’。

到最后,要做一個合格的程序員,不僅僅是你贏了多少場黑客馬拉松,或者你想出了多少新花樣,而是執行力、關注細節、不妥協的專注,以及構建和破壞的激情。

如果你對自己的代碼感到害羞,我同意你去嘲笑一下我做三角形時的 21 層回調函數。

        圖來自:wired       

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!