Bernard:我們來討論一下技術。先好奇問,老師你最近有在學什麼嗎?
Caesar:我自己最近一直在摸兩個東西,一個是 .NET Core,另一個是 React Native 。
Bernard:為什麼會學 .NET Core?
Caesar:.NET Core 是一個專案的需求,是個剛需,我沒辦法,一定要去碰。但更有些瞭解之後發現,它長得其實跟以前不一樣。這幾年的 Microsoft solution 真的長得不太一樣。可以說它是越來越好玩了,目前 .NET Core 的所有程式都可以跑在 Linus 上,跑在 MacOS 上。所以你不要再安裝一個多一個 OS,或者是一大堆 package,就可以啟動。然後它可以透過 command line 去執行所有的事情,也不一定要去裝 Visual Studio,或是其他很肥的軟體。所以如果你對它有一定熟悉,其實可以真的玩的像 Node.js 或者是 Ruby on Rails 這樣。
Bernard:蠻有趣的。那你個人最熟悉或最喜愛的程式語言是什麼?
Caesar:我最喜歡的當然是 JavaScript。對我來說它已經像是 mother language 這樣子。
Bernard(在一直搖頭):...
Caesar(尷尬的微笑):哈哈,我就知道你會搖頭。
Bernard:我真的受不了 JavaScript。個人還是最愛 Ruby。
Caesar:哈哈!
Bernard:我覺得這跟個性有關。Caesar 你是非常隨意、很有彈性的人。所有對 JavaScript 這種「這樣寫 OK、那樣寫也可以」的語言,就很能接受。我就完全受不了。Callback 更是一種莫名其妙的事情。
Caesar:哈哈!我就覺得 JavaScript 好棒!真的是好棒!我是先學 Java 與 PHP 的。碰到 JavaScript 後來發現:「原來寫程式可以這麼輕鬆!為什麼我以前那麼累。浪費時間在那邊 compile ,每次都覺得可以先去泡杯咖啡。以前用 Java 寫 mobile,debug 還要確定半天之後才可以 run。
Bernard:你喜歡就好!那我問個我們學生常問的問題:這年代要當軟體工程師,需要用的工具其實蠻多的。可以看成是開發門檻大大被降低了,但也到了一個眼花撩亂的狀況。十多年前我們畢業的時候,基本上一套 PHP 可以打天下。你也沒有什麼選擇。現在的年輕工程師,有學不完的技術與工具。你可能換一個工作環境,公司用的不是你那一套,就要學另一套工具。有或者是老闆會跟你說,想用 Vue 或 React 來開發下一個專案。對於工作了兩三年的工程師,我們常聽得的疑問是,有很多東西要學,但到底要如何選擇、如何規劃?
你對後輩們的建議是什麼?