跳到主要內容

發表文章

為什麼我不教C++ ?學Python考APCS更有利

每隔一段時間我就會被家長問到:「老師有教C++嗎?」,「老師基礎班教Python,那進階班會教C++嗎?」,「學校教C++,這樣跟老師教Python會不會衝突?」,「孩子之前學過C++了,跟著老師重學Python,是不是浪費了?」 C++在程式語言界,具有經典的地位,有些人因此誤解為"學C++比較好"。其實不是這樣,C++被設計成接近電腦運作原理,而Python被設計成接近人類語言,後者學起來更快、成功率更高。統計上 每年約10萬高中學生,考到APCS實作三級僅約1% 。既然如此,初學選擇較難的C++,只是讓學生更容易陣亡。 愷哥設計教材時,目標是讓學生 「半年內考過APCS實作三級,把時間省下來拚學測」 。而目前上完愷哥進階班的同學,九成都可以考過APCS實作三級,每年也差不多有十名同學考上頂大電資。「節省學習時間、提高成功率」,是愷哥編撰整套教材的核心考量。所以我刻意選擇教Python,是為了讓學生盡快考過APCS,搞定學習歷程,然後想幹嘛去幹嘛。想做科展、想拚特殊選才、拚學測,都行。 一般人以為程式語言跟人類語言類似,學一種語言要背數千個詞彙,花個三年以上,整天在背單字。不是的,學一種程式語言大概只要熟悉數十個詞彙就夠了,程式是難在千變萬化的邏輯,而邏輯是跨語言共通的。也就是說,認真花半年學好Python,把邏輯打通後,要再上手其他語言,也只要花一周熟悉一下語法就可以了。多種程式語言間不是互相干擾,而是觸類旁通,先精熟一種就能很快學會另一種。曾有學生跟我說:「我以前學很久C++,有非常多看不懂的部分,但學完愷哥基礎班Python之後,很多C++卡住的地方都突然懂了」。 愷哥的學生在校內的C++課程都是輕鬆拿第一 。 我以學開車來舉例,Python就像自排車,C++就像手排車,前者只要會踩油門轉方向盤就好了,後者還需要理解離合器、排檔、扭力等機械運作。有人會說:「既然要學就學難的,比較懂底層原理,學會了也能駕馭簡單的」,這麼說其實是忽略了成功率跟時間成本。如果學習成功率在90%以上,直接學難的未嘗不可,但如果普遍成功率約在1%,還刻意學難的,是時間太多用不完,還是學失敗無所謂? 先學會簡單的自排,盡快上路解決問題,哪天打算買跑車了再去學手排,這樣才是最有利的。 其實來找我的學生,幾乎都是之前有學過程式,但是學很淺或APCS檢定考不過,在這種情...

讀資工系很吃天份? 我適合唸資工系嗎?

我常被同學問到:"資工系會這樣嗎?會那樣嗎?",其實這個問題很難簡要回答,因為頂大、國立、私立差別很大,同一校系的各人差別也很大。 舉例來說,網路上流傳一句話:"讀資工系很吃天份",我的學生也因此感到驚恐,明明已經APCS實作三級、高中生前1%會寫程式了,還怕自己天份不夠。 這句話來自於 一部youtube ,訪談了一個原先讀台大資工讀得很辛苦、後來重考台大牙醫的學生。ㄜ...她就念不下去,她當然說很吃天份。去訪談被物理系唸不下去的人,也肯定說物理系很吃天份。 念醫學要有背書的天份、念數學要有抽象思考的天份、念資工要有邏輯清楚的天份...每一種科系都要有天份,資工沒有特別吃天份。同時從另一個面向來看,你會害怕資工系會唸不下去,怎麼不害怕醫學系唸不下去?每年都有醫學系退學、或畢業之後考不到執照的案例阿,每一個科系都可能唸不下去啊! 若從數據來看,實務上有統計過,物理系跟數學系是最難唸的科系,這類偏理論、較抽象的科系,重修、延畢、退學的比率都是最高的。資工這一類,應用、實務型的科系,相對還是比較容易唸的。 那麼,一個學生,怎麼確認自己適合唸資工系呢? 就是高中學看看寫程式阿! 基本上台灣的高中,幾乎都有程式課程,但說實在的,很少學生在學校學得好的,大致上幾個原因 學生程度參差不齊: 不像數學課,大家國中學過什麼都是一樣的,考上同一高中的數學程度也差不多,銜接下去教就好。但程式在國中並沒有標準課程,老師很為難要從哪裡開始教、教多快、教多難。 學習態度與難度不匹配: 學程式跟學數學的難度類似,要高度專注,而且要做大量的練習題。但大部分校方跟學生,把程式課當成某種導論課,聽一聽懂個大概就好了,對於作業跟考試的要求都很寬鬆,這樣當然是學不會寫程式的。 師資上的匱乏: 電資產業的待遇很高,通常是校內教師的兩倍以上,本科系畢業生很少願意在校內當老師。高中資訊老師多是由其他科目的教師,經過短期訓練後調任。 所以,高中生怎麼判斷自己適不適合唸資工? 最明確的方法就是去考APCS APCS是教育部辦的程式檢定,學生可以藉此評估自己的程式能力,在同儕間的什麼程度,而且APCS的成績,在申請資工系的時候,被列為正式的參採項目,甚至還有APCS組有額外的招生名額。 就比例上來說,每年約10萬高中生,其中約5000人有考過APCS,也就是約5%可當作認真要...

APCS 4+4上台大資工?搞清楚APCS的作用

最近家長問我APCS組的問題,我簡單解說一下考APCS的作用。 大多學生適用,把APCS成績拿來過「個人申請二階甄試」。也就是同學最煩惱的 學習歷程 ,如果APCS考到3+3,基本上電資相關科系的 「一般組二階甄試」 幾乎穩過。 個人申請電資APCS組,少部分同學適用。簡單來說APCS組(或資安組)就是APCS成績好的學生,學測分數低一點仍能進到二階。為什麼說少部分同學適用?因為APCS組名額極少,要上頂大資工APCS組的話,APCS要考到5+5,這比學測頂標還難很多,大部分同學還是拚學測比較實際。很多人以為 APCS官網列表 就是錄取標準,以為APCS 4+4就可以錄取台大資工APCS組。錯了,那個是「報名門檻」,大致上頂大要APCS 5+5,中字輩4+4,後段國立3+3,比較有機會「錄取」APCS組。 再次強調,個人申請APCS組 不是後門是窄門 ,對絕大多數的學生來說,時間效益最高是考到APCS 3+3,學習歷程就搞定了,剩下的時間就專注學測,報一般組。上到愷哥進階班的學生,九成都在半年內考過APCS 3+3。 但其實,還是有一個後門,可以用學測前標考上頂標的校系,就是 北科電資學士班APCS超篩 。 家長又問:「老師,你說APCS考到3+3就夠了,確定嗎?我聽說台清交資工要4+4,官網也是這樣寫。」 是的,我確定。 再次強調,台清交資工要(APCS 4+4)是誤解,那是 「APCS組」「一階」「報名門檻」 ,4+4上不了,5+5才有機會錄取,(APCS 5+5)比學測頂標還難很多。 那為何我說APCS考到3+3對大部分高中生就夠了。我說的是 「一般組」「二階甄試」「錄取慣例」 ,當學生學測成績足以過一階,(APCS 3+3) 就足以過二階甄試。也就是APCS拿來當學習歷程,而不是走APCS組想要學測少考幾分。 對絕大多數的高中生來說, 盡快考到(APCS 3+3)即搞定學習歷程,把剩下時間拿來拚學測 ,是最有時間效益的。 只有少數程式能力明顯比學科成績好的學生,較適合拚APCS組或 特殊選才 。什麼叫程式能力比學科成績好?大致上可以說,如果學測考不到頂標,上不了中字輩資工,但可以靠(APCS 4+4)走特殊選才或APCS組上。而(APCS 4+4)並不容易,需要天份跟努力齊備。學科不太有天份跟努力,但程式方面卻有,這種學生比例很低。 歡迎加入 高中生 學程...

埋頭苦讀錯了嗎?策略比努力更重要

我前幾天經過台南,順道請我成大的學生們吃飯,聊了不少議題,有個議題我覺得特別有意思,跟大家分享。我問到學生們,對於未來有甚麼規劃,有個學生說:「未來想出國」。 我問:「為什麼想出國?」 學生答:「就想到處看看,增廣見聞」 愷哥也認為出國是好事。我在交大資工讀博士班的時期,曾在電腦科學最頂尖的UC Berkeley學習幾個月,也因為工作的關係,在矽谷跟Apple、Google、Facebook等公司有很多洽商工作經驗。美國的薪水約為台灣三倍,但消費也是三倍,生活環境(治安、醫療...)不如台灣,我個人並不會想要移民美國,但到全球科技最前沿的地方待一陣子,確實可以開拓視野,對人生很有幫助。 說回這個學生想出國的原因是增長見識,但對於怎麼出國,並沒有太大的概念。跟大多數學生一樣,想的都是「先把在校成績考好再說」。這個大方向看似沒有錯,但是其實大有問題。 所謂沒有錯,是說在校成績好,申請國外大學研究所、獎學金等等,"好像"比較有機會贏人家。或不是到國外念書而是找工作,公司也有可能看成績...吧? 但真的有去查清楚,哪些大學可以當目標,對方要什麼條件,競爭對手是誰嗎? 據我所知,台大電資學生出國的比例大約50%,交大電資約10%,其它大學的數量就很零星了。這可概估為,國內大學畢業生申請國外研究所的成功率。那我這個成大資工的學生,真的可以靠埋首苦讀,拿個自己系上的書卷獎,就實現出國夢嗎? 我知道一般的學生及家長會說:「認真念書說不定有機會阿,不認真不就更沒機會了嗎?」,但愷哥要說,不是不應該認真,但習慣性的認定「先考試考好再說」,很可能努力錯方向。 首先要想清楚出國的目的。想清楚,很重要。 「上Standford、Berkeley、MIT等名校研究所,未來進Google工作」跟「出國增廣見聞」,同樣是出國,但操作起來大不相同。如果是前者,我可能會建議學生轉學考台大資工,或者重考。如果是後者,相對有很多方法,難度也降低很多。 舉例來說,我有朋友在國外做AI相關工作,年收10萬美金以上,但不是一般人熟知的美國、中國、日本、新加坡等地,而是在阿布達比。中東國家很有錢,而且他們擔心數十年後石油業走下坡,所以他們很願意花大錢發展科技業,用高薪從世界各國挖人過來。 對於PR99的人才來說,只鎖定美國等先進國家,不考慮中東國家,是很合理。但若身為PR95,先到阿布達比領高...

最頂尖的知識都在網路上了,還需要念大學嗎?

我最近剛好遇到兩件事,都是跟台大有關,也都跟創業有關。一則是台大「創新創業實踐」課程,請我去講了一堂課,二則是我一個學生念了台大資工一年後,目前休學中(更準確的說是「探索學習計畫」),來找我吃飯,請教我是否應該繼續念大學。 之所以台大會找我去講課,是因為我以讀博士班研發的技術,創辦新創公司,獲得郭台銘董事長投資200萬美金,在創業方面有些經驗與影響力。關於愷哥這方面的經歷,可以 參考一下這裡 。 我這個台大資工的學生,之所以猶豫是否要把大學念完,主要是: 1)他從高中就覺得,跟著學校的進度是沒有效率的,他都是照自己的進度,上課沒有在管老師,而確實他的成績也好到可以考上台大資工。上了大學之後,還是覺得老師的進度沒有效率,或者選不到自己想上的課。 2)他自己在網路上學習Harvard的課程,品質比台大好很多。包括MIT、Stanford等名校,都有非常多高品質的課程。 綜合以上,他很懷疑自己是否有必要把大學念完。到這邊我問他:「你覺得念大學主要的目的是什麼?」。他想了一下告訴我:「應該是"學習"跟"人脈"」。但偏偏台大的課程不能讓他滿意,造成他的學習效率不夠好。 再來我問他:「你期待你30歲的時候是什麼樣子?」。他說:「希望能自己創業成功,財富自由,對人類有貢獻」。 綜合以上兩點,他念完大學會比較有利。 他在思維上犯了一個謬誤, 「把學習看得太重要」 ,尤其在頂大電資這個層級的學生,學習本身不是困難。最重要且最困難的是「找到目標」,學習只是達到目標的手段之一,學習本身並不是目標。或者從另一個面向來說,學習只是自我提升,對於別人是沒有價值的,沒有人會因為你考試100分,而感受到你的貢獻。 現實的說, 念大學不是為了更有效率的學習 ,而是為了取得一個credit,讓你以後不管求職、創業、甚至只是交朋友,都可以讓別人快速評估你的程度,給你特別好的機會。 確實credit也未必要一定要是學歷。但網路上有一句話是「能力比學歷更重要」,讓很多人誤以為學歷不重要,自學了一些東西之後,自我認定能力很好,這也不對。注意,我強調的是「credit」不是「能力」,所謂的credit,是 外部認同你的能力,讓你得到的一些「成果證明」 。譬如說你可以全國大賽得獎、可以寫出App有上萬人下載、可以做專案在github有上千個star。對這個學生來說,除非他有...

學習歷程該怎麼寫?沒有成果只談興趣當然空泛

之前幫高三學生看了一份學習歷程自述,看到很多典型的方向錯誤,跟大家分享一下我的觀點。 一般學生都會寫「反思、就讀動機、未來規劃」這幾個章節。網路上都會說「反思很重要」。很多學生都說寫這些東西很虛,不知道寫什麼。愷哥常強調 「重點是成果不是反思」 ,我的學生大多考到APCS實作三級以上,可以往這幾個方向寫。 反思 就寫,從零開始學程式,到考到APCS實作三級中間的困難、突破與成長。 就讀動機 就寫,考到APCS實作三級之後,雖然程式能力已經贏過99%的高中生,但資工不是只有寫程式,還有很多領域知識包括資安、遊戲、手機、網路、系統、IC設計、AI等等,希望有機會廣泛的學習,繼續從自己有興趣的領域去專注做出貢獻。 未來規劃 就寫,譬如目前對遊戲最感興趣,希望持續精進已有的APCS實作三級能力,加上在系上學到領域知識,大四畢業前能開發一款遊戲app並上架。 接下來解析一下為什麼這麼寫。 首先,大部分高中生寫得很虛,因為 沒有成果只談興趣當然空泛 。若是有成果(APCS成績),就可以 環繞成果去闡述每一個章節 ,自然就會飽滿。 再來,一個教授看學習歷程,大概只花1min。所以我在每個章節都強調「APCS實作三級」,就是為了保證教授不會漏看。 一定要不斷提醒教授:「眼前我的程式能力就是贏過99%高中生,不錄取我是要錄取誰?」 我也經常被問到:「老師,那參加營隊有沒有用?」。還是回到我剛講的「成果」,參加營隊是成果嗎?不是,他是一個「過程」,有繳錢就有的過程。所謂的成果是「贏過絕大部份人」,如果你參加完營隊,後續APCS考到實作三級就有用,如果考不到,不就表示你學得不好嗎?如果只是告訴教授「我有學過程式」,那全台灣高中生都有學過程式阿,難道能夠全部錄取? 只要有APCS 實作三級以上的學生,完全不用焦慮學習歷程怎麼寫。成果條列清楚,「反思、就讀動機、未來規劃」都只是交差過場,沒有寫的不夠好的問題。學習歷程不是作文比賽,而是成果展示, 只有成果不夠好,沒有作文不夠好 。實務上,從來不是比誰學習歷程「寫」的好,而是在下筆寫之前,就已經分出勝負了。 歡迎加入 高中生 學程式FB社團 、以及 愷哥電腦科普頻道 ,跟我一起學程式、學人生。 【愷哥APCS程式班】 熱烈招生中喔!

選文組為繁星?文理均衡的高中生該如何選組

前陣子有學生升高二,問我選組的問題。他文理的成績都不錯,但校排方面是文組比較高,他考慮選文組,是因為"繁星"可以上到比較好的學校。 我給他一個關鍵訊息是 「頂大文組畢業後的待遇,概估與前段私立電資相近」 。 如果家裡沒有太大經濟壓力、對文組的興趣比較高,那選文組沒有問題。 如果未來待遇是重要的,文理皆可的話,那電資會是較好的選擇。 之前我提過,理組的分數排行依序是「電資」=>「工學院」=>「理學院」。 其實長期來說, 中字輩電資的待遇是領先頂大工學院的 。 但因為老一輩有「能夠唸台大為何要選別的」的想法,以及高中校方希望榜單好看,所以許多學生選填志願的策略是「從較高分的大學,選一個可以接受(較低分)的系」。在相近的分數下,電資跟工學院的志願差,過往大概差三個大學,譬如台大工學院的分數與成大電資相近。但今年則遠遠不止了,如 這裡所述 ,中正電機甲組,分數已經追上台大土木系。 真要說這個趨勢,其實是黃仁勳帶來的媒體效應,讓理工科的學生從「半選系半選校」,變成「選系不選校」。而這樣的趨勢出現之後,就不太容易反轉了。因為待遇上的差距就擺在那,心理關卡一突破,就回不去了。 歡迎加入 高中生 學程式FB社團 、以及 愷哥電腦科普頻道 ,跟我一起學程式、學人生。 【愷哥APCS程式班】 熱烈招生中喔!