2020Fall 台大ccClub Python讀書會線上班心得

YC
10 min readDec 30, 2020
目錄個人學程式經驗先說結論選擇ccClub原因&學Python原因ccClub線上班經驗整體評價新增:ccClub創辦人Kevin Wei的回覆

目前我還沒看過完整的參與者心得,所以來寫一篇給有興趣報名的人一個方便。

個人學程式經驗

✶住在荷蘭的台灣人,清大中文系輔修文化研究畢業、轉職中。

我很喜歡自學(參考自學荷蘭文A2的心得),之前喜歡參加阿姆斯特丹的Coding meetup。現在荷蘭疫情很嚴重就沒參加了,目前也沒有打算報名阿姆斯特丹的Bootcamp。

✶報名時我已經用Linkedin LearningPluralsight自學了6個月的JS跟網頁前後端相關的語言,上了超過30門課程、剛開始在Udemy上買了資料結構相關課程、正在寫Portfolio網站。

當時自學到有點累,感覺會寫、也會改別人code,但是有些觀念就是沒打通,也不太好意思一直麻煩身邊的工程師朋友們。

✶在這之前我也用過清華雲,但是學C語言失敗。清華雲的助教素質也不是很齊,有遇到好助教,也有遇到死也不想回答問題的。

先說結論

☺Final Project是做拉麵推薦LINE Chatbot機器人 — IRAMEN

我和另外2位線上班、1位實體班戰友一起爬蟲和做LINE BOT,花1個月的時間完成。

上線隔天我把這項作品放到臉書社團台灣拉麵愛好會目前已經有700+使用者,得到麵友們的正面評價,更得到和民間團體洽談合作的機會。(成就感upup)

超過一萬名用戶的話,我們會新增使用者定位功能(2021/3/12更新,我做上癮就把定位功能也做出來了…) :Final project 原始碼

可以加LINE ID:@633cqaoy或掃描以下QRcode看我們的成果

-

☺成功通過荷蘭公司的技術考試

在課程接近尾聲的時候,由於我有Node.js和Python的經驗,成功通過此生第一次的後端技術考試+技術面試,而且是荷蘭的公司。

雖然最後沒有簽成合約(封城影響就業機會嗚嗚嗚),但是ccClub為期3個月的解題訓練+Final Project經驗是讓我通過這次面試的關鍵。

-

Final Project影響我對未來職涯的想法

我在職場2年來一直都不喜歡、也不想當Leader。原本我的轉職目標是當一輩子的碼農。

但是這次我和隊友們的合作過程很流暢。讓我覺得或許未來可以朝Leadership發展也沒問題。(也可能只是隊友太強了XD)

選擇ccClub原因&學Python原因

1. 課程免費+線上班:我本來就有在追ccClub的粉專,這是他們第一次開線上班的課程,既然免費就給它報一下。而且保證金才1500台幣,就算最後保證金被沒收也不貴。

2. 報名方式是寫300字自我介紹、300字學習動機跟300字備註。我本來的工作就是幫廠商寫廣告,900字文案就順手寫了報名。

3. 自學到有點累,想認識新戰友比較有動力繼續寫code,也想學新語言轉移注意力。

4. 報名時就寫了:想跟人組隊做拉麵Side Project

5. 很久沒跟台灣人說話了,有點好奇現在台灣人都在幹嘛。

6. Python是荷蘭人發明的,我身邊所有會寫code的荷蘭朋友們都會寫Python。

Python發明者的訪談 (荷蘭文)

ccClub線上班經驗

✶我這一期800+人報名,ccClub選了200+人線上班+實體班+高中班,最後有參與的大約180人左右,所以大概是1/4中獎機率

自學為主:第一堂課會拿到Udemy課程的序號,ccClub也有自己的Judge平台,助教們會規定每週線上課程的進度、看Medium教學文的進度,還有當週的「作業」(2週5題左右)、「練習題」(每週10題左右),需要在Judge平台上繳交。

✶所有「作業」一定要寫完14題才能拿回保證金,難度會比「練習題」高。前幾次課程有Leecode easy的題目,到後來會涉及簡易Binary search之類觀念的題型。如果有任何問題可以用專屬Github平台發問。

✶每週一在Facebook社團有課程直播,直播完至少要寫完一題隨堂練習才能拿回保證金,寫隨堂練習的時間,同時是助教時間,用的軟體是Google meet。

接近課程中段的時候,我每週花25小時研究解題,最後作業寫了16題,作業以外的練習題寫了54題。Final Project的時候又摸索出關聯式資料庫、AWS、heroku、Flask相關套件的用法

課程安裝教學的是Jupyter notebook+Anaconda,的確對新手很友善,但是在做Final Project的時候會發現很難import module ,所以我一律建議一開始就用VScode+pip3

整體評價

1. 免費資源豐富:ccClub有自己的Udemy課程、Judge平台、Python題庫有幾百題、Medium文章、Notion公告平台、Facebook社團討論區、Github發問區、助教和講師團隊。

2. 課程教得不難,但是練習題有難度
自學6個月的經驗,讓我覺得「練習題」跟「作業」的難度剛好符合我想要的水準。如果在參與ccClub之前沒有先自學6個月,我確實沒有自信能拿回保證金。

我每週一邊上Udemy資料結構的課程、一邊學習ccClub指定內容、一邊解ccClub練習題。到後來我終於學會了基礎程式設計的邏輯和方法,並且用這些方法通過了人生第一次技術面試。

3. 我在Github issue問過的問題:前幾週在Github發問區的提問都能得到快速回覆,但到後來都要等3天左右才有答覆。

4. Judge平台:前台看不到後台沒通過的測資,所以只能花時間慢慢debug。

線上班助教

1. 每週都有助教提問時間,我都問好問滿,助教不一定是Python專家或電腦科學專家,但是他們都很有熱忱

例如:我被分配到的助教剛開始不太能解答我的疑問,之後她就找了很專業的助教來支援。往後每次助教時間,我都指定那幾位專業助教來回答,所以還是學到很多。

2. 線上班得到的助教資源沒有實體班來得多,例如:剛開始Final Project的提問時間,每組只有10分鐘;助教們為了先回答實體班同學們的疑問,每週都遲到半個小時。

3. 期末Demo Party:助教群會評選他們覺得Final Project做得好的組別上台demo,ccClub沒有事前公佈詳細的評選制度和流程。(我個人希望完成的每組都能上台Demo,因為這不是coding競賽,參與者不能被剝奪和其他人分享作品的時間/權力)

4. 在荷蘭很難找到這麼多免費資源和免費人力:我下班後只願意看Netflix,但是這群ccClub志工們願意把時間花在教一大群新手程式語言。

線上班同學

1. 除了找Final Project的組員,跟其他同學完全不會有互動。台灣人都不太喜歡公開問問題或當面發表意見,跟毛很多的在荷人仕們完全是對比。

2. 台灣同學都很強:感覺大家日常生活都壓力有點大,很拼命也很怕犯錯,但也確實很厲害。

雖然制度層面做不到像Bootcamp一樣的專業和嚴謹,但是ccClub已經是個很完善的組織了。非常感謝ccClub的主辦方,讓我沉浸在Python 大約3個月。剛開始不太熟悉語法,熟悉了之後又恨自己為何是先學JS而不是Python。
最後放上IRAMEN chatbot最愛清單的功能

新增:ccClub創辦人Kevin Wei的回覆

1. 關於「Github提問區後期大約要 3 天左右才有回覆」的部分作業後期的複雜度增加,對於題目有疑問的同學變多,助教解惑需要的時間拉長,一來一往之下,回覆的速度勢必比讀書會前期慢上許多。尤其,多數同學在提問時不太擅於說明自己遇到困難的地方,若僅貼程式碼而沒針對程式邏輯多做說明,助教幫忙解惑的時間往往一題就要半小時以上。2. 關於「線上班得到的助教資源沒有實體班來得多」的部分在 Final Project 諮詢時,為了讓所有組別都能向助教發問,確保大家獲得的資源都是平等的,因此限制各組的發問時間.而關於諮詢時間,只有第一次諮詢是10分鐘 (該次諮詢在繳交proposal之前,目的僅在於協助大家確認專案方向,故時間較短),往後都是15分鐘,而空檔也開放讓學員自由提問.線上班因不受場地使用時間限制,只要同學們有問題,助教們都義不容辭幫忙解惑,以上學期為例,討論經常超過22:00,甚至最晚還有到23:30,整體而言線上班的資源不會比實體班少。3. 關於「demo party並非每組都可以報告」的部分由於一學期只有 18 週,扣掉期中考、期末考以及兩次考試的前一週剩 14 週,考量可能遇到國定假日,ccClub 讀書會課程設計上認為 13 週是最可行的方式(2017秋之後也都一路採用13週的模式進行)。在不壓縮同學們做 project 的時程下,僅有一次讀書會時間(約三小時)能讓同學們報告。因此,基於時間因素及主題多元取向,我們必須在所有作品中有所抉擇,選出 demo party 上台報告的組別。為了讓同學們的作品被看見,我們在繳交 project 時有和同學們索取 投影片PDF 和報告影片,用意是放在 ccClub 官網以及 ccClub Youtube 頻道,讓同學們的作品不受 demo party 時間的限制也能被大家看到。一直以來,ccClub 以推廣 Python、降低程式學習門檻為目標。我們盡可能吸收讀書會後同學們的每一個回饋,希望能讓讀書會更好。在有限的人力跟資源下,憑著助教們的熱血,我們一路存活到現在,也才有現在大家看到的樣子:線上課程影片、medium 教學文、Judge 作業批改系統、github 提問區等等。我們深知,除了上述軟硬體上的學習資源,在學程式的過程中最重要的是助教的協助。近幾期的讀書會,我們都堅持維持 15:1 的學生助教比(比台大校內討論課 25:1 的比例來得充沛);除了讀書會時間外,助教也都樂意在其餘時間,犧牲下班/下課娛樂、追劇、出去玩的時間,盡可能地幫同學們解惑。上學期(2020春),因為疫情的驅使,讀書會被迫以線上的方式進行,意外的效果並未有太大打折。這學期在討論是否實體和線上並行時其實挺掙扎的,一方面資源有限,雙軌進行上會更複雜,夥伴們的負擔也會更重;但既然團隊目標是「推廣 Python 、降低程式學習門檻」,讀書會更不應該受制於地理空間,如果能盡力推廣給台灣各地的朋友們就更好了。在兩種顧慮的拉扯下,後者最後勝出。

--

--