另一種現實是每天面對著螢幕debug -> coding -> study ->debug,三不五時會想起人生活著的目的是什麼,我是那種把興趣變成吃飯工具的人,從大學讀農學院到轉讀資工所,然後進入業界工作,心得是興趣還是當興趣就好,把興趣當工作那是另外一回事了,工作是有壓力沒自由,所以興趣就會走味了。
話說回來,平心而論在資訊業工作算是比上不足、比下有餘,不差啦!但也好不到哪裡去!
另外,不知道你未來想做些什麼?如果走embedded的話,語言就只要C就可以了,學生很容易犯一個錯,以為技術都要學越新的越好,或越多越好,事實上這樣的觀念不對,還有就是對硬體的瞭解和對作業系統的聊解,這個遠比學程式語言要更花時間,另外最基本的~英文要好,至少要夠你查資料、看資料。
很多網友提到了庫存、資料庫、遊戲、‧‧‧等等的,
都是不錯的選擇,但每個領域慣用的語言是不一樣的,
寫程式基本上核心價值在演算法以及應用,語言本身大體上可以說是你學會一樣,學其他的就很快,
(ML, Scheme, LISP, 其他functional language這類的語言除外啦....能熟練運用這些語言的人我覺得都是神XD)
但是你所打算走的領域很重要,
舉例,如果你想走Windows應用程式,那麼就算你C再精,卻沒有Windows programming所需的常識(例如前面網友提到的COM+, 事件管理之類的),那你一樣根本無從下手;
如果你想走資料庫應用,那麼就算你語言再精,卻沒有資料庫結構的知識、不知道檔案處理的原則,你也一樣難以下手;
如果你想走遊戲設計(舉3D為例好了),就算你再熟析C/C++,卻連TnL是什麼都不知道,你也一樣無從下手;
如果你想走股票分析(程式交易之類),那麼就算你再熟析VB/VBA/Perl/Python/Ruby...等等語言,你沒有對應的domain knowledge,不知道TS、WealthLab是什麼,你也不會知道你該怎麼下手;
如果你想走硬體設計,那麼就算你再熟析C/C++,但你沒有系統規劃的概念,那麼你拼湊出來的東西會容易有不穩定、bug叢生、效能低落、‧‧‧等等的問題;
舉這麼多例子不是想澆冷水,而是希望你在學的時候可以想想你究竟想要做什麼,
如果你原本是修冷氣的,你可以想想看學了之後能不能用程式自己去寫控制冷氣的程式(我寫過,還挺好賺的);
如果你原本是開雜貨店的,你可以想想看學了之後能不能自己刻個像電影一樣的交易管理介面放店裡(舉例: 去youtube搜尋NTT docomo Vision 2010看看影片中的片段);
如果你原本是做貿易的,你可以試著去做一個進銷存系統,那麼就可以朝著資料庫方面以及Windows programming方面走;
如果你原本是開餐廳的,你可以試著去做一個餐廳座位管制系統,即使這類東西市面上很多現成的了,但你還是可以去創造一些與眾不同的東西;
如果你原本是醫生,你可以試著去弄個醫療型專家系統(國科會有專案在研究哦);
如果你原本是生化工程師,你可以試著去學幾何演算法跟基因演算法,可以去分析一下怎樣蛋白質結構可以破壞細菌病毒等等的(例如Folding@Home那種的軟體)。
總之,我是覺得,知道你自己到底想要做什麼是最重要的!
有了方向之後,在做的過程中你就會知道要達到那個目標你會需要什麼,然後朝著那個目標去學就是了。
不過如果你只是想跟電腦溝通的話....那接著去學machine code吧~(光速逃)