這一年即將到達尾聲,
我也要學日本清水寺寫出我自己一年來的代表字,我選:
「虛」
台灣由網路票選出了“讚”來代表2011的代表字,
我實在是不知道該說甚麼!(讚個屁)
進入工作領域也2年了,我只能說我大都在“維護產品”,
在舊的功能上做得更加完善、debug、replenish document。
比較驕傲的降低CPU的loading在運行例行性counter計算的時候。
但這也只是瞎貓碰到死耗子,誤打誤撞的結果,
幸運的找到了一個癥結,但毫無特別技術可言。
- Trace: ARP packet flow
- Trace: MSTP
- Maintain: CFP/ACL (OAM, MIB (rowstatus), … etc)
- TANTOS switch chip (很好入手的一顆簡易switch chip)
- Study: OS concepts
- Work: SPI interrupt mode
- Warning Free
- Study a book: 程式設計師的自我修養 (推薦給所有韌體工程師)
以前學生時代我是該被人討厭的,
因為我就是那個讀完5次都會說自己沒讀完但是考很高的那個ass hole。
但是那些罵人的人可能不大理解
為啥大多數成績好的同學都會有這個可惡的通病。
當我無法完全融會貫通的時候,就是沒讀完,就這麼簡單。
因為每次考試我當然絕對不是全然滿分,
回想這些被扣分的地方就剛好是不懂的(廢話)。
每次考完都發現這是“沒讀完”所引起的,
下次有人問我:「你讀完沒?」我直覺就是沒讀完。
這份該死的沒自信讓我在讀書時期維持一段上進的態度,
設定完該有的進度後會拼死的讓自己進入讀完的狀態。(雖然很多都讀不完)
說了這麼多,我發現進入職場後我似乎喪失的這份心力。
我開始沒計畫的工作,
因為我不知道終點,不像期末考說考到第五章,我可以一天讀一章。
我無法融會貫通,
我了解的都是片面,我常有瞎子摸象的感覺,我時常認為大象是一塊牆、四根柱或是一條蛇。
沒有正確的解答,
只要能work就對,但是你不知道是不是最佳的作法;
對未來沒有遠景,
這產品做完了,下一個是?!我哪時候、到哪個程度可以升到更高的職位?!
2011這年,我對於工作有點虛晃一招的感覺。(又是 “沒讀完” 的延伸?!)
所以讀書那套已經不是工作這套了,
改變自己的態度與學習的過程才是進入職場所必需要的。
雖然我不能決定我的工作scheduling,但是我可以規劃我自己的學習。
2012年的展望:
- 一天一小時的英文
- 一個月一篇工作專業blog文章統整
- 一季一本專業書籍閱讀
- 記錄每次讀過的書籍與其心得(雜書/電影也算在內)
- 要求自己的作息正常(一星期2次運動/12點半前上床睡覺/11
點前洗完澡)
- 少喝點加糖飲料
- 休閒: MG sinanju Ka. + TAMIYA 1/12 機車模型一台
- 心情保持輕鬆: always find the way
- 對餅乾好一點
好在我的休閒倒是挺實在的,我今年做了3台HG與1台MG的模型。
我自己是挺開心製作模型一次一次的進步,甚至連攝影也慢慢考慮進來了。
(這啥鳥攝影棚 哈哈)
最後祝大家都新的一年一元復始、萬象更新。
加油~不用擔心太多,things will be fine as long as we keep going
回覆刪除不過給你一點我個人的小建議,或許可以參考看看:
1. 不需要每天一定要有多少進度,重點在確實理解背後的精神。因為有些觀念看似簡單,但要實作過後才會真的知道細節(像function call的stack變化),而有些實作看起來複雜,但其實概念上不難(像動態記憶體管理),所以有時會疑惑、會卡在某個後來覺得很簡單的觀念,都是非常正常的事情,這時可以先放下,找人討論或轉看其他東西。
2. 從基礎學起。有不少基礎的軟體知識對電機系的同學來說太陌生了,導致很多既有的前人智慧沒有被注意到,建議可以先練一下底下這幾個基礎(很多書可以看,我提供我看過覺得讚的):
>> 軟體概念:foundations of computer science by Al Aho and Jeff Ullman
這本書講了許多基本的資料結構與算法的基本設計技巧,以及計算機科學中最重要的一些抽象概念,並且以大量的程式碼實作讓你非常實在的練練功。在深入研究每個子領域前,我都會複習一下本書的相關章節。
>>系統概念(包括硬體):Computer systems: A programmer's perspective second edition
這本書講的是第1本書所比較遺漏的部份,包括CPU架構、記憶體階層、I/O、系統程式...,都算是要從事系統面程式設計所必備的常識。
這兩本書在序言都說的很清楚,就是為了當作CS入門用的教科書,也都是由第一流的學者與作家所寫成。
其他領域當然還有非常多知識可以學習,像物件導向、作業系統、進階資料結構與演算法分析與設計技巧、函數式程式設計、資料庫、編譯器、程式語言設計...以及一大堆額外的CS應用(網路、多媒體、遊戲...),不過這些我建議在獲得整體的軟硬體概念之前(了解前兩本書的大部份內容之前),先不用急著深入去看,工作時要用到就了解一下就好(先記著,晚點再進攻),不然應該是會常常卡關,或沒有足夠深度的體會然後就過去了。:)
說真的,有時我蠻後悔當初選擇電信系,應該念資訊系的。:P
感謝學長的建議與分享,最近有空閒也會先由基本功先練習。當初大學都在研究底層實體通訊/調變技術,後來大四才有接觸一些程式,研究所的我居然都在算數學,的確對於很多資訊基本方向都不是很理解,不過就像你說的,keep going吧!!繼續扎實的練習。
回覆刪除還是感謝學長的耐心指導,現在回顧起來我的確問了許多都是基本的問題。未來我如果整理些技術的文章,有錯誤還請多多指教。^^
我發現我也是真的進入工作領域之後,才對寫程式跟OS的運作有比較清楚的瞭解,雖然自己也有找一些書來看,不過還是覺得如果以前大學有修過課會清楚很多呀~~
回覆刪除最近有幸剛好可以用Linux來做OS而非我們公司的OS來做嵌入式系統,也剛好是第一次開發可以摸到許多開機的過程,舉例說booter、file system 與其他硬體設備驅動程式的掛載!看見許多Linux的特色!
回覆刪除大家一起加油,以後有機會請多多討論與研究 ^^