看板 Soft_Job 關於我們 聯絡資訊
我當過學生,也當過助教,出社會之後也工作過一兩年。 當學生的時候,遇過好老師也遇過爛老師,不過我覺得重點還是心態。 先不管學校給了什麼,而是自己付出了多少?然後問問自己,你的目標是什麼? 以前大學的時候我自認還算努力,少夜衝,少夜唱,暑假寒假都在看書寫程式。 但是感覺進步緩慢,雖然逐漸有成長,但是沒有充實感。 經過反复思考,我想關鍵在於壓力。 大三下的時候把所有要實作的科目都擺在一個學期來個以戰養戰。 雖然辛苦得差不多要掛了,但是pass了之後功力大增也是事實。 大四的時候接了程式設計的家教,另一所大學的學生, 從她大三下教到研一還是研二畢業吧。因為某些原因我遲了兩年進研究所, 所以她研二的時候我才研一。這三年中也教過不少科目,其中影像處理,密碼學 這些還是馬上看馬上教。論文的講解很多也是即時的。 教學過程中她其實很愛問問題。也很愛追根究底。這三年其實很好的鍛煉了我的口才, 還有思維能力。最重要的發現是,有壓力的情況下,人的潛能幾乎是無限的。影像處理、 密碼學這類書對我來說,充滿了看一個學期都不知道能不能看懂的數學公式, 但是有個人在旁邊等你教, 看個兩三遍就大概知道在說什麼了,然後還要馬上轉換成 簡單易懂的敘述, 集中力瞬間變超強. 我想重點還是在壓力.壓力讓你集中, 轉換成簡單易懂的敘述強迫你理解. (所以我現在超愛嘴砲的 orz) 研究所當助教的時候,幫老師改程式作業,叫學生來 demo 程式, 基本上我也不管程式來源, 只要你有來,說得清楚程式邏輯,基本上就60分, 你改了變數名,很好,有誠意. 給你65. 你美化了 input, output 畫面,有創意, 70分跑不掉, 難得看到不同的版本我都感動得要哭了. 那些來都不來的, 我根本沒法救. 先不管老師教得好不好,我教程式的時候看到有人在打呵欠,感覺一整個就很差. 你不想學又何必來? 我喜歡教人,但我還沒有強迫症. 有人打呵欠基本上我就草草結束了. 所以, 不難想像老師看到有人在睡覺的心情. 09年畢業了, 到台北找工作, 在金融風暴結束後不久, 也沒有很難找, 把學生時代的作品整理一下, 寫一些設計上遇到的問題和用哪些 design pattern 解決, 面試7家左右就找到工作了, 基本上有面試的都有上,只是薪水我要求不能低於40k, 所以7家裡面只有2家算符合這個條件. 題外話: 七家裡面有一家還拿著我的作品跟我說: "我們公司不需要 Design Pattern 這些理論上的東西, 你有沒有辦法證明你 coding 的能力?" (我心裡OS:"最好是沒寫過程式的人能了解 Design Pattern") 進了公司之後, 發現世界其實很大, 以前在學校也算稍微會寫程式的幾個人之一, 但是60人的公司,感覺強者比比皆是. (除了HR, 你隨便抓一個人都能討論程式) 有沒有想過這些人是怎麼來的? 回頭看看你走過的路, 他們也走過, 而且有些 1x 歲 就開始走, 永遠不要以為你已經夠強了, 跟你一樣的人比比皆是. 還有很多更強的你還 沒有遇到. 之前在版上也拜讀過許多強人的文章和面試經驗. 回頭看看自己,充其量也只是一個 "稍微努力一點的路邊程式員". 最後, 差不多要上班了, 總結一下: 1. 壓力! 壓力能讓你快速成長. 就算沒有這個環境, 也自己製造出來(以戰養戰) 2. 敘述! 敘述能夠讓你將學到的知識快速確認一遍. 並且加深印象. 3. 環境! 強者林立的環境能夠快速的將你的境界提升. 然後給還在學校的學弟們一點心得: 資訊業這行,強者林立,天才到處都是, 努力的人多不勝數, 如果不是天才, 如果沒有決心, 真的不要進來, 因為沒人會看到你. 心態很重要: stay hungry stay foolish ※ 引述《andymai (人生只有一次)》之銘言: : ※ 引述《AmosYang (Zzz...)》之銘言: : : “如果想被當成一個大人對待,享受當大人的自由 : : 那得先表現出大人的樣子,負起當大人的責任” : : 國小、國中、高中,我們可以說學生還是孩子,沒有投票權也沒有刑事責任 : : 書讀得不順利,我們可以硬說是老師沒把小孩子教好帶好 : : 然而,如果到了大學還要把責任扯到老師身上,在我看來是很奇怪的事 : : 易言之,如果到了大學還不主動開始承擔教育自己的責任, : : 那要什麼時候才開始為自己的人生負責? : : 我認為,大學生要當得起這個“大”字,在大學裡不止是學課程書本上的東西, : : 還要學“學習的方法”;遇到好老師是福氣,遇到爛老師是帶衰 : : 如果一個大學生把“因為老師教得爛所以我學不好”當成理所當然的事的話, : : 在我看來實在是幼稚了些 :) : : 看到這些或許有人會好奇地問: : : “學校收了學費不就是應該要負起教育學生的責任嗎?” : : 是的,學校收了學費是該作些事,但“大學”與一般補習班、訓練所不同的地方在於 : : 大學是“學術研究機構”,學費只是拿來買入場卷的,就像買了 StarCraft 2 : 問題是... : 學費支出的地方不僅僅是入場券... : 教授的薪水難道沒有佔上一部份? : : 還是得靠自己衝上 Grand Master 一樣;交了大學學費之後還是得靠自己去贏得 : : “學士(Bachelor of Science)”這個稱號;這個稱號不只是“畢業”這麼簡單, : : 這個稱號代表著你有最基本的獨立研究學問的能力;這就是為什麼大學文憑值錢 : : 如果有人拿著槍指著大學生的頭逼著選系,那當我以上都在瞎扯 : : 如果是大學生自己選了資訊工程相關學系然後再來抱怨 : : “老師教得不好,沒有引起我學習程式的興趣” : : 那…找個政治人物,把責任通通推給他/她吧 :D : 還是忍不住想回一篇... : 的確~努力是自己的責任 : 但在推文底下回完之後,我反而想到了一個問題! : 既然已經繳了錢~我也很努力 : 那我為什麼要忍受一個教授拿了我的錢~卻講些我聽不懂的東西 : 到頭來~我只好自己自修??? : 這不就像是到書店去買了一本書~回家才發現看不懂~又不能退 : 付了錢當冤大頭! : 我也知道可以旁聽~但並不是所有的教授都能接受... : 我也知道可能考好一點的學校就可能遇得到好教授... : 但這些都不能掩蓋一個事實: : 教不好的教授難道不該下台嗎??? : 為什麼要保留他們~卻讓其它比較好的教授進不來? : 這個問題從小學到大學都一樣... : 而且有的研究所更嚴重~付了錢還得當郵差和掃地工是怎樣? : 從頭到尾沒有一點建設~僅剩一點意義就是讓你拿到那張文憑? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.13.75.213
Plutojack:看到大大只能給推了... 10/24 08:50
viable:壓力@@? 應該是看到異性腦子瞬間活化了吧 10/24 09:11
rean14:講的好好 大推:D 10/24 10:07
k0783154:講到精髓 推! 10/24 10:40
rex1224:實在很難想像沒有design pattern觀念下寫出來的程式... 10/24 11:58
qrtt1:design pattern 是一種經驗的結合,不懂不代表不會啊xd 10/24 13:03
qrtt1:但問題在表明了排斥接受它的態度。 10/24 13:04
qrtt1:當對方說出這句話時,大概就先在某些面試者心中有了負評。 10/24 13:05
MICHAELSHENG:很棒的文章 推一個 10/24 13:11
lovdkkkk:推強者到處都是 10/24 13:17
fanntone:有時候問題就是答案XD 10/24 14:55
Lordaeron:別整天design pattern了, 如果你的程式, 整天都在 10/24 17:28
Lordaeron:相同的案子, 就去pattern 一下, 但別忘了, 不管是 10/24 17:29
Lordaeron:哪公司的ERP 都沒有什麼大不了的pattern可以家家的. 10/24 17:29
walao81:Design Pattern不是銀彈,但我覺得至少是必備的入門工具箱 10/24 18:54
minstrelsy:真的有遇過一嘴好design pattern但變不出程式的人... 10/24 20:23
Lordaeron:哦,嘴砲打天下的多囉, 我從不認為哪套東西叫入門的. 10/24 21:47
Lordaeron:因為你會了design pattern, 然後呢? 依然是爛系統滿街跑 10/24 21:48
Lordaeron:要開發一系統,能用上design pattern 的, 你基本上是已 10/24 21:49
Lordaeron:經寫過哪套系統一次或以上的,才知道有哪些pattern. 10/24 21:49
Lordaeron:否則連系統是圓的是扁的都不清楚,怎麼pattern法? 10/24 21:50
Lordaeron:而系統寫過一次了,重寫時,就會東加西減的,到頭來還有沒 10/24 21:51
Lordaeron:有哪麼多pattern在還是一個問題, 另外,一個系統的 10/24 21:57
Lordaeron:要repeat多少次或多相似的才能叫pattern? 10/24 22:05
godspeedlee:重點是,千里馬沒有遇到伯樂也沒用~ 10/24 22:58
andymai:design pattern只是參考~實際運用時當然要自己看狀況變化 10/24 23:19
Lordaeron:哦, 但很容易遇到巴樂. 10/24 23:19
andymai:如果硬要套某個模式~有時候反而是拿石頭砸自己的腳... 10/24 23:19
coronach:個人覺得實務上來說Refactor比Design Pattern有用... 10/25 00:25
walao81:1.Design Pattern重點在於分析變動和不變的部分,選用適 10/25 00:27
walao81:當的pattern來降低需求變動而影響的範圍,如果套用了 10/25 00:27
walao81:pattern還是爛系統,是套用的pattern不合理?還是需求不 10/25 00:27
walao81:明確?是什麼東西爛這裡並沒有定義。 10/25 00:27
walao81:2.開發一套系統,從low level design 階段應該就有足夠 10/25 00:28
walao81:的資訊決定選用那些pattern. 而且系統應該也不會等寫完 10/25 00:28
walao81:了才知道是圓的還是扁的? 10/25 00:28
walao81:3.重寫時的改變需要的應該是持續的refactory, 10/25 00:28
walao81:Refactory to Pattern這本書不錯。 refactory時該拿掉 10/25 00:29
walao81:的pattern就拿掉,我們追求的應該是Design Pattern所帶 10/25 00:29
walao81:來的scalability而不是Pattern本身。 10/25 00:29
walao81:4.找出系統repeat或相似的pattern,這裡的pattern聽起來 10/25 00:29
walao81:像是指固定模式的商業邏輯,個人感覺比較像是framework。 10/25 00:29
walao81:5.個人較偏好把Design Pattern當成是大師們展示如何使用 10/25 00:29
walao81:delegation, composite等技巧來達成Object Oriented 10/25 00:30
walao81:Principle的火力展示,改一改L大說的話,會寫OOL,爛系統 10/25 00:30
walao81:還是滿街跑,重點還是OOA和OOD,大師們已經把某些OO難題 10/25 00:30
walao81:優雅的解出來了,讓我們知道OO是可以如此優雅。Design 10/25 00:30
walao81:Pattern對我來說是Well Object Oriented Design的範例。 10/25 00:30
kimkao:只能推walao81 10/25 00:48
Lordaeron:實務上來說, 宗教式支持OO 的人,多說也無益, 喜歡就好. 10/25 07:21
Lordaeron:但不管用什麼方式,一套好的系統, 正確性是一定的. 10/25 07:22
Lordaeron:除此之外, 就是穩定, 然後還是穩定, 最後才是反應快. 10/25 07:23
Baternest:時時保持肚子餓&像個傻瓜 10/25 09:28
walao81:讓自己成為飢餓的傻瓜? XD 10/25 10:13
gname:推~ "宗教式支持OO 的人,多說也無益" 真的很無益..= = 10/25 12:27
zanyking:我到越來越覺得『快』是一個重要的功能,不快就是不好。 10/25 13:50
zanyking:並不是說快比其他的重要,而是整個標準已經往上墊一層了 10/25 13:50
zanyking:正確穩定對User來說變得理所當然。 10/25 13:51
Asciiss:讚 :D 10/25 22:54
juriolegend:只使用成品framework當然不需要OO 10/26 04:14
walao81:沒有OO真的知道成品framework是怎麼運作的嗎? 10/26 05:26
Asciiss:Lordaeron 對於 design pattern 的見解是我見過最有趣的… 10/26 13:16
Asciiss:舉例來說…要寫一個從來沒接觸過的新專案… 10/26 13:17
Asciiss:要不要使用 MVC 等 pattern 難道需要在第二次後才決定嗎? 10/26 13:17
Lordaeron:哈...MVC? 講誰都會, 你有進行過二次開發比較過嗎? 10/26 21:32
Lordaeron:還是你只會套個struts 就叫MVC 了. 10/26 21:32
StubbornLin:... 寫同樣的專案才用得上pattern 原來如此 科科 10/28 07:45