發表文章

目前顯示的是 2014的文章

機會在哪裡?又或者,機會來了你在哪裡?

圖片
  第一次看覺得滿厲害的 今天第二次看這個Talk Show 有些心得記錄一下 1. 機會是留給準備好的人,是嗎? 這裡打個一個「?」,Why? 因為我覺得這句話講得不錯,但 不夠積極 我看過一個說法是: 弱者等待機會,強者創造機會 。 這句話是居禮夫人說的,也是我的座右銘之一 前半段張衛健講的,也是這個道理 衛健演了十年的配角,回頭一看,赫然發現,機會在哪呢? 十年過去了難道等的時間不夠嗎?還要繼續等下去嗎? 因此當衛健積極的去找製作人談、去說不care任何薪資 為的只是一個「 機會 」! 這個主動出擊才能創造屬於他的機會出來,但這之前也有一個重點 衛健在這前面這段說服製作的人過程中,有說到「所有角色我都演過, 我準備好了! 」 這個就是我們最先最先要問自己的問題 我準備好了嗎? 我準備了什麼? 我投入了多少時間來準備? 是我們從小到大最習慣的臨時抱佛腳,還是投入了 一萬個小時 ? 如果沒有前面這段十年的歷練,即使衛健積極的去爭取這個機會 即使機會來了,會成功嗎? 未來的生活不像考試,臨時抱佛腳的招數在學校可能有效 甚至這種投機方式所得到的結果,比認真準備的同學來的更高分 BUT, 拉長時間來看,投入一萬小時的人,學到的就是自己的,像是拿刀在石碑上「刻」 臨時抱佛腳的人,三天就忘光了,像是拿毛筆在石碑上「揮」 總結來看,「 一萬個小時法則  + 主動創造機會 」是我覺得最棒的價值觀! 2.魅力是可以訓練出來的 有時候看到一些人的演講 看到一些運動選手 看到一些表演 都覺得「哇~這個人好有魅力、好帥」 仔細再思考一下 為什麼他們能這麼有魅力? 得到的結論是 累積 魅力是累積出來的 為什麼我這麼覺得? 如果沒有足夠的人生經驗 沒有自我的想法自己的觀點 沒有一萬小時累積出來的實力 又怎麼會肖想自己要一夕之間變成有魅力的人? 所以現在即使在學校之中,能做的事情也很多! 要上台presentation,花個三四個夜晚練習報告,again, again and again! 有實習機會、有工讀機會,趕快去累積人生經驗 不擅長美工、不擅長表演、不擅長social,so what 就是不擅長才要去try阿!累積一點勇氣 當總召、當

文件製作技巧-Word

文件製作是我們資訊人最「基本」,但也最容易忽略的一塊  文件的好與壞,給人的觀感是差很多的 就算不懂正式格式的人,用一般的美感判斷,也很容易可以分辨出好的文件與壞的文件 那要怎麼產出一個正式、美觀的文件? 如果沒有經過一些指點,其實很難知道到底錯在哪、哪邊不符合格式  大學期間從大二開始經過教授的「嚴格訓練」後,也有點小心得了 非常感恩那時候教授願意花很多時間,不厭其煩的指正我們文件的錯誤,畢竟這些東西是「經驗」居多!!  不過這種技巧不像是體育技能,久沒做了常常就會生疏忘記,只好先記下來方便日後複習了。 以下都是個人經驗,有錯誤再麻煩糾正一下啦~ 【格式】 可以上網查APA格式來參考引用的寫法,記得要用最新版本。 一定要有目錄、頁碼! 標號直接從上方工具列的「樣式」>「標題」進行設定,就能直接產出目錄 記得要「左右對齊」,確定最右邊也是對齊的 不要再用空白鍵跟Enter鍵來排版了... 善用「Tab」跟「Ctrl+Enter」 字體要統一(中文可以用標楷體、英文用Times New Roman) 中文為:壹、一、(一)、1、(1) 英文為:Ⅰ、(Ⅰ)、A、(A)、a、(a) 內文段落間文字敘述之數字,利用阿拉伯數字 (1);(2);(3) …表示。 頁首頁尾的部分可以「分節」,不同節之間可以獨立設定格式。 段落遺留字串要注意 。 不要讓單一行跑到一頁的最頂端,一個選擇是把多一點內容往下一頁移,另一個選擇是把遺留字串整合到上一頁。 段落要設定第一行縮排兩個字元 【用字遣詞】 文章中代表同一個意思的詞,要統一。 例如:中央大學資管系、中大資管、中央資管...,沒有絕對要選哪一個,統一就好。 正式文件中,不要出現火星文! 一條一條去檢驗是否都有做到 基本上如果都有符合,文件看起來就有一定水準了 想到有新的內容,會持續更新

思考、選擇、負責 ─ 面對人生的態度

感謝麥兜分享的影片: 這影片給我的啟發很多 1. 勇敢當的瘋子 2. 吸引到其他人或是找到能夠一起瘋狂的人(團隊) 3. 速度 & Just do it One guy = nut But, 總要有一個人先出來當個nut! 即使很蠢很好笑,so what? 沒有嘗試過,就永遠不知道做這件事到底有什麼結果? 影片中的起始者,或許從沒想過會引起這個群眾運動,只是單純的嘗試 一直想著, 「要是這學期修了25學分,會不會爆炸?會不會忙不過來?」 「要是去微軟實習,會不會能力不足?會不會不是我想要的工作?」 「要是創業會成功還是失敗?會不會被嘲笑?會不會跟不上其他同學的發展?」 太多的「要是.....會不會....?」 想,很好,做事之前有仔細的思考是非常必要的 但是,這些事情 有哪一件,是光靠想就能知道結果的? 更重要的是 做 !Just do it! 邊做邊想,是我們這個世代的趨勢 人生本來就沒有對錯,一切都是選擇 「思考、選擇、負責」 是我從大學以來不斷嘗試學到的經驗 思考 做任何決定(決策)之前,蒐集資訊決定是最重要的事情,孫子兵法謀功篇就說「知己知彼,百戰不貽;不知彼而知己,一勝一負;不知彼不知己,每戰必貽。」 (這句話又可以開另一篇了.. 但我要謹記文章不能太發散XD) 無論如何,選擇前總要有個依據,在商場決策上,更需要客觀的數據,不能光靠直覺。現在Google大神雖然發達,但在上面的資訊太混雜,真假難辨 更重要的是你查得到的,別人一定也查得到 所以一定要經過自己腦中的思考,這個資訊能夠怎麼運用,才能讓資訊發揮價值,做出與他人的差異化 思考的方向:「永遠不要說;『以前我們這樣做,所以...』。環境在改變,每天都要想著『現在可以怎麼做』,才能利用IT,改變世界。」 選擇 在思考過後,通常會有兩個以上的方案可以選擇 我的下一個轉捩點:畢業後,要找工作還是創業? 這兩者並沒有對錯,各有優劣, 要先去大公司實習 當然是一條路,但花的就是時間的機會成本 我覺得一定要在Nothing to lose的時候,好好"踹"一次! 用力地跳出舒適圈吧。 選擇的信念:「有些事,現在不做,一輩子都不會做了」 負責 選擇沒有對錯,但我覺得負

座右銘

自從高中看了《練習曲》,裡面一句「有些事現在不做,一輩子都不會做了」 影響了我接下來四五年的時間,把握大學四年用盡全力work hard, play harder,之後便常常會記住一些很受用、激勵人心的話 整理一下,方便日後回顧時,檢驗是否還有遵照這些理念而行 「有些事現在不做,一輩子都不會做了。」───《練習曲》 「很多事不是你能不能,而是你肯不肯。」 第一次看到這句話,這是在澎湖的一個杯墊上看到的一句話,覺得很棒,於是買來送給弟弟。但我覺得這句話不論是在課業、在運動競賽(我很愛運動跟練習)、在做任何事情,都很適用的一個態度! 「弱者等待時機,強者創造機會。」───居里夫人 逼自己走出舒適圈,成長才會快 這個是自己提醒自己的話 XD 「Work hard, Play harder」 這個是上大學前,給自己訂下的一個簡單的理念。 大學四年應該是最自由、最有活力的階段,我想好好學習,但更想把握機會好好地做自己想做的事情! 實際上在四年間貫徹了這個理念,玩得可能比別人更多,但學得並不會比別人少! 因為知道要放肆去玩之前,必須把所有工作做好,才能玩得安心。 在玩的過程,知道這是給自己努力工作後的獎勵,所以玩得更用力! 一個正向的循環建立之後,所有好的事情都是自然而然會發生的 (2014/11/30) 「當你的生命只剩下一分鐘可以活的時候,你會想做什麼? 我會讓每一秒都過的很有意義。」——《啟動原始碼》 「當你和別人都做一樣的事,當然只能和其他人一樣」 現在想想考研究所似乎也是有點犯了上述的錯,當時是有點想法,但也有一些原因是不敢用力跳出舒適圈 現在有這句話時時提醒自己, 不要害怕跟別人不一樣 。 那怕只有一次機會,都要用盡全力翻滾!──《翻滾吧!阿信》 很勵志的本土電影,一方面彭于晏身材真的太強啦!!!偶像 而且我喜歡這部電影是因為他有我最愛的運動主題+熱血精神!

Maximization?Optimization!

最近聽到這兩個詞的比較,套用在系統的效能分析上,是個不錯的解釋 不過我卻反而想到了在管理議題,曾經思考過的一個概念 頓時有種海闊天空的感覺,一掃最近的鬱悶 ------------------------------------------------------------------------------ 每個團隊,其實追求的並不是最大值(Maximization) 或者說,要是為了追求最大值,就會在不知不覺中,陷入前陣子那種鬱悶感中 團隊的資源、人力常常不是個人能決定的,而是由各種因素,組成了這個團隊 這就是「先天限制」,也就是 資源有限 的概念 那既然每個團隊的資源量都不同,大家都追求同一個最大值,合理嗎? 這也是在管理的方面,一不注意就忽略的點 曾經在辦營隊的時候,有思考過一個問題 我們的團隊並不是個人能決定的,即便是有了分組,擅長的內容與擅長的程度也都不同 那今天如果身為一個領導者 要做的應該是「 引導一個80分的團隊,發揮出90分的成果 」,甚至是「 讓60分的團隊,產生80分的價值 」,這才是最佳化Optimization的概念 而不是不管任何先天限制,一味的追求那個最大值100分 在管理上,如果為了追求最大值,而忽略的資源限制,就會產生一個現象: 「領導者覺得成員為何不做到100分,開始責備成員;成員覺得為什麼已經做得比平常好了,還是得不到讚賞」 在這種互相不信任、對立的氛圍中,任何團隊都是會瓦解的 反倒應該是認清每個團隊的「現在最大值」,激勵所有成員去挑戰它,去協調、引導成員的合作,找出最佳的合作模式,一步一步地從65、70、80慢慢成長,即便最後成果不是100分,在整個合作過程中會達到多贏的局面 ──  所有成員都能在良好的團隊文化中,體會到成長的成就感 。 這時候的關鍵點是在領導者身上,如果沒有轉換成最佳化的概念,不論領導者個人有多厲害,都不能帶領出一個強悍的團隊;甚至可以說如果是個人能力太強,更容易加速團隊的瓦解。 我想,試著去引導團隊的風氣,才是較適合的做法

完全跟coding無關的實習階段性心得~

哎呀~今天要紀錄一下coding以外的東西了XD 實習的第一個階段已經完成了,接下來又是一個新的開始,先稍微整理一下收穫吧。 收穫其實很豐富,不過聽說三點 式 是最吸引人的,簡報通常大家也只記得三點。 那只好化繁為簡了~ --------------------------------------------------------------------------------------------------------- 1.實際接觸是最快速的學習方式 對我而言這三周新訓可以說學很多,接觸到一些沒寫過的語言、沒有深入思考過的OO概念... 不過更重要的是透過 印證學校所學的內容! 舉例來說學校有教過Water-Fall開發方式,也說過這個方式缺點是文件多、時程長、反應慢等缺點。 然而在SA&D課程中,都只能憑空去「想像」,然後得到「嗯....真的」這樣的結論跟收穫。 當我真正去接觸一個軟體開發時,才能更深刻的體會到這個過程究竟有多漫長、這些缺點是否真的像之前學到的 書裡學的東西的確很寶貴,但對我這種不太愛記理論的人來說,直接去做去摔跤,留下來的疤痕我就會記得了!XD 這幾天呢,終於有點時間喘息,順便反省一下 回想一下SAD學過的開發方法:SDLC、Agile、Scrum 回想一下專題開發的兩三個月衝刺:跟現在Full-Time的工作方式有何不同 回想一下自己專題做過的需求分析、時程規劃:跟實務上的做法差在哪?(天壤之別阿QQ~之前做得差不多只是扮家家酒的等級) 回想一下自己負責coding的工作內容:跟現在coding的模式、要求是否相同 一個一個回想過,發現差在哪,那就是收穫了! 現在回頭來看,雖然之前做的是扮家家酒等級,但曾經也是沒日沒夜的拚了才能有如此成果。 套一句 Scrum 的說法「雖然還是一直失敗,但每轉一圈,失敗就愈來愈少」 現在大概是我的第二輪吧,雖然一些workshop還是都滿失敗的,不過進步了一點點已經很開心了,哈哈。 接著就要進入第三輪了! 又要失敗了 ----------------------------------------------------------------------------------------------------------

簡易的命名原則

實習以後時再遇到太多的"實務經驗"的洗禮了 以前繳作業大概就是能跑出結果,不要出大問題就ok 雖然也都教過一些原則跟"良好的程式"應該具備的東西,不會被釘的時候常常就....可以看就好啦~ 然而到了實習發現很多原則不遵守都不行,甚至要求的還比較嚴格 因為在專案變大已經不是自行玩玩的小程式了,人員、規格、嚴謹程度都大幅提升 也開始懂得「為什麼測試步驟常常被跳過」、「程式設計師跟需求端的溝通困難」之類的心情了XD 不過被釘了三個禮拜後,確實也學到滿多經驗跟擴展一些視野 今天記錄一下學到的一些命名原則 命名的要有意義: 最基本的要求,在境界上「讓大家不用看註解就能看懂」是最佳情況,因為註解可能寫的跟程式不同,但所有根本應該都還是程式。 盡量不要縮寫,把完整單字寫出,除非有特定領域大家都可接受的縮寫: 確保其他人一看就看得懂的意思 有「 Camel Case 」和「 Pascal Case 」兩種主要的命名方法 Camel Case:第一個字開頭小寫,後續單字開始大寫。如:firstName Pascal Case:第一個字開頭大寫,後續單字也都大寫。如:FirstName 避免使用符號、空白跟底線: 利用第3點的方式來命名 命名沒有絕對,可以參考團隊的開發手冊,整個團隊可以接受有共識即可。 另外不確定是OO都這樣還是只有Java(相較其他OO語言,只對Java比較熟悉一點...) 類別名稱常用名詞,以大寫開頭(Pascal Case); class ImageSprite; 屬性名稱、參數名稱常用名詞,小寫開頭(Camel Case); float myWidth; 方法名稱常用動詞開頭,小寫開頭(Camel Case); runFast(); createTable(); 介面名稱常用形容詞,以大寫開頭(Pascal Case)。 interface Storing; 介面的命名通常會加上I:例如Customer類別要實作ICustomer介面 天吶~記不完,程式設計這種東西呢...最好的方法就是 多寫,養成習慣!! 羨慕那些良好的Coding Style,可以寫出漂亮、乾淨的程式>< 菜鳥如我呢,也只能沒日沒夜的co

網頁應用程式開發的一些基礎觀念

圖片
今天又是一蹋糊塗的課程,大致整理一下把內容規程三塊吧 1. JSP、JavaBean和Servlet介紹 2. 系統開發分層概念 3. MVC模式 ----------------------------------------------------------------------------------------------------------- 1. JSP、JavaBean和Servlet介紹 JavaBean跟Servlet都是Java類別。 但Servlet是繼承自javax.servlet.HttpServlet,所以可以收Httprequest和送Httpresponse等網頁應用程式的基本功能。 而JavaBean就單純的是個Java類別,可以繼承自任何類別;其用途是介於JSP和Servlet之間當作傳遞的橋樑。似乎又可以分為兩種用途:工具或是單純的參數物件 相關參考連結: JSP、Servlet 與 JavaBean 的組合應用 ---------------------------------------------------------------------------------------------------------- 2. 系統開發分層概念 三層式架構:   這裡的 三層指的是Presentation Tier、Business Tier、Data Tier ! 圖片來源:http://criticaltechnology.blogspot.tw/2011/09/mvc-in-three-tier-architecture.html 在古代的應用程式是只有兩層:前端的表現層跟後端的程式+資料庫。 但在現今的環境下,我們已經把程式跟資料庫分離,讓 資料維護 以及 程式維護 獨立。 因此現今的網頁應用程式就分成三層,讓各層的工作更加確切跟獨立。 而我一直把這三層式架構跟MVC模式喇在一起,傻傻分不清楚。 其實 兩者是不同的東西 ,三層式架構是軟體架構。 而MVC模式則是在程式設計上遵循的一個方式,也就是設計模式,讓程式設計師跟UI設計師可以更清楚的分工。 如果把兩者拉在一起看的話,M-V-C三者的集合大致上就是做

泛型是什麼?

今天又聽了一堆名詞....記都記不完,也聽不太懂XDD 只好花時間問Google做功課 進入正題,泛型簡單來說就是用來增加彈性,例如當我們 有同一個演算法,可是要處理的參數型別有很多種 ,就可以透過泛型來設計。 舉例來說List、ArrayList這些都有泛型的設計,所以我們在使用時可以進一步限制他們的型別。如List<String>、ArrayList<Customer>(Customer是自己設計的類別) 接著看泛型的使用,直接先看例子: class Node< T >{      private T  value;      T getValue(){           return value;      }      setValue( T value){            this.value = value;      } } 當我們在使用此Class時 Node< String > node = new Node< String >(); 就會做出下面這個Node class Node< String >{      private  String  value;       String  getValue(){           return value;      }      setValue( String  value){            this.value = value;      } } 那我們如果是其他的型別 Node< int > node = new Node< int >(); 則會做出下面這個Node class Node< int >{      private  int value;       int  getValue(){           return value;      }      setValue( int  value){            this.value = value;      } } 上面這個例子就可以看出來Node這個Class用到了泛

Eclipse環境設定

有鑑於Eclipse可能重灌或在其他設備上使用,把一些常用的設定筆記下來。 把提示的功能設為所有字母 工具列的Windows -> Preferences -> Java -> Editor -> Content Assist 1.勾選 "Enable auto-activation" 2.Auto activation delay 為提示出現的延遲時間,可以設為 0 3.Auto activation triggers for Java 為遇到何種字元會自動啟動提示,預設只有 dot,改為.abcdefghijklmnopqrstuvwxyz(, 移除一些不需要的套件 工具列的Help > About Eclipse 點選左下角 Installation Details。 點選要更新或移除的套件,下方會有 update 或 remove 可選擇。

API、Method和Library是什麼東西和關係?

圖片
這三者我一直搞不清楚,有時候API跟Method好像差不多,有時候覺得API概念不就跟Library一樣嗎? 後來發現這三者差別,需要視它們是對於一個"應用程式"而言是在什麼位置。是應用程式本身,還是不相關的應用程式,還是想要與應用程式互動的外部應用程式。 先來個例子: 今天有一個甲應用程式提供了API ReturnNumber(int a) 而甲應用程式裡面的處理是 int ReturnNumber(int a){ return round(random(a)); }; 接著我們一一解釋它們各是甚麼。 round()、random():是由內建library提供的兩個method ReturnNumber():是一個自己寫的Method,但因為我們提供它給外部使用,所以也是個API。 假設乙應用程式用了ReturnNumber()這個API,則只能傳進一個參數a,實際上他不知道這個API裡面寫了什麼,只能透過甲提供的文件說明來知道用途。 這個例子可以看到三者的實例,接著再來進一步說明。 ----------------------------------------------------------------------------------------------- API、Method和Library的關係 【Library】 函式庫,指將一群已經寫好的Method(Function)包成一個Library,當我們import這個Library後就能使用其包含的Method。(此處只是個程式語言的稱法不同,Method指Java、Function指C) 【API( A pplication P rogramming I nterface)】 應用程式介面,指提供給 外部程式 存取或是已經寫好的功能,事實上可以把它當作一群Method的集合,外部程式只能用這些Method。 【Method】 在Java稱為Method,類似C的Function,但不完全相同,這又是另一段故事了。 (在物件導向中的Method是綁定Class,所以要用Method一定要先實體化一個Object。ex. student.gohom

JAVA軟體開發相關環境設定與名詞解釋

最近真的被洗臉洗滿慘的.... 一堆東西原來都不懂,或是懂得根本就是皮毛中的皮毛;現在在環境逼迫的壓力下,要一夕之間快速成長XDD 趕緊做功課跟筆記 IDE ( I ntegrated D evelopment E nvironment):整合開發環境, 【常見的IDE】 Eclipse :開源免費的IDE,可以利用很多plug-in來開發不同語言的程式(C++的CDT, Python, PHP的PDT, WEB APP的WDT)。 Microsoft Virtual Studio :閉源付費的IDE,有一系列的產品for Windows各平台,號稱地表最強大的IDE。用於開發微軟的平台上的程式(Windows Desk, Windows Phone, .NET Framework等)