為什麼我熱愛程式設計
程式設計擁有多種面貌。它是結構化思考的科學,是優雅表達的藝術。當你看到他人引人入勝的作品時,它會教你謙遜。最重要的是,它讓你更了解自己。
語法或許會改變,但概念永遠不變。
本文分為兩部分。在第一部分,我將談談程式設計的樂趣。第二部分將探討成為專業程式設計師的意義。
如果你還不確定是否想學寫程式,這篇文章就是為你而寫的。
自動化讓你擁有超能力
會寫程式帶來的回報無窮無盡。你可以在幾秒鐘內幫妹妹整理上千張照片,也可以為阿嬤寫個小小的備份腳本。可能性無窮無盡。
寫程式很有趣!
動手寫程式比使用程式更有趣,甚至比玩遊戲還要有趣。為什麼呢?學會如何幫電腦寫程式,你就能免費獲得最棒的遊戲——你自己的遊戲。你完全掌控一切。那是你的點子、你的邏輯,甚至是你自己的物理法則。這就像蓋房子,卻不用為建材付任何費用。你可以免費蓋起一座豪宅。
分享也很有趣!
想為下一個專案尋找新靈感,就去閱讀他人的程式。這能讓你了解他們如何思考、如何解決問題。許多優秀的程式設計師會與你分享他們最棒的程式碼。你也可以這麼做,與其他程式設計師分享你的專案——或是其中最精采的部分。看著別人使用你的作品,是你能體驗到最有成就感的事情之一。看到自己的工具發揮原本設計以外的用途,更是令人無比滿足。
優雅、富有創意的解法
為了實現你的願景而努力到讓所有不必要的部分自然剝落,是非常迷人的。那些零碎的點子與根本的洞見會突然各就各位,留下的是淬鍊後的真理,是經過雄心勃勃卻充滿回報的思考過程所得到的成果,而當你將它寫成程式時,就能看到所有細小的部分如何協同運作。這正是自己摸索出答案之所以如此令人滿足的原因。程式設計就是把一個問題徹底理解到你能教會一塊金屬如何解決它的程度。甚至連你程式的結構本身,都能成為一件藝術品。它可以同時做到簡潔、巧妙又快速。
與機器對話
用同一種語言就能讓機器與人類都理解,實在令人著迷。當我意識到這些電路竟然能在某種程度上「理解」並詮釋文字時,總感到不可思議。
站在巨人的肩膀上
與其他程式設計師交流、觀察他們工作,是令人著迷的靈感來源。你現在用來閱讀這篇文章的系統,正是依靠他們的成果才得以運作。即使相隔遙遠,你也能在線上透過開放原始碼專案研究他們的作品。但如果有機會,不妨去看看他們在研討會上的演講,並在當地的使用者社群與他們見面。成為社群的一份子是令人滿足的。交流想法、協力合作專案,能幫助你突破自我,每天學到新東西。
盡情享受,忘掉其他
機器不在乎你的膚色。不管你是十二歲的小女孩,還是大學裡的講師,都沒有差別。就算你連續十個小時一直犯同樣的錯誤,電腦也不會對你大吼大叫,也不會懲罰你。它會愉快地等待你的下一個指令。而且,入門門檻其實很低。一台老電腦就夠了;甚至只要紙、筆和一本書,就足以讓你構思很酷的程式點子。
開始行動吧!
只有你能選擇自己的專案,沒有別人。別讓任何人告訴你,你不夠聰明,學不會這些東西。永遠別讓人這麼說。
每一個程式都是一趟美妙的旅程,所以加入我們,一起用程式打造你周遭的世界吧。
隨機一篇部落格