然而,也有需多非數理背景的學生或在職人士,也開始從各種管道學習寫程式,或許是打算有機會的話也投入 CS 相關領域的工作。各種程式相關的課程開始開設,多標榜在幾周或幾個月內就能上手某個程式語言,而這種標語揭示了一個問題:許多人對與程式設計的想像太過美好。
這樣的現象背後也衍生了許多問題,例如,許多這種短期課程為了讓學生可以得到成就感,很多都是教授網頁前端、App 設計等比較容易上手的技術,這種課程可能可以讓學生有一定程度的實作經驗。而像在美國的程式設計學校,透過非常密集的訓練,使得這些學生可以有相當的實作能力。然而缺乏計算理論、演算法及其他電腦科學的基礎知識,這些技能大多是相當基層的 IT 開發,若要以這些技能為工作,不但未來可能會遇到工作外包的問題,甚至也有可能在不遠的將來被下一波自動化淘汰。
那麼,資訊能力對我們的定位是什麼?
當然,為了興趣、待遇、職涯考量,而往軟體工程師、數據科學家等職業邁進確實是一個非常值得考慮的生涯選項。然而,若要以此為目標,最好就要有願意投入相當多的時間,從最基本的東西一個個學起,以年為單位投資自己的覺悟。
而大多數人,可能沒辦法負擔起這麼沉重的成本,那麼,這時候明瞭資訊能力對自己的定位就相當重要。其實,對資訊能力的了解很像是學一種語言,大多數人並不需要以此語言為工作能力,卻能享有這個語言對自己的好處。又或者像是有了數學語言 (微積分) 的物理學家得以藉此分析物體的運動,有了資訊能力的人可以藉由這種語言來界定、分析自己的問題,如果問題的規模比較小可能可以自己打個一兩百行的程式碼來解決,如果問題規模較大,也知道該如何尋求專業的協助。
而在解決自己領域的問題之時,能夠知道哪些電腦科學的技術能夠為自己所用,藉此在自己的領域上尋求突破,才是最珍貴的能力。例如,前一陣子有人利用機器學習的技術來判斷紅樓夢的後 40 回究竟是不是曹雪芹寫的,就是一個很典型的例子。(延伸閱讀:機器學習告訴你:《紅樓夢》後40回到底是不是曹雪芹寫的?)
結語
在電腦科學的影響日漸深遠、資訊能力日益重要的現在,許多人爭相地去學習程式設計、App 開發,也有非資訊本科系的直接將此做為升學或求職時的目標。然而,比起跟著大家一起去學這些技術,更重要的該是清楚這些技術對自己的定位,以及要怎麼用這些技術來輔助自己原本的專業,這樣不僅可以少走許多冤枉路,也更可以將自己原本專業的價值發揮到最大。
文/劉衡謙
本文經授權轉載自維京人酒吧(原標題:大 CS 時代來臨!?淺談資訊能力在新世代的地位)
責任編輯/林安儒