贈與那些鬥志昂揚卻漫無目的的程式設計師的建議

edithfang發表於2014-07-30
我偶然看到幾則訊息,來自於一些漫無目的卻鬥志昂揚的程式設計師:
Hello,大家好!我剛剛學會Erlang/Haskell/Python語言,現在我急需一個大大的專案來驗證我的能力,如果各位有什麼好主意,請告訴我哦!
或者
我熱愛Linux和開源,並且非常希望能啟動一個專案以回饋社會。有沒有什麼重要的程式原先只在Windows下執行的,而現在你想要來個Linux版本的?我非常願意和你協作。
這種完全搞錯了方向的請求真心讓我無語。解決問題的關鍵不是看你有沒有程式語言或者作業系統或者軟體的許可證。說實在的,解決現實中的問題光憑許可證那肯定是不行的。話說,你會相信一個不搞音樂的傢伙寫的樂譜嗎?會相信一個從沒專業地使用過Photoshop做的ps嗎?關於這消極的一面我就不多說了。



下面是我給這些來諮詢的人的建議:

先好好想想所有的個人愛好,然後試著用它們去解決相關的小問題。例如,我是跟著鼓機的節拍練習吉他的,但是我希望能夠在迴圈的鼓聲中加入一些智慧化的元素,如我停頓的時候能自動填充,以及會偶爾產生個小變化等等。那麼我該怎麼做呢?我先是寫了一個簡單的鼓測序程式——甚至都沒有GUI(圖形使用者介面)——然後測試。又比如,我拍了很多照片,這樣我就能使用標註而不必再看像AdobeLightroom這種萬能程式的眼色了。

有兩個要點要牢記:(1)保持簡單,(2)成品是實際有用的。

一旦做出能夠執行的東西,接下來的工作就是一步步改進,不要老想著一下子就能寫出一個能釋出的完美版本,殊不知一口吃不成個胖子,這樣只是徒增壓力而已。要用長遠的角度看自己寫出來的程式和應用,一點一點讓它們蛻變,直到有一天變成蝴蝶輕舞飛揚。按照這種方法,你猜猜,我是否能用HTML5來實現照片分類器的前端介面呢?

如果我們能夠堅持不懈、持之以恆,那麼我們將會成為這方面的專家。即使是狹義的,或許只是跟我們的問題相關的小領域裡的專家,但是,那也是專家了。成為專家會產生一個挺有意思的邊際效應:有些先前看起來十分嚇人、似乎是不可能的改進工作或功能特性,我們現在就可以嘗試著開始去做了。而我們的程式通過改進或許立馬魅力爆棚,吸引廣大使用者的關注。
相關閱讀
評論(3)

相關文章