程式設計和音樂的10個共同點

2015-07-06    分類:程式設計師人生、首頁精華3人評論發表於2015-07-06
首先介紹一些背景資訊——程式設計事業是我由來已久的追求,並且過去幾年間我一直專注於做iOS開發。而我成為音樂迷和吉他手也已經有很長一段時間了。

我也為我現在的樂隊做一些音樂製作、錄製和安排工作。目前已經發布了兩個小專輯。
關於程式設計和音樂相類似的這個想法源自於我和我的一個同事的談論。他時不時地向我打聽我的音樂專案的進展情況。然後,他告訴我,
“在我看來,創作音樂,可幫助你成為一個更好的程式設計師。它們之間有著如此多的相似點。”
1.強大的軟體工具
如果你編寫的不是,比方說,JavaScript,那麼你需要一個整合開發環境(IDE)。同樣的,如果你沒有模擬磁帶機和大型的混頻器,那麼你需要一個數字工作站(DAW)。這對於新手而言,軟體往往顯得龐大又有點嚇人。你需要學習如何使用更復雜的命令。而且,從長遠來看,這絕對印證了付出總有回報的真理。

2.讀書
我們可以用谷歌搜尋做很多事情。這能讓你走得很遠,但,從長遠來看,你真的需要投入更多的時間用於閱讀和學習更深層次的教程。音樂創作/製作和程式設計都有著一樣的學習曲線——你覺得你什麼都知道了,卻立馬發現又有新的東西出現並證實你還是需要學習。
3.向同行學習
同高階程式設計師或有經驗的音樂家交談,即使只是10分鐘時間,也可以對你的工作產生戲劇性的積極影響。這一點也普遍適用於很多領域,特別是涉及到需要創造力的技術工作,效果更加顯著。
4.迭代,從容地迭代
如果你想有一個良好的最終產品,那麼你需要迭代,很多次迭代。急衝衝只會導致使用者介面出現bug和奇奇怪怪的噪音。
5.組織自己
正如數字工作站(DAW)中有很多聲軌,效果和選項工作,程式設計工作也有有一堆的類,物件,程式,執行緒和資源會在計算機程式彼此互動。如果你不遵循一些基本的組織規則和模式,那麼你的結果只能是一團亂以及頭大無比。
6.時間預估
顯然的,隨著時間的推移和經驗的累計,你會越來愈擅長於時間預估,但有時這也可能會是一種可笑的缺陷。這種情況主要發生在執行過程中,突然冒出了新點子的時候。

7.練習和堅持成就完美
聰明人不會因為剛開始寫的幾個小程式就沾沾自喜,音樂家也不會因為才編寫了幾個曲目就驕傲自滿。只有不斷地付出辛勤的努力,才會開出鮮豔的花朵。
8.學好數學,才能走得更遠
當然,基本的數學知識的確已經可以讓我們做很多事情,但是多掌握一點,有助於我們走得更遠。無論是演算法或波形編輯,瞭解內部真實的發生過程能讓你更輕鬆地實現你的想法和擴大你的創造力。
9.咖啡
很多時候,如果沒有咖啡,我感覺整個人就不能好好工作了。很多程式設計師同樣如此。這也是大多數搖滾樂手用來提神的東西。

10.知道什麼時候喊停
研究有問題的程式碼塊,或者聆聽一首令人苦惱的歌曲,那麼你需要知道什麼時候應該喊停。通常,休息會,或者甚至更好的是睡一覺,都有助於你發現和解決問題。
上面這些我所說的點子其實並不是什麼祕密。我喜歡製作音樂和程式設計。我希望你也能夠像我一樣在工作和愛好上揮灑激情。哦,對了,大家一起來說說自己的愛好,以及愛好和工作的相通之處吧!
評論(1)

相關文章