昨天在學校的餐會時,大家聊到「這年頭做官、當台大校長很難,不管怎麼說話,民眾和學生都會開罵」。有長官就問我,你在社群網路上經驗豐富,有什麼好招?
我說,我所發表的意見,也有很多人不同意的,這年頭請不要再有戒嚴時代那種可以由上而下左右民意的思想,但也不要妄想要討好每個人。最好的作法很簡單,就是「說實話」和「務實做事」。至少我是本著這個原則,所以十年前講話和做事的態度和現在是一致的。
直接面對問題,不要說幹話。例如最近賴院長的功德說,會被大多數網民認為是幹話而罵聲不絕,因為這種話沒有針對問題本身的焦點,也無助於解決實際問題,被罵之後可能連他的盟友都不想跳出來為他辯護,除非是有廣大信眾的seafood。
大多數長官和政治人物幹話說多了,習慣成自然,甚至在說幹話時時常有下屬拍手喝采配合演出,以為自己真的說得很好。殊不知,有些聽眾心裡面不知道罵了多少回。
直接面對問題,但不要亂開支票,妄想快速卻不切實際的解決問題。政黨和政府,在過去幾十年慣用這個手法來唬弄民眾,早就被明眼人看穿手腳,只是許多政商大老還昧於現實,或是希望抓住「青春的尾巴」,再繼續多撈一點,抑或是這麼多年搞下來,周遭盡是會說不會做的人?
君不見,那些描繪美麗願景但缺乏務實規劃的政策,時至今日,很快就被拆穿是畫大餅充飢。
如果直接承認「政府財政不佳,只能付出這點薪水,我們真心抱歉,如果經濟好轉,我們提高待遇」,有人還是會開罵,但至少較接近現實,有人會跳出來幫他辯護,或是就現實狀況去深入討論「真的是財政問題,還是存心壓榨,怎麼計算才合理」這些議題。
有些大老覺得要面對一大堆酸民的意見很討厭,大大降低政府做事的效率,懷念台灣舊時代政府的效率、人民的勤奮。
是的,「掌控民意」這件事,中國可以,台灣不行,那些比台灣還早民主化、工業化的先進國家國家更沒有辦法。所以中國政府辦事不只比台灣有效率,可能比世界上所有國家更有效率,北韓除外。
「爾愛其羊,我愛其禮」,在二者難以兼顧的時候,更需要務實討論,尋求中庸之道。
從2010.03寫到現在,我只是想寫 -- 把我對社會、人文、科技、產業、教育的觀察和感想寫出來。每次寫出當下所思所想,似乎腦袋可以清淨一點、心靈可以輕爽些。文章大多先在臉書上與臉友分享,隨後再轉到這裡。臉書網址為:https://www.facebook.com/shihhaohung
2017年11月20日 星期一
做科技界的新民
在「軟體吃掉全世界」的表象下,這陣子重軟體輕硬體、重創意輕技術的思維與論述在台灣極為普遍。
十年前政府大推系統晶片的時候,我強調軟體研發的重要性;這幾年風向翻轉,軟體人覺得終於有引領潮流的機會,但我想提醒大家,不要忽略軟硬整合的重要性。
的確,矽谷這幾年很缺資料科學家、人工智慧專家,但是大家要知道,矽谷已經擁有很多高階的軟硬體人才和技術,能夠和這些資料科學家、人工智慧專家一起合作,把創意打造成一流的應用、服務、系統。
十年前科技大廠紅利滾滾的時候,我希望大家把眼光放遠,不要只為人代工作嫁,應思考如何轉型創新;這幾年風向翻轉,新創蔚為風潮,但我想提醒大家,還是要紮穩技術根基。
由於這陣子實在看到太多缺乏技術含量的新創案,我說句難聽的話,請不要再把「庶民百姓沒看過的東西」當作是「創新」或是「新創」了好嗎?一時的創意,很可能只是自己之前沒聽過、沒想到的點子;要成為創新,必須進一步確認所謂的創意並沒有被別人提出和嘗試過;要做新創事業的話,最好是能夠有獨到的技術,否則我認為成功的機會頗渺小的。(用喬的或是用騙的就不提了)
十年前學界長官要我拼命寫期刊論文升等的時候,我堅持研究實務上有用的技術;這幾年風向翻轉,上頭要求研究計畫要有產業效益,但我想提醒大家,轉型不是一蹴可幾的,要懂得學習和研究的方法,不能土法煉鋼、坐井觀天。
要真的把一流的東西做出來,真的很不容易。光是把目前最強的技術搞清楚並且整合實作在一起,就可能要研究許久,更何況要做出別人沒做到的,談何容易?最好是自己要在某方面夠專業,或是具備跨領域團隊合作的能力,但這往往需要多年的學習和努力去累積技術能力。
高等教育不僅是傳授知識,做學問、為人,乃至於為政,需要不斷努力創新找出路。自古皆然,如今尤是。
說到自古皆然,很多人讀過這段話:『湯之盤銘曰:苟日新,日日新,又日新。康誥曰:作新民。詩曰:周雖舊邦,其命維新。是故君子無所不用其極。』《禮記。大學》
古文中「日新」「新民」「維新」的意思很清楚了,強調日積月累為創新努力,而「無所不用其極」則可理解為做研究追求極致的哲學、科學、工程。可惜,當理念成為教條和考題的時候,竟成為後來讀書人的束縛和框架。
多少讀書人把「無所不用其極」的精神用在考試和謀取功名利祿上,卻不務實解決問題。考試時背得出「湯之盤銘」和「康誥」的典故,但在日常的工作和生活中是否實踐「作新民」?
說到如今尤是,因為大家都可以感受到科技在破壞性創新的威力,尤其是資訊科技和人工智慧蓬勃發展,有可能造成更多的革新。但革新不應是政治口水,也不是辦家家酒,更不能是半吊子,要有一整套方法。
我想,台灣若要向上提升,最需要的是教育文化的革新:革去諸多的陋習,給學子和人民多一些空間和時間去作新民。這時候,有些人可能會發現,作新民需要有知識和方法,需要好好學習鑽研,不是時常加班或是天天看新聞就行的。
十年前政府大推系統晶片的時候,我強調軟體研發的重要性;這幾年風向翻轉,軟體人覺得終於有引領潮流的機會,但我想提醒大家,不要忽略軟硬整合的重要性。
的確,矽谷這幾年很缺資料科學家、人工智慧專家,但是大家要知道,矽谷已經擁有很多高階的軟硬體人才和技術,能夠和這些資料科學家、人工智慧專家一起合作,把創意打造成一流的應用、服務、系統。
十年前科技大廠紅利滾滾的時候,我希望大家把眼光放遠,不要只為人代工作嫁,應思考如何轉型創新;這幾年風向翻轉,新創蔚為風潮,但我想提醒大家,還是要紮穩技術根基。
由於這陣子實在看到太多缺乏技術含量的新創案,我說句難聽的話,請不要再把「庶民百姓沒看過的東西」當作是「創新」或是「新創」了好嗎?一時的創意,很可能只是自己之前沒聽過、沒想到的點子;要成為創新,必須進一步確認所謂的創意並沒有被別人提出和嘗試過;要做新創事業的話,最好是能夠有獨到的技術,否則我認為成功的機會頗渺小的。(用喬的或是用騙的就不提了)
十年前學界長官要我拼命寫期刊論文升等的時候,我堅持研究實務上有用的技術;這幾年風向翻轉,上頭要求研究計畫要有產業效益,但我想提醒大家,轉型不是一蹴可幾的,要懂得學習和研究的方法,不能土法煉鋼、坐井觀天。
要真的把一流的東西做出來,真的很不容易。光是把目前最強的技術搞清楚並且整合實作在一起,就可能要研究許久,更何況要做出別人沒做到的,談何容易?最好是自己要在某方面夠專業,或是具備跨領域團隊合作的能力,但這往往需要多年的學習和努力去累積技術能力。
高等教育不僅是傳授知識,做學問、為人,乃至於為政,需要不斷努力創新找出路。自古皆然,如今尤是。
說到自古皆然,很多人讀過這段話:『湯之盤銘曰:苟日新,日日新,又日新。康誥曰:作新民。詩曰:周雖舊邦,其命維新。是故君子無所不用其極。』《禮記。大學》
古文中「日新」「新民」「維新」的意思很清楚了,強調日積月累為創新努力,而「無所不用其極」則可理解為做研究追求極致的哲學、科學、工程。可惜,當理念成為教條和考題的時候,竟成為後來讀書人的束縛和框架。
多少讀書人把「無所不用其極」的精神用在考試和謀取功名利祿上,卻不務實解決問題。考試時背得出「湯之盤銘」和「康誥」的典故,但在日常的工作和生活中是否實踐「作新民」?
說到如今尤是,因為大家都可以感受到科技在破壞性創新的威力,尤其是資訊科技和人工智慧蓬勃發展,有可能造成更多的革新。但革新不應是政治口水,也不是辦家家酒,更不能是半吊子,要有一整套方法。
我想,台灣若要向上提升,最需要的是教育文化的革新:革去諸多的陋習,給學子和人民多一些空間和時間去作新民。這時候,有些人可能會發現,作新民需要有知識和方法,需要好好學習鑽研,不是時常加班或是天天看新聞就行的。
2016年9月6日 星期二
先出社會再上大學?
這篇報導說蔡英文總統拋「先出社會再上大學」,向高等教育投下震撼彈 [1]。我想,「先出社會再上大學」本來就是很正常的事情,只是文憑主義作祟,才會一直有那種「盡可能墊高學歷再出去工作」的傳統觀念。
至於所謂的震撼彈,或許指的是助長「大學無用論」。我想,高等教育學用落差的問題,我談過多次了,有一系列的探討,請參考 [2]。當然,大學應該要辦得更好,不過在文憑大幅貶值的現階段,對學子來說,念到不合適的大學,或是不好好念大學,不如先不要念大學。
如果覺得先出社會不念大學太冒險,那我建議就先去業界實習,我昨天寫的那篇網誌「實習,為就業或創業打基礎」[3],就是談這件事。
我在網誌上所強調重點在於「優質的實習機會」,這是為「有事業心的年輕人」「能善用人才的公司」「想加強產學合作的學校」創造三贏的配套做法。
鼓勵學生去創業,或是先就業再念大學都行,但需要有配套做法,否則多數學生創業當砲灰,浪費青春;先就業的該去哪裡、如何體驗社會,都是要有方法。我沒看到政府的政策,暫且不評論,不過這個先工作、再念大學的概念,大抵上都可以用上述「提升實習文化」的作法來實現。
另外,如果覺得先出社會再上大學過於震撼,先出社會再念研究所,也是一個選項。
我在國外看到不少先工作,再念研究所的學生,我想這也是國內學生們可以思考的。盲目跟著人家念研究所,對自己的興趣和行業的狀況都不清楚,其實是件很奇怪的事情。
國外大學的學費高,家境較差又拿不到獎學金的,甚至要舉債念書,所以學生和家長會把唸大學、研究所當成是對未來職涯的投資。國內大學學費過於低廉,學生可以單純為了學位或興趣來念,其實並不見得合理,這是應該好好改革的部分。
我們20多年一票人出國留學,還沒上課前先看到帳單,算算修一小時的課要付出將近70元美金的學費,所以選課時會好好打聽課程好不好、有沒有用,沒有人想翹課。
再說,大學畢業,先工作幾年,再回到學校念研究所,有甚麼不好?
以機會成本的角度來看,的確較為不好,比起一路念完研究所再就業,大學就業的薪資較低,但差距其實頗有限,如果學生個人發現對專業沒興趣,不知道為何而唸研究所的話,不如先去業界走一趟。
最後,我說過多次,如果對事業有用的是「實力」而非「文憑」,那應該就沒必要拿了文憑才能工作。例如程式設計,有一大群非典型的程式設計師,大學的主修與程式設計無關,有的甚至沒念過大學,靠著自學有成的人很多,不只唐鳳。
這條路走得通的重點是「口碑行銷」。以往沒有社群網路,雖然你很厲害,天下沒幾個人知道,所以需要某種的認證,例如文憑和證照。但現在有社群網路,如果多與社群互動,讓眾人都知道你的本事,自然會建立良好的口碑。
我想未來的社會,應該會更強調終身學習,大學應該會更開放,提供各種形式的課程,而大學與社會的邊界會逐漸模糊化。所以不要過度執著於文憑,想想如何善用社會與大學的資源去學東西,去打下事業的基礎。
[1] 高教震撼彈! 蔡拋「先出社會再上大學」(民視,2016/9/5)
http://news.ftv.com.tw/NewsContent.aspx?ntype=class&sno=2016905L01M1#
[2] 【學用落差與產學合作系列1】學用落差
http://www.tvet3.info/industry-cooperation-series-1-the-gap-between-theory-and-practice/
[3] https://www.facebook.com/notes/洪士灝/實習為就業或創業打基礎/1247770011920805
至於所謂的震撼彈,或許指的是助長「大學無用論」。我想,高等教育學用落差的問題,我談過多次了,有一系列的探討,請參考 [2]。當然,大學應該要辦得更好,不過在文憑大幅貶值的現階段,對學子來說,念到不合適的大學,或是不好好念大學,不如先不要念大學。
如果覺得先出社會不念大學太冒險,那我建議就先去業界實習,我昨天寫的那篇網誌「實習,為就業或創業打基礎」[3],就是談這件事。
我在網誌上所強調重點在於「優質的實習機會」,這是為「有事業心的年輕人」「能善用人才的公司」「想加強產學合作的學校」創造三贏的配套做法。
鼓勵學生去創業,或是先就業再念大學都行,但需要有配套做法,否則多數學生創業當砲灰,浪費青春;先就業的該去哪裡、如何體驗社會,都是要有方法。我沒看到政府的政策,暫且不評論,不過這個先工作、再念大學的概念,大抵上都可以用上述「提升實習文化」的作法來實現。
另外,如果覺得先出社會再上大學過於震撼,先出社會再念研究所,也是一個選項。
我在國外看到不少先工作,再念研究所的學生,我想這也是國內學生們可以思考的。盲目跟著人家念研究所,對自己的興趣和行業的狀況都不清楚,其實是件很奇怪的事情。
國外大學的學費高,家境較差又拿不到獎學金的,甚至要舉債念書,所以學生和家長會把唸大學、研究所當成是對未來職涯的投資。國內大學學費過於低廉,學生可以單純為了學位或興趣來念,其實並不見得合理,這是應該好好改革的部分。
我們20多年一票人出國留學,還沒上課前先看到帳單,算算修一小時的課要付出將近70元美金的學費,所以選課時會好好打聽課程好不好、有沒有用,沒有人想翹課。
再說,大學畢業,先工作幾年,再回到學校念研究所,有甚麼不好?
以機會成本的角度來看,的確較為不好,比起一路念完研究所再就業,大學就業的薪資較低,但差距其實頗有限,如果學生個人發現對專業沒興趣,不知道為何而唸研究所的話,不如先去業界走一趟。
最後,我說過多次,如果對事業有用的是「實力」而非「文憑」,那應該就沒必要拿了文憑才能工作。例如程式設計,有一大群非典型的程式設計師,大學的主修與程式設計無關,有的甚至沒念過大學,靠著自學有成的人很多,不只唐鳳。
這條路走得通的重點是「口碑行銷」。以往沒有社群網路,雖然你很厲害,天下沒幾個人知道,所以需要某種的認證,例如文憑和證照。但現在有社群網路,如果多與社群互動,讓眾人都知道你的本事,自然會建立良好的口碑。
我想未來的社會,應該會更強調終身學習,大學應該會更開放,提供各種形式的課程,而大學與社會的邊界會逐漸模糊化。所以不要過度執著於文憑,想想如何善用社會與大學的資源去學東西,去打下事業的基礎。
[1] 高教震撼彈! 蔡拋「先出社會再上大學」(民視,2016/9/5)
http://news.ftv.com.tw/NewsContent.aspx?ntype=class&sno=2016905L01M1#
[2] 【學用落差與產學合作系列1】學用落差
http://www.tvet3.info/industry-cooperation-series-1-the-gap-between-theory-and-practice/
[3] https://www.facebook.com/notes/洪士灝/實習為就業或創業打基礎/1247770011920805
2016年7月30日 星期六
資訊科技教育、課綱制訂與後續發展
很多朋友知道我幾年前就鼓吹要在中小學加入資訊科技教育,教導運算思維。我的好朋友成大資工蘇文鈺教授甚至還親自去偏鄉教小朋友,但我們都不認為這件事能夠以傳統方式進行,對於規劃和實施的方式有過一些討論,讀者可參考 [1]。在討論中,我提到:
「台灣要做的話,應該要找在教育理念上獲得大家認同的、對資訊科學素養卓越的人來全職全力來領導和推動整件事。或許台灣學界應該設法推舉出一個工作團隊,並且賦予這個足夠的資源、權力、責任,去完成這個任務,包括教材、教具、教師訓練,否則蘇教授提到的問題,勢必會出現,而且一旦引入不合適的課程和教師,不只是搞砸了資訊教育的美意,而且不容易收拾後果。」
然而,我不是政府長官,以上這些話,雖然被轉載於網路媒體上,例如[2],但大長官聽不聽得進去,就不知道了。有時候,長官即便知道應該怎麼做,但礙於政治現實,也不做了那麼多,只好妥協,所謂無魚蝦也好,先求有再求好。
我們這類專門做系統效能優化的工程師,最不想看到的就是「先求有再求好」這種事,因為這樣做的下場,就是有了之後求好不得,只好擺爛;但諷刺的是,我們常常在「先求有卻好不了」的情況下進場救援。
十多年我在Sun工作的時候,有些產品部門的心態就是「先求有再求好」,例如為了趕進度,產品開發部門先把密碼加速器做出來,效能優化的事情之後再說。可是軟硬體的架構不搭配好,結果就是不好,只好聯絡我們效能工程部門來善後。受到教訓之後,這個產品開發部門從設計之初就會希望我們參與,以免重蹈覆轍。後來Oracle購併了Sun,非常重視這個部門。
話題回到資訊教育,既然我身為鼓吹者,所以在政府開始規劃中小學資訊科技教育的時候,只要找我,我自然義不容辭、盡可能參加討論,希望能提早發現問題加以解決,也因此對於規畫的過程略知一二,也知道制訂課綱的種種限制。
首先是法規面的問題,高級中等教育法第四十三條明定:「中央主管機關應訂定高級中等學校課程綱要及其實施之有關規定,作為學校規劃及實施課程之依據。前項課程綱要之研究發展事項,由國家教育研究院辦理之」。國民教育法第八條亦規定:「國民小學及國民中學之課程綱要,由教育部常設課程研究發展機構定之。」[3]
依據上述法規,教育部必須對資訊科技教育訂出課程綱要(簡稱課綱)之後,中小學才有依據做後續的規劃和實施,而課程綱要之研究發展,明訂為國家教育研究院(簡稱國教院)負責。又依據國家教育研究院組織法第二條第四項中亦明訂國家教育研究院之掌理事項包括:「課程、教學、教材與教科書、教育指標與學力指標、教育測驗與評量工具及其他教育方法之研究發展」。故國家教育研究院負有國家專責課程發展基地之任務與使命。[3]
由此可知,國教院的職責重大,也有很多經驗豐富的專業人員在裡面,然而由於資訊科技教育幾乎是一個全新而且快速演進的項目,所以本來就不容易掌握,但我想長官可能沒有聽進去我的逆耳忠言,或是籌措不出資源,或是為了配合其他科目的課綱修訂,必須在很短的時間內以傳統方式完成這個重大的職責。
在資訊科技的課綱起草初期,國教院有詢問我的意見,我以當面與書面告知想法。基本上,我說不要教太難、教學時間要足夠、課程要設計好、師資要準備好,要做的話就要有充分的資源來做,不然會做不好。但在正式規劃資訊科技課綱草案時,我並沒有參與。我想這理所當然,因為我不是教育專業,沒修過教育學分,沒正式教過中小學。
但後來我看到某一版的課綱草案後,在我臉書上發表個人看法 [4],還險些被朋友們誤會。我明白政府也沒拿多少資源出來做規劃,只是給一點點出席費要參與的專家學者提供建言,這些專家學者平時有很多要忙的事情,已經犧牲很多寶貴時間來擬訂課綱,因此我這個沒有參與的人,最好不要隨便發言讓外界覺得他們沒好好做事。「不在其位,不謀其政」,大概就是這個意思。
不過現在是民主、網路時代,我一來只是以個人立場發言,二來沒想佔位子、搶資源,三來只是對事不對人,幫忙釐清問題、促進討論而已。況且擔心的是,今天我沈默不說話,到了政策要啟動時,民眾看到訂出來的政策不周延,是不是會出來罵人?事後再改(先求有再求好),所需要面對的問題更大。
還好長官和朋友都能溝通,沒造成重大誤會,但我也瞭解參與者難為之處。由於課綱中必須以簡要條目的形式呈現,如圖一所示,因此很難將綜合反映各方多元的意見。例如說某某原理要教多深?演算法要用什麼方式教?每個項目的比例佔多少、需要多少教學時數?這些都沒辦法在課綱中陳述。

圖一: 課綱中所制定的學習內容 (部分列表)
我個人比較屬於自由派,我認為課綱不需要規定太多項目,老師或是教材可以彈性地做補充,但是有些專家學者並不如此認為,覺得如果某個項目不放入課綱,教材就不會編進去;就算編進去,如果升學考試不考,學生也不會好好學。
我有理由猜想(理由容後再敘述),由於每位專家學者都見多識廣,自然會認為很多東西都是重要的;不同的專家學者一起開會,不好意思當面說別人認為重要的東西不重要,所以到最後,幾乎是採用「聯集」的概念來放進專家學者的意見,於是課綱中的項目多到會嚇人,有些關心資訊教育的朋友看到後傻眼。
定了課綱之後,某些長官們覺得應該可以透過下一階段,也就是在課綱所訂定的各學習主題之下編寫課程教材的時候,與編教材的專家、學者溝通,建議出所應學習之重要概念。其中一項作法,是透過師大資訊教育所的研究案,發出問卷請教專家學者(包括好幾位中學資訊科教師)的意見。我參與了其中三次的問卷調查,以及最後的討論會。圖二是節錄自第三次問卷調查結果。

圖二: 問卷調查,關於課綱的各學習主題之下所應學習之重要概念
讀者從圖二可以發現,到了第三次問卷,21位專家學者仍對於「1.1.1 程式語言的種類」有不同的意見,3位認為非常不適合、3位認為不適合、7位持平、5位覺得適合、3位覺得非常適合。通常,認為不適合的人,會提供修改建議,然而由於要80%以上的人認為不適合才能決議刪除此項目,所以大部分有爭議的項目都留在上面刪不掉,這就是為何我猜想在先前制定課綱時會成為聯集的理由。
最後到現場開會時,我發言主張盡可能刪減,但只有不到一半的專家學者出席,所以能改動的有限。最後只能刪除一些明顯太難的東西,以及修改有爭議項目的文字。如圖三所示,我們在1.1.1加了「(高、低階語言)」來表達「只要教學生高、低程式語言的差異性和用途即可,不要叫他們背誦世界上有哪些重要的語言」。我們把1.2.5的歸納改為舉例,因為歸納太過抽象。至於1.3.2的二維陣列,某些人覺得很重要,希望再加上「概念」兩字之後保留,但我們還是決議刪除,所以放上了灰色的陰影。

圖三: 問卷討論的結果範例
只不過近年強調適性學習、發展專長、自學,大學很多科系逐步減少必修學分,認為與其嘗試盡量列入必修,貪多嚼不爛,不如給學生自由空間,以選修課來建構個人的專長,也希望學生發展出自學的能力,因為在這個時代快速變遷的趨勢下,學校不可能教授各種將來會用到的知識,所以要懂得自學。因此我個人不贊成以制式的填鴨式教學內容來教資訊科技,雖然課綱上有很多項目,但還好資訊科技雖是必修,但非大學必考項目,所以還能夠希望學校和學生平常心教之學之。
如果我們以平常心來看待這個過程,我把個人所知寫出來,大家討論一番,或許將來在課綱的制定過程上有改進的空間,或許有助於接下來教材編寫和教學實施的規劃,總之希望能幫得上忙。至於接下來的工作項目才是重頭戲,在在都需要專業人士花時間去做,教科書的編撰會交由書商,書商會找專家;教科書的採用是各地教育主管機關的職責,各地教育主管機關會找專家;而資訊教師的訓練養成與教學方法的塑造,牽涉到人的因素,則是更複雜的問題,可能需要花很大的心力去解決,更不是少數幾個人就能夠做好的。其中有很多的部份需要民間的參與,而關心資訊教育的企業也可以協助和贊助相關的工作,不能凡事都只靠政府。
[4] 關於資訊教育課綱,http://hungsh-ntucsie.blogspot.tw/2⋯⋯
2016年7月25日 星期一
淪落到只能靠削價競爭?
上週拜讀了臉友台大化工系藍崇文教授寫的「慘業」一文,說到台灣四大慘業,應是給台灣一個教訓,走俗又大碗的時代已經過去了,只要中國可以做的東西,在台灣就不值得做了。藍教授的評論深得我心,尤其是他這個極為生動的比喻:「小家碧玉要跟人家比,是得靠清純與氣質,要走妖豔脂粉路線,脫光了也不是人家的對手。」
看到比喻,想起去年我到荷蘭阿姆斯特丹開會,跟著人群到頗負盛名的紅燈區觀光。「性工作」在當地是合法的,工作者當街脫衣展示其傲人身材,有尊嚴而不怕人看。所謂職業無貴賤,我不反對任何合法的職業,包括代工和性工作,但我認為工作要有尊嚴,如果一路淪落到只能靠削價與人競爭,價值越來越低,這樣的社會是否會成為「悲慘世界」[1]的翻版?
上週四(7/21)到資策會新成立的開源軟體技術服務中心給Keynote演講,演講前我跟資策會的長官和朋友說抱歉,上週幫經濟部審查計畫時扮黑臉,今天又要來講點比較刺耳的話,請多包涵。長官說沒問題,有些事情也到了該轉變的時候了。顧及長官的面子,我沒有直白講的是,如果法人和廠商仍舊用降低成本來賺錢、或是靠政府補助營運的概念,只會把原本有機會的產業越做越小,搞成「慘業」。
我在演講中說: 各位推動開源軟體是件好事,但如果只是因為政府沒錢買不起國外的軟體才來做這件事,或是因為想要包攬政府資訊系統預算才來呼籲政府各單位採用開源軟體,那不免把當代開源軟體的意義和未來性看得太小了,實際上開源軟體遠遠不止於此,我們可以以開源軟體為基礎挖掘新資訊時代中的金礦,提升技術競爭力,站上世界舞台。
我長期與業界朋友探究資訊產業的研發方向,由於產業的類別甚多,技術深淺有別,研發的速度又非常快,而每個人的位置不同,目標可能也不同,所以想法和做法差異甚大。然而由於高科技的天性,政府官僚看不懂、追不上,我不認為可以靠政府來大力推動,然而某些政府官員和民眾還停留在三十多年前政府設立工研院和新竹科學園區大力扶植電子產業的成功故事,殊不知今天的大環境和資通訊產業研發策略已經與三十多年前大不同,而近年政府的產業推動策略和研發補助計畫有多少成功的案例?
我如果說政府不要補助產業的話,可能會被那些長期靠政府補助過日子的業界和同行罵。但我們這樣搞下去,這麼多年來淪落到只能靠低廉的勞動成本與國際競爭,難道是有識之士所樂見的嗎? 如果大多數人只是醉心於賺入大把鈔票、滿足自家生活、獲得個人地位、或是鑽研一己的學術領域,那麼要如何避免繼續沉淪下去呢? 其實我自己這些年過得不差,但正如同我這篇網誌 [2] 所說的, 我看見諸多有能力、薪水還不錯的人也深陷此漩渦之中,痛苦不堪。因此,光靠壓低物價,遲早會出大問題。要創造價值,需要的是突破和躍昇,有能力的人或許可以思考如何做點不同的事情。
然而好比停留在上個世代成功的經驗,有些人還在寄望於研發市場大、泛用性高的技術和產品。我想,現在做這個不容易,你沒有夠大的資本,只能為人代工,運氣好賺一票之後,不出幾年,就得再找下一個賺錢的技術和產品,因為無法累積技術,所以只能找技術門檻低的東西來做,老闆要數鈔票,靠的是廉價技術勞工的辛勞,我們暫且稱此為路線A。
台灣有很多公司,說自己有做高科技研發,其實只是買現成的技術和機具來幫人代工,就是標準的路線A,其中不乏一些有品牌的公司,但產品品質或品牌價值不出眾,只能靠低價爭取市場。不過,我們也不要隨便批評某某公司做代工產業不好。舉鴻海和台積電為例,雖然是代工,但他們在代工的技術上長期耕耘,研發了一些獨門技術,所以能在世界舞台上成為一方之霸。但我不諱言,這兩家公司仍然有相當重的代工習氣,談前瞻產學研發案的時候過於算計,還有改進的空間,否則可能在新領域的研發上縛手縛腳。
另一個方向,稱為路線B好了,是市場規模小、需要頗多客製化的專業領域技術和產品,例如醫院用、航空航海用、軍用的設備,必須花很多功夫與專家合作,通過某些規範認證,所以門檻高,但進去之後不會有很多人來惡性削價競爭。然而因為能進來的人不多,同時因為公司需要高水準的技術、行銷人才,所以公司很難大幅擴張。舉最近我使用Garmin智慧運動手錶的例案例報告 [3],以及我與一些以技術為基礎做專門領域事業的中小型科技公司談合作的經驗,我相信這是現階段台灣要走上國際的路線,以技術立身,如以色列、荷蘭、芬蘭等國的例子。
然而政府似乎老是以泱泱大國的思維去談研究發展,以那些大國的名校和大型企業為目標,搞得我們做學術的常常要跟頂尖大學拚排名,發表一大堆世界級的學術論文來證明自己能與先進國家並駕齊驅,但我們的經濟力量、本國市場規模、產業水準其實並不適合走這條我稱之為路線C,去追逐那些市場規模大、高技術門檻的研發項目。以資訊科技來說,除非是像中國那樣用本國市場來保護和扶植自身的公司,像韓國那樣敢拚敢賭把國家力量灌注在Samsung如此大的公司,否則很難與矽谷大公司競爭。
上述三條路線比較起來,如果我是沒技術、不想冒險的老闆,我想我會走市場大、泛用性高、低技術門檻的路線A。當然,走這條路的也有雄才大略的,請勿過度引申。因為市場和技術容易懂,所以當老闆的我在看了幾本書之後,可以滔滔不絕向身邊的人吹噓自己的智慧和眼光,重點在於看準切入的時機以及有辦法找一群願意賣肝的團隊在最短時間把產品做出來,最好是拿政府的補助、藉由金融操作、預支員工的薪資來做這件事,降低自己的風險。所以我們看到台灣的老闆們時常要政府給好處,掏空某家公司來支助私人的公司,給員工非常低的基本薪資但承諾賺一票之後分紅。
由於台灣在上世紀末走路線A的公司大賺其錢,連帶產生許多英明的老闆和科技新貴,於是這些人被捧上天了, 把自己講得像是走路線C的企業,讓一般的民眾以為台灣真的是世界一流的科技島,跟著玩起了金錢遊戲,缺乏居安思危、突破創新的想法。於是一些產業,在技術沒有深耕和累積,加上中國、印度的崛起,自己人削價競爭,逐漸失去競爭力和利潤,成為慘業。
另一方面,如果要做市場規模小、需要頗多客製化的專業領域技術和產品的路線B,老闆自己得真的懂,或是勇於做高風險的投資,同時得提高薪資,僱用具備國際競爭力的高級人才作為領導群和研發團隊,談何容易?而且,在路線A的公司產生許多科技新貴的年代,學生們被洗腦的很厲害,只嚮往去那些分紅多的公司,而這些公司還很拿翹,只收第一流的年輕人,能在最短時間內被訓練成高效率的生財工具,所以即使我這個老闆想走路線B,我也不容易募到資金、找到好人才。
說到人才,我們有多少第一流的人才走在路線A上,而目前深陷於慘業之中,但仍舊企圖苟延殘喘? 別的不說,政府和產業往往是打著要發展新興產業或是產業轉型的口號爭取資源,卻只是將資源導入既有的產業,因為主導者還是那一批人,變不出新把戲。於是檯面上的看起來戰功彪炳,卻難以扭轉頹勢,反而屢屢耽誤國家產業轉型的契機。
國家轉型不成,有許多藉口和假議題,幾年前還抱怨員工分紅費用化讓台灣產業失去競爭力,指責年輕人偷懶不抗壓,說學界訓練不扎實,歸罪於國際金融風暴和政府不補助,實際上是產業長期接收了許多台灣最優秀的一批年輕人,卻讓他們從事低門檻的研發,技術難以累積提升而喪失競爭力。
然而台灣是民主國家,我們有什麼理由去要求這些檯面上的資本家用他們的錢去投資在他們看不懂的高風險的高科技產業上呢?錢是他們的,那些大公司要不要轉型,也是他們的自由,他們有些人覺得把錢投資在炒房和炒股,或是投資國外比較容易賺大錢,只要合法,也是他們的自由。所以我從不指名道姓罵那些慣老闆,因為他們不需要為台灣負責。有句話叫做『商人無祖國』,我們本來就不應該把未來植基於這些商人的良知與資源上,勞工本身要自立自強。
我想,如果想要台灣的高科技業永續發展,我們可透過意見表達和實際行動,讓政府不要再繼續支持這那些無法轉型的企業,個人不要支持炒房和炒股的行為,而多去支持那些能夠提升本國技術競爭力的企業和機構。其實國內有不少致力於走路線B的企業,如果能集結一流人才,是大有可為的。過程中可能會有陣痛,但重要的是去做自己深切認為是對的事情。
有人問,那具體來說該怎麼做呢? 唉呀,我都說自立自強了,在問我之前,是否能自己先多想想呢? 我也不是神,所知和智力有限,只能概述。 大體來說,只要政府不去補助路線A,就幫到路線B的公司了,所以政府決策的思維和機制要重建。然而,重點在於民間和人才的意願,大多數人只看到大公司和消費市場,所以我才要在此幫高調,提倡路線B,讓多些人看到另外的路線。如果輿論不改,那麼民粹政府也只會隨眾去補助路線A的公司吧。另外,政府也不是沒有能幹的人,不過需要一些論述來支持,否則很難對抗既得利益團體的。當然,沉淪到最後總是會觸底反彈的,只是遲早而已。
[1] https://zh.wikipedia.org/wiki/悲惨世界
[2] https://www.facebook.com/notes/洪士灝/這25年來的薪資與生活概觀/1216275755070231
[3] https://www.facebook.com/photo.php?fbid=1228262997216186&set=a.150385068337323.25791.100000974924946&type=3&theater
2016年5月13日 星期五
如何深耕軟體工業基礎技術?
昨天(5/12)被邀請去參加「行政院工業基礎技術第二期次產業投入與深耕項目產官學共識會議-軟體領域」,聽了第一期的執行成果報告,在座的產學人士,包括我在內,都給了一些意見,因為官方希望知道第二期要做些什麼。
在講我的意見之前,先談談第一期的執行面。被派來呈現第一期的成果代表團隊有三個,我特別欣賞中山大學黃英哲教授團隊的報告,他說他早在12年前就開始做軟硬體整合的技術,有與業界合作的產學計畫,也有受科技部補助的前瞻研究計畫,當然我在多個教育部教改計畫中也見到黃教授的貢獻。
我欣賞黃教授的成果,不是因為他報告中所呈現的KPI,而是因為我這些年看過多次他團隊所呈現出來的內容,挑戰困難的實作問題,堅定的態度始終如一,不隨波逐流。因此長久深耕而能累積豐富深刻的技術,進而衍生產學計畫、技轉、專利、論文等等,自然是水到渠成的事,毫不意外。
然而,黃教授也誠實地說,他這12年來深耕軟硬體整合技術,最辛苦的就是做第一期深耕計畫的這四年,因為每隔三個月科技部就要研究團隊填表格提供成果報告,而成果報告表格的項目一大堆,衍生產學計畫、技術轉移、專利申請、論文發表、培育人才、開發課程、辦理推廣活動、邀請業師授課、赴業界演講等等。如果績效不彰,可能就刪減預算,甚至停止計畫。所以光是忙著應付這些關鍵績效指標(KPI),就忙得不可開交。光是這兩週,我就見過他來台北兩次做這個計畫的成果報告。
我發言說我深感認同,因為我們也深為KPI所苦,而且這些年來用數字管理,已經早造成了許多嚴重的問題,應該要換個方式來評鑑執行成效,尤其是這個所謂的深耕工業基礎計畫,如果目的真的是為了好好發展那些「在國際上趨成熟,但台灣過去因產業文化,且未能在短時間看到經濟效益,以致於產業尚未投入深根之技術」(請參考下圖),就應該不是這樣的做法。

這個工業基礎技術發展方案,用「三高一廣」來描述其願景,在三年多前一開始的時候只有幾項質性的KPI,但一路執行下來,為了滿足計畫審查委員和立法院的質詢,不斷加入新的KPI,希望參與的研究團隊能夠提出強而有力的實質證據。
實質證據?如果是前瞻研究或產學計畫,或許可以定義好標竿,但一面說要「深根」和「十年磨一劍」,一面又要執行團隊每年拿出績效,要「三高一廣」,可能嗎?同時,由於這些KPI,反而造成許多「務虛」的事情。填表的事情就不用說了,為了要有經濟效益,研究團隊必須配合廠商,因此也不可能把研發的技術免費方享推廣給大眾,於是立意頗佳的計畫,到頭來只有少數廠商受惠、培養少數研究生而已。
我直接了當說,這些繁瑣的KPI不僅無法評估真正的貢獻,而且還扯後腿,讓研究團隊之間彼此競爭而非合作,成果無法在國內分享推廣。
今天要解決這個問題,關鍵不在於談下一期要做什麼,而是必須基於開放方享的概念,來提昇真正作為工業基礎的生態系(ecosystem)。例如談軟體領域,現代軟體工業的基礎是開放原始碼計畫(open source projects),尤其是那些常見於大型軟體工程以及系統軟體的開放原始碼計畫,包括Linux, Android, Apache, Hadoop, Spark, NoSQL, LLVM, Tensorflow等,國內現在極度缺乏能夠好好使用或修改這些開放原始碼計畫來堆疊出大型軟體應用或是建構先進系統的人才,原因是沒有人好好來經營這個生態系!
坦白說,國內在軟體實務工程架構技術上落後先進國家幾十年。不用說先進技術,各位可以到國外參加討論版,就可以知道人家如何從公開的討論和程式碼的分享中培植軟體人才和厚植軟體的實力。上述的開放原始碼計畫,都是經過許多一流專家們千錘百鍊所打造出來的,如同把秘密和寶藏公開放在我們面前供我們免費取用,正是我們好好利用來迎頭趕上的機會,為什麼不把握機會以國家的力量經營這個開放原始碼計畫生態系?
有人說,前幾年科技部不是砸錢搞過開放原始碼計畫嗎?再次,我必須說KPI不對,在執行面上就會失焦。之前科技部所支持的「自由軟體鑄造場」(https://www.openfoundry.org/),目前有將近1976個開放原始碼計畫,立法委員看到數字每年增加很高興,但究竟有多少是有用的呢?開放原始碼軟體貴精不貴多,各位到國外的網站上,可以看到更多的開放原始碼軟體,例如sourceforge.net 就有21539個程式碼。要知道,既然可以免費使用人家的原始碼,我們何必花時間重新打造類似的東西呢?(如果說這是訓練,那要如何證明程式碼不是抄來的呢?)
務實支持開放原始碼計畫,不是鼓勵參與團隊多多發表全新的開放原始碼計畫,應該是聚焦在現有的重量級開放原始碼計畫,鼓勵學界、業界多分享、研究、改進、貢獻這些開放原始碼的技術。學生藉由研究重量級開放原始碼來學習第一流的軟體、強化自己的軟體實力,藉由使用開放原始碼來堆疊出有創意的作品,藉由改進或創新開放原始碼來展現自己的程度。業界要懂得如何善用開放原始碼,而不是看到開放原始碼就轉彎,因為世界上的開放原始碼計畫越來越多、越來越好,看到開放原始碼就轉彎的公司遲早會無路可走,難道沒看到連微軟、IBM也擁抱開放原始碼嗎?
然而,業界要善用開放原始碼來創造價值,一個健全的開放原始碼生態系,其中包括好的人才參與其中、技術的交流、產業的分工。在這方面,我們落後先進國家很多,但是由於開放原始碼的天性,我們可以從網路上取得大量免費的資源加以研究,所以成功的機會遠比那些需要昂貴研究設備的尖端科技,或是需要長期實務經驗累積而成的工業技術來得高,關鍵在於有沒有辦法聚集足夠的高素質軟體人才和產業的參與。
目前的開放原始碼生態系還不夠蓬勃,缺乏業界的支持,雖然許多人有心耕耘,但大多是以社團、同好會、讀書會的形式在運作。雖然如此,但我樂觀其成。這幾個月來我課上演講的業師們,在國內的網路社群上很活躍,他們樂於分享開放原始碼的研究心得,也透過分享讓世界知道他們的才能,對社會和產業造成貢獻。
因此我對長官說,您問我第二期深耕項目要做些什麼?在座的諸位有各種的意見,我也可以把我有興趣或專精的技術項目加進去,但我認為重點不在於技術研發,而在於生態系的經營。至於要如何經營軟體領域中重點項目的生態系?我想可以利用開放原始碼作為基本載具,在上面想辦法加值,把成果分享給所有人,有產官學積極的參與和持續提供充分的資源,自然能把基礎打穩,大可不必讓KPI造成學界、業界的隔閡和浪費資源。
在講我的意見之前,先談談第一期的執行面。被派來呈現第一期的成果代表團隊有三個,我特別欣賞中山大學黃英哲教授團隊的報告,他說他早在12年前就開始做軟硬體整合的技術,有與業界合作的產學計畫,也有受科技部補助的前瞻研究計畫,當然我在多個教育部教改計畫中也見到黃教授的貢獻。
我欣賞黃教授的成果,不是因為他報告中所呈現的KPI,而是因為我這些年看過多次他團隊所呈現出來的內容,挑戰困難的實作問題,堅定的態度始終如一,不隨波逐流。因此長久深耕而能累積豐富深刻的技術,進而衍生產學計畫、技轉、專利、論文等等,自然是水到渠成的事,毫不意外。
然而,黃教授也誠實地說,他這12年來深耕軟硬體整合技術,最辛苦的就是做第一期深耕計畫的這四年,因為每隔三個月科技部就要研究團隊填表格提供成果報告,而成果報告表格的項目一大堆,衍生產學計畫、技術轉移、專利申請、論文發表、培育人才、開發課程、辦理推廣活動、邀請業師授課、赴業界演講等等。如果績效不彰,可能就刪減預算,甚至停止計畫。所以光是忙著應付這些關鍵績效指標(KPI),就忙得不可開交。光是這兩週,我就見過他來台北兩次做這個計畫的成果報告。
我發言說我深感認同,因為我們也深為KPI所苦,而且這些年來用數字管理,已經早造成了許多嚴重的問題,應該要換個方式來評鑑執行成效,尤其是這個所謂的深耕工業基礎計畫,如果目的真的是為了好好發展那些「在國際上趨成熟,但台灣過去因產業文化,且未能在短時間看到經濟效益,以致於產業尚未投入深根之技術」(請參考下圖),就應該不是這樣的做法。

這個工業基礎技術發展方案,用「三高一廣」來描述其願景,在三年多前一開始的時候只有幾項質性的KPI,但一路執行下來,為了滿足計畫審查委員和立法院的質詢,不斷加入新的KPI,希望參與的研究團隊能夠提出強而有力的實質證據。
實質證據?如果是前瞻研究或產學計畫,或許可以定義好標竿,但一面說要「深根」和「十年磨一劍」,一面又要執行團隊每年拿出績效,要「三高一廣」,可能嗎?同時,由於這些KPI,反而造成許多「務虛」的事情。填表的事情就不用說了,為了要有經濟效益,研究團隊必須配合廠商,因此也不可能把研發的技術免費方享推廣給大眾,於是立意頗佳的計畫,到頭來只有少數廠商受惠、培養少數研究生而已。
我直接了當說,這些繁瑣的KPI不僅無法評估真正的貢獻,而且還扯後腿,讓研究團隊之間彼此競爭而非合作,成果無法在國內分享推廣。
今天要解決這個問題,關鍵不在於談下一期要做什麼,而是必須基於開放方享的概念,來提昇真正作為工業基礎的生態系(ecosystem)。例如談軟體領域,現代軟體工業的基礎是開放原始碼計畫(open source projects),尤其是那些常見於大型軟體工程以及系統軟體的開放原始碼計畫,包括Linux, Android, Apache, Hadoop, Spark, NoSQL, LLVM, Tensorflow等,國內現在極度缺乏能夠好好使用或修改這些開放原始碼計畫來堆疊出大型軟體應用或是建構先進系統的人才,原因是沒有人好好來經營這個生態系!
坦白說,國內在軟體實務工程架構技術上落後先進國家幾十年。不用說先進技術,各位可以到國外參加討論版,就可以知道人家如何從公開的討論和程式碼的分享中培植軟體人才和厚植軟體的實力。上述的開放原始碼計畫,都是經過許多一流專家們千錘百鍊所打造出來的,如同把秘密和寶藏公開放在我們面前供我們免費取用,正是我們好好利用來迎頭趕上的機會,為什麼不把握機會以國家的力量經營這個開放原始碼計畫生態系?
有人說,前幾年科技部不是砸錢搞過開放原始碼計畫嗎?再次,我必須說KPI不對,在執行面上就會失焦。之前科技部所支持的「自由軟體鑄造場」(https://www.openfoundry.org/),目前有將近1976個開放原始碼計畫,立法委員看到數字每年增加很高興,但究竟有多少是有用的呢?開放原始碼軟體貴精不貴多,各位到國外的網站上,可以看到更多的開放原始碼軟體,例如sourceforge.net 就有21539個程式碼。要知道,既然可以免費使用人家的原始碼,我們何必花時間重新打造類似的東西呢?(如果說這是訓練,那要如何證明程式碼不是抄來的呢?)
務實支持開放原始碼計畫,不是鼓勵參與團隊多多發表全新的開放原始碼計畫,應該是聚焦在現有的重量級開放原始碼計畫,鼓勵學界、業界多分享、研究、改進、貢獻這些開放原始碼的技術。學生藉由研究重量級開放原始碼來學習第一流的軟體、強化自己的軟體實力,藉由使用開放原始碼來堆疊出有創意的作品,藉由改進或創新開放原始碼來展現自己的程度。業界要懂得如何善用開放原始碼,而不是看到開放原始碼就轉彎,因為世界上的開放原始碼計畫越來越多、越來越好,看到開放原始碼就轉彎的公司遲早會無路可走,難道沒看到連微軟、IBM也擁抱開放原始碼嗎?
然而,業界要善用開放原始碼來創造價值,一個健全的開放原始碼生態系,其中包括好的人才參與其中、技術的交流、產業的分工。在這方面,我們落後先進國家很多,但是由於開放原始碼的天性,我們可以從網路上取得大量免費的資源加以研究,所以成功的機會遠比那些需要昂貴研究設備的尖端科技,或是需要長期實務經驗累積而成的工業技術來得高,關鍵在於有沒有辦法聚集足夠的高素質軟體人才和產業的參與。
目前的開放原始碼生態系還不夠蓬勃,缺乏業界的支持,雖然許多人有心耕耘,但大多是以社團、同好會、讀書會的形式在運作。雖然如此,但我樂觀其成。這幾個月來我課上演講的業師們,在國內的網路社群上很活躍,他們樂於分享開放原始碼的研究心得,也透過分享讓世界知道他們的才能,對社會和產業造成貢獻。
因此我對長官說,您問我第二期深耕項目要做些什麼?在座的諸位有各種的意見,我也可以把我有興趣或專精的技術項目加進去,但我認為重點不在於技術研發,而在於生態系的經營。至於要如何經營軟體領域中重點項目的生態系?我想可以利用開放原始碼作為基本載具,在上面想辦法加值,把成果分享給所有人,有產官學積極的參與和持續提供充分的資源,自然能把基礎打穩,大可不必讓KPI造成學界、業界的隔閡和浪費資源。
2016年4月20日 星期三
系統人才的出路
臉友提問:「請問系統設計的人才在台灣是否出路越來越少?」我想這也是當前許多人的迷思,「以偏概全」是台灣教育文化乃至媒體的通病。這樣的問題,不妨拿來做為高中生的人文社會學科的論說文的題目。
要做好論文,要先懂得蒐集資料,看懂別人的論述,吸收消化、綜合分析後才開始做論文。如果從中學開始,我們的國民就有這樣蒐集資料、思辯論述的素養,那麼大家應該就不大會去相信那些偏頗不實的言論,也就不會去看那些所謂亂源的媒體和腦殘的文章。
抱歉,我忘了大家在中學時忙著背書、解考古題、衝高學業成績,哪有那個美國時間做這種事呢?考試的作文又不需要這麼費功夫,只要把那些嘉言絕句背出來、套用一些陳腔濫調的公式,讓閱卷的國文老師認可就行了,而社會科的申論題都是有標準答案的,絕對不能有個人的意見,論甚麼論?把標準答案背出來就是了。
我說過台灣還未擺脫科舉封建和專制的陰影,因為我們上一代和這代人就是在那樣的文化中長大的。混得還不錯的,就覺得聯考那樣的遊戲規則太公平了,學而優則仕才對勁,要有房產巴結權勢才有搞頭,搞到不少人發覺大半輩子都是活在陰影下,為時已晚,但都是別人的錯和大環境的問題。
談到出路,人文社會學科其實有很多有用的東西,為什麼會沒有出路?我覺得和台灣科技業所面臨的問題類似的地方是,我們並沒有讓各領域的文化昇華,所以淺池容不下大魚。很多人提起當年的刻苦耐勞,覺得只要肯努力就有出路,以此質疑現在的年輕人不努力。但我看到的是,要再目前這個全球化的時代中出頭,要學的東西太多,要有新的方法和具有競爭力的環境,就不要再緬懷「紅葉少棒」那種事了,還有能力和資源的話,就帶領子弟兵或是贊助他們去提升專業領域的層次,就不要只出一張嘴說當年勇來教訓子弟。
回歸到系統設計的人才的議題,關鍵也就是在文化上,在系統和晶片廠最賺錢的時候,許多人一窩蜂跳進去,削價競爭,把市場做到爛。當時進到這個產業的人,不知道有沒有意識到,這是一個高科技、高風險的產業,如果沒有持續精進,是沒有辦法維持榮景的。老闆和股東可以不做研發,集體壓低員工薪水,一路賺到公司賠本為止,但員工如果為了本身長遠的出路著想,值不值得為了短期利益願意陪這些老闆這樣玩呢?
或許,說「系統設計的人才在台灣是否出路越來越少」這句話的人所指的是,那個學點技術就能夠進系統或晶片設計代工廠做幾年、靠股票分紅成為科技新貴的時代已經過去了,這點我同意,因為台灣過去靠廉價人力紅透半邊天的傳統系統產業正在萎縮中,原本在裡面的人都要想辦法轉型了,還會找新來的人去進去做老掉牙的東西嗎?
然而系統設計的領域大得很,很多人只注意到消費性電子產業,那些系統廠多半以大資本(政府補助)買現成技術薄利多銷的策略為主,卻不知道還有很多技術門檻較高的產業,總產值雖不高,但利潤高,其實頗適合台灣發展。
有不少做較高端系統產品的業界人士可能會告訴你,他們積極在搶真的懂系統軟體的人才,從國外找人才來做研發,還非常需要系統架構師來帶領研發,甚至砸大錢從大學挖學理兼備的教授和博士生來做研發。而我們實驗室有接不完的業界委託研究計畫,做高階系統研發和雲端服務的公司一直向我要人,教育部長官這兩年來不斷要我們想辦法培育更多的高階系統軟體人才和系統架構師。
這些高利潤、高技術門檻的產業,以往較乏人問津,可能是因為國人總喜歡炒短線、學生一窩蜂去大公司,想要馬上賺錢的觀念。我們看到很多值得投資研發的中長期項目,業界不甩,學生也沒有興趣。現在鼓吹年輕人搞新創,我很支持,但前提是不要短視近利,可能的話,以「以技術立身」。
高階系統人才,需要不斷學習來跟上系統的快速演進,而厲害的系統架構師往往需要多年累積的經驗來造就,這就是以技術立身。我之前在矽谷共事五年的團隊,就是一個實際的例子 [1]。
可惜的是,上述的東西,很多人沒有實際接觸過,但做過我多年的臉書朋友應該會覺得我講上述同樣的東西講到煩了...
我想,機會(出路)是保留給準備好的人的,說句不客氣的話,如果連門檻都進不了,還談甚麼出路?在我所看到的現在和未來,系統領域還有很多創新的空間,可以參考Gartner’s Hype Cycle [2],不過我再三強調,高科技業也是高風險業,有很多的hype,所以要保險一點的話,還是設法提升自身的技術,才能長久勝任。
不過我知道有些人不怎麼相信「以技術立身」的想法,或許是對自己的腦袋和技術能力沒有信心,或許是對大環境不抱甚麼希望,有人覺得走門路進當紅的公司撈一筆才是機靈,有人覺得要進大公司當經理主管(之後撈一筆)才是正途,有人覺得還是早點弄到第一桶金來錢滾錢炒房產才是王道;對了,還有那些不想與狼共舞,一直在找尋越來越夢幻的小確幸的羊群們...
我不是狼,也不是羊,我屬馬的。
[1] 博士滿座的系統優化團隊 http://hungsh-ntucsie.blogspot.tw/2⋯⋯
[2] What’s New in Gartner’s Hype Cycle for Emerging Technologies, 2015, http://www.gartner.com/smarterwithg⋯⋯
要做好論文,要先懂得蒐集資料,看懂別人的論述,吸收消化、綜合分析後才開始做論文。如果從中學開始,我們的國民就有這樣蒐集資料、思辯論述的素養,那麼大家應該就不大會去相信那些偏頗不實的言論,也就不會去看那些所謂亂源的媒體和腦殘的文章。
抱歉,我忘了大家在中學時忙著背書、解考古題、衝高學業成績,哪有那個美國時間做這種事呢?考試的作文又不需要這麼費功夫,只要把那些嘉言絕句背出來、套用一些陳腔濫調的公式,讓閱卷的國文老師認可就行了,而社會科的申論題都是有標準答案的,絕對不能有個人的意見,論甚麼論?把標準答案背出來就是了。
我說過台灣還未擺脫科舉封建和專制的陰影,因為我們上一代和這代人就是在那樣的文化中長大的。混得還不錯的,就覺得聯考那樣的遊戲規則太公平了,學而優則仕才對勁,要有房產巴結權勢才有搞頭,搞到不少人發覺大半輩子都是活在陰影下,為時已晚,但都是別人的錯和大環境的問題。
談到出路,人文社會學科其實有很多有用的東西,為什麼會沒有出路?我覺得和台灣科技業所面臨的問題類似的地方是,我們並沒有讓各領域的文化昇華,所以淺池容不下大魚。很多人提起當年的刻苦耐勞,覺得只要肯努力就有出路,以此質疑現在的年輕人不努力。但我看到的是,要再目前這個全球化的時代中出頭,要學的東西太多,要有新的方法和具有競爭力的環境,就不要再緬懷「紅葉少棒」那種事了,還有能力和資源的話,就帶領子弟兵或是贊助他們去提升專業領域的層次,就不要只出一張嘴說當年勇來教訓子弟。
回歸到系統設計的人才的議題,關鍵也就是在文化上,在系統和晶片廠最賺錢的時候,許多人一窩蜂跳進去,削價競爭,把市場做到爛。當時進到這個產業的人,不知道有沒有意識到,這是一個高科技、高風險的產業,如果沒有持續精進,是沒有辦法維持榮景的。老闆和股東可以不做研發,集體壓低員工薪水,一路賺到公司賠本為止,但員工如果為了本身長遠的出路著想,值不值得為了短期利益願意陪這些老闆這樣玩呢?
或許,說「系統設計的人才在台灣是否出路越來越少」這句話的人所指的是,那個學點技術就能夠進系統或晶片設計代工廠做幾年、靠股票分紅成為科技新貴的時代已經過去了,這點我同意,因為台灣過去靠廉價人力紅透半邊天的傳統系統產業正在萎縮中,原本在裡面的人都要想辦法轉型了,還會找新來的人去進去做老掉牙的東西嗎?
然而系統設計的領域大得很,很多人只注意到消費性電子產業,那些系統廠多半以大資本(政府補助)買現成技術薄利多銷的策略為主,卻不知道還有很多技術門檻較高的產業,總產值雖不高,但利潤高,其實頗適合台灣發展。
有不少做較高端系統產品的業界人士可能會告訴你,他們積極在搶真的懂系統軟體的人才,從國外找人才來做研發,還非常需要系統架構師來帶領研發,甚至砸大錢從大學挖學理兼備的教授和博士生來做研發。而我們實驗室有接不完的業界委託研究計畫,做高階系統研發和雲端服務的公司一直向我要人,教育部長官這兩年來不斷要我們想辦法培育更多的高階系統軟體人才和系統架構師。
這些高利潤、高技術門檻的產業,以往較乏人問津,可能是因為國人總喜歡炒短線、學生一窩蜂去大公司,想要馬上賺錢的觀念。我們看到很多值得投資研發的中長期項目,業界不甩,學生也沒有興趣。現在鼓吹年輕人搞新創,我很支持,但前提是不要短視近利,可能的話,以「以技術立身」。
高階系統人才,需要不斷學習來跟上系統的快速演進,而厲害的系統架構師往往需要多年累積的經驗來造就,這就是以技術立身。我之前在矽谷共事五年的團隊,就是一個實際的例子 [1]。
可惜的是,上述的東西,很多人沒有實際接觸過,但做過我多年的臉書朋友應該會覺得我講上述同樣的東西講到煩了...
我想,機會(出路)是保留給準備好的人的,說句不客氣的話,如果連門檻都進不了,還談甚麼出路?在我所看到的現在和未來,系統領域還有很多創新的空間,可以參考Gartner’s Hype Cycle [2],不過我再三強調,高科技業也是高風險業,有很多的hype,所以要保險一點的話,還是設法提升自身的技術,才能長久勝任。
不過我知道有些人不怎麼相信「以技術立身」的想法,或許是對自己的腦袋和技術能力沒有信心,或許是對大環境不抱甚麼希望,有人覺得走門路進當紅的公司撈一筆才是機靈,有人覺得要進大公司當經理主管(之後撈一筆)才是正途,有人覺得還是早點弄到第一桶金來錢滾錢炒房產才是王道;對了,還有那些不想與狼共舞,一直在找尋越來越夢幻的小確幸的羊群們...
我不是狼,也不是羊,我屬馬的。
[1] 博士滿座的系統優化團隊 http://hungsh-ntucsie.blogspot.tw/2⋯⋯
[2] What’s New in Gartner’s Hype Cycle for Emerging Technologies, 2015, http://www.gartner.com/smarterwithg⋯⋯
2016年4月15日 星期五
資訊通識教育以及計算思維的教學法
(原發表於2016/4/5的臉書動態時報上)
資訊通識教育以及計算思維怎麼教呢?我很擔心有人把程式設計課本的每個章節拿出來,簡化一番就拿出來教了。現在的程式設計課,很多大學生都學不好,我想如果把簡化版拿去教中小學,恐怕也是問題重重。
國外在這方面進步得很快,我們不妨來參考一下Google在這個「Exploring Computational Thinking (ECT) 」網頁上所提供的教學影片 [1]。
這些教學影片都很簡短,每個影片用通俗語言來解釋一個概念,採用大量的實際世界的範例和日常接觸到的電腦用語,幾乎不用任何術語,目的是很清楚地讓不懂資訊科技的聽眾理解概念。
舉例來說,有一段標題為「Improving the World’s Videos with Algorithms and the Internet」的影片 [2],解釋如何以演算法和網際網路來改進影片的品質,聽眾不需要懂什麼影像演算法,也不需要知道什麼以太或4G網路。看完影片後,聽眾還是不會寫程式,但是應該能夠理解演算法和網路以及資料中心在實際世界中對影片的作用,以及從作用中摸索其意義。
我個人認為,計算思維中最重要的概念之一,是能夠將計算「抽象化」與「具體化」的能力,例如與影像相關的演算法那麼多,我不需要知道各種演算法長得什麼樣子,但我知道影像壓縮演算法可以幫我省下傳輸時間,影像辨認演算法可以幫我了解影像裡面有什麼物件(以上是抽象化),而這些演算法早已經有聰明的專家實作出來,我們可以透過網際網路,利用資料中心的雲端服務來使用這些演算法(這是具體化)。
至於如何『透過網際網路,利用資料中心的雲端服務來使用這些演算法』呢?想知道的話,就去學寫程式吧!實際上,在某些系統上很可能短短幾行程式就描述了這件工作,學生只需要理解語法,用語法表達想法,將要做的工作描述出來。至於有沒有必要知道這些演算法長什麼樣?我覺得除非想當專家,否則根本不必學。
我想,會寫程式不代表一定懂計算思維,所以要教資訊通識或計算思維的教師,應該要多參考已有的教材,例如Google這裡有個給『教師』去了解計算思維的線上課程 [3],修課者不需要程式設計的基礎,只需要會使用瀏覽器,花費15-30小時。當然,這類課程也頗適合想瞭解所謂的計算思維的一般人。
反過來說,懂運算思維不見得會寫好程式,那又如何?話說寫程式也只是初步,資訊世界還很寬廣,如果懂得資訊世界的運作,心中有運算思維之後,或許有人會想閱讀程式去更加理解資訊世界,或許有人會想學習用程式設計改變周遭世界,或許會想改進資訊系統的架構,或許會想到新的應用、新的商業模式,或許會用計算思維去解決各類學術研究上的問題⋯⋯
所以,我不是說不要教程式設計,而是不希望過於強調程式設計而框限住學習內容和未來的發展性。還有, Google提供的資料,可能比較強調他所在意的東西,所以也需要多參考其他的資料才好。
[1] https://www.google.com/edu/resource⋯⋯
[2] https://www.youtube.com/watch?v=lTj⋯⋯
[3] "Computational Thinking for Educators", https://computationalthinkingcourse.withgoogle.com/⋯⋯
資訊通識教育以及計算思維怎麼教呢?我很擔心有人把程式設計課本的每個章節拿出來,簡化一番就拿出來教了。現在的程式設計課,很多大學生都學不好,我想如果把簡化版拿去教中小學,恐怕也是問題重重。
國外在這方面進步得很快,我們不妨來參考一下Google在這個「Exploring Computational Thinking (ECT) 」網頁上所提供的教學影片 [1]。
這些教學影片都很簡短,每個影片用通俗語言來解釋一個概念,採用大量的實際世界的範例和日常接觸到的電腦用語,幾乎不用任何術語,目的是很清楚地讓不懂資訊科技的聽眾理解概念。
舉例來說,有一段標題為「Improving the World’s Videos with Algorithms and the Internet」的影片 [2],解釋如何以演算法和網際網路來改進影片的品質,聽眾不需要懂什麼影像演算法,也不需要知道什麼以太或4G網路。看完影片後,聽眾還是不會寫程式,但是應該能夠理解演算法和網路以及資料中心在實際世界中對影片的作用,以及從作用中摸索其意義。
我個人認為,計算思維中最重要的概念之一,是能夠將計算「抽象化」與「具體化」的能力,例如與影像相關的演算法那麼多,我不需要知道各種演算法長得什麼樣子,但我知道影像壓縮演算法可以幫我省下傳輸時間,影像辨認演算法可以幫我了解影像裡面有什麼物件(以上是抽象化),而這些演算法早已經有聰明的專家實作出來,我們可以透過網際網路,利用資料中心的雲端服務來使用這些演算法(這是具體化)。
至於如何『透過網際網路,利用資料中心的雲端服務來使用這些演算法』呢?想知道的話,就去學寫程式吧!實際上,在某些系統上很可能短短幾行程式就描述了這件工作,學生只需要理解語法,用語法表達想法,將要做的工作描述出來。至於有沒有必要知道這些演算法長什麼樣?我覺得除非想當專家,否則根本不必學。
我想,會寫程式不代表一定懂計算思維,所以要教資訊通識或計算思維的教師,應該要多參考已有的教材,例如Google這裡有個給『教師』去了解計算思維的線上課程 [3],修課者不需要程式設計的基礎,只需要會使用瀏覽器,花費15-30小時。當然,這類課程也頗適合想瞭解所謂的計算思維的一般人。
反過來說,懂運算思維不見得會寫好程式,那又如何?話說寫程式也只是初步,資訊世界還很寬廣,如果懂得資訊世界的運作,心中有運算思維之後,或許有人會想閱讀程式去更加理解資訊世界,或許有人會想學習用程式設計改變周遭世界,或許會想改進資訊系統的架構,或許會想到新的應用、新的商業模式,或許會用計算思維去解決各類學術研究上的問題⋯⋯
所以,我不是說不要教程式設計,而是不希望過於強調程式設計而框限住學習內容和未來的發展性。還有, Google提供的資料,可能比較強調他所在意的東西,所以也需要多參考其他的資料才好。
[1] https://www.google.com/edu/resource⋯⋯
[2] https://www.youtube.com/watch?v=lTj⋯⋯
[3] "Computational Thinking for Educators", https://computationalthinkingcourse.withgoogle.com/⋯⋯
2016年4月12日 星期二
失業率與學用落差
有些人看到聯合報這篇的標題【2.7萬碩博士沒頭路!失業率比專科生還高】(註1),馬上就下斷語,開始批評高等教育的學用落差問題,我看了覺得哭笑不得。
我這些年一直批判高等教育學用落差的問題,也一直提倡產學合作來降低學用落差,因此我樂見社會大眾關心這個問題,但並非隨意引用數據來踐踏專業。
不只聯合報,「關鍵評論網」這篇【所學無法致用 碩博士失業率比專科生還高】(註2),摘錄了各大媒體的報導,把失業率和學用落差扣連在一起。多虧有這篇,我很快就找到各大媒體報導的內容。
首先,如果今天有篇報告說,這個月蘋果的銷售率比橘子高,您會不會馬上說,這批橘子種得不好,種橘子的人有問題? 蘋果比橘子,就單一項目去比較,很容易得到錯誤的結論,更何況是拿大學比專科,應該要從多個面向去比較,才有意義(註3)。
其次,聯合報說「研究所以上學歷者失業率3.07%,但專科學歷者失業率僅2.96%」,請問這個0.11%的差別很大嗎? 注意到記者這邊用了「僅」字,試圖引導讀者。如果研究所以上學歷者的失業率跟專科一樣低,標題還是可以寫有2.6萬碩博士沒頭路。
大家不妨來研究以下的圖表,原本圖表刊在中國時報上(註4),為了不侵犯他的版權,我自己用Excel輸入資料重製過:

圖表上,每年的失業率起伏的幅度,常常大於0.11%。如果說是學用落差的問題,那麼100年、103年的時候研究所失業率比專科低許多,該如何解釋? 拿今年這0.11%(聯合報的數字)或0.13%(中時的數字)來指責學用落差,是沒有什麼道理的。失業率,與太多的因素有關,尤其是經濟狀況和產業的需求,不是隨意就把矛頭指向研究所。
再者,有些人比較專科和研究所的失業率,歸因說研究所做了很多沒用的學術研究,擴大學用落差,可是圖表上這些年大學畢業生的失業率一直維持在5.5%上下,遠高於專科和研究所,請問又該如何解釋呢? 我們知道,有不少大學生畢業後準備考研究所,所以提高了大學畢業生的失業率,所以要再次強調,失業率不是單一因素所造成的,不假思索、不合邏輯地就拿某項數據來支持個人論點,是偏頗而有失公允的。
最後,報導引用主計總處官員的話,說這是學用落差的問題,例如中時(註4):「碩博士雖然學歷較高,對就業有一定程度的幫助,但長期以來,由於產學間一直存在落差,學校所學未必符合業界的需求,因此失業人數比外界預期來得高,反觀專科偏重技術,較符合業界需求,就業機會較多、失業率較低。」
這種質性的說法,全然以業界的觀點來看待學用落差,失之偏頗。我們為何不換個角度說,業界不懂如何運用高等教育所造就的高階人才? 這麼多年各界一再呼籲產業要轉型,請問有多少產業真的轉型了? 薪水凍漲了這麼多年,請問還要高等教育和年輕人如何配合這個充滿了世代剝削和壓榨勞力的產業?
我前兩周在矽谷,看到許多公司爭相從台灣挖人才,要我推薦人才,我也是哭笑不得。如果本土產業能夠善用人才,我何必幫國外公司介紹? 如果本土產業只會集體壓低薪資行情,引進低薪外勞,來保證資本家穩賺不賠,哪我們何忍讓辛苦培育出來的高階人才被踐踏? 我會說,真正該檢討的重點不在於那3%的失業率,而是在那97%的人所受的待遇。
當然,高等教育有很多地方也需要被檢討,如果不是因為這些年累積的問題,也不至於如今落到人人喊打的地步,但不要因為打高等教育的問題而忽視產業轉型和世代剝削的問題,否則我們培育出的人才要何去何從?
(註1) http://udn.com/news/story/6/1621258
(註2) http://www.thenewslens.com/post/309⋯⋯
(註3) 題外話,我想,能夠分析多維度的資料,是近代機器學習技術遠優於仰仗規則的傳統AI的地方,由此可窺見一般教育訓練的不足之處。
(註4) http://www.chinatimes.com/newspaper⋯⋯
我這些年一直批判高等教育學用落差的問題,也一直提倡產學合作來降低學用落差,因此我樂見社會大眾關心這個問題,但並非隨意引用數據來踐踏專業。
不只聯合報,「關鍵評論網」這篇【所學無法致用 碩博士失業率比專科生還高】(註2),摘錄了各大媒體的報導,把失業率和學用落差扣連在一起。多虧有這篇,我很快就找到各大媒體報導的內容。
首先,如果今天有篇報告說,這個月蘋果的銷售率比橘子高,您會不會馬上說,這批橘子種得不好,種橘子的人有問題? 蘋果比橘子,就單一項目去比較,很容易得到錯誤的結論,更何況是拿大學比專科,應該要從多個面向去比較,才有意義(註3)。
其次,聯合報說「研究所以上學歷者失業率3.07%,但專科學歷者失業率僅2.96%」,請問這個0.11%的差別很大嗎? 注意到記者這邊用了「僅」字,試圖引導讀者。如果研究所以上學歷者的失業率跟專科一樣低,標題還是可以寫有2.6萬碩博士沒頭路。
大家不妨來研究以下的圖表,原本圖表刊在中國時報上(註4),為了不侵犯他的版權,我自己用Excel輸入資料重製過:

圖表上,每年的失業率起伏的幅度,常常大於0.11%。如果說是學用落差的問題,那麼100年、103年的時候研究所失業率比專科低許多,該如何解釋? 拿今年這0.11%(聯合報的數字)或0.13%(中時的數字)來指責學用落差,是沒有什麼道理的。失業率,與太多的因素有關,尤其是經濟狀況和產業的需求,不是隨意就把矛頭指向研究所。
再者,有些人比較專科和研究所的失業率,歸因說研究所做了很多沒用的學術研究,擴大學用落差,可是圖表上這些年大學畢業生的失業率一直維持在5.5%上下,遠高於專科和研究所,請問又該如何解釋呢? 我們知道,有不少大學生畢業後準備考研究所,所以提高了大學畢業生的失業率,所以要再次強調,失業率不是單一因素所造成的,不假思索、不合邏輯地就拿某項數據來支持個人論點,是偏頗而有失公允的。
最後,報導引用主計總處官員的話,說這是學用落差的問題,例如中時(註4):「碩博士雖然學歷較高,對就業有一定程度的幫助,但長期以來,由於產學間一直存在落差,學校所學未必符合業界的需求,因此失業人數比外界預期來得高,反觀專科偏重技術,較符合業界需求,就業機會較多、失業率較低。」
這種質性的說法,全然以業界的觀點來看待學用落差,失之偏頗。我們為何不換個角度說,業界不懂如何運用高等教育所造就的高階人才? 這麼多年各界一再呼籲產業要轉型,請問有多少產業真的轉型了? 薪水凍漲了這麼多年,請問還要高等教育和年輕人如何配合這個充滿了世代剝削和壓榨勞力的產業?
我前兩周在矽谷,看到許多公司爭相從台灣挖人才,要我推薦人才,我也是哭笑不得。如果本土產業能夠善用人才,我何必幫國外公司介紹? 如果本土產業只會集體壓低薪資行情,引進低薪外勞,來保證資本家穩賺不賠,哪我們何忍讓辛苦培育出來的高階人才被踐踏? 我會說,真正該檢討的重點不在於那3%的失業率,而是在那97%的人所受的待遇。
當然,高等教育有很多地方也需要被檢討,如果不是因為這些年累積的問題,也不至於如今落到人人喊打的地步,但不要因為打高等教育的問題而忽視產業轉型和世代剝削的問題,否則我們培育出的人才要何去何從?
(註1) http://udn.com/news/story/6/1621258
(註2) http://www.thenewslens.com/post/309⋯⋯
(註3) 題外話,我想,能夠分析多維度的資料,是近代機器學習技術遠優於仰仗規則的傳統AI的地方,由此可窺見一般教育訓練的不足之處。
(註4) http://www.chinatimes.com/newspaper⋯⋯
2016年3月16日 星期三
現在和未來新創所需的技能
看到這個世界經濟論壇報告裡講到2015和2020的Top Skills,如下圖。從2015到2020次序略有變動,耐人尋味。不過我比較關切的是從新創的角度來看這些Top Skills。基本上,新創的門檻會逐年提升,所以並不見得適合所有人,而且有些技能本來就需要某些資質和天份,不是說猛力訓練就能出得來,應該適性發展,不能過於勉強。同時,這上面所列的能力還頗多元的,但並不是說一個人必須具備所有表列的技能才行。

我先談與新創最有關係的前三項,之後有空再慢慢補充其他項目:
第一是解決複雜問題的能力(Complex Problem Solving),但是要如何才能訓練出這種能力呢?我們做系統研究,就是研究複雜系統裡面組件之間各種互動模式中可能產生的問題,這需要蒐集資料、細心觀察、分析問題根源、提出解決方案、實際驗證效果。這不是在學校裡做那些可預見結果的實驗,也不是去業界做那些受幾個月訓練就能上手的工作所能培養的能力。
第二是批判式的思考(Critical Thinking),更是那些乖乖聽話讀書的人所欠缺的訓練。我們的社會,一向不大鼓勵批判傳統主流想法,甚至把批判和特立獨行看成是叛逆。但是批判式的思考,並不是網民打口水戰、為反對而反對嗆聲,要有足夠深刻的思想,才能脫離膚淺的批判。
第三是創新的能力(Creativity)。在這個資訊爆炸的時代,已經有ㄧ輩子讀不完的好書和電影、電視,還有數位教育課程,甚至還有會解決已知問題、精準完成任務的人工智慧和機器人,如果不創新的話,那要做什麼事來呈現個人的價值呢?但要如何訓練創新的能力呢?除了天才和天份之外,我覺得上述第一和第二項能力也是創新的關鍵,如果懂得解析複雜問題、批判既有作法,那創新的機會可能提高不少。
此外,對於研究人才來說,排在五和第七位的Coordinating with Others和Judgement and Decision Making,也是很重要的技能。
但這些聽起來還是很抽象,要如何發展和應用這些技能呢? 要講清楚並不容易,剛好今天晚上在探索開源系統軟體時,看到一個技術創業的故事,剛好可以拿來對比以上所提到的技能。
話說我對Tachyon這個開源系統軟體很感興趣,原因可能是因為我也早有類似的構想,只是沒有找到有能力而且願意做的博士班學生。今晚突然想關心一下Tachyon的時候,發現他變成了1.0版,而且名字換成了Alluxio (註1)。想多了解一下為什麼換名字,就讀了作者的部落格。

Tachyon/Alluxio的作者HaoYuan Li還在唸博士班,讓我們來看看他的技術創業故事,也試著看看那些地方用得到上述的技能:
理想上,上述的技能,當然是越早適性開發越好,但我們常常批評在台灣長大的人,只會念書考試,我想中國也不遑多讓。我想HaoYuan Li本身的資質應該是頗優秀的,不過在這個例子裡,可以看到UC Berkeley研究所提供了發展和應用技能的環境和機會。這樣的研究所環境,台灣有沒有呢? 以前的學術界的問題已經談過很多,在此就不說了,現在學校比較重視新創和產學,所以建議諸位對新創有興趣的同學和業界朋友,可以設法找到這樣的環境,善加利用。
(註1) http://www.alluxio.com/2016/02/allu⋯⋯

我先談與新創最有關係的前三項,之後有空再慢慢補充其他項目:
第一是解決複雜問題的能力(Complex Problem Solving),但是要如何才能訓練出這種能力呢?我們做系統研究,就是研究複雜系統裡面組件之間各種互動模式中可能產生的問題,這需要蒐集資料、細心觀察、分析問題根源、提出解決方案、實際驗證效果。這不是在學校裡做那些可預見結果的實驗,也不是去業界做那些受幾個月訓練就能上手的工作所能培養的能力。
第二是批判式的思考(Critical Thinking),更是那些乖乖聽話讀書的人所欠缺的訓練。我們的社會,一向不大鼓勵批判傳統主流想法,甚至把批判和特立獨行看成是叛逆。但是批判式的思考,並不是網民打口水戰、為反對而反對嗆聲,要有足夠深刻的思想,才能脫離膚淺的批判。
第三是創新的能力(Creativity)。在這個資訊爆炸的時代,已經有ㄧ輩子讀不完的好書和電影、電視,還有數位教育課程,甚至還有會解決已知問題、精準完成任務的人工智慧和機器人,如果不創新的話,那要做什麼事來呈現個人的價值呢?但要如何訓練創新的能力呢?除了天才和天份之外,我覺得上述第一和第二項能力也是創新的關鍵,如果懂得解析複雜問題、批判既有作法,那創新的機會可能提高不少。
此外,對於研究人才來說,排在五和第七位的Coordinating with Others和Judgement and Decision Making,也是很重要的技能。
但這些聽起來還是很抽象,要如何發展和應用這些技能呢? 要講清楚並不容易,剛好今天晚上在探索開源系統軟體時,看到一個技術創業的故事,剛好可以拿來對比以上所提到的技能。
話說我對Tachyon這個開源系統軟體很感興趣,原因可能是因為我也早有類似的構想,只是沒有找到有能力而且願意做的博士班學生。今晚突然想關心一下Tachyon的時候,發現他變成了1.0版,而且名字換成了Alluxio (註1)。想多了解一下為什麼換名字,就讀了作者的部落格。

Tachyon/Alluxio的作者HaoYuan Li還在唸博士班,讓我們來看看他的技術創業故事,也試著看看那些地方用得到上述的技能:
- HaoYuan Li是2008年北京大學畢業的學生,先到美國Cornell大學念碩士,2011年開始在UC Berkeley攻讀博士。他在北大時,在2005-2008年就到Google實習;2010年拿到Cornell碩士後,到Conviva這家2006年成立的新創公司做了一年,才到Berkeley念博士。所以在念博士班之前,就具備了相當的業界經驗。
- 他看到AMPLAB實驗室出品的Spark和Mesos這兩個軟體紅起來,卻同時也看到這幾個軟體的不足之處 ,這應該就是所謂的Critical Thinking。
- 於是在2012年底產生了Tachyon技術來補充不足之處的想法,這是所謂的Creativity。
- 評估之後,決定這是值得研究的題目,馬上開始做,花了幾個月做出了Tachyon的雛型,這是Judgement and Decision Making。
- 在2013/04開放原始碼,以與社群合作的方式繼續研發,這需要Coordinating with Others的技能。
- 再花了兩年的時間不斷去改進Tachyon ,這就是博士班最強調的Complex Problem Solving 。
- 在2015年獲得750萬美元的投資成立公司。到現在,阿里巴巴、百度、華為、IBM、BARCLAYS等大公司都開始用這個軟體,不知道Alluxio這個公司現在價值多少? 他作為CEO,要讓公司發展,可不能光憑技術,也需要People Management、Emotional Intelligence、Service Orientation、Negotiation等技能。
理想上,上述的技能,當然是越早適性開發越好,但我們常常批評在台灣長大的人,只會念書考試,我想中國也不遑多讓。我想HaoYuan Li本身的資質應該是頗優秀的,不過在這個例子裡,可以看到UC Berkeley研究所提供了發展和應用技能的環境和機會。這樣的研究所環境,台灣有沒有呢? 以前的學術界的問題已經談過很多,在此就不說了,現在學校比較重視新創和產學,所以建議諸位對新創有興趣的同學和業界朋友,可以設法找到這樣的環境,善加利用。
(註1) http://www.alluxio.com/2016/02/allu⋯⋯
2016年3月3日 星期四
改行做軟體與自學新專業
某位臉友來信談到轉行自學的問題,由於是常見問題,在徵得他本人同意之下,我公開回答他的提問,也希望諸位先進給與指教。
Q. 臉友提問:
我是您Blog & FB 的追蹤者,長時間閱讀老師所寫的文章,而老師也時常點出業界的弊病及提出改善的方法,台灣須從高資本低技術轉型到低資本高技術產業,已是刻不容緩的事情。
本身研究所畢業之後從事顯示器背光模組機構設計(兩年),近年來因技術被大陸追趕,不斷被搶單,而高層只想賺可以立竿見影的easy money,不願意長期投資先端的研發。因為硬體開發成本高的特性,底下的工程師縱使再有想法也無力影響公司改變,最後是失望離開。
因想要轉職&政府補助,在資策會進修過java web設計,目前做銀行AP的軟體撰寫。但是從硬體產業跳到軟體產業,發現若不從事深度技術的研發,依然是在做代工。若是想往系統底層技術發展,勢必須在系統軟體鑽研,而根據老師你近日的文章表示,此領域若不能全心投入很難有顯著的成果。
雖然本身透過下班之餘自學,但以非相關背景進入此領域還是感受到困難。由於您在平行運算&異質系統有深刻的研究,希望可以請教老師有關學習&如何踏入這行的建議。
A. 我的回覆:
在這個資訊全球化的時代,如果只是會做一些眾多人都會的東西,技術門檻不高的話,那麼無論做甚麼,所可能獲得的利益,恐怕還是會和硬體代工業或是傳統產業差不多,除非有個富爸爸或是政府補助。甚至由於資訊科技的進步極快,較為浮面膚淺的東西過不了多久就被淘汰,因此要在資訊界安身立命,談何容易?
如果細心看我的文字,我從來不隨便鼓勵年輕人走資訊科技這條路的,我只是說資訊界目前需要人才,而且在可預見的將來還持續提供人才發揮能力的舞台,但未必所有人都適合走這條路。事實上,這條路並不容易走,如果只是偏重技術研發,沒辦法在生態系中佔據一席之地的話,到頭來還是只能以技術代工,甚至在一窩蜂搶訂單,無法向上發展的情況下,就會遇到您所見的窘境。
我所謂的在生態系中佔據一席之地、向上發展,並不是說一定要擴大營業額、做品牌行銷。那是一般的迷思,覺得代工廠賺錢後,就應該放大利潤、朝品牌發展、直接面對消費者。我認為,以台灣本身的市場規模和經濟實力,在大型消費市場上做品牌行銷,需要大量資本和商業操作,如果沒有技術門檻的保護,很容易踢到鐵板。
因此,其實我並不反對代工,只是我們總是希望工作可以換取更高的報酬。代工業者如果精益求精,提高自己與競爭者的技術差距,就有機會獲得較高報酬。例如台積電、鴻海這些公司,雖然是代工,但他們長期在製造技術上所投入的研發,讓他們得以在生態系中佔據一席之地。
但是要向上發展的話,不只要會做漸進式的改進,而是要能解決原本不會,或是更複雜的問題。例如組裝iPhone的工廠和設計iPhone的Apple相比,一個強調代工製造的能力,一個強調「Think Different」,各有各的專業,但專業的報酬有頗大的差別。雖然很多人都覬覦Apple的高獲利能力,但這並非台灣的廠商能夠快速趕上的領域。
單單只是換個方向朝「軟體」發展,如果不能提高技術門檻的話,也很難提昇工作的報酬。美國的公司,在十多年前就將一些軟體的工作外包到印度去,而印度也欣然地扶植其軟體代工業,然而迄今印度的軟體技術以及從業人員的收入,仍然大幅落後美國。
印度的軟體代工人員的薪資不高的原因是軟體越來越複雜,用途越來越廣,但提高軟體價值的關鍵不在於軟體本身,而在於如何使用軟體開拓新產業,或是提昇既有產業的競爭力。因此,如果我們不改變想法,一頭熱投向軟體產業,做一些低技術門檻的軟體代工,那結果可能就如同您所描述的「從硬體產業跳到軟體產業,發現若不從事深度技術的研發,依然是在做代工」。因此,我希望國內在做軟體研發的時候,能夠找到一些方法來提昇產業的競爭力,包括與特定產業領域知識的深度結合,或是在軟體技術上產生差異化。
想與特定產業領域知識的深度結合,以您目前做銀行AP的軟體撰寫的工作為例,如果只是被動接受委託寫出銀行所需的軟體功能,那就是代工;如果您能夠深切了解銀行的需求,主動提出可能提昇銀行競爭力、因應未來需求的軟體方案,那就是目前最熱門的金融科技(FinTech)了。同樣是幫銀行寫軟體,工作性質有很大的不同。如果要做金融科技的話,就要有能力跟得上這門快速進步中的新興領域,如同我一開始講的,從業者本身若是沒有兩下子,談何容易?
那麼要在軟體技術上產生差異化,可以怎麼做呢?方法頗多,如我昨天在「開源系統軟體」社團上貼文提到,我們可以把改善開源軟體效能的方法分為四大類:
1. 改進演算法,這個是大多數CS的學生都可以試試看的
2. 加入JIT編譯技術加速,範例請參考Jim Huang (黃敬群老師)的筆記(註)
3. 改以平行化,分散式計算或異質運算加速
4. 改進資料流動的效率,例如以DMA/RDMA傳送資料,以caching存取常用資料,以memory取代硬碟存放大數據
要解決實務問題,招數不嫌多。第一招是最多人可以嘗試的,像是參加程式設計競賽一樣,要想到別人想不到的最佳的演算法,難度頗高;第二招需要懂一些動態編譯器的技術,屬於比較硬一點的軟體技術;第三招需要搭配計算機架構/平行計算/網路/GPU,也有其難度;第四招則需要打破傳統以計算為主的思維,在系統層面觀察實際資料的流動,再以軟硬體綜合規劃的方式去改善效能。
然而,要精通上述的每一種招數,都需要花費時間去學習和應用,很難速成。黃敬群老師昨天來我課堂上講三小時,學生起碼要花三十小時才能有起碼的了解,都是學生們必須自己嘗試去學習的,如果所有的東西都要等老師來教,那將來要如何面對快速進化的開源系統軟體?
今天有位大四的學生對我說,他聽了黃老師的課之後非常惶恐,覺得自己懂得太少。我勸他不要太擔心,因為業界有太多人基本的軟體功夫不夠扎實,很少跟社群接觸,根本不知道自己懂太少。知道自己懂得少,有幸遇到明師願意指導,就好好把握學習機會,只要一路學下去,就有機會成為專家。
此外,要使用上述招數之前,必須有能力解析資訊系統和複雜軟體的功能和效能,這些也不是短期間能夠精熟的東西。而且,就算能精通以上的技能,我們還是要回歸到應用面,想辦法用這些技能去改善高價值的軟體應用,提昇產業的競爭力,這樣才會得到重視。
所以說,您問到要如何踏入這行、鑽研系統軟體,這固然有其困難之處,但我想更關鍵的問題在於,您是否了解這個行業快速變化的特質,是否能夠適應這種不斷在演進的場域,願意花多少時間來學習成為專家,以及未來想如何展現身手、持續精進?如果只有下班之餘能夠自學,也不是不可行,但要在有限時間和資源之下迎頭趕上,恐怕難度頗高。
我個人已經浸淫在資訊科技將近三十五年了,到現在還是時常要涉獵新領域、學習新知識、思考新問題,才能維持自己在這個行業的競爭力和敏銳度,如果將此視為興趣,自然會樂此不疲,但若以此維生養家活口,那麼可能還是再考慮一下吧?
延伸閱讀: 關於產業轉型的部分,我另外寫了一篇網誌,可以參考一下: https://www.facebook.com/notes/洪�⋯⋯
(註)
https://ntuoss.hackpad.com/Mar-1-20⋯⋯
https://embedded2015.hackpad.com/Co⋯⋯
Q. 臉友提問:
我是您Blog & FB 的追蹤者,長時間閱讀老師所寫的文章,而老師也時常點出業界的弊病及提出改善的方法,台灣須從高資本低技術轉型到低資本高技術產業,已是刻不容緩的事情。
本身研究所畢業之後從事顯示器背光模組機構設計(兩年),近年來因技術被大陸追趕,不斷被搶單,而高層只想賺可以立竿見影的easy money,不願意長期投資先端的研發。因為硬體開發成本高的特性,底下的工程師縱使再有想法也無力影響公司改變,最後是失望離開。
因想要轉職&政府補助,在資策會進修過java web設計,目前做銀行AP的軟體撰寫。但是從硬體產業跳到軟體產業,發現若不從事深度技術的研發,依然是在做代工。若是想往系統底層技術發展,勢必須在系統軟體鑽研,而根據老師你近日的文章表示,此領域若不能全心投入很難有顯著的成果。
雖然本身透過下班之餘自學,但以非相關背景進入此領域還是感受到困難。由於您在平行運算&異質系統有深刻的研究,希望可以請教老師有關學習&如何踏入這行的建議。
A. 我的回覆:
在這個資訊全球化的時代,如果只是會做一些眾多人都會的東西,技術門檻不高的話,那麼無論做甚麼,所可能獲得的利益,恐怕還是會和硬體代工業或是傳統產業差不多,除非有個富爸爸或是政府補助。甚至由於資訊科技的進步極快,較為浮面膚淺的東西過不了多久就被淘汰,因此要在資訊界安身立命,談何容易?
如果細心看我的文字,我從來不隨便鼓勵年輕人走資訊科技這條路的,我只是說資訊界目前需要人才,而且在可預見的將來還持續提供人才發揮能力的舞台,但未必所有人都適合走這條路。事實上,這條路並不容易走,如果只是偏重技術研發,沒辦法在生態系中佔據一席之地的話,到頭來還是只能以技術代工,甚至在一窩蜂搶訂單,無法向上發展的情況下,就會遇到您所見的窘境。
我所謂的在生態系中佔據一席之地、向上發展,並不是說一定要擴大營業額、做品牌行銷。那是一般的迷思,覺得代工廠賺錢後,就應該放大利潤、朝品牌發展、直接面對消費者。我認為,以台灣本身的市場規模和經濟實力,在大型消費市場上做品牌行銷,需要大量資本和商業操作,如果沒有技術門檻的保護,很容易踢到鐵板。
因此,其實我並不反對代工,只是我們總是希望工作可以換取更高的報酬。代工業者如果精益求精,提高自己與競爭者的技術差距,就有機會獲得較高報酬。例如台積電、鴻海這些公司,雖然是代工,但他們長期在製造技術上所投入的研發,讓他們得以在生態系中佔據一席之地。
但是要向上發展的話,不只要會做漸進式的改進,而是要能解決原本不會,或是更複雜的問題。例如組裝iPhone的工廠和設計iPhone的Apple相比,一個強調代工製造的能力,一個強調「Think Different」,各有各的專業,但專業的報酬有頗大的差別。雖然很多人都覬覦Apple的高獲利能力,但這並非台灣的廠商能夠快速趕上的領域。
單單只是換個方向朝「軟體」發展,如果不能提高技術門檻的話,也很難提昇工作的報酬。美國的公司,在十多年前就將一些軟體的工作外包到印度去,而印度也欣然地扶植其軟體代工業,然而迄今印度的軟體技術以及從業人員的收入,仍然大幅落後美國。
印度的軟體代工人員的薪資不高的原因是軟體越來越複雜,用途越來越廣,但提高軟體價值的關鍵不在於軟體本身,而在於如何使用軟體開拓新產業,或是提昇既有產業的競爭力。因此,如果我們不改變想法,一頭熱投向軟體產業,做一些低技術門檻的軟體代工,那結果可能就如同您所描述的「從硬體產業跳到軟體產業,發現若不從事深度技術的研發,依然是在做代工」。因此,我希望國內在做軟體研發的時候,能夠找到一些方法來提昇產業的競爭力,包括與特定產業領域知識的深度結合,或是在軟體技術上產生差異化。
想與特定產業領域知識的深度結合,以您目前做銀行AP的軟體撰寫的工作為例,如果只是被動接受委託寫出銀行所需的軟體功能,那就是代工;如果您能夠深切了解銀行的需求,主動提出可能提昇銀行競爭力、因應未來需求的軟體方案,那就是目前最熱門的金融科技(FinTech)了。同樣是幫銀行寫軟體,工作性質有很大的不同。如果要做金融科技的話,就要有能力跟得上這門快速進步中的新興領域,如同我一開始講的,從業者本身若是沒有兩下子,談何容易?
那麼要在軟體技術上產生差異化,可以怎麼做呢?方法頗多,如我昨天在「開源系統軟體」社團上貼文提到,我們可以把改善開源軟體效能的方法分為四大類:
1. 改進演算法,這個是大多數CS的學生都可以試試看的
2. 加入JIT編譯技術加速,範例請參考Jim Huang (黃敬群老師)的筆記(註)
3. 改以平行化,分散式計算或異質運算加速
4. 改進資料流動的效率,例如以DMA/RDMA傳送資料,以caching存取常用資料,以memory取代硬碟存放大數據
要解決實務問題,招數不嫌多。第一招是最多人可以嘗試的,像是參加程式設計競賽一樣,要想到別人想不到的最佳的演算法,難度頗高;第二招需要懂一些動態編譯器的技術,屬於比較硬一點的軟體技術;第三招需要搭配計算機架構/平行計算/網路/GPU,也有其難度;第四招則需要打破傳統以計算為主的思維,在系統層面觀察實際資料的流動,再以軟硬體綜合規劃的方式去改善效能。
然而,要精通上述的每一種招數,都需要花費時間去學習和應用,很難速成。黃敬群老師昨天來我課堂上講三小時,學生起碼要花三十小時才能有起碼的了解,都是學生們必須自己嘗試去學習的,如果所有的東西都要等老師來教,那將來要如何面對快速進化的開源系統軟體?
今天有位大四的學生對我說,他聽了黃老師的課之後非常惶恐,覺得自己懂得太少。我勸他不要太擔心,因為業界有太多人基本的軟體功夫不夠扎實,很少跟社群接觸,根本不知道自己懂太少。知道自己懂得少,有幸遇到明師願意指導,就好好把握學習機會,只要一路學下去,就有機會成為專家。
此外,要使用上述招數之前,必須有能力解析資訊系統和複雜軟體的功能和效能,這些也不是短期間能夠精熟的東西。而且,就算能精通以上的技能,我們還是要回歸到應用面,想辦法用這些技能去改善高價值的軟體應用,提昇產業的競爭力,這樣才會得到重視。
所以說,您問到要如何踏入這行、鑽研系統軟體,這固然有其困難之處,但我想更關鍵的問題在於,您是否了解這個行業快速變化的特質,是否能夠適應這種不斷在演進的場域,願意花多少時間來學習成為專家,以及未來想如何展現身手、持續精進?如果只有下班之餘能夠自學,也不是不可行,但要在有限時間和資源之下迎頭趕上,恐怕難度頗高。
我個人已經浸淫在資訊科技將近三十五年了,到現在還是時常要涉獵新領域、學習新知識、思考新問題,才能維持自己在這個行業的競爭力和敏銳度,如果將此視為興趣,自然會樂此不疲,但若以此維生養家活口,那麼可能還是再考慮一下吧?
延伸閱讀: 關於產業轉型的部分,我另外寫了一篇網誌,可以參考一下: https://www.facebook.com/notes/洪�⋯⋯
(註)
https://ntuoss.hackpad.com/Mar-1-20⋯⋯
https://embedded2015.hackpad.com/Co⋯⋯
冀望新政府來解決學用落差?
包括小弟我在內,很多人探討這些年來高等教育的學用落差問題,有些人希望新政府能解決問題。
我多次說過我不想當官,只想做事,因為我認為在這個時代,當官不見得做得了事,要做事的不一定要當官,尤其是對我這個人而言。因為我個人認為,台灣當前許多問題的根源在於教育文化,而教育文化影響到經濟與政治,衍生出社會問題。這些根源性的問題,光是換一批人執政,或許能改善問題,但並不足以全盤解決。
我想,唯有民眾的覺醒,才能促使教育文化的提升。比如說以下這段報導,希望只是媒體的片段報導,也希望民眾會明察秋毫:
「蔡英文政策辦公室執行長張景森轉述,業者反映台灣教育系統與產業脫節,產業需要的軟體人才非常不足,因為老師教學生寫軟體、或自己寫軟體,也不能升等,造成教育系統產生的人才不符合產業需求。」(註1)
如果把上述這段的「因為」換成「其原因之一是」的話,那我可以接受。但是,邏輯上我不大認同以上這段的說法,因為完全沒有提到業界自己該負起的責任,包括業界提供具備吸引力的工作條件,以及業界與學界合作共同培養軟體人才。
教育部或是學校的長官們,或許不方便出面反駁這個未來可能是上級長官的張景森執行長所轉述的話,因此社會大眾和未來的執政團隊可能以為學界默認了此類業界人士的說法。
因為我沒有長官們的包袱,所以可以大膽跳出來說,當前的學用落差,是這些年學界、業界與政府所造成的共業,我們不能老是讓業界指責政府,政府訓示學校,而學校為了經費只好悶聲照辦,不敢說話。如果換了政府還是這樣幹,是超越不了這個共業所造成的障礙而持續這個循環的。
但坊間往往對於我這類沒權沒勢沒名的人的話不放在眼裡,當成是憤青、酸民之流,甚至學界大老會嗤之以鼻,說不在體制內反映意見,不好好做教學研究,寫這些沒什麼用。但在體制內反映意見能造成改變嗎? 什麼是好好做教學研究呢?
其實張景森執行長轉述的話,就是指出我們多年前就指出的大問題。雖然在過去這些年,教授要快速升等的話,教軟體不如專心寫論文,關心教育界大環境不如教學生鑽牛角尖,至少這是我親身經驗。但我覺得,在新的時代,學術界必須有新氣象,不能再延續這樣的舊文化,所以我覺得該做的事情要做,該講的話還是該講,只是累壞自己的身體,減少陪伴家人的時間罷了。
我在2014-2015年間,接受臺灣大學公共政策與法律研究中心的委託,探討學用落差的問題,撰寫了一份題目為【務實弭平學用落差與促進產學合作】的研究報告,收錄於【台灣高等教育與人才培育--學界業界與政府應負的責任】(註2) 的第五章,歡迎各界參考。學用落差的問題,牽連到產官學各界,如果各自為政,互踢皮球,推卸責任,那麼是解決不了問題的,想概略了解全局的話,可以看看這篇報告,在此我就不多說了。
該報告完成時大約是2015年5月,剛好當時的教育部吳思華部長找我和一群關心高等教育改革的人士某周末在部長官邸做非正式茶敘,我把這份360頁的報告,還來不及裝訂,直接呈上去給部長,建議他有空看看。當然,吳部長有沒有空看,我不知道。我只是想盡我作為國民的一份責任,以及述說我在學界的所見所聞所思。
的確,我是不能只靠教學生寫軟體、或自己寫軟體而升等的,我也不是為了升等而來做「開源系統軟體」的教學研究,而上述探討學用落差的報告,對我的學術生涯不會有加分作用,只希望不要被長官認為是不務正業就好。
有趣的是,這些日子以來,學術界似乎出現某種轉機。這一周來參與了系上的「產學合作」和「新興領域」的策略會議,討論如何鼓勵系上同仁做產學合作以及朝向新興領域發展。最近負責寫新的「研發基地」的構想書,教育部長官已不再拿「大學排名」和「學術卓越」作為首要的目標,而是洋洋灑灑列了十大點:
1. 對台灣前瞻創新產業發展的影響
2. 是否對解決我國社會重要問題有所貢獻
3. 是否成為該領域或主題匯聚校內外人才與研究成果的重要平台,並創造外部連結效益
4. 是否展現階段性研究進展
5. 是否與國際重要研究單位與社群建立合作連結關係
6. 是否在該研究領域上積極促進社會對話、每年提出政策建議書
7. 是否吸引全球人才來台就學工作
8. 在該領域是否擁有整合與學術領導地位
9. 研究成果回饋學生學習的情形
10. 其他學校自訂重點
當然,學術中人最會寫文章,所以要落實一切,最後還是要看評審是否務實,是否有眼光,是否能抗拒人情壓力。否則,就算文章作得再好,結果靠學術人脈結案,還是務虛一場。
除了教育部,產業界和其他政府部門似乎也開始想玩真的,想多投一些資源在軟體研發上,對於開源系統軟體有興趣,找我諮詢發展軟體的對策等等,甚至學生們也動了起來,開始關心起資訊教育。我想,這些都是好現象。
在我談理念的同時,我也跟年輕人談現實面,理想和現實往往是有段距離的,最終還是得一面尋求平衡,一面藉由創新來降低期間的落差。想降低學用落差,也是一樣的道理。我昨天才寫了一篇網誌,公開回應一位想轉行的臉友(註3)。我說,現在是個全球資訊化的時代,當年台灣靠著與美國日本的友好關係和技術合作,也得花上一段時間才能建立起硬體代工、代設計產業,現在某些代工產業所面臨的問題,在於技術門檻不夠高、差異化不夠,會做的人多,只好削價競爭,但是那些夠專業的代工廠,還是有其生存之道。我們鼓勵創新,但同時希望技術門檻要夠,才能真正改變產業。
我希望多一些像我一樣做軟體教學研究的教授能夠升等,但我不能保證;我希望多一些和我合作做軟體技術研發的公司能夠發達,但我不能保證;我希望讓多一些對軟體有興趣的學生更上一層樓,但我不能保證他們一定找到理想的工作。不過我個人覺得,好好想清楚,找到值得努力的理想,比起找到確定能大發利市的工作,更是個人能把握的事情。
對我來說,有個值得努力的理想,在努力的過程中嘗試縮短理想與事實之間的差距、讓自己看得起自己,這樣的意義性比獲得名聲、財富、地位更重要。當然,名聲、財富、地位可能對於達成理想有所幫助,但若捨本逐末,那我就不是現在的我了。
總之,想改變社會亂象,不能只冀望政府,也需要眾多人的努力,唯有促使教育文化的提升,才是根本的解決之道。至於如何影響教育文化? 我想,不是只能由教育部、文化部來告訴我們什麼是教育文化以及解決學用落差問題,可以是由我們主動來告訴教育部、文化部,以及更多的部會,我們希望有甚麼樣的未來,以及我們願意承擔哪些責任。
(註1) http://udn.com/news/story/9485/1532⋯⋯:要能與產業溝通-推動新人才培育,聯合報,2016-03-01
(註2) 「台灣高等教育與人才培育--學界業界與政府應負的責任」,陳永芳、周祝瑛、洪士灝等撰,臺灣大學公共政策與法律研究中心研究報告,2015/05,http://www.cppl.ntu.edu.tw/research⋯⋯
(註3) 洪士灝,臉書網誌: 改行做軟體與自學新專業, https://www.facebook.com/notes/洪�⋯⋯
我多次說過我不想當官,只想做事,因為我認為在這個時代,當官不見得做得了事,要做事的不一定要當官,尤其是對我這個人而言。因為我個人認為,台灣當前許多問題的根源在於教育文化,而教育文化影響到經濟與政治,衍生出社會問題。這些根源性的問題,光是換一批人執政,或許能改善問題,但並不足以全盤解決。
我想,唯有民眾的覺醒,才能促使教育文化的提升。比如說以下這段報導,希望只是媒體的片段報導,也希望民眾會明察秋毫:
「蔡英文政策辦公室執行長張景森轉述,業者反映台灣教育系統與產業脫節,產業需要的軟體人才非常不足,因為老師教學生寫軟體、或自己寫軟體,也不能升等,造成教育系統產生的人才不符合產業需求。」(註1)
如果把上述這段的「因為」換成「其原因之一是」的話,那我可以接受。但是,邏輯上我不大認同以上這段的說法,因為完全沒有提到業界自己該負起的責任,包括業界提供具備吸引力的工作條件,以及業界與學界合作共同培養軟體人才。
教育部或是學校的長官們,或許不方便出面反駁這個未來可能是上級長官的張景森執行長所轉述的話,因此社會大眾和未來的執政團隊可能以為學界默認了此類業界人士的說法。
因為我沒有長官們的包袱,所以可以大膽跳出來說,當前的學用落差,是這些年學界、業界與政府所造成的共業,我們不能老是讓業界指責政府,政府訓示學校,而學校為了經費只好悶聲照辦,不敢說話。如果換了政府還是這樣幹,是超越不了這個共業所造成的障礙而持續這個循環的。
但坊間往往對於我這類沒權沒勢沒名的人的話不放在眼裡,當成是憤青、酸民之流,甚至學界大老會嗤之以鼻,說不在體制內反映意見,不好好做教學研究,寫這些沒什麼用。但在體制內反映意見能造成改變嗎? 什麼是好好做教學研究呢?
其實張景森執行長轉述的話,就是指出我們多年前就指出的大問題。雖然在過去這些年,教授要快速升等的話,教軟體不如專心寫論文,關心教育界大環境不如教學生鑽牛角尖,至少這是我親身經驗。但我覺得,在新的時代,學術界必須有新氣象,不能再延續這樣的舊文化,所以我覺得該做的事情要做,該講的話還是該講,只是累壞自己的身體,減少陪伴家人的時間罷了。
我在2014-2015年間,接受臺灣大學公共政策與法律研究中心的委託,探討學用落差的問題,撰寫了一份題目為【務實弭平學用落差與促進產學合作】的研究報告,收錄於【台灣高等教育與人才培育--學界業界與政府應負的責任】(註2) 的第五章,歡迎各界參考。學用落差的問題,牽連到產官學各界,如果各自為政,互踢皮球,推卸責任,那麼是解決不了問題的,想概略了解全局的話,可以看看這篇報告,在此我就不多說了。
該報告完成時大約是2015年5月,剛好當時的教育部吳思華部長找我和一群關心高等教育改革的人士某周末在部長官邸做非正式茶敘,我把這份360頁的報告,還來不及裝訂,直接呈上去給部長,建議他有空看看。當然,吳部長有沒有空看,我不知道。我只是想盡我作為國民的一份責任,以及述說我在學界的所見所聞所思。
的確,我是不能只靠教學生寫軟體、或自己寫軟體而升等的,我也不是為了升等而來做「開源系統軟體」的教學研究,而上述探討學用落差的報告,對我的學術生涯不會有加分作用,只希望不要被長官認為是不務正業就好。
有趣的是,這些日子以來,學術界似乎出現某種轉機。這一周來參與了系上的「產學合作」和「新興領域」的策略會議,討論如何鼓勵系上同仁做產學合作以及朝向新興領域發展。最近負責寫新的「研發基地」的構想書,教育部長官已不再拿「大學排名」和「學術卓越」作為首要的目標,而是洋洋灑灑列了十大點:
1. 對台灣前瞻創新產業發展的影響
2. 是否對解決我國社會重要問題有所貢獻
3. 是否成為該領域或主題匯聚校內外人才與研究成果的重要平台,並創造外部連結效益
4. 是否展現階段性研究進展
5. 是否與國際重要研究單位與社群建立合作連結關係
6. 是否在該研究領域上積極促進社會對話、每年提出政策建議書
7. 是否吸引全球人才來台就學工作
8. 在該領域是否擁有整合與學術領導地位
9. 研究成果回饋學生學習的情形
10. 其他學校自訂重點
當然,學術中人最會寫文章,所以要落實一切,最後還是要看評審是否務實,是否有眼光,是否能抗拒人情壓力。否則,就算文章作得再好,結果靠學術人脈結案,還是務虛一場。
除了教育部,產業界和其他政府部門似乎也開始想玩真的,想多投一些資源在軟體研發上,對於開源系統軟體有興趣,找我諮詢發展軟體的對策等等,甚至學生們也動了起來,開始關心起資訊教育。我想,這些都是好現象。
在我談理念的同時,我也跟年輕人談現實面,理想和現實往往是有段距離的,最終還是得一面尋求平衡,一面藉由創新來降低期間的落差。想降低學用落差,也是一樣的道理。我昨天才寫了一篇網誌,公開回應一位想轉行的臉友(註3)。我說,現在是個全球資訊化的時代,當年台灣靠著與美國日本的友好關係和技術合作,也得花上一段時間才能建立起硬體代工、代設計產業,現在某些代工產業所面臨的問題,在於技術門檻不夠高、差異化不夠,會做的人多,只好削價競爭,但是那些夠專業的代工廠,還是有其生存之道。我們鼓勵創新,但同時希望技術門檻要夠,才能真正改變產業。
我希望多一些像我一樣做軟體教學研究的教授能夠升等,但我不能保證;我希望多一些和我合作做軟體技術研發的公司能夠發達,但我不能保證;我希望讓多一些對軟體有興趣的學生更上一層樓,但我不能保證他們一定找到理想的工作。不過我個人覺得,好好想清楚,找到值得努力的理想,比起找到確定能大發利市的工作,更是個人能把握的事情。
對我來說,有個值得努力的理想,在努力的過程中嘗試縮短理想與事實之間的差距、讓自己看得起自己,這樣的意義性比獲得名聲、財富、地位更重要。當然,名聲、財富、地位可能對於達成理想有所幫助,但若捨本逐末,那我就不是現在的我了。
總之,想改變社會亂象,不能只冀望政府,也需要眾多人的努力,唯有促使教育文化的提升,才是根本的解決之道。至於如何影響教育文化? 我想,不是只能由教育部、文化部來告訴我們什麼是教育文化以及解決學用落差問題,可以是由我們主動來告訴教育部、文化部,以及更多的部會,我們希望有甚麼樣的未來,以及我們願意承擔哪些責任。
(註1) http://udn.com/news/story/9485/1532⋯⋯:要能與產業溝通-推動新人才培育,聯合報,2016-03-01
(註2) 「台灣高等教育與人才培育--學界業界與政府應負的責任」,陳永芳、周祝瑛、洪士灝等撰,臺灣大學公共政策與法律研究中心研究報告,2015/05,http://www.cppl.ntu.edu.tw/research⋯⋯
(註3) 洪士灝,臉書網誌: 改行做軟體與自學新專業, https://www.facebook.com/notes/洪�⋯⋯
2016年2月3日 星期三
歷史的「真相」
清大彭明輝教授最近發表的〈失去真相的台灣史〉一文(註1),由於彭教授讀者眾多,因此也引起不少爭議,其中包括朱宥勳先生寫的『敬告彭明輝教授:一個說故事的小常識』(註2),從寫作的觀點,指出彭文的偏頗之處。還有其他的批判,我想就不一一列舉。
短論文的根本問題在於:「要用如此少的篇幅,論這麼大的議題,怎麼論得完整?」既然論不完整,那要怎麼論?如果使用的語氣十分強烈,恐怕文章所引發的爭議將多過溝通和理解。如果明知道論不完還要論,若不是有所圖,那多半就是作者心中有諸多想抒發的意見。
我有幾次評論過清大彭明輝教授的文章,雖然看法不同,不過我對於他的人品是頗尊敬的。有一次與他在台北同桌各自表述如何讓產業轉型提升經濟之後,比較能夠理解他看事情的出發點。
或許,採取激烈的言詞,是為了突顯議題、引發討論所不得不為之事,尤其對於當下的政治型態而言,非得如此才能喚起大眾迴響;然而,如此一來,與學術和理性不免有所牴觸,甚至漸行漸遠,恐怕對於作者來說也是頗為矛盾的情結。
「中國」傳統以來,乃至於近代台灣的史觀,往往與政府的意識型態環環相扣,以遂行掌權者的政治訴求。意識型態高於對於史實的認定和解讀,歷史教材淪為統治工具乃至於愚民的劇本。讀吳鳴兄這篇「重訂課綱,吹響號角」(註3),看到歷史學者講述對於影響史觀極大的「春秋筆法」,以及為了近百餘年來學者為了型塑「中國」國族主義所做的重重努力。
我和吳鳴兄,也就是「政大彭明輝」,算是喝茶吃飯聽音樂的好朋友,數次聽吳鳴兄談到台灣的歷史教育,感觸頗深,因此在此很高興看到吳鳴兄把他的見聞和想法記錄下來分享大家,他這篇「重訂課綱,吹響號角」,非常值得閱讀和深思。
各位可以選擇相信歷史課本的內容,或是選擇相信親朋好友記憶傳承的歷史,但誰能告訴我「真相」是甚麼?
很不幸的,我不認為歷史的真相能夠輕易取得。那該如何是好?
我到中國拜訪朋友,比對彼此所認知的近代史,差異甚大,沒有人知道哪個是真相;在對岸看到諸多未曾見過的台灣品牌,也是真假難辨。人在社會中,難以擺脫政治,這些圍繞身旁、似真似假的歷史文化,我可以選擇接受它們的存在,但未必相信,也不願被這些意識形態左右,正如同我可以為了考試和與人溝通而背誦歷史故事,但我不會照單全收。
然而,真正我個人所關切的,不是歷史上的人事物,而是我究竟能夠從這些人事物的故事學習到什麼? 為此,我得過濾從小到大所吸收的資訊,釐清各界加諸於我的意識形態,甚至必須先將那些基於「受汙染的資訊源」所衍生的知識和信念打破,再小心地重建。
打掉重練個人的歷史觀,是我近年來不斷在做的事情。我必須說,這是很不容易的事,一開始,會發現不知道該相信什麼;然後,會發現不同的觀點都有某種道理;但是,更深層檢視後,可能會看到幕後所埋藏的意識形態和根本旨趣;最後,很可能還是無法確認何者是真相,但至少能夠稍微擺脫這些意識形態所加諸在我身上的束縛;當然,非得要做選擇的時候,還是挺傷腦筋的事情。
我可以不要這麼辛苦,就選擇相信那些自幼成長時所接受的傳統的中國式教育(至少那時候天天高喊復興中華文化),或是轉換到時下流行的台灣優先,然後以這些意識形態出發看待事情,撰寫一篇一篇非黑即白、非友則敵、以偏概全、無限上綱的論述文章。
但那只會讓我距離真相越來越遠,也不是我所要的學習歷程。
然而,時下基於政治意識形態的文章多,因為想從文章中得到政治立場的支持或是心理慰藉的人多;掌權者企圖藉由教育工具影響人民思想的作為多,只要有效,這類作為就不會停止。只要政治掛帥,可以合理化學術的扭曲、掩蓋人格的瑕疵,那就持續會有專家學者用那種貌似「我在追求真理」的論述方法,遮掩個人已有的立場、成見、意識形態,藉由引用數據例證,撰寫貌似符合科學、理性之作,來影響群眾,遂行其政治意圖。
民主政治要好,根本之道,是人民有能力擺脫層層的思想控制,而且有能力不靠統治者加諸的意識型態彼此溝通理解、共同合作。因此人民本身的素養,決定了民主政治的高度。一旦政府發現人民不受教材的擺布,那自然就不會想藉由教育體系來遂行政治目的。
話說,我這些年來寫文章的第一優先,不是宣傳理念,而是「澄清個人的思辯」,從這個角度去增進與人之間的溝通。如果能夠藉由文章去增進彼此對於這世界的理解,那會是多美好的事情?
雖然,在這個紛紛擾擾的世界,我們很可能不知道甚麼是真相,缺乏共同的基礎,那麼理解、同理、包容、表達的能力,就變得更重要了,這是我持續在觀察和學習的。
(註1)失去真相的台灣史
http://mhperng.blogspot.tw/2016/01/blog-post_24.html
(註2)敬告彭明輝教授:一個說故事的小常識
http://opinion.udn.com/author/articles/952
(註3)重訂課綱,吹響號角
https://www.facebook.com/pangmingfui/posts/826882854101876
短論文的根本問題在於:「要用如此少的篇幅,論這麼大的議題,怎麼論得完整?」既然論不完整,那要怎麼論?如果使用的語氣十分強烈,恐怕文章所引發的爭議將多過溝通和理解。如果明知道論不完還要論,若不是有所圖,那多半就是作者心中有諸多想抒發的意見。
我有幾次評論過清大彭明輝教授的文章,雖然看法不同,不過我對於他的人品是頗尊敬的。有一次與他在台北同桌各自表述如何讓產業轉型提升經濟之後,比較能夠理解他看事情的出發點。
或許,採取激烈的言詞,是為了突顯議題、引發討論所不得不為之事,尤其對於當下的政治型態而言,非得如此才能喚起大眾迴響;然而,如此一來,與學術和理性不免有所牴觸,甚至漸行漸遠,恐怕對於作者來說也是頗為矛盾的情結。
「中國」傳統以來,乃至於近代台灣的史觀,往往與政府的意識型態環環相扣,以遂行掌權者的政治訴求。意識型態高於對於史實的認定和解讀,歷史教材淪為統治工具乃至於愚民的劇本。讀吳鳴兄這篇「重訂課綱,吹響號角」(註3),看到歷史學者講述對於影響史觀極大的「春秋筆法」,以及為了近百餘年來學者為了型塑「中國」國族主義所做的重重努力。
我和吳鳴兄,也就是「政大彭明輝」,算是喝茶吃飯聽音樂的好朋友,數次聽吳鳴兄談到台灣的歷史教育,感觸頗深,因此在此很高興看到吳鳴兄把他的見聞和想法記錄下來分享大家,他這篇「重訂課綱,吹響號角」,非常值得閱讀和深思。
各位可以選擇相信歷史課本的內容,或是選擇相信親朋好友記憶傳承的歷史,但誰能告訴我「真相」是甚麼?
很不幸的,我不認為歷史的真相能夠輕易取得。那該如何是好?
我到中國拜訪朋友,比對彼此所認知的近代史,差異甚大,沒有人知道哪個是真相;在對岸看到諸多未曾見過的台灣品牌,也是真假難辨。人在社會中,難以擺脫政治,這些圍繞身旁、似真似假的歷史文化,我可以選擇接受它們的存在,但未必相信,也不願被這些意識形態左右,正如同我可以為了考試和與人溝通而背誦歷史故事,但我不會照單全收。
然而,真正我個人所關切的,不是歷史上的人事物,而是我究竟能夠從這些人事物的故事學習到什麼? 為此,我得過濾從小到大所吸收的資訊,釐清各界加諸於我的意識形態,甚至必須先將那些基於「受汙染的資訊源」所衍生的知識和信念打破,再小心地重建。
打掉重練個人的歷史觀,是我近年來不斷在做的事情。我必須說,這是很不容易的事,一開始,會發現不知道該相信什麼;然後,會發現不同的觀點都有某種道理;但是,更深層檢視後,可能會看到幕後所埋藏的意識形態和根本旨趣;最後,很可能還是無法確認何者是真相,但至少能夠稍微擺脫這些意識形態所加諸在我身上的束縛;當然,非得要做選擇的時候,還是挺傷腦筋的事情。
我可以不要這麼辛苦,就選擇相信那些自幼成長時所接受的傳統的中國式教育(至少那時候天天高喊復興中華文化),或是轉換到時下流行的台灣優先,然後以這些意識形態出發看待事情,撰寫一篇一篇非黑即白、非友則敵、以偏概全、無限上綱的論述文章。
但那只會讓我距離真相越來越遠,也不是我所要的學習歷程。
然而,時下基於政治意識形態的文章多,因為想從文章中得到政治立場的支持或是心理慰藉的人多;掌權者企圖藉由教育工具影響人民思想的作為多,只要有效,這類作為就不會停止。只要政治掛帥,可以合理化學術的扭曲、掩蓋人格的瑕疵,那就持續會有專家學者用那種貌似「我在追求真理」的論述方法,遮掩個人已有的立場、成見、意識形態,藉由引用數據例證,撰寫貌似符合科學、理性之作,來影響群眾,遂行其政治意圖。
民主政治要好,根本之道,是人民有能力擺脫層層的思想控制,而且有能力不靠統治者加諸的意識型態彼此溝通理解、共同合作。因此人民本身的素養,決定了民主政治的高度。一旦政府發現人民不受教材的擺布,那自然就不會想藉由教育體系來遂行政治目的。
話說,我這些年來寫文章的第一優先,不是宣傳理念,而是「澄清個人的思辯」,從這個角度去增進與人之間的溝通。如果能夠藉由文章去增進彼此對於這世界的理解,那會是多美好的事情?
雖然,在這個紛紛擾擾的世界,我們很可能不知道甚麼是真相,缺乏共同的基礎,那麼理解、同理、包容、表達的能力,就變得更重要了,這是我持續在觀察和學習的。
(註1)失去真相的台灣史
http://mhperng.blogspot.tw/2016/01/blog-post_24.html
(註2)敬告彭明輝教授:一個說故事的小常識
http://opinion.udn.com/author/articles/952
(註3)重訂課綱,吹響號角
https://www.facebook.com/pangmingfui/posts/826882854101876
2016年1月10日 星期日
人工智慧太厲害了,我們該怎麼辦? (Part II)
昨天概說了人工智慧過去和未來性 (註1),在技術面上著墨不多,所以今天來談談技術面。
首先是關於「摩爾定律」,我在半年前寫了一篇「後摩爾定律的世界和台灣的產業發展」(註2),有興趣的人可以參考一下。我當時說:
「說白一點,摩爾定律是錢砸出來的。摩爾定律的黃金時代,開始於個人電腦急速成長的時代,但個人電腦的效能在十年前就已經能夠滿足大多數個人,所以「世界」對於摩爾定律的期待逐漸降低,雖然智慧手機和平板的異軍突起,但主要是希望摩爾定律能夠提供更高的性能耗能比(power-performance),然而這幾年手機平板已趨於飽和,也沒看到真正個人所需要的高性能耗能比的應用(killer apps),再加上像Qualcomm、Samsung這樣的公司上在推出新的行動晶片上屢次因為晶片過熱而踢到鐵板,所以在既然沒有消費者的需求,晶片製造商也裹足不前的情況下,自然就會降低對於摩爾定律的挹注。」
「我想,在缺乏資金挹注的情況下,摩爾定律在技術上能延續的機率不高,即便不少研究者熱中於此。除非有真正大眾需要的應用,或是再度出現軍備競賽,否則很難改變摩爾定律的終結。」
但任何事都可能有例外,不能太鐵嘴,還好我最後有加上一個以「除非」開頭的句子。人工智慧是否能成為大眾真正需要的應用,或是用於軍事用途? 我想其可能性還不小,所以我在這幾個月跟一些業界朋友說,不要再搞那些傳統的消費電子產品了,要想想如何將「智慧」加進產品之中。
怎麼把「智慧」加進小型的裝置之中? 基本上,有下列方法:
(1)由小型裝置自己做
(2)藉由網路把工作送到集中式的伺服器去做
(3)藉由網路把計算工作送到周遭多台機器分工合作
(4)上述三種的組合
先說「自己做」行不行? 現在很多人手上的手機,能做多少事情? 其實手機可以做很多事情,只是會遇到過熱和電量不足的問題,但是這兩個問題影響較大的是較長時間使用的應用,如果我們要的是「即時性的智慧」,那麼問題應該比較像是「如果手機在五秒內全速執行,能夠解決那些問題」?
舉例來說,即將出現在手機市場上的Qualcomm旗艦處理機Snapdragon 820有多厲害呢? 據說(註3) 這顆晶片的 4核CPU比前一代S810的8核快35%,省30%的電,支援600Mbps的無線網路,其中的GPU也快了40%、省40%的電,還支援OpenCL 2.0。不只如此,他還有一顆名為Spectra的影像訊號處理機(image signal processor),可以加速影像處理和支援電腦視覺(computer vision)。
要自己做,可以,要想辦法把各種運算能力整合到晶片上。要讓手機晶片有智慧,不能只靠跑在CPU上的純軟體,一定不夠力的。有些應用可藉由GPGPU來加速以資料為主的運算(data-parallel computing),例如做機器學習的開源軟體,Mahout和Caffe,都可以用OpenCL程式碼跑在GPU上。另外,以影像和聲音為主的應用,則最好設法在源頭解決問題,也就是說在感測器紀錄影像或聲音之後馬上送到訊號處理機,使用專門特殊化的(specialized)計算架構來提升效率,其實電腦視覺也可算是初步的人工智慧。
從上述的例子,可以看到「特殊化」處理機的趨勢越來越明顯,因為用CPU跑純軟體太沒有效率。時下很多人討厭寫C程式,喜歡用像是Java, Javascript, Python之類的高階語言來開發應用,但是對於開發與效能息息相關的系統軟體的人來說,光是懂得寫C程式可能還不夠,要懂得multithread、OpenCL、CUDA才會善用多核心的CPU/GPU,要懂得訊號處理機的架構和專用語言才能發揮其能力,甚至要會使用「硬體描述語言」才能用FPGA來加速計算。
我預測未來這十年,是大家各憑本事、各顯神通,想盡辦法來打造智慧系統的黃金年代。我們將會看到百家爭鳴,在計算架構和軟體設計上不斷推陳出新,快速發展。當然,演算法也極為重要 -- 再厲害的運算能力,也挽救不了愚笨的演算法。而且,針對大系統所開發的演算法和軟體,不見得適用於小機器,例如把Google釋出的Tensorflow裝在小機器上,可能會發現它的效率不彰,所以各公司可尋找屬於自己的利基市場(niche)。
當然,如果不限定要帶在身上,智慧型裝置也可能出現在車上、電線桿上的監視錄影機。因為體積和電力供應較大,我們有機會將百倍於手機的運算能力放進這些裝置。所以某些人工智慧的應用,可能會先出現在這類裝置上,例如前幾天的CES 2016,我們看到NVIDIA和Qualcomm都推出車用的處理機(註4)(註5),來搶攻這類市場。
這是新興市場,我希望台灣的業界人士看到以上幾段會頗為振奮,尤其是那些在硬體公司寫系統軟體的朋友們,這是值得把握的機會。如果您能夠針對某個智慧型應用設計出又快又省電的系統,那就有機會逐鹿天下。不過呢,要把握機會,必須先搞清楚這些研發工作將會需要「緊密的垂直整合」,最好有一個人才濟濟的團隊,針對應用的需求規劃系統軟硬體,要有「軟體為主,硬體為輔」的思維,最好要找到軟硬兼備的系統架構師(system architect)來領導研發工作,如我在這篇專訪上談到的(註6) 。
當然,我們也可如第二種方法,「藉由網路把工作送到集中式的伺服器去做」,來提升小型設備的智慧。但首先,網路傳輸需要時間,不利於即時性的應用;其次是隱私性和安全性的問題,我們未必希望讓大公司那麼清楚的知道我們的一舉一動,所以也可能不希望把全部的工作送到集中式的伺服器去做;再來,極為耗費運算資源的工作,除非Google能夠由此獲的廣告利益,否則它未必願意提供免費的伺服器資源來幫大眾做這個,所以並非所有應用都會有免費服務。
同時,在資料中心做人工智慧的運算,更需要高效率的加速技術。因此現今很多大公司都在積極找高手來加速需要大量運算的服務,例如微軟有個專門以FPGA加速資料中心服務的研究團隊Catapult,陸續發表加速搜尋引擎和機器學習的技術(註7)。
第三種方法與第二種方法的差別,在於利用較近的機器做計算來縮短時間,選擇能夠信任的機器來保護隱私,以及以互助會的模式來分享互惠資源。我們做過這類模式的相關研究,也實際建構出系統,例如這篇將Android程式中大量數據處理的工作轉移其他機器的作法(註8)。雖然目前還缺乏需要這種模式的高運算量行動應用,不過我相信在未來身邊需要人工智慧的時候,應該會有這類的需求和做法。
實際的作法,也可能是以上三種方法的排列組合。至於如何排列組合,就考驗系統架構師的能力。台灣現在很缺系統架構師的人才,缺到業界連如何善用系統架構師、去哪裡找這些人、如何培養這種人都不知道。以前做代工不需要這種人才就算了,如果現在還不知道,那就難做了。現在業界有不少地方都說要做人工智慧,但我奉勸想加入這類團隊的朋友,先看看帶頭大哥懂不懂,有沒有兩把刷子再說。
(註1) 人工智慧太厲害了,我們該怎麼辦?
臉書版: https://www.facebook.com/shihhaohung/posts/1072464976129323
部落格: http://hungsh-ntucsie.blogspot.tw/2016/01/blog-post.html
(註2) 後摩爾定律的世界和台灣的產業發展
臉書版: https://www.facebook.com/shihhaohung/posts/968793609829794
部落格: http://hungsh-ntucsie.blogspot.tw/2015/07/blog-post_13.html
轉載於Inside: http://www.inside.com.tw/2015/07/14/post-moores-law-and-the-industry-development-in-taiwan
(註3) Qualcomm's Snapdragon 820 INSANE Specs & Features DETAILED
http://www.knowyourmobile.com/samsung/qualcomm-snapdragon-820/23126/qualcomm-snapdragon-820-release-date-specs-features-android-n-launch
(註4) NVIDIA推出車用人工智慧電腦NVIDIA DRIVE PX 2,號稱性能比 Macbook Pro強150倍http://www.techbang.com/posts/40654-nvidia-at-ces-not-flagship-graphics-card-but-strong-for-a-taxi-containing-artificial-intelligence-supercomputers-nvidia-drive-px-2
(註5)
【CES 2016】高通發表 Snapdragon 820A 車用處理器,具機器智能神經學習系統
http://technews.tw/2016/01/08/qualcomm-snapdragon-820a-automotive-processor/
(註6) 深化產學合作!向沒有能力領導創新的大企業說掰
http://www.bnext.com.tw/article/view/id/38432
(註7) Project Catapult
http://research.microsoft.com/en-us/projects/catapult/
(註8) Shih-Hao Hung, Tien-Tzong Tzeng, Gyun-De Wu, Jeng-Peng Shieh. A Code Offloading Scheme for Big-Data Processing in Android Applications, Software—Practice and Experience, first published online May 2014.
http://onlinelibrary.wiley.com/doi/10.1002/spe.2265/abstract
首先是關於「摩爾定律」,我在半年前寫了一篇「後摩爾定律的世界和台灣的產業發展」(註2),有興趣的人可以參考一下。我當時說:
「說白一點,摩爾定律是錢砸出來的。摩爾定律的黃金時代,開始於個人電腦急速成長的時代,但個人電腦的效能在十年前就已經能夠滿足大多數個人,所以「世界」對於摩爾定律的期待逐漸降低,雖然智慧手機和平板的異軍突起,但主要是希望摩爾定律能夠提供更高的性能耗能比(power-performance),然而這幾年手機平板已趨於飽和,也沒看到真正個人所需要的高性能耗能比的應用(killer apps),再加上像Qualcomm、Samsung這樣的公司上在推出新的行動晶片上屢次因為晶片過熱而踢到鐵板,所以在既然沒有消費者的需求,晶片製造商也裹足不前的情況下,自然就會降低對於摩爾定律的挹注。」
「我想,在缺乏資金挹注的情況下,摩爾定律在技術上能延續的機率不高,即便不少研究者熱中於此。除非有真正大眾需要的應用,或是再度出現軍備競賽,否則很難改變摩爾定律的終結。」
但任何事都可能有例外,不能太鐵嘴,還好我最後有加上一個以「除非」開頭的句子。人工智慧是否能成為大眾真正需要的應用,或是用於軍事用途? 我想其可能性還不小,所以我在這幾個月跟一些業界朋友說,不要再搞那些傳統的消費電子產品了,要想想如何將「智慧」加進產品之中。
怎麼把「智慧」加進小型的裝置之中? 基本上,有下列方法:
(1)由小型裝置自己做
(2)藉由網路把工作送到集中式的伺服器去做
(3)藉由網路把計算工作送到周遭多台機器分工合作
(4)上述三種的組合
先說「自己做」行不行? 現在很多人手上的手機,能做多少事情? 其實手機可以做很多事情,只是會遇到過熱和電量不足的問題,但是這兩個問題影響較大的是較長時間使用的應用,如果我們要的是「即時性的智慧」,那麼問題應該比較像是「如果手機在五秒內全速執行,能夠解決那些問題」?
舉例來說,即將出現在手機市場上的Qualcomm旗艦處理機Snapdragon 820有多厲害呢? 據說(註3) 這顆晶片的 4核CPU比前一代S810的8核快35%,省30%的電,支援600Mbps的無線網路,其中的GPU也快了40%、省40%的電,還支援OpenCL 2.0。不只如此,他還有一顆名為Spectra的影像訊號處理機(image signal processor),可以加速影像處理和支援電腦視覺(computer vision)。
要自己做,可以,要想辦法把各種運算能力整合到晶片上。要讓手機晶片有智慧,不能只靠跑在CPU上的純軟體,一定不夠力的。有些應用可藉由GPGPU來加速以資料為主的運算(data-parallel computing),例如做機器學習的開源軟體,Mahout和Caffe,都可以用OpenCL程式碼跑在GPU上。另外,以影像和聲音為主的應用,則最好設法在源頭解決問題,也就是說在感測器紀錄影像或聲音之後馬上送到訊號處理機,使用專門特殊化的(specialized)計算架構來提升效率,其實電腦視覺也可算是初步的人工智慧。
從上述的例子,可以看到「特殊化」處理機的趨勢越來越明顯,因為用CPU跑純軟體太沒有效率。時下很多人討厭寫C程式,喜歡用像是Java, Javascript, Python之類的高階語言來開發應用,但是對於開發與效能息息相關的系統軟體的人來說,光是懂得寫C程式可能還不夠,要懂得multithread、OpenCL、CUDA才會善用多核心的CPU/GPU,要懂得訊號處理機的架構和專用語言才能發揮其能力,甚至要會使用「硬體描述語言」才能用FPGA來加速計算。
我預測未來這十年,是大家各憑本事、各顯神通,想盡辦法來打造智慧系統的黃金年代。我們將會看到百家爭鳴,在計算架構和軟體設計上不斷推陳出新,快速發展。當然,演算法也極為重要 -- 再厲害的運算能力,也挽救不了愚笨的演算法。而且,針對大系統所開發的演算法和軟體,不見得適用於小機器,例如把Google釋出的Tensorflow裝在小機器上,可能會發現它的效率不彰,所以各公司可尋找屬於自己的利基市場(niche)。
當然,如果不限定要帶在身上,智慧型裝置也可能出現在車上、電線桿上的監視錄影機。因為體積和電力供應較大,我們有機會將百倍於手機的運算能力放進這些裝置。所以某些人工智慧的應用,可能會先出現在這類裝置上,例如前幾天的CES 2016,我們看到NVIDIA和Qualcomm都推出車用的處理機(註4)(註5),來搶攻這類市場。
這是新興市場,我希望台灣的業界人士看到以上幾段會頗為振奮,尤其是那些在硬體公司寫系統軟體的朋友們,這是值得把握的機會。如果您能夠針對某個智慧型應用設計出又快又省電的系統,那就有機會逐鹿天下。不過呢,要把握機會,必須先搞清楚這些研發工作將會需要「緊密的垂直整合」,最好有一個人才濟濟的團隊,針對應用的需求規劃系統軟硬體,要有「軟體為主,硬體為輔」的思維,最好要找到軟硬兼備的系統架構師(system architect)來領導研發工作,如我在這篇專訪上談到的(註6) 。
當然,我們也可如第二種方法,「藉由網路把工作送到集中式的伺服器去做」,來提升小型設備的智慧。但首先,網路傳輸需要時間,不利於即時性的應用;其次是隱私性和安全性的問題,我們未必希望讓大公司那麼清楚的知道我們的一舉一動,所以也可能不希望把全部的工作送到集中式的伺服器去做;再來,極為耗費運算資源的工作,除非Google能夠由此獲的廣告利益,否則它未必願意提供免費的伺服器資源來幫大眾做這個,所以並非所有應用都會有免費服務。
同時,在資料中心做人工智慧的運算,更需要高效率的加速技術。因此現今很多大公司都在積極找高手來加速需要大量運算的服務,例如微軟有個專門以FPGA加速資料中心服務的研究團隊Catapult,陸續發表加速搜尋引擎和機器學習的技術(註7)。
第三種方法與第二種方法的差別,在於利用較近的機器做計算來縮短時間,選擇能夠信任的機器來保護隱私,以及以互助會的模式來分享互惠資源。我們做過這類模式的相關研究,也實際建構出系統,例如這篇將Android程式中大量數據處理的工作轉移其他機器的作法(註8)。雖然目前還缺乏需要這種模式的高運算量行動應用,不過我相信在未來身邊需要人工智慧的時候,應該會有這類的需求和做法。
實際的作法,也可能是以上三種方法的排列組合。至於如何排列組合,就考驗系統架構師的能力。台灣現在很缺系統架構師的人才,缺到業界連如何善用系統架構師、去哪裡找這些人、如何培養這種人都不知道。以前做代工不需要這種人才就算了,如果現在還不知道,那就難做了。現在業界有不少地方都說要做人工智慧,但我奉勸想加入這類團隊的朋友,先看看帶頭大哥懂不懂,有沒有兩把刷子再說。
(註1) 人工智慧太厲害了,我們該怎麼辦?
臉書版: https://www.facebook.com/shihhaohung/posts/1072464976129323
部落格: http://hungsh-ntucsie.blogspot.tw/2016/01/blog-post.html
(註2) 後摩爾定律的世界和台灣的產業發展
臉書版: https://www.facebook.com/shihhaohung/posts/968793609829794
部落格: http://hungsh-ntucsie.blogspot.tw/2015/07/blog-post_13.html
轉載於Inside: http://www.inside.com.tw/2015/07/14/post-moores-law-and-the-industry-development-in-taiwan
(註3) Qualcomm's Snapdragon 820 INSANE Specs & Features DETAILED
http://www.knowyourmobile.com/samsung/qualcomm-snapdragon-820/23126/qualcomm-snapdragon-820-release-date-specs-features-android-n-launch
(註4) NVIDIA推出車用人工智慧電腦NVIDIA DRIVE PX 2,號稱性能比 Macbook Pro強150倍http://www.techbang.com/posts/40654-nvidia-at-ces-not-flagship-graphics-card-but-strong-for-a-taxi-containing-artificial-intelligence-supercomputers-nvidia-drive-px-2
(註5)
【CES 2016】高通發表 Snapdragon 820A 車用處理器,具機器智能神經學習系統
http://technews.tw/2016/01/08/qualcomm-snapdragon-820a-automotive-processor/
(註6) 深化產學合作!向沒有能力領導創新的大企業說掰
http://www.bnext.com.tw/article/view/id/38432
(註7) Project Catapult
http://research.microsoft.com/en-us/projects/catapult/
(註8) Shih-Hao Hung, Tien-Tzong Tzeng, Gyun-De Wu, Jeng-Peng Shieh. A Code Offloading Scheme for Big-Data Processing in Android Applications, Software—Practice and Experience, first published online May 2014.
http://onlinelibrary.wiley.com/doi/10.1002/spe.2265/abstract
2016年1月9日 星期六
人工智慧太厲害了,我們該怎麼辦?
我們為什麼要推計算思維呢? 因為未來各行各業都需要與電腦合作,否則有可能被電腦和機器人淘汰,例如這篇【機器人搶工作 律師、藥劑師也遭殃】所談到的(註1)狀況。如果不懂計算思維,很容易就迷惘了。
最近像這樣的文章和書籍很多,研究未來學的人,認為人工智慧是未來的重要趨勢,極盡能事去想像未來,但究竟有多少真實會發生,有多少只是虛無飄渺的幻想? 我想,很少人有能力確定,不過當前許多學生都跑來研究人工智慧相關的議題,則已成為我在台大所看到的事實。
我三十四年前在高中時,就對於人工智慧很感興趣,開始學LISP,後來進到台大念電機系,修了兩門人工智慧的課,還旁聽過神經網路,到密西根大學念書,也修過人工智慧,但我沒有繼續研究人工智慧,因為我覺得當時研究者走偏了,而且當年電腦的運算速度遠遠不足以支持有意義的人工智慧,所以根本做不出東西。
我猜對了,1990年代之後,人工智慧成為票房毒藥,沉寂了近二十年。
我選擇做電腦系統,看著電腦系統的效能持續成長,電腦系統的研究者想出各種方法來收割不斷成長的電腦效能,過去這三十年,最忙碌的研究領域之二,是計算機結構和系統軟體,我有幸能優游於兩者之間,探討一些軟硬體整合的議題。
如今,單一處理機的運算能力,約為30年前人工智慧全盛時期的100萬倍(註2),而且只要願意付些許錢,就可以租用雲端的上百台電腦,運算能力更是30年前的一億倍以上。
要注意到,這一億倍的運算效能,是人工智慧東山再起的關鍵。沒有足夠的效能,電腦很難生出智慧。然而,如今的運算效能,是否足以支持未來學想像中的人工智慧,則是一個大哉問。
大部份未來學專家的預測,都是基於以往的摩爾定律(註3),但這幾年摩爾定律已經放緩,甚至有可能停滯,主要是成本考量。以往這麼多年透過個人電腦、電子商務、行動運算、雲端服務等應用,半導體產業有足夠的利潤做研發來支撐摩爾定律,而大數據分析和人工智慧是否足以繼續支撐摩爾定律的延續? 如果摩爾定律停滯,那該如何是好?
有的人工智慧應用,需要比目前更高百倍的計算能力,有的實驗研究要成為產品之前,需要將龐大的運算能力縮小進到生活周邊,因此我認為我們做計算系統的,在產品化的過程中,還是扮演舉足輕重的角色,將來應該會有做不完的人工智慧系統設計的工作。
要創造出人工智慧的系統,關鍵在於要有能夠密切垂直整合的團隊,必須要有三種專家密切配合:
(1)領域專家,例如找律師、藥劑師來指導或教導電腦該領域的專業技能。
(2)人工智慧專家,綜合運用機器學習、數據分析、資料探勘等方式設計人工智慧演算法與軟體。
(3)系統專家,提供人工智慧所需的系統整合、資料蒐集、處理和計算能力,針對人工智慧應用優化系統軟體、設計晶片。
台灣比諸於其他許多國家,由於有硬體產業的基礎,非常適合發展「(3)系統專家」(這也是我想來培育的,也是目前即欠缺的人才),加上台灣目前很多學生對人工智慧很有興趣,學得很快,所以我不擔心會短缺「(2)人工智慧專家」,台灣在各行各業也有很多領域專家,但是能否聚集人才成為優質研發團隊,是真正的重點。
我想,很多有識之士已經看到這個局面,這是值得台灣去發展的好機會。我希望國家和社會多投入一些資源鼓勵產學界共同組成「對」的團隊,來把握這樣的機會,讓學術界多做些有益於這類幫助國家產業發展的研發工作。
然而,在謀求發展的機會的同時,我們也應該做好教育的工作,讓未來的世代能夠好好面對電腦和機器人。與其教學生背誦記憶一堆電腦瞬間可解的問題,不如教他們如何活用電腦、想辦法與電腦和機器人共榮。
另外,科技的民主化以及財富的合理分配,也將會是越來越重要的課題。我們絕對不希望大家多年努力的成果,被少數資本家收割,讓科技成為資本家搜刮社會資源和剝奪人民權益的打手 -- 這是社會大眾需要慎重看待和避免的議題。
(註1)機器人搶工作 律師、藥劑師也遭殃
http://www.cw.com.tw/article/article.action?id=5073792
(註2)以摩爾定律概算,假定每18個月電腦效能增加一倍。
(註3)https://zh.wikipedia.org/wiki/摩爾定律
最近像這樣的文章和書籍很多,研究未來學的人,認為人工智慧是未來的重要趨勢,極盡能事去想像未來,但究竟有多少真實會發生,有多少只是虛無飄渺的幻想? 我想,很少人有能力確定,不過當前許多學生都跑來研究人工智慧相關的議題,則已成為我在台大所看到的事實。
我三十四年前在高中時,就對於人工智慧很感興趣,開始學LISP,後來進到台大念電機系,修了兩門人工智慧的課,還旁聽過神經網路,到密西根大學念書,也修過人工智慧,但我沒有繼續研究人工智慧,因為我覺得當時研究者走偏了,而且當年電腦的運算速度遠遠不足以支持有意義的人工智慧,所以根本做不出東西。
我猜對了,1990年代之後,人工智慧成為票房毒藥,沉寂了近二十年。
我選擇做電腦系統,看著電腦系統的效能持續成長,電腦系統的研究者想出各種方法來收割不斷成長的電腦效能,過去這三十年,最忙碌的研究領域之二,是計算機結構和系統軟體,我有幸能優游於兩者之間,探討一些軟硬體整合的議題。
如今,單一處理機的運算能力,約為30年前人工智慧全盛時期的100萬倍(註2),而且只要願意付些許錢,就可以租用雲端的上百台電腦,運算能力更是30年前的一億倍以上。
要注意到,這一億倍的運算效能,是人工智慧東山再起的關鍵。沒有足夠的效能,電腦很難生出智慧。然而,如今的運算效能,是否足以支持未來學想像中的人工智慧,則是一個大哉問。
大部份未來學專家的預測,都是基於以往的摩爾定律(註3),但這幾年摩爾定律已經放緩,甚至有可能停滯,主要是成本考量。以往這麼多年透過個人電腦、電子商務、行動運算、雲端服務等應用,半導體產業有足夠的利潤做研發來支撐摩爾定律,而大數據分析和人工智慧是否足以繼續支撐摩爾定律的延續? 如果摩爾定律停滯,那該如何是好?
有的人工智慧應用,需要比目前更高百倍的計算能力,有的實驗研究要成為產品之前,需要將龐大的運算能力縮小進到生活周邊,因此我認為我們做計算系統的,在產品化的過程中,還是扮演舉足輕重的角色,將來應該會有做不完的人工智慧系統設計的工作。
要創造出人工智慧的系統,關鍵在於要有能夠密切垂直整合的團隊,必須要有三種專家密切配合:
(1)領域專家,例如找律師、藥劑師來指導或教導電腦該領域的專業技能。
(2)人工智慧專家,綜合運用機器學習、數據分析、資料探勘等方式設計人工智慧演算法與軟體。
(3)系統專家,提供人工智慧所需的系統整合、資料蒐集、處理和計算能力,針對人工智慧應用優化系統軟體、設計晶片。
台灣比諸於其他許多國家,由於有硬體產業的基礎,非常適合發展「(3)系統專家」(這也是我想來培育的,也是目前即欠缺的人才),加上台灣目前很多學生對人工智慧很有興趣,學得很快,所以我不擔心會短缺「(2)人工智慧專家」,台灣在各行各業也有很多領域專家,但是能否聚集人才成為優質研發團隊,是真正的重點。
我想,很多有識之士已經看到這個局面,這是值得台灣去發展的好機會。我希望國家和社會多投入一些資源鼓勵產學界共同組成「對」的團隊,來把握這樣的機會,讓學術界多做些有益於這類幫助國家產業發展的研發工作。
然而,在謀求發展的機會的同時,我們也應該做好教育的工作,讓未來的世代能夠好好面對電腦和機器人。與其教學生背誦記憶一堆電腦瞬間可解的問題,不如教他們如何活用電腦、想辦法與電腦和機器人共榮。
另外,科技的民主化以及財富的合理分配,也將會是越來越重要的課題。我們絕對不希望大家多年努力的成果,被少數資本家收割,讓科技成為資本家搜刮社會資源和剝奪人民權益的打手 -- 這是社會大眾需要慎重看待和避免的議題。
(註1)機器人搶工作 律師、藥劑師也遭殃
http://www.cw.com.tw/article/article.action?id=5073792
(註2)以摩爾定律概算,假定每18個月電腦效能增加一倍。
(註3)https://zh.wikipedia.org/wiki/摩爾定律
2015年12月30日 星期三
資訊科學納入通識課程--與蘇文鈺教授的虛擬對談
我一直很關心這個議題,希望大家來做點事,但對於政府部門的執行能力頗不放心。原因是,這樣重大的事情,政府要做的話,必須提供足夠的資源,找第一流的人來全力以赴,而不是只找一群像我這種沒有在中小學教過幾天書的大學教授來訂課綱、編教科書。
我的好朋友成大蘇文鈺教授,帶著研究生去偏鄉教弱勢小孩寫程式,累積了相當的實務經驗,他的話自然比我和很多大學教授更值得借鏡。
蘇教授這幾天在臉書上陸續發表一些想法(註一、註二),以下我把蘇教授的話貼出來,同時在段落之間穿插一些我個人的想法,以虛擬對談的方式與蘇教授相呼應:
蘇: 對於美國總統歐巴馬簽署將資訊科學納入通識課程的教育法案,我的心情很是複雜。原因很多,先講憂心的地方好了。「若願意分享,請把我的文字也轉貼過去,謝謝!」
洪: 我的心情也很複雜,在此貼了您的文字,也分享我的想法,來呼應您的看法。
蘇: 首先,這個法案宣稱要每個孩子都可以成功,但是以過去美國的教育的走向,其實是優勢的越優勢,弱勢的越弱勢,也就是跟多年來美國社會的結構往不對稱的M型化傾斜的走向是一致的。要知道,資訊教育所需要的資源,不管是教材,教具與師資,與過去的傳統教學科目重疊的不多,這是一個國家需要大量投入的,既然是需要大量投入資源,那麼可預見的就是,優勢家庭普遍會取得更多優勢,這是資本主義社會的特點,除非在資本主義的骨子裡添加一點變因,這麼走下去的結果會是貧富更為不均。
洪: 美國資本主義在貧富不均上的問題,我們都看到了,但是台灣在貧富不均上更加的嚴重。美國的作法,基本上是藉由他們的優勢成為國際強權,從世界各地獲得利益,只要這些從國外得來的利益在某部分能夠分配給弱勢者,弱勢者日子還過得下去,就沒甚麼好抱怨的。台灣多方面師法美國,卻沒有像美國那樣利用優勢人才和重視技術的研發從國外賺取大量利益,在利益的分配上又有各種政治問題,導致現在不均的局面,被犧牲忽視的是(1)貧窮線以下的人們以及(2)缺乏發展機會的年輕人。但問題是,政經上層幾乎被壟斷,誰來照顧弱勢和給年輕人機會? 現在大家也都對貧富不均的狀況很反感,所以,有些所謂「對國家好」的政策,大家會去區辨,究竟是對有錢人好,還是對窮人家好? 政府說利大於弊,究竟站在誰的立場談利弊得失? 但是就資訊教育來說,如果國家不教這些,那麼誰來教這些弱勢的學生? 靠蘇教授和一群樂意犧牲奉獻的人來教,也只能照顧到部分的弱勢學生,所以我們還是希望在教育上要有一套方法來引進資訊教育。
蘇: 上一節討論到的資源問題,硬體方面,不管是教材與教具,只要是有心人願意做,都不成問題。以 Program the world兒童與少年程式設計教學計劃來說,我們已經計劃每年出四到五個開放教材,並搭配三到四個教具,所有的資料與程式碼都會在明年我們的網站上下載得到。但是真正的問題卻在於師資。優良的資訊教育師資之難尋不在於我們找不到程式設計師來教,而是一來程式設計師可能不善於教學,二來,好的程式設計師的薪資很高,我們如何吸引他們願意參與程式教學的行列呢?
洪: 教材與教具,需要找到兼具有心和有能力的人。美國有不少這樣的人在做這件事,例如Scratch是MIT發展出來的。台灣要做的話,應該要找在教育理念上獲得大家認同的、對資訊科學素養卓越的人來全職全力來領導和推動整件事。或許台灣學界應該設法推舉出一個工作團隊,並且賦予這個足夠的資源、權力、責任,去完成這個任務,包括教材、教具、教師訓練,否則蘇教授提到的問題,勢必會出現,而且一旦引入不合適的課程和教師,不只是搞砸了資訊教育的美意,而且不容易收拾後果。
蘇: 再來,因為是通識課程,以我目前為止在大學裡開通識課程的經驗,多數學生因為學校規定要修通識課而修課,從第一堂就滑手機到最後一堂。我知道,課程無法吸引學生,老師也該負責任,但是要每一個老師都能把課程上得有趣以達到每一個人都成功的難度太高了。我們到底想教學生什麼樣子的資訊科學應該有得吵的,檢討過去的通識課程到底達到什麼效果應該是很重要的一步。
洪: 的確,現在的學生普遍希望老師把課程內容用風趣幽默的方式表達,讓他們能夠產生興趣;普遍希望老師以淺顯易懂的方式解說,讓他們容易理解吸收。然而這也產生了學生在學習上偏向於趨易避難的問題,因此在當前大學生學程式設計都有某種障礙的情況下,要中小學生學習程式設計,其難度更是高。因此,教材、教具、教學不能憑空想像,也不應從國外直接移植現成教材,必須考量實際現場狀況。
蘇: 所謂通識課程通常無法要求深入與難度,假如我們只是希望透過通識課程吸引真正有天份的學生進入資訊領域,那麼類似Hour of code這類的課程就足夠了,實在不必大張旗鼓地弄個通識,只要授權校內有興趣的老師,用網路上可以找到的這樣子簡短的教材,自己花一點時間練習,然後對全校學生開選修課就可以,甚至外包也許都可以。若是有特別有興趣的學生,在學校鼓勵成立社團,在每一個地區應該都有鄰近大學,也許設立大學先修課程也行。只要資訊夠充分,生命會找到出路的。
洪: 一般人常有的誤解,認為中小學程式課程是為了培育資訊科技人才的,但其實不然;也有人誤以為資訊教育就是教文書處理、試算表等工具,也是誤解。首先,程式設計課程,教的是基本科學和工程概念,啟發學生解決實務問題、做中學,培養跨領域的基本能力,不是教工具的使用。其次,有些程度好、對資訊科學有興趣的學生,會想學得更多,那麼應該有其他的管道輔導他走上這條道路,例如到線上課程、到大學修課等,但是不應該為了少數人而塞入很多艱澀的教材,讓一般人一起陪讀。
蘇: 但是,若是我們希望學生是真的能用資訊科技來幫他們做一點事,甚至輔助他們在不管是資訊,程式,甚至是其他學科方面的進步,那麼幾個小時的程式設計教學恐怕用處不大。要做到這個地步,課程必須有一定的強度與時數。過去 Program the world兒童與少年程式設計教學計劃在偏鄉的課程就是如此,因為我們的目標是技能,而非課外社團活動。因此,即使是課業成績在全班後段的學生,還是有可能學得不錯。我們也明白,這樣子的上課方式不可能適合所有學生,但是既然打算是訓練技能,俗話說,錢不是萬能,沒錢就萬萬不能,目標就是指向有以程式設計能力謀生的可能,這也是偏鄉的孩子最需要的,要不然就不必做了。
洪: 我想,資訊科學和其他科學較為不同的地方之一是「廣泛的實用性」。這不是說其他科學不實用,而是說資訊科學太好用了。就拿我念過的電機系為例,如果沒有學過一大堆課程,個人是很難做出好東西。然而,懂得程式設計,搭配其他領域的知識,就有機會解決問題,因此這樣的技能,即使學生學藝不精,或是日後不做電腦科學家工程師,還是一項有用的技能。
蘇: 我們也很清楚,不能只教程式,還要教導實做的能力,所以Maker教學也在我們的課程裡面,也就是除了bits,也要atoms。我們的用意並不在學生要樣樣皆通,而是,一來,讓學生廣泛接觸資訊科技,二來,儘量讓不同天賦的學生都可以找到資訊科技對她有幫助的部分,三來,學生可以選一兩樣他最擅長的技術切入即可。所以,我們能力與懂的範圍有限,必須結合其他專長團隊,一起加入教學。但是,這樣子範圍能跨超過一個領域的大學前教育的教學團隊,即使在全世界也並不多。即使有,也會被優勢團體先一步網羅,要做到每個人的成功,好難。
洪: 既然資訊科學教育是一項有用的技能,課程中應該要強調時做,適度引進Maker做中學的作法,讓學生動手,發想創意,或是團隊合作。事實上,資訊科學可能是世界上最開放、創新速度最快、最樂於與人合作的學門,我們有最多的開放資源、最多的創新、影響遍及各領域,因此學生提早接觸這個領域,應該有機會感染到這些文化。這樣的文化,是台灣最缺乏的,如果能資訊科學能為中小學注入新動力,那就再好不過的。
蘇: 若是以Program the world的方式,夠多的課程,夠高的師生比,傾我們的全力,最多只可以照顧兩個偏鄉,而且是以村為單位,不是鄉。學生人數很難超過50人。從2014年起,我們接到超過十五個單位的訊息,要我們把課程擴展過去,我很願意一口氣都接下來,但是也知道接下來的後果,無奈的,心裡流著眼淚地,回答無能為力。所以,雖然知道面對面教學是偏鄉孩子們最需要的,我們也只好轉為先開發免費開源且在偏鄉實際上過的課程為主要工作。希望願意到偏鄉教學的熱血朋友,不必自己開發課程。
蘇: 也因為是以技能為導向,這樣子的課程都是以50個小時為一單位,份量頗重,也會先在偏鄉的孩子團體先試教過,修改再修改,確認一個班裡超過1/3學生有辦法接受才會release。所以,我們的課程不見得適合極為優秀的孩子,或者說,這樣子的課程對後者來說,也許不到20小時就可以上完,假如是這樣,我還是建議有特殊管道,讓他一路往上衝好了。這種就不在我的範疇,若是偏鄉有這樣子的孩子,直接送給 葉丙成老師去教就好。
洪: 蘇教授的熱情和浪漫實屬稀有,我覺得蘇教授在偏鄉推動資訊教育的經驗非常值得參考,但我希望社會能更有系統性去推動資訊教育,政府也能撥出資源來贊助這些,讓更多人受惠。
蘇: 雖然說,我們以程式設計與Maker教學為主,但是我們並不希望孩子只會寫程式或做勞作。真正的資訊科學教育不在於寫程式,而在於善於利用電腦幫我們解決問題的能力。很會寫程式,卻不會解決問題,甚至發現問題,那麼我們還是會淪為軟體代工國家,與過去的硬體代工,並無多大差異。在資訊科學教育裡,計算思維(computational thinking)才是重點所在,而進一步的是演算法思維(algorithmic thinking),這不是修完大學裡的計算理論或是演算法就可以的。最後還是必須回到很基礎的理論,以及理論與應用的聯結才是。
洪: 「發現值得研究的好問題」這件事,可能比一般人所認為的還難。一般人在學習時,總是研究那些已經被解決好的案例,不見得會針對「當初他怎麼會想到這個問題?」去做思考和練習,以至於工作時習慣於被交付問題,然後才動腦筋去解決,因此代工思維盛行,甚至連在大學研究所,也有很多人在研究外國人提出的問題框架中解決芝麻蒜皮的小問題,發表研究成果,等於是幫人家代工解題。我不是說解題不重要,而是說我們缺乏具備主動找問題能力的人,這樣的能力很多人都有,但是需要被啟發的。
蘇: 我恐怕,跟著美國人的教育政策,學到的若只是皮毛,最後還是一樣補習班或才藝班滿天飛,孩子們多了更多東西要補,豈不悲哀?但是,衡諸過去的台灣經驗,只要列入課綱,考試要考,升學必須,利之所趨,豈有不大補特補呢?家長觀念不改,教育單位政策不能慎重,恐怕台灣的競爭力會每下愈況啊!
洪: 這也是我最擔心的。所以我前面說了,應該要找在教育理念上獲得大家認同的、對資訊科學素養卓越的人來全職全力來領導和推動整件事,賦予足夠的資源、權力、責任,去完成這個任務,否則蘇教授提到的問題,勢必會出現,而且一旦出現了,要收拾就是難上加難。
蘇: 過去20年,我最常對大一或大二學生說的就是,他們非常幸運能念資訊系,因為當今幾乎所有的熱門或不熱門的產業都與資訊脫不了關係,食衣住行是,連學習音樂都是。假如可以把自己的興趣導入到資訊技術,會是一件幸運的事。但是,20年來,我屢屢看到學生在沒念完大二就對資訊技術失去興趣,甚至念完大四還不會寫C或java的都有,原因不用我說。所以我也常對學生說,若是沒有興趣,趕快轉系,會這麼說,實屬無奈。
洪: 這裡談到的,就是專業教育的領域了。我這幾年來,每年看到不少對於資訊技術沒有興趣的學生,有很多念到大四、五、六,說穿了就是想要一個學位。對於台大的學生,我不擔心,因為他們自己應該會找到出路,但是對於中後段大學的學生,我覺得情況很不樂觀。我們到一些中後段大學的資訊系拜訪,發現學生因為家境不佳、在外打工付學費的情況很嚴重,而且學生的英文程度不好,對於學習日新月異的資訊科技是一大障礙,所以多數自認為畢業後只能做做網頁設計以及簡單的資訊科技服務而已。但相對地,資訊科技進展太快,迫切需要的是中高階、創新的人才,所以他們也做不了這些研發的工作。在這種情況下,他們該何去何從呢? 我想,要不就是回歸技職體系,建立扎實的專業基礎,要不就是設法建立跨領域的專業,否則全國大學生人數最多的資訊系,如果專業訓練不上不下的,能夠在專業上或是跨領域上能做出的貢獻也是有限,要找到高薪的工作也不容易。當然業界也得要多努力將專業水準提昇,否則我們即便有對資訊科技很有興趣的高材生,沒有發揮的管道,也是枉然。
蘇: 我這人也許有點小聰明,但是卻無大智慧,所以,也只能做我自己想得到的,自以為對的事。面對多年來台灣教育,產出這麼多對求學沒興趣的孩子,很是憂心。只願,我們的資訊教育,不要再重蹈覆徹,再次讓孩子對這門重要的學問失去興趣。
洪: 我們個人的智慧都有其限度,這類眾人之事,光靠幾個人是不夠的。我認為有三個重要的環節,第一,中小學教育如何引發學生的興趣,第二,技職教育和大學教育如何務實務本,第三,業界如何提昇其技術競爭力,這三個環節緊密扣連著,不能只解決一個問題。即便我們翻轉了教育,讓許多孩子學到些東西,讓他們對某項領域產生興趣,但到了業界卻處處得要遷就冷酷的事實,沒有機會實現夢想,那麼興趣和熱情自然會消散,連帶著影響到下一代的學子,所以我們所看到的教育現場的問題,是多年累積之下的系統性問題,不是單一教育改革所能解決的。我想,資訊科技的重要性,不在於資訊產業本身,而在於國家整體的競爭力,而計算思維的概念,勢必要以各種形式讓有志於迎接新時代挑戰的人理解。此外,資訊科技產業本身是個機會,要把握這個機會,不能等那些還在學校的下一代,應該由這一代開始。美國不只有這個Every Student Succeeds法案,先前還有許多業界主動為了訓練職場人才的計畫,甚至不斷引進國外的人才,至於我們的業界除了會精打細算之外,是否樂意主動培育人才,關鍵到當前資訊產業的榮景,我認為產業本身該在人才訓練上多做些努力才行。
蘇: 通識課程中的電腦科學要教什麼?若是照著過去政府的做法,一定是去找一堆學者專家來訂定教育政策,或者說是課綱。這些課綱被某些學者專家定了之後,想必會有相關人士開始出版相關教材,然後就是補習班跟進。以建構式數學為往例,想必可以讓大家都印象深刻。我並不認為建構式數學本身有多大的錯,這是學習數學的方法之一,但卻不是唯一的方法。若是用電腦程式的觀點來看,建構式數學有非常類似之處,但是當它變成一種制式教學與評量標準時,很多事就變了調了。
洪: 所以主事者必須有某種高度,資訊教育,不應該以傳統方式來教學和考試,否則很容易變調。
蘇: 我是資訊系大學教授,這幾年又在從事兒童少年程式教學,被找去問的機率頗高,但是我是不敢站出來說要制定什麼樣子的課程資料與大綱,來當作這些通識課程的參考,更不用說是標準或準則了。
洪: 這是需要集思廣益的事情。
蘇: 為什麼我說過我怕資訊科學被納入通識課程呢?原因就在此,我們太擅長把一樣東西當作教條,“廣泛”施行,從教學效率上來看,這沒什麼錯,但是這卻會違反資訊作為“科學”二字的含義。既然是科學,就應該沒什麼答案,而沒有答案的東西要怎麼寫教科書呢?遑論是怎麼教?既然照著學習科學這件事不好教,那麼就很為難老師了。以我在大學教書20年的經驗,單單要與學生溝通以下這件事都很難了,何況在中小學階段。那就是前面說的,科學是沒有一定的答案的。
蘇: 所有人應該都會同意,科學沒有定的答案這件事,但是我們的學生為什麼會一直到念了大學都還老是希望老師可以給個答案呢?我想,若是因循過去的做法,資訊科學納入通識課程,甚至有一天變成大學入學要考的科目之一,恐怕我們上的不是資訊科學,而是資訊學科了。
洪: 這是目前教育上常見到共同問題,所以我不希望在資訊教育中教得太複雜,希望多一些實作類的專題,讓學生多些自由發揮的空間,也就是所謂的project-based learning的概念。同時,還希望利用資訊教育,把其他學科的東西帶進來活用,培養跨領域的概念。
蘇: 前文所說,資訊科學有兩個重要的觀念要建立,也就是computational thinking與algorithmic thinking。這些是思維,沒有針對哪一個領域,哪一個應用,或是哪一門學科。資訊的東西往往只是個工具,希望能用來解決諸多事物,本身不是主角,通常只有在資訊系裏才會把資訊技術本身的發展當作主角。前面說過,許多資訊系學生在還沒有念完大二就對資訊失去興趣,之所以願意留下來繼續念,看的不過就是畢業後工作好找,這是蠻悲哀的。當學生學一樣東西不知道要解決什麼問題,只是被要求把工具來來去去弄得很熟,還會產生興趣的學生比例是很少的。
洪: 如果每個人都搶著要當主角,覺得主角最厲害,無視於配角的存在和價值,那麼這會是什麼樣的社會?台灣過度重視「人比人」這件事,凡事都要比,從小比到大,所以很難建立所謂的職人文化,很少願意友人十年磨一劍,做某項技術的專家。真正的專家不多,但唬人的專家到處都是,今天早上有位教授說到某個單位,最擅長「用PowerPoint做研究」,拿政府經費,這是社會文化的議題。
蘇: 這讓我想起自己當年學習如何解微分方程的往事。解微分方程有很多方法,在工程數學裡,老師一一教我們這些方法,我為了考試,必須每種方法都熟練,卻不知道最重要的其實是,“微分方程是用來解決什麼問題?”,的這個問題。我之所以勉力學習只不過是為了不要落在我的同班同學之後太遠,這個不知所以的理由。
洪: 蘇老師您總是拿這個我大一不及格的微積分來講... 當時我不及格,原因是有一大堆的積分表要背誦,老師總是找些難題來為難電機系的學生,而我並不認同那樣的教法。我大四重修時,跟地理系的學生一起修,老師將比較多的應用面,我認為是比較好的教法。工程數學也是如此,有老師多講些應用面,讓學生知道學這個東西有什麼用,有的老師則喜歡談理論,我個人比較喜歡前者,而在當前電腦可以自動解決很多微積分和工程數學的時代,我認為了解概念和用途,遠比把算法背得滾瓜爛熟來得重要。
蘇: 我想,若是大一新生就可以讓他們知道,學習資訊技術可以解決哪些有趣的問題,那麼一定可以有更大比例的學生在未來的四年大學生涯裡,不治喪失對資訊技術的興趣,甚至是可以深深地投入到新資訊科技的研發,要不然也可以解決許多現實的應用。
洪: 這是國外大學當前在推所謂的「基石(cornerstone)課程」的概念,資訊系不見得要和傳統課程那樣按部就班由程式語言學起,然後是演算法、物件導向、自動機、系統程式、作業系統、計算機結構等等,而是先告訴學生訊技術可以解決哪些有趣的問題,以及如何實際利用工具解決問題,再告訴他們裡面有哪些複雜的問題會在以後哪些課程中教到。
蘇: 資訊科學作為中小學的教學材料也該是如此。對於一個多年來以資訊技術解決問題的人,我相信即使是小學裡的其他科目,一定也有可以運用到資訊技術的地方,而運用資訊技術的第一步就是計算思維與演算法思維的建立。這就像是獨孤九劍的總訣式一樣。
洪: 上述「基石課程」的概念,更需要在中小學課程中強調。我認為應該採用「由上而下」(top-down)計畫導向實作學習(project-based learning)的方式進行,這也就是獨孤九劍的總訣式。記得風清揚怎麼教令狐沖的?除了教他總訣之外,還讓他實際和當時要來抓令狐沖下山的大盜田伯光對打,從旁指導,這就是由做中學,讓學生領悟道理。
蘇: 再來,我們也該對教學的目標有一個明確的想法。舉例來說,中學有一般高中與技職高中之分,教學目標自然不同。以我在偏鄉的程式教學的走向是以後者為主,因為身在偏鄉,我知道多數學科成績較差的學生會走技職體系,我希望他們在入學後有更堅實的程式設計基礎,所以我的目標不在啟發天才,而在於一步步建立程式設計概念,並且儘早讓他們離開圖形化程式界面,進入文字模式的編寫程式,因為後者才是工作場域之所必需。俗話說,錢不是萬能,沒有錢萬萬不能。期待他們若是有一天上了大學,至少學費與生活費可以靠自己掙來。
洪: 我前面說過很多中後段大學的學生念完資訊系後不上不下的,不利於找工作。資訊系如此,其他科系應該也相仿。所以我們需要提倡技職教育,強調專業性和跨領域合作,而不是讓大學生滿街跑、自生自滅。
蘇: 為了確認同學的學習成果,Program the world 的晉級考試題目都只有一題,可是考試時間都至少是一天。這有別于一般考試的題目數多,每一題的解題時間卻不多。以寫程式這件事而論,本來就是要用比較長的時間來寫一隻程式,以昨天我們的AppInventor考試題目,每一題都要使用超過5000的程式碼積木才可以做完,判斷是否過關的標準也模擬一般專案開發的檢查過程,目的就在讓學生知道程式設計的世界到底是什麼樣子。
蘇: Program the world兒童與少年程式設計教學計劃的課程也會安排讓學生有快速升級的機會,這類學生在偏鄉的比例雖然不高,但是我們就會以專案(Project Based Learning)學習的方式來試著帶領他們。若是她們可以因此更上層樓,而且我們的升學制度真正邁向多元,我想自會有其他大學教授(我在成大資訊系的同儕就有)對他們有興趣而願意接手繼續帶領他們。
洪: 我想大學的多元入學應該要考慮到這類特殊才能學生,我個人很樂意指導這類學生,但礙於學校入學規定,這類人才往往無法進到台大,是一件很可惜的事情,應該有更好的方法來進行。
蘇: 這些都不是目前體制內的制式教學可以辦到的。對於多數學科,我覺得也許制式教學不失是一個方法。但是以資訊科學來說,卻難以用這樣的教學法來達到教學效果。事實上,在一般大學資訊系裡,也還未能完全融合當今資訊科學教學的所需,這是我們要努力改變的。
洪: 我之前批判了很多大學體制的問題,如我以上所說,資訊科技是當前世界上最靈活、創新最多、最能夠跨領域的學門,但我們的大學體制和評鑑制度把資訊系的發展限制住了,是件非常可惜的事情。
蘇: 我想在上位者需要先想好的是,我們的資訊科學教育的目標為何,而且沒有一種方式會適合所有學生,正如過去我們有技職與一般的分法,之後也許該更進一步分流。雖說有教無類的目標過於遠大,也許難以達成,但是我們總該想個方法,努力往Every student succeeds這個方向邁進。只要政策對了,連補習教育也不會是只為升學而存在,當然,正規教育就更不會只是為了升學。
洪: 未來的職場會有很大變革,只顧著升學和學位,將來會如何?我也不知道。我們這裡談的是整個教育理念的問題,加上對於國家未來競爭力的定位問題,所以說,絕對不是單純由資訊科系的教授們來規劃資訊教育就行的。
蘇: 教育的目標當然是提升學生的競爭力,這個競爭力不是跟身邊的人競爭,而是跟全世界的人才競爭才對。假如我們的教育把過去的硬體代工只是導向軟體代工,那麼我們就還未看到真正的困境,假如我們的學生因之而提起對一切問題產生疑問,進而對一切問題產生解法,台灣才算真正看到隧道口的光。
洪: 我們需要各種人才團結合作來對外擴展,而不是鎖國內鬥。我對於以往國家在培育和運用人才上很大的意見,基本上過度強調穩定安逸,在國內卡位自保,而逐漸喪失了拼勁,這個問題太大了,我們以上聚焦在資訊科技教育上的討論,希望從這個角度去探索一條提昇對外競爭力的機會,希望台灣能把握這個機會。
(註一)上集 https://goo.gl/jAXlNx
(註二)下集 https://goo.gl/yyT9Fd
我的好朋友成大蘇文鈺教授,帶著研究生去偏鄉教弱勢小孩寫程式,累積了相當的實務經驗,他的話自然比我和很多大學教授更值得借鏡。
蘇教授這幾天在臉書上陸續發表一些想法(註一、註二),以下我把蘇教授的話貼出來,同時在段落之間穿插一些我個人的想法,以虛擬對談的方式與蘇教授相呼應:
蘇: 對於美國總統歐巴馬簽署將資訊科學納入通識課程的教育法案,我的心情很是複雜。原因很多,先講憂心的地方好了。「若願意分享,請把我的文字也轉貼過去,謝謝!」
洪: 我的心情也很複雜,在此貼了您的文字,也分享我的想法,來呼應您的看法。
蘇: 首先,這個法案宣稱要每個孩子都可以成功,但是以過去美國的教育的走向,其實是優勢的越優勢,弱勢的越弱勢,也就是跟多年來美國社會的結構往不對稱的M型化傾斜的走向是一致的。要知道,資訊教育所需要的資源,不管是教材,教具與師資,與過去的傳統教學科目重疊的不多,這是一個國家需要大量投入的,既然是需要大量投入資源,那麼可預見的就是,優勢家庭普遍會取得更多優勢,這是資本主義社會的特點,除非在資本主義的骨子裡添加一點變因,這麼走下去的結果會是貧富更為不均。
洪: 美國資本主義在貧富不均上的問題,我們都看到了,但是台灣在貧富不均上更加的嚴重。美國的作法,基本上是藉由他們的優勢成為國際強權,從世界各地獲得利益,只要這些從國外得來的利益在某部分能夠分配給弱勢者,弱勢者日子還過得下去,就沒甚麼好抱怨的。台灣多方面師法美國,卻沒有像美國那樣利用優勢人才和重視技術的研發從國外賺取大量利益,在利益的分配上又有各種政治問題,導致現在不均的局面,被犧牲忽視的是(1)貧窮線以下的人們以及(2)缺乏發展機會的年輕人。但問題是,政經上層幾乎被壟斷,誰來照顧弱勢和給年輕人機會? 現在大家也都對貧富不均的狀況很反感,所以,有些所謂「對國家好」的政策,大家會去區辨,究竟是對有錢人好,還是對窮人家好? 政府說利大於弊,究竟站在誰的立場談利弊得失? 但是就資訊教育來說,如果國家不教這些,那麼誰來教這些弱勢的學生? 靠蘇教授和一群樂意犧牲奉獻的人來教,也只能照顧到部分的弱勢學生,所以我們還是希望在教育上要有一套方法來引進資訊教育。
蘇: 上一節討論到的資源問題,硬體方面,不管是教材與教具,只要是有心人願意做,都不成問題。以 Program the world兒童與少年程式設計教學計劃來說,我們已經計劃每年出四到五個開放教材,並搭配三到四個教具,所有的資料與程式碼都會在明年我們的網站上下載得到。但是真正的問題卻在於師資。優良的資訊教育師資之難尋不在於我們找不到程式設計師來教,而是一來程式設計師可能不善於教學,二來,好的程式設計師的薪資很高,我們如何吸引他們願意參與程式教學的行列呢?
洪: 教材與教具,需要找到兼具有心和有能力的人。美國有不少這樣的人在做這件事,例如Scratch是MIT發展出來的。台灣要做的話,應該要找在教育理念上獲得大家認同的、對資訊科學素養卓越的人來全職全力來領導和推動整件事。或許台灣學界應該設法推舉出一個工作團隊,並且賦予這個足夠的資源、權力、責任,去完成這個任務,包括教材、教具、教師訓練,否則蘇教授提到的問題,勢必會出現,而且一旦引入不合適的課程和教師,不只是搞砸了資訊教育的美意,而且不容易收拾後果。
蘇: 再來,因為是通識課程,以我目前為止在大學裡開通識課程的經驗,多數學生因為學校規定要修通識課而修課,從第一堂就滑手機到最後一堂。我知道,課程無法吸引學生,老師也該負責任,但是要每一個老師都能把課程上得有趣以達到每一個人都成功的難度太高了。我們到底想教學生什麼樣子的資訊科學應該有得吵的,檢討過去的通識課程到底達到什麼效果應該是很重要的一步。
洪: 的確,現在的學生普遍希望老師把課程內容用風趣幽默的方式表達,讓他們能夠產生興趣;普遍希望老師以淺顯易懂的方式解說,讓他們容易理解吸收。然而這也產生了學生在學習上偏向於趨易避難的問題,因此在當前大學生學程式設計都有某種障礙的情況下,要中小學生學習程式設計,其難度更是高。因此,教材、教具、教學不能憑空想像,也不應從國外直接移植現成教材,必須考量實際現場狀況。
蘇: 所謂通識課程通常無法要求深入與難度,假如我們只是希望透過通識課程吸引真正有天份的學生進入資訊領域,那麼類似Hour of code這類的課程就足夠了,實在不必大張旗鼓地弄個通識,只要授權校內有興趣的老師,用網路上可以找到的這樣子簡短的教材,自己花一點時間練習,然後對全校學生開選修課就可以,甚至外包也許都可以。若是有特別有興趣的學生,在學校鼓勵成立社團,在每一個地區應該都有鄰近大學,也許設立大學先修課程也行。只要資訊夠充分,生命會找到出路的。
洪: 一般人常有的誤解,認為中小學程式課程是為了培育資訊科技人才的,但其實不然;也有人誤以為資訊教育就是教文書處理、試算表等工具,也是誤解。首先,程式設計課程,教的是基本科學和工程概念,啟發學生解決實務問題、做中學,培養跨領域的基本能力,不是教工具的使用。其次,有些程度好、對資訊科學有興趣的學生,會想學得更多,那麼應該有其他的管道輔導他走上這條道路,例如到線上課程、到大學修課等,但是不應該為了少數人而塞入很多艱澀的教材,讓一般人一起陪讀。
蘇: 但是,若是我們希望學生是真的能用資訊科技來幫他們做一點事,甚至輔助他們在不管是資訊,程式,甚至是其他學科方面的進步,那麼幾個小時的程式設計教學恐怕用處不大。要做到這個地步,課程必須有一定的強度與時數。過去 Program the world兒童與少年程式設計教學計劃在偏鄉的課程就是如此,因為我們的目標是技能,而非課外社團活動。因此,即使是課業成績在全班後段的學生,還是有可能學得不錯。我們也明白,這樣子的上課方式不可能適合所有學生,但是既然打算是訓練技能,俗話說,錢不是萬能,沒錢就萬萬不能,目標就是指向有以程式設計能力謀生的可能,這也是偏鄉的孩子最需要的,要不然就不必做了。
洪: 我想,資訊科學和其他科學較為不同的地方之一是「廣泛的實用性」。這不是說其他科學不實用,而是說資訊科學太好用了。就拿我念過的電機系為例,如果沒有學過一大堆課程,個人是很難做出好東西。然而,懂得程式設計,搭配其他領域的知識,就有機會解決問題,因此這樣的技能,即使學生學藝不精,或是日後不做電腦科學家工程師,還是一項有用的技能。
蘇: 我們也很清楚,不能只教程式,還要教導實做的能力,所以Maker教學也在我們的課程裡面,也就是除了bits,也要atoms。我們的用意並不在學生要樣樣皆通,而是,一來,讓學生廣泛接觸資訊科技,二來,儘量讓不同天賦的學生都可以找到資訊科技對她有幫助的部分,三來,學生可以選一兩樣他最擅長的技術切入即可。所以,我們能力與懂的範圍有限,必須結合其他專長團隊,一起加入教學。但是,這樣子範圍能跨超過一個領域的大學前教育的教學團隊,即使在全世界也並不多。即使有,也會被優勢團體先一步網羅,要做到每個人的成功,好難。
洪: 既然資訊科學教育是一項有用的技能,課程中應該要強調時做,適度引進Maker做中學的作法,讓學生動手,發想創意,或是團隊合作。事實上,資訊科學可能是世界上最開放、創新速度最快、最樂於與人合作的學門,我們有最多的開放資源、最多的創新、影響遍及各領域,因此學生提早接觸這個領域,應該有機會感染到這些文化。這樣的文化,是台灣最缺乏的,如果能資訊科學能為中小學注入新動力,那就再好不過的。
蘇: 若是以Program the world的方式,夠多的課程,夠高的師生比,傾我們的全力,最多只可以照顧兩個偏鄉,而且是以村為單位,不是鄉。學生人數很難超過50人。從2014年起,我們接到超過十五個單位的訊息,要我們把課程擴展過去,我很願意一口氣都接下來,但是也知道接下來的後果,無奈的,心裡流著眼淚地,回答無能為力。所以,雖然知道面對面教學是偏鄉孩子們最需要的,我們也只好轉為先開發免費開源且在偏鄉實際上過的課程為主要工作。希望願意到偏鄉教學的熱血朋友,不必自己開發課程。
蘇: 也因為是以技能為導向,這樣子的課程都是以50個小時為一單位,份量頗重,也會先在偏鄉的孩子團體先試教過,修改再修改,確認一個班裡超過1/3學生有辦法接受才會release。所以,我們的課程不見得適合極為優秀的孩子,或者說,這樣子的課程對後者來說,也許不到20小時就可以上完,假如是這樣,我還是建議有特殊管道,讓他一路往上衝好了。這種就不在我的範疇,若是偏鄉有這樣子的孩子,直接送給 葉丙成老師去教就好。
洪: 蘇教授的熱情和浪漫實屬稀有,我覺得蘇教授在偏鄉推動資訊教育的經驗非常值得參考,但我希望社會能更有系統性去推動資訊教育,政府也能撥出資源來贊助這些,讓更多人受惠。
蘇: 雖然說,我們以程式設計與Maker教學為主,但是我們並不希望孩子只會寫程式或做勞作。真正的資訊科學教育不在於寫程式,而在於善於利用電腦幫我們解決問題的能力。很會寫程式,卻不會解決問題,甚至發現問題,那麼我們還是會淪為軟體代工國家,與過去的硬體代工,並無多大差異。在資訊科學教育裡,計算思維(computational thinking)才是重點所在,而進一步的是演算法思維(algorithmic thinking),這不是修完大學裡的計算理論或是演算法就可以的。最後還是必須回到很基礎的理論,以及理論與應用的聯結才是。
洪: 「發現值得研究的好問題」這件事,可能比一般人所認為的還難。一般人在學習時,總是研究那些已經被解決好的案例,不見得會針對「當初他怎麼會想到這個問題?」去做思考和練習,以至於工作時習慣於被交付問題,然後才動腦筋去解決,因此代工思維盛行,甚至連在大學研究所,也有很多人在研究外國人提出的問題框架中解決芝麻蒜皮的小問題,發表研究成果,等於是幫人家代工解題。我不是說解題不重要,而是說我們缺乏具備主動找問題能力的人,這樣的能力很多人都有,但是需要被啟發的。
蘇: 我恐怕,跟著美國人的教育政策,學到的若只是皮毛,最後還是一樣補習班或才藝班滿天飛,孩子們多了更多東西要補,豈不悲哀?但是,衡諸過去的台灣經驗,只要列入課綱,考試要考,升學必須,利之所趨,豈有不大補特補呢?家長觀念不改,教育單位政策不能慎重,恐怕台灣的競爭力會每下愈況啊!
洪: 這也是我最擔心的。所以我前面說了,應該要找在教育理念上獲得大家認同的、對資訊科學素養卓越的人來全職全力來領導和推動整件事,賦予足夠的資源、權力、責任,去完成這個任務,否則蘇教授提到的問題,勢必會出現,而且一旦出現了,要收拾就是難上加難。
蘇: 過去20年,我最常對大一或大二學生說的就是,他們非常幸運能念資訊系,因為當今幾乎所有的熱門或不熱門的產業都與資訊脫不了關係,食衣住行是,連學習音樂都是。假如可以把自己的興趣導入到資訊技術,會是一件幸運的事。但是,20年來,我屢屢看到學生在沒念完大二就對資訊技術失去興趣,甚至念完大四還不會寫C或java的都有,原因不用我說。所以我也常對學生說,若是沒有興趣,趕快轉系,會這麼說,實屬無奈。
洪: 這裡談到的,就是專業教育的領域了。我這幾年來,每年看到不少對於資訊技術沒有興趣的學生,有很多念到大四、五、六,說穿了就是想要一個學位。對於台大的學生,我不擔心,因為他們自己應該會找到出路,但是對於中後段大學的學生,我覺得情況很不樂觀。我們到一些中後段大學的資訊系拜訪,發現學生因為家境不佳、在外打工付學費的情況很嚴重,而且學生的英文程度不好,對於學習日新月異的資訊科技是一大障礙,所以多數自認為畢業後只能做做網頁設計以及簡單的資訊科技服務而已。但相對地,資訊科技進展太快,迫切需要的是中高階、創新的人才,所以他們也做不了這些研發的工作。在這種情況下,他們該何去何從呢? 我想,要不就是回歸技職體系,建立扎實的專業基礎,要不就是設法建立跨領域的專業,否則全國大學生人數最多的資訊系,如果專業訓練不上不下的,能夠在專業上或是跨領域上能做出的貢獻也是有限,要找到高薪的工作也不容易。當然業界也得要多努力將專業水準提昇,否則我們即便有對資訊科技很有興趣的高材生,沒有發揮的管道,也是枉然。
蘇: 我這人也許有點小聰明,但是卻無大智慧,所以,也只能做我自己想得到的,自以為對的事。面對多年來台灣教育,產出這麼多對求學沒興趣的孩子,很是憂心。只願,我們的資訊教育,不要再重蹈覆徹,再次讓孩子對這門重要的學問失去興趣。
洪: 我們個人的智慧都有其限度,這類眾人之事,光靠幾個人是不夠的。我認為有三個重要的環節,第一,中小學教育如何引發學生的興趣,第二,技職教育和大學教育如何務實務本,第三,業界如何提昇其技術競爭力,這三個環節緊密扣連著,不能只解決一個問題。即便我們翻轉了教育,讓許多孩子學到些東西,讓他們對某項領域產生興趣,但到了業界卻處處得要遷就冷酷的事實,沒有機會實現夢想,那麼興趣和熱情自然會消散,連帶著影響到下一代的學子,所以我們所看到的教育現場的問題,是多年累積之下的系統性問題,不是單一教育改革所能解決的。我想,資訊科技的重要性,不在於資訊產業本身,而在於國家整體的競爭力,而計算思維的概念,勢必要以各種形式讓有志於迎接新時代挑戰的人理解。此外,資訊科技產業本身是個機會,要把握這個機會,不能等那些還在學校的下一代,應該由這一代開始。美國不只有這個Every Student Succeeds法案,先前還有許多業界主動為了訓練職場人才的計畫,甚至不斷引進國外的人才,至於我們的業界除了會精打細算之外,是否樂意主動培育人才,關鍵到當前資訊產業的榮景,我認為產業本身該在人才訓練上多做些努力才行。
蘇: 通識課程中的電腦科學要教什麼?若是照著過去政府的做法,一定是去找一堆學者專家來訂定教育政策,或者說是課綱。這些課綱被某些學者專家定了之後,想必會有相關人士開始出版相關教材,然後就是補習班跟進。以建構式數學為往例,想必可以讓大家都印象深刻。我並不認為建構式數學本身有多大的錯,這是學習數學的方法之一,但卻不是唯一的方法。若是用電腦程式的觀點來看,建構式數學有非常類似之處,但是當它變成一種制式教學與評量標準時,很多事就變了調了。
洪: 所以主事者必須有某種高度,資訊教育,不應該以傳統方式來教學和考試,否則很容易變調。
蘇: 我是資訊系大學教授,這幾年又在從事兒童少年程式教學,被找去問的機率頗高,但是我是不敢站出來說要制定什麼樣子的課程資料與大綱,來當作這些通識課程的參考,更不用說是標準或準則了。
洪: 這是需要集思廣益的事情。
蘇: 為什麼我說過我怕資訊科學被納入通識課程呢?原因就在此,我們太擅長把一樣東西當作教條,“廣泛”施行,從教學效率上來看,這沒什麼錯,但是這卻會違反資訊作為“科學”二字的含義。既然是科學,就應該沒什麼答案,而沒有答案的東西要怎麼寫教科書呢?遑論是怎麼教?既然照著學習科學這件事不好教,那麼就很為難老師了。以我在大學教書20年的經驗,單單要與學生溝通以下這件事都很難了,何況在中小學階段。那就是前面說的,科學是沒有一定的答案的。
蘇: 所有人應該都會同意,科學沒有定的答案這件事,但是我們的學生為什麼會一直到念了大學都還老是希望老師可以給個答案呢?我想,若是因循過去的做法,資訊科學納入通識課程,甚至有一天變成大學入學要考的科目之一,恐怕我們上的不是資訊科學,而是資訊學科了。
洪: 這是目前教育上常見到共同問題,所以我不希望在資訊教育中教得太複雜,希望多一些實作類的專題,讓學生多些自由發揮的空間,也就是所謂的project-based learning的概念。同時,還希望利用資訊教育,把其他學科的東西帶進來活用,培養跨領域的概念。
蘇: 前文所說,資訊科學有兩個重要的觀念要建立,也就是computational thinking與algorithmic thinking。這些是思維,沒有針對哪一個領域,哪一個應用,或是哪一門學科。資訊的東西往往只是個工具,希望能用來解決諸多事物,本身不是主角,通常只有在資訊系裏才會把資訊技術本身的發展當作主角。前面說過,許多資訊系學生在還沒有念完大二就對資訊失去興趣,之所以願意留下來繼續念,看的不過就是畢業後工作好找,這是蠻悲哀的。當學生學一樣東西不知道要解決什麼問題,只是被要求把工具來來去去弄得很熟,還會產生興趣的學生比例是很少的。
洪: 如果每個人都搶著要當主角,覺得主角最厲害,無視於配角的存在和價值,那麼這會是什麼樣的社會?台灣過度重視「人比人」這件事,凡事都要比,從小比到大,所以很難建立所謂的職人文化,很少願意友人十年磨一劍,做某項技術的專家。真正的專家不多,但唬人的專家到處都是,今天早上有位教授說到某個單位,最擅長「用PowerPoint做研究」,拿政府經費,這是社會文化的議題。
蘇: 這讓我想起自己當年學習如何解微分方程的往事。解微分方程有很多方法,在工程數學裡,老師一一教我們這些方法,我為了考試,必須每種方法都熟練,卻不知道最重要的其實是,“微分方程是用來解決什麼問題?”,的這個問題。我之所以勉力學習只不過是為了不要落在我的同班同學之後太遠,這個不知所以的理由。
洪: 蘇老師您總是拿這個我大一不及格的微積分來講... 當時我不及格,原因是有一大堆的積分表要背誦,老師總是找些難題來為難電機系的學生,而我並不認同那樣的教法。我大四重修時,跟地理系的學生一起修,老師將比較多的應用面,我認為是比較好的教法。工程數學也是如此,有老師多講些應用面,讓學生知道學這個東西有什麼用,有的老師則喜歡談理論,我個人比較喜歡前者,而在當前電腦可以自動解決很多微積分和工程數學的時代,我認為了解概念和用途,遠比把算法背得滾瓜爛熟來得重要。
蘇: 我想,若是大一新生就可以讓他們知道,學習資訊技術可以解決哪些有趣的問題,那麼一定可以有更大比例的學生在未來的四年大學生涯裡,不治喪失對資訊技術的興趣,甚至是可以深深地投入到新資訊科技的研發,要不然也可以解決許多現實的應用。
洪: 這是國外大學當前在推所謂的「基石(cornerstone)課程」的概念,資訊系不見得要和傳統課程那樣按部就班由程式語言學起,然後是演算法、物件導向、自動機、系統程式、作業系統、計算機結構等等,而是先告訴學生訊技術可以解決哪些有趣的問題,以及如何實際利用工具解決問題,再告訴他們裡面有哪些複雜的問題會在以後哪些課程中教到。
蘇: 資訊科學作為中小學的教學材料也該是如此。對於一個多年來以資訊技術解決問題的人,我相信即使是小學裡的其他科目,一定也有可以運用到資訊技術的地方,而運用資訊技術的第一步就是計算思維與演算法思維的建立。這就像是獨孤九劍的總訣式一樣。
洪: 上述「基石課程」的概念,更需要在中小學課程中強調。我認為應該採用「由上而下」(top-down)計畫導向實作學習(project-based learning)的方式進行,這也就是獨孤九劍的總訣式。記得風清揚怎麼教令狐沖的?除了教他總訣之外,還讓他實際和當時要來抓令狐沖下山的大盜田伯光對打,從旁指導,這就是由做中學,讓學生領悟道理。
蘇: 再來,我們也該對教學的目標有一個明確的想法。舉例來說,中學有一般高中與技職高中之分,教學目標自然不同。以我在偏鄉的程式教學的走向是以後者為主,因為身在偏鄉,我知道多數學科成績較差的學生會走技職體系,我希望他們在入學後有更堅實的程式設計基礎,所以我的目標不在啟發天才,而在於一步步建立程式設計概念,並且儘早讓他們離開圖形化程式界面,進入文字模式的編寫程式,因為後者才是工作場域之所必需。俗話說,錢不是萬能,沒有錢萬萬不能。期待他們若是有一天上了大學,至少學費與生活費可以靠自己掙來。
洪: 我前面說過很多中後段大學的學生念完資訊系後不上不下的,不利於找工作。資訊系如此,其他科系應該也相仿。所以我們需要提倡技職教育,強調專業性和跨領域合作,而不是讓大學生滿街跑、自生自滅。
蘇: 為了確認同學的學習成果,Program the world 的晉級考試題目都只有一題,可是考試時間都至少是一天。這有別于一般考試的題目數多,每一題的解題時間卻不多。以寫程式這件事而論,本來就是要用比較長的時間來寫一隻程式,以昨天我們的AppInventor考試題目,每一題都要使用超過5000的程式碼積木才可以做完,判斷是否過關的標準也模擬一般專案開發的檢查過程,目的就在讓學生知道程式設計的世界到底是什麼樣子。
蘇: Program the world兒童與少年程式設計教學計劃的課程也會安排讓學生有快速升級的機會,這類學生在偏鄉的比例雖然不高,但是我們就會以專案(Project Based Learning)學習的方式來試著帶領他們。若是她們可以因此更上層樓,而且我們的升學制度真正邁向多元,我想自會有其他大學教授(我在成大資訊系的同儕就有)對他們有興趣而願意接手繼續帶領他們。
洪: 我想大學的多元入學應該要考慮到這類特殊才能學生,我個人很樂意指導這類學生,但礙於學校入學規定,這類人才往往無法進到台大,是一件很可惜的事情,應該有更好的方法來進行。
蘇: 這些都不是目前體制內的制式教學可以辦到的。對於多數學科,我覺得也許制式教學不失是一個方法。但是以資訊科學來說,卻難以用這樣的教學法來達到教學效果。事實上,在一般大學資訊系裡,也還未能完全融合當今資訊科學教學的所需,這是我們要努力改變的。
洪: 我之前批判了很多大學體制的問題,如我以上所說,資訊科技是當前世界上最靈活、創新最多、最能夠跨領域的學門,但我們的大學體制和評鑑制度把資訊系的發展限制住了,是件非常可惜的事情。
蘇: 我想在上位者需要先想好的是,我們的資訊科學教育的目標為何,而且沒有一種方式會適合所有學生,正如過去我們有技職與一般的分法,之後也許該更進一步分流。雖說有教無類的目標過於遠大,也許難以達成,但是我們總該想個方法,努力往Every student succeeds這個方向邁進。只要政策對了,連補習教育也不會是只為升學而存在,當然,正規教育就更不會只是為了升學。
洪: 未來的職場會有很大變革,只顧著升學和學位,將來會如何?我也不知道。我們這裡談的是整個教育理念的問題,加上對於國家未來競爭力的定位問題,所以說,絕對不是單純由資訊科系的教授們來規劃資訊教育就行的。
蘇: 教育的目標當然是提升學生的競爭力,這個競爭力不是跟身邊的人競爭,而是跟全世界的人才競爭才對。假如我們的教育把過去的硬體代工只是導向軟體代工,那麼我們就還未看到真正的困境,假如我們的學生因之而提起對一切問題產生疑問,進而對一切問題產生解法,台灣才算真正看到隧道口的光。
洪: 我們需要各種人才團結合作來對外擴展,而不是鎖國內鬥。我對於以往國家在培育和運用人才上很大的意見,基本上過度強調穩定安逸,在國內卡位自保,而逐漸喪失了拼勁,這個問題太大了,我們以上聚焦在資訊科技教育上的討論,希望從這個角度去探索一條提昇對外競爭力的機會,希望台灣能把握這個機會。
(註一)上集 https://goo.gl/jAXlNx
(註二)下集 https://goo.gl/yyT9Fd
2015年11月30日 星期一
Maker - 夢想的自造者
自造者是目前國內對Maker的翻譯,在當前一片鼓勵年輕人自造、新創的風潮中,對於有夢想、想突破現況的人來說,是再好不過的環境。
然而,所謂「多情自古空餘恨,好夢由來最易醒」,如果只是追逐時尚、圖一時之快,沒有真正的熱情,也沒有個人的創見,那麼自造、新創的夢是很容易醒的,或許也因此而留下餘恨。
所以好友蘇文鈺教授感嘆說,作為一個普通的Maker最怕的就是遇到有人問以下這類問題: 「你這個人家早就做過了啊!而且人家做得比你早又比你好!」
我回他說,或許該先認清楚自我的定位,作為Maker所為何來? 初心是什麼?目標又是什麼?
對我這個自認為是舊時代的老Maker的人來說,回想起當年,Maker的意義很大,對我一生的影響遠比很多事物來得大多了。作為一個Maker,我學會自行創造夢想,有機會與同好們一起築夢,能夠為了追逐夢想而狂野奔放、堅持到底,至少在心靈上沒有被庸俗和邪惡所困苦或同化。
所以我說Maker是夢想的自造者,Maker的能力不斷創造夢想,也讓夢想堅持下去,乃至於讓我成為Problem Solver、Hacker、Innovator、Educator、Promoter...
Maker可以是好玩的,就像我從小到現在,逢年過節有空就會做塑膠模型一樣,有時候只是興趣,沒有要跟誰比高下,只是寓教於樂 - 在自造的過程中,教會自己一些能力,長一些知識,多一份快樂。
如果我小時候不親自做一台F-14飛機模型,我沒辦法充實地欣賞與想像那些我從書中讀到的關於F14的種種頂尖設計和科技結晶;如果我沒有自組一台PG級的機動戰士Z鋼彈,我也沒辦法實際領略其中巧妙的機構設計,以及透過把玩將我從動畫上看到的神奇變形的系統具象化獲得快感。
雖然聽起來頗幼稚的,但這不就是所謂的有夢最美嗎?
人生而有情,因為有情,則有喜、有悲、有樂、有苦。如何燃起熱情追逐夢想而成就自己、離苦得樂,則是大議題。試問時下有多少人無心於尋夢、缺乏熱情、隨波逐流度日? 當然,維持夢想需要相當的付出,夢想的破滅也有相當的代價,這是作為有情眾生之一的覺悟。
我從小喜歡動手做的個性,讓我曾經有過成為科學家、工程師、藝術家的夢想,至今這些夢想還在,熱情也還在,不因沒有成就而苦惱喪志,只是因為興趣太多,無法兼顧而已。
想起當年高中時代在電腦上做的東西,可能今天的Maker會不屑一顧。然而,打從我在Apple II上按照書上的範例輸入程式碼的那一刻起,我製造出一些夢。我夢想有一天,擁有高解析度、色彩繽紛的工作站,電腦可以幫我解決記憶不好的問題,自動化和網路可以幫我解決雙手不夠用、分身乏術的問題,更好奇如何做出令人滿意的人工智慧。
我的腦海中充滿著對未來的憧憬,而這個憧憬讓我求知若渴,讓我竭盡所能。但我知道我正在做的東西只是過程的一部分,我勉強自己背三民主義,為的是進入最好的系去追尋我的夢。
在大學時,我們有一群人在社團學著造小火箭,夢想有朝一日能做出大火箭。我修了六個學習的專題,雖然沒做出甚麼偉大的東西,但我知道我能做東西,而且能從做中學,能從其中得到樂趣。
因為樂趣而做,做了而產生樂趣,這樣就會有源源不斷的熱情。如何啟動這樣的正向循環,就是每個人的課題了。然而,如果因為贏過別人而有樂趣,為了樂趣而不斷想贏過別人,那就麻煩了。這是我們這種注重考試排名的教育文化容易產生的迷思,很多人不認輸,或是輸不起,因為必須以贏過他人來肯定自己、獲得樂趣。
還好,我有足夠的夢想來撐起自己,我不需要盲目與人比成就。我出國留學、去一流公司工作、到學校做研究,為的是學更多的東西。當然,我的些許成就,能讓我在尋夢的過程中獲得生活上和專業上的支持,所以我可以擁有不斷地前進的熱情和動力。對我來說,當電腦工程師和當資工系教授的初衷,從來就不是名和利,只是去園一個夢,一個幼年Maker的夢。
話說,沒有夢想,恐怕在科技的領域上很難走得長遠。
科技的本身往往是冰冷的,越是理性的論述,越是複雜的理論,越是周全的設計,科技的後面充滿的嚴謹但機械式的分析、建構、評估,如果身為一個無法從科技上獲得某種滿足感的科技人,就算以此維生、成名、創業、發財,但從某種人生的意義與從事某種活動的價值層面來看,是極為空虛無聊的。
我不想做冰冷的科技人,我不想過窮到只有名位和財富的日子。骨子裡,我還是狂野奔放的Maker。
當然,我早已不是幼年的那個我,夢想也越築越有個人特色,後來又陸續加入了其他的夢,而這些可以讓我廢寢忘食的夢想,也讓我擁有點燃生命火花的熱情。或許每個人都該從幼年開始築夢,或許該築屬於自己的、複數的夢,而夢與現實相連之處,或許正是感情所寄託之處、身心靈所關照之處。
或許我們可以學習把夢做大一些,學習如何把夢想家的動力帶入現實,學習如何不懼怕夢想的破滅;或許正是因為夢想所帶來此情此景,才好讓我們領略到人生中的因緣際會;或許正是因為懂得觀夢幻泡影,才懂得如何超越一切有為法。
然而,所謂「多情自古空餘恨,好夢由來最易醒」,如果只是追逐時尚、圖一時之快,沒有真正的熱情,也沒有個人的創見,那麼自造、新創的夢是很容易醒的,或許也因此而留下餘恨。
所以好友蘇文鈺教授感嘆說,作為一個普通的Maker最怕的就是遇到有人問以下這類問題: 「你這個人家早就做過了啊!而且人家做得比你早又比你好!」
我回他說,或許該先認清楚自我的定位,作為Maker所為何來? 初心是什麼?目標又是什麼?
對我這個自認為是舊時代的老Maker的人來說,回想起當年,Maker的意義很大,對我一生的影響遠比很多事物來得大多了。作為一個Maker,我學會自行創造夢想,有機會與同好們一起築夢,能夠為了追逐夢想而狂野奔放、堅持到底,至少在心靈上沒有被庸俗和邪惡所困苦或同化。
所以我說Maker是夢想的自造者,Maker的能力不斷創造夢想,也讓夢想堅持下去,乃至於讓我成為Problem Solver、Hacker、Innovator、Educator、Promoter...
Maker可以是好玩的,就像我從小到現在,逢年過節有空就會做塑膠模型一樣,有時候只是興趣,沒有要跟誰比高下,只是寓教於樂 - 在自造的過程中,教會自己一些能力,長一些知識,多一份快樂。
如果我小時候不親自做一台F-14飛機模型,我沒辦法充實地欣賞與想像那些我從書中讀到的關於F14的種種頂尖設計和科技結晶;如果我沒有自組一台PG級的機動戰士Z鋼彈,我也沒辦法實際領略其中巧妙的機構設計,以及透過把玩將我從動畫上看到的神奇變形的系統具象化獲得快感。
雖然聽起來頗幼稚的,但這不就是所謂的有夢最美嗎?
人生而有情,因為有情,則有喜、有悲、有樂、有苦。如何燃起熱情追逐夢想而成就自己、離苦得樂,則是大議題。試問時下有多少人無心於尋夢、缺乏熱情、隨波逐流度日? 當然,維持夢想需要相當的付出,夢想的破滅也有相當的代價,這是作為有情眾生之一的覺悟。
我從小喜歡動手做的個性,讓我曾經有過成為科學家、工程師、藝術家的夢想,至今這些夢想還在,熱情也還在,不因沒有成就而苦惱喪志,只是因為興趣太多,無法兼顧而已。
想起當年高中時代在電腦上做的東西,可能今天的Maker會不屑一顧。然而,打從我在Apple II上按照書上的範例輸入程式碼的那一刻起,我製造出一些夢。我夢想有一天,擁有高解析度、色彩繽紛的工作站,電腦可以幫我解決記憶不好的問題,自動化和網路可以幫我解決雙手不夠用、分身乏術的問題,更好奇如何做出令人滿意的人工智慧。
我的腦海中充滿著對未來的憧憬,而這個憧憬讓我求知若渴,讓我竭盡所能。但我知道我正在做的東西只是過程的一部分,我勉強自己背三民主義,為的是進入最好的系去追尋我的夢。
在大學時,我們有一群人在社團學著造小火箭,夢想有朝一日能做出大火箭。我修了六個學習的專題,雖然沒做出甚麼偉大的東西,但我知道我能做東西,而且能從做中學,能從其中得到樂趣。
因為樂趣而做,做了而產生樂趣,這樣就會有源源不斷的熱情。如何啟動這樣的正向循環,就是每個人的課題了。然而,如果因為贏過別人而有樂趣,為了樂趣而不斷想贏過別人,那就麻煩了。這是我們這種注重考試排名的教育文化容易產生的迷思,很多人不認輸,或是輸不起,因為必須以贏過他人來肯定自己、獲得樂趣。
還好,我有足夠的夢想來撐起自己,我不需要盲目與人比成就。我出國留學、去一流公司工作、到學校做研究,為的是學更多的東西。當然,我的些許成就,能讓我在尋夢的過程中獲得生活上和專業上的支持,所以我可以擁有不斷地前進的熱情和動力。對我來說,當電腦工程師和當資工系教授的初衷,從來就不是名和利,只是去園一個夢,一個幼年Maker的夢。
話說,沒有夢想,恐怕在科技的領域上很難走得長遠。
科技的本身往往是冰冷的,越是理性的論述,越是複雜的理論,越是周全的設計,科技的後面充滿的嚴謹但機械式的分析、建構、評估,如果身為一個無法從科技上獲得某種滿足感的科技人,就算以此維生、成名、創業、發財,但從某種人生的意義與從事某種活動的價值層面來看,是極為空虛無聊的。
我不想做冰冷的科技人,我不想過窮到只有名位和財富的日子。骨子裡,我還是狂野奔放的Maker。
當然,我早已不是幼年的那個我,夢想也越築越有個人特色,後來又陸續加入了其他的夢,而這些可以讓我廢寢忘食的夢想,也讓我擁有點燃生命火花的熱情。或許每個人都該從幼年開始築夢,或許該築屬於自己的、複數的夢,而夢與現實相連之處,或許正是感情所寄託之處、身心靈所關照之處。
或許我們可以學習把夢做大一些,學習如何把夢想家的動力帶入現實,學習如何不懼怕夢想的破滅;或許正是因為夢想所帶來此情此景,才好讓我們領略到人生中的因緣際會;或許正是因為懂得觀夢幻泡影,才懂得如何超越一切有為法。
2015年11月19日 星期四
厚積而薄發
林偉棻教授這篇是非常值得分享的文章。我幾天前評論當前的新創氛圍時說到「本立而道生」,與林老師的見解類似。林老師是我台大電機、密西根大學的系友,她在Apple工作過一陣子後回到台灣貢獻社會。
在個人學問和德行上,「博觀而約取,厚積而薄發」是相當重要的內斂修持之道。廣博地觀察世間人事物,在深究學問時要懂得收斂和聚焦;深厚地耕耘、有系統地累積實力,卻只是淡泊淺易地分享心得。
當然,有人看蘇軾的言行,似乎很高調,哪有什麼「厚積而薄發」?我三不五時在臉書部落格上發表意見,在有道者面前,恐怕是「膚淺卻猛發」。或許是學養不夠,值此關鍵時刻,孔子說:「不得中行而與之,必也狂狷乎」,只好拋磚引玉、丟人現眼,或許能吸引那些真正「厚積而薄發」的有道之士出來現身說法。
現在教育的問題很大,但如果我是學生的話,為了自己的前途,難道只把問題推給教育當局,就不好好學了嗎?或是人云亦云,馬馬虎虎學學,就一窩蜂跟著人家說教育無用、學位無用、大環境不好,趕緊去找鐵飯碗、金飯碗、搞創業?沒有打好基礎,沒有想清楚就這樣做,有其危險性。
我提倡多元,但沒有鼓勵學生們抄短線,或是像無頭蒼蠅般亂鑽。除非有蟑螂般的本事,像前幾天課上討論的CockroachDB開源資料庫系統(註)有那麼強大的存活能力(survivability),能夠利用全分散處理的架構,不需要首腦(master)也可以存活,自行復原。
多元即是博觀,專業即是約取,厚積即是立本,有了這些基礎,對未來的道路就可以看得更清楚,才有薄發或爆發的資糧和空間。蘇軾這段罵得很好:
『然今之人者,學未成而急於用,腹含半經,便輕用於世也。不憂己學之不足,徒懼未能有用之時。故學之未精,便輕用其力,以致事不成,而人輕之也。』
這段蘇軾用來罵自己身邊得志小人的話,也很適合在今天罵那些「腹含半經」卻因緣際會而掌握權力的門神和跳樑小丑,以及提醒那些半吊子、不學無術卻想一步登天的年輕人,也讓我們多些自我反省。
眼光放遠來看,思考如何在超過40年的歲月中在高科技職場上持盈保泰,還是尋覓哪裡有穩如泰山的位置,還是設法撈一票後抽身?我大膽預測,不會自學、缺乏適應力、沒有獨到眼光,一招兩式靠著機運晉升管理階層的人,會在不久的未來迅速被取代。有能力的人,雖然嶄露頭角的時刻較晚,但在重要時刻會有用武之地。
「博觀而約取,厚積而薄發」這句話,雖然古老,卻也是在快速變遷社會的現代知識分子可細水長流的中道路線。
(註)https://github.com/cockroachdb/cockroach
在個人學問和德行上,「博觀而約取,厚積而薄發」是相當重要的內斂修持之道。廣博地觀察世間人事物,在深究學問時要懂得收斂和聚焦;深厚地耕耘、有系統地累積實力,卻只是淡泊淺易地分享心得。
當然,有人看蘇軾的言行,似乎很高調,哪有什麼「厚積而薄發」?我三不五時在臉書部落格上發表意見,在有道者面前,恐怕是「膚淺卻猛發」。或許是學養不夠,值此關鍵時刻,孔子說:「不得中行而與之,必也狂狷乎」,只好拋磚引玉、丟人現眼,或許能吸引那些真正「厚積而薄發」的有道之士出來現身說法。
現在教育的問題很大,但如果我是學生的話,為了自己的前途,難道只把問題推給教育當局,就不好好學了嗎?或是人云亦云,馬馬虎虎學學,就一窩蜂跟著人家說教育無用、學位無用、大環境不好,趕緊去找鐵飯碗、金飯碗、搞創業?沒有打好基礎,沒有想清楚就這樣做,有其危險性。
我提倡多元,但沒有鼓勵學生們抄短線,或是像無頭蒼蠅般亂鑽。除非有蟑螂般的本事,像前幾天課上討論的CockroachDB開源資料庫系統(註)有那麼強大的存活能力(survivability),能夠利用全分散處理的架構,不需要首腦(master)也可以存活,自行復原。
多元即是博觀,專業即是約取,厚積即是立本,有了這些基礎,對未來的道路就可以看得更清楚,才有薄發或爆發的資糧和空間。蘇軾這段罵得很好:
『然今之人者,學未成而急於用,腹含半經,便輕用於世也。不憂己學之不足,徒懼未能有用之時。故學之未精,便輕用其力,以致事不成,而人輕之也。』
這段蘇軾用來罵自己身邊得志小人的話,也很適合在今天罵那些「腹含半經」卻因緣際會而掌握權力的門神和跳樑小丑,以及提醒那些半吊子、不學無術卻想一步登天的年輕人,也讓我們多些自我反省。
眼光放遠來看,思考如何在超過40年的歲月中在高科技職場上持盈保泰,還是尋覓哪裡有穩如泰山的位置,還是設法撈一票後抽身?我大膽預測,不會自學、缺乏適應力、沒有獨到眼光,一招兩式靠著機運晉升管理階層的人,會在不久的未來迅速被取代。有能力的人,雖然嶄露頭角的時刻較晚,但在重要時刻會有用武之地。
「博觀而約取,厚積而薄發」這句話,雖然古老,卻也是在快速變遷社會的現代知識分子可細水長流的中道路線。
(註)https://github.com/cockroachdb/cockroach
2015年11月14日 星期六
搞清楚狀況再發言,很難嗎?
的確很難,以我自己為例,看到某些東西時心有所感,就會想記錄下來,若不如此,好比船過水無痕,那個心境已不在,沒有寫的動力。
此外,有些時事性的討論,如果不在第一時間加入,幾天後就沒人看了,當然會想在第一時間發表自己的意見。
然而,轉念一想,如果寫下的東西只是為了「逞一時之快」,而那個「心境已不在」似乎說明了感觸並不是值得收藏,那麼寫與不寫真的有差嗎?如果必須要在第一時間之後所發表的意見就沒有人看,那麼發表的東西真的有很大的意義嗎?
克服以上的慣性,並不容易。
而且現在的媒體報導,品質越來越難以掌握,看到媒體報導時,我都得三思:報導是否真實?論述是否合理?幕後是否隱藏特定動機?
舉例來說,前天各大媒體大肆報導李登輝前總統到成功大學演講的過程中,遭到陸生嗆話,於是有大批鄉民藉此高聲謾罵對岸,結果發現這個新聞報導的內容與現實差距甚大。(參考:http://buzzorange.com/2015/11/13/china-student-and-the-fact-of-these-news/)附帶一提,我不認為任何的政治訴求,可以高過於對事實的認定。
時代在改變,很多新的東西不是我們當年的樣貌,複雜的東西也不見得可以想當然耳。因為媒體品質低落,我們不能照單全收,只好在看的時候小心求證,但低劣的東西看多了,我們也容易在不知不覺中自以為是、以偏概全、過度放大自己。
例如有一篇網路文章,貼出小學三年級的數學試卷上老師批改內容,理直氣壯地罵教育、罵老師,殊不知自己完全在狀況外,不懂甚麼是「概算」。(參考:http://ww.thefundaily.com/cat65/node712910/24253)附帶一提,對於工程設計來說,概算非常重要,在構思時通常是在腦中或紙筆概算。(概算是否應該在三年級教,考題設計好不好,則是另外的問題。)
所以,我的原則是「不為惡」,評論已獲證實的事、分享無傷大雅的事,盡可能對事不對人,除非「人」已經成為「事」中重要且不可分割的一部份。因為對人造成的傷害,並不是更正內容就可以輕鬆了事的。
我的做法是,把想法記錄下來,但發言內容如果有狀況不明之處,需要進一步查證和釐清的話,則先不公開。除非內容有時效性,則我會盡可能標示狀況不明之處,以「假設語氣」和「弱化修飾詞」給意見。
我知道,這樣一來,我的文章的時效性不夠,內容不夠勁爆,但我想我寫文章最重要的是對自己負責,而不是取悅讀者,更沒有必要隨媒體起舞和瞎攪和。
此外,有些時事性的討論,如果不在第一時間加入,幾天後就沒人看了,當然會想在第一時間發表自己的意見。
然而,轉念一想,如果寫下的東西只是為了「逞一時之快」,而那個「心境已不在」似乎說明了感觸並不是值得收藏,那麼寫與不寫真的有差嗎?如果必須要在第一時間之後所發表的意見就沒有人看,那麼發表的東西真的有很大的意義嗎?
克服以上的慣性,並不容易。
而且現在的媒體報導,品質越來越難以掌握,看到媒體報導時,我都得三思:報導是否真實?論述是否合理?幕後是否隱藏特定動機?
舉例來說,前天各大媒體大肆報導李登輝前總統到成功大學演講的過程中,遭到陸生嗆話,於是有大批鄉民藉此高聲謾罵對岸,結果發現這個新聞報導的內容與現實差距甚大。(參考:http://buzzorange.com/2015/11/13/china-student-and-the-fact-of-these-news/)附帶一提,我不認為任何的政治訴求,可以高過於對事實的認定。
時代在改變,很多新的東西不是我們當年的樣貌,複雜的東西也不見得可以想當然耳。因為媒體品質低落,我們不能照單全收,只好在看的時候小心求證,但低劣的東西看多了,我們也容易在不知不覺中自以為是、以偏概全、過度放大自己。
例如有一篇網路文章,貼出小學三年級的數學試卷上老師批改內容,理直氣壯地罵教育、罵老師,殊不知自己完全在狀況外,不懂甚麼是「概算」。(參考:http://ww.thefundaily.com/cat65/node712910/24253)附帶一提,對於工程設計來說,概算非常重要,在構思時通常是在腦中或紙筆概算。(概算是否應該在三年級教,考題設計好不好,則是另外的問題。)
所以,我的原則是「不為惡」,評論已獲證實的事、分享無傷大雅的事,盡可能對事不對人,除非「人」已經成為「事」中重要且不可分割的一部份。因為對人造成的傷害,並不是更正內容就可以輕鬆了事的。
我的做法是,把想法記錄下來,但發言內容如果有狀況不明之處,需要進一步查證和釐清的話,則先不公開。除非內容有時效性,則我會盡可能標示狀況不明之處,以「假設語氣」和「弱化修飾詞」給意見。
我知道,這樣一來,我的文章的時效性不夠,內容不夠勁爆,但我想我寫文章最重要的是對自己負責,而不是取悅讀者,更沒有必要隨媒體起舞和瞎攪和。
2015年11月8日 星期日
台大電機高材生在矽谷被開除又如何?
這篇【一時魯不代表一世魯!台大電機高材生在矽谷被開除後的反思】(http://buzzorange.com/techorange/2015/11/06/i-got-fired-in-sv/)值得年輕朋友參考。
美國的公司很現實,你的才能對公司有幫助,公司就會付出相當的代價雇用你。反過來說,工作能力不符合公司的期望,被解雇是常見的事,管你是台大電機還是柏克萊畢業的。
我猜,作者被解雇的原因應該是「程式能力不足」。這個推論來自於作者的自我嘲諷式的說:「唯一小小的障礙,就是我想成為軟體工程師,可是我還不會寫程式 。 」
「寫好程式」這個技能,往往不是隨隨便便可以取得的。寫程式像作文,即便天資聰穎,也需要幾年的學習;文章要言之有物,更要能夠連結到個人的生命經驗或專業領域,也需要一段時間。
然而作者在柏克萊讀書時可能輕忽了學習程式的難度,他說:「在柏克萊讀書的一年之中,從開學第一個禮拜就開始跟這些新創公司面試,明明知道會被拒絕還是硬著頭皮上。每次的面試我都會準備一大堆問題, 把自己當然投資人一樣東問西問。技術,團隊, 商業模式。 我知道內行人一定覺得這樣很可笑 不過對我而言,每次的學習都如同取經般重要。 一年內我面試了超過一百家公司,過程的坎坷暫時省略, 最後拿到了五份聘書,加入了這家我覺得團隊技術都很棒的公司。」
看到這段描述,我只能說:「Good luck!」,因為作者顯然很有學習的動力,也非常有毅力,而且相當自信,因此當我遇到這類想法的優秀同學、同事、學生時,除了支持的話之外,不想多說些甚麼,他們多半也聽不進去,因為這是他們相信的成功之道。
只是我個人認為,如果想要去一家軟體公司,最好還是先想辦法把寫程式的功力鍛鍊到某個程度比較好。很多東西要靠自學,需要動手做過,我寧可把去一百家公司應徵的時間,拿來充實程式技能,這是比較務實的做法。
作者之所以選擇在一年內面試了超過一百家公司,幕後的思維可能源自於幼年時期的訓練,因為他說:「從小到大,通常都是人家丟給我一道題, 我把它解出來,然後解不出來就抄旁邊的。作業如此,選科系如此,價值觀如此,一路高雄中學台大電機柏克萊亦是如此。」
在一年內參加超過一百家公司的面試,等於是多方蒐集考試題目,搞清楚這些題目的解答,不管是否真懂,就能通過面試,等於是一條捷徑。我想,這其實不只是作者個人的想法,也是許多台灣學生們共同的想法。
資工系畢業的學生不大會寫程式,早就不是新聞了,因為他們努力的目標,一直就是通過某項考試,而不是充實就業能力;而他們似乎相信,只要進到某個場域,同樣的做法依然可讓他們過關斬將。(不然呢?)
如此有毅力,也真的拿到了聘書,但真正的問題此時才開始。有些人看似一帆風順,其實內部充滿了問題,如同在不肥沃的土壤上揠苗助長出來的植物般,看似長得快、爬得高,但不具特色、沒有方向、外強中乾、心靈空虛,承載不了大事業。
以上只是觀感,不是對作者的批評。我相當欣賞作者的反省能力以及文章後段的感悟。沒有失敗,不大會反省,也難以進步。經過一番風雨,我想作者的再出發應該會有新的感受和收獲,而這個失敗則是其人生重要的轉機。
美國的公司很現實,你的才能對公司有幫助,公司就會付出相當的代價雇用你。反過來說,工作能力不符合公司的期望,被解雇是常見的事,管你是台大電機還是柏克萊畢業的。
我猜,作者被解雇的原因應該是「程式能力不足」。這個推論來自於作者的自我嘲諷式的說:「唯一小小的障礙,就是我想成為軟體工程師,可是我還不會寫程式 。 」
「寫好程式」這個技能,往往不是隨隨便便可以取得的。寫程式像作文,即便天資聰穎,也需要幾年的學習;文章要言之有物,更要能夠連結到個人的生命經驗或專業領域,也需要一段時間。
然而作者在柏克萊讀書時可能輕忽了學習程式的難度,他說:「在柏克萊讀書的一年之中,從開學第一個禮拜就開始跟這些新創公司面試,明明知道會被拒絕還是硬著頭皮上。每次的面試我都會準備一大堆問題, 把自己當然投資人一樣東問西問。技術,團隊, 商業模式。 我知道內行人一定覺得這樣很可笑 不過對我而言,每次的學習都如同取經般重要。 一年內我面試了超過一百家公司,過程的坎坷暫時省略, 最後拿到了五份聘書,加入了這家我覺得團隊技術都很棒的公司。」
看到這段描述,我只能說:「Good luck!」,因為作者顯然很有學習的動力,也非常有毅力,而且相當自信,因此當我遇到這類想法的優秀同學、同事、學生時,除了支持的話之外,不想多說些甚麼,他們多半也聽不進去,因為這是他們相信的成功之道。
只是我個人認為,如果想要去一家軟體公司,最好還是先想辦法把寫程式的功力鍛鍊到某個程度比較好。很多東西要靠自學,需要動手做過,我寧可把去一百家公司應徵的時間,拿來充實程式技能,這是比較務實的做法。
作者之所以選擇在一年內面試了超過一百家公司,幕後的思維可能源自於幼年時期的訓練,因為他說:「從小到大,通常都是人家丟給我一道題, 我把它解出來,然後解不出來就抄旁邊的。作業如此,選科系如此,價值觀如此,一路高雄中學台大電機柏克萊亦是如此。」
在一年內參加超過一百家公司的面試,等於是多方蒐集考試題目,搞清楚這些題目的解答,不管是否真懂,就能通過面試,等於是一條捷徑。我想,這其實不只是作者個人的想法,也是許多台灣學生們共同的想法。
資工系畢業的學生不大會寫程式,早就不是新聞了,因為他們努力的目標,一直就是通過某項考試,而不是充實就業能力;而他們似乎相信,只要進到某個場域,同樣的做法依然可讓他們過關斬將。(不然呢?)
如此有毅力,也真的拿到了聘書,但真正的問題此時才開始。有些人看似一帆風順,其實內部充滿了問題,如同在不肥沃的土壤上揠苗助長出來的植物般,看似長得快、爬得高,但不具特色、沒有方向、外強中乾、心靈空虛,承載不了大事業。
以上只是觀感,不是對作者的批評。我相當欣賞作者的反省能力以及文章後段的感悟。沒有失敗,不大會反省,也難以進步。經過一番風雨,我想作者的再出發應該會有新的感受和收獲,而這個失敗則是其人生重要的轉機。
訂閱:
文章 (Atom)