我對共同學習的一些想法

以下的建議,主要是給新手參考。希望這次成功通關的朋友,能再創新高。


一、心裡建設

跨出舒適圈,是一個極大的挑戰。

身份認同

身份認同,是養成(或改變)習慣最有效的方法。

原子習慣 書中,有一個戒煙的例子。

假設一個人正在戒煙,遇到有人遞煙給他時,傳統的回答是:不了,我正在戒煙。

但如果是身份認同,打心裡就認為自己是不抽煙的人。他會回答:謝謝,我不抽煙。

身份認同還可以擴大到群體認同:我們這組是一群愛寫程式的夥伴。彼此會互相提攜、互相督促。

承諾書

承諾書為什麼有效?

它有兩層涵義:合約、身份認同。

Python 百日馬課程中,講師 Angela 建議,印出承諾書(也許我該做個中文版的承諾書),親筆簽名後,放在你上課的書桌前,隨時看得見,是有些道理的。


二、實作是王道

你看游泳教學影片100次,但除非親自下水,不然不可能學會游泳。

即使是照抄,一個字一個字打進編輯程式,看著你的程式執行出成果,還是非常重要。

上了幾堂課,類似的地方打字打個七八次,你就會慢慢熟悉:程式依序從上而下大概放些什麼、分別要做什麼、哪些函式較常用到…。

你是否有過這個經驗,你最愛的電影,看了好幾次,到後來前一句台詞出來,你就知道後面要回什麼。

不管是哪種記筆記的軟體,Notion、Evernote、HackMD、Notepad++…,甚至實體筆記本。只要你用得習慣,會持續去使用的,就是好工具。

最重要的兩件事:實際動手上完課要寫筆記(而不是邊上課邊做筆記)

補充:我們論壇中,有不少之前學長姐的筆記可以參考。


三、時間及進度安排

每天一小時,比一次連續數小時有效。

每日持續

我觀察第一屆 Python 百日馬,參與朋友的最大問題,是時間安排不適當。只保留了觀看課程的時間,只看不做,甚至連當週進度的課程都沒看完,線上討論時不知道其他人在說什麼。

然後一次落隊,從此落隊。

進度的安排,程度而定。每堂課大約 1~2 小時。但你不是看就好(而且可能還要看好幾次),你還要安排時間實作練習,最後所花的時間,可能要兩三倍,甚至更多。

我建議每天保留一小時左右的時段,專注在學習 Python 這件事上。

習慣堆疊

習慣堆疊是指:在你現有的習慣中,插入你想養成的習慣。(同樣來自 原子習慣

舉例來說,你每天晚上的習慣是:下班回家、吃晚餐、洗澡、看 Netflix 一小時、玩臉書一小時、睡覺。

你想養成每天晚上用電腦學習 Python 一小時的習慣,所以把這件事,插進晚餐和洗澡之間。

新的習慣順序就變成:下班回家、吃晚餐、學習 Python 一小時、洗澡、看 Netflix + 玩臉書 一小時、睡覺

每天吃完晚餐,就花一小時學 Python,然後才去洗澡。

執行幾天後,你會發現,吃完晚餐,想都不用想,你就接著打開電腦、學習 Python。


四、共同學習

1. 每週依進度各自上課、做筆記

2. 碰到問題,【立即】在論壇提出討論(而不是等到每週討論會議時)

3. 每週一次固定線上會議(Zoom),輪流分享心得及討論

WHY 論壇?

LINE? DISCORD? 論壇?

這裡指的是討論(包含 即時非即時 )的工具,而不是筆記軟體。

我舉幾個,用論壇做,會比較好的討論範例。

1. 標示程式碼

臉書 Python 社團中,常有網友詢問程式的問題。

在論壇中,將你的程式碼標示出來,是很容易的事。

第一行用 ```python (也支援其他程式語言),最末行用 ``` ,將程式區塊包起來即可。範例:

# Python Comprehension
#  [expression for item in list]
matrix = [[1, 2], [3,4], [5,6], [7,8]]
transpose = [[row[i] for row in matrix] for i in range(2)]
print (transpose)

更多說明請參考:

補充:本功能 DISCORD 也可以

2. 程式標註差異

有時候,你要說明程式碼修改前後的差異,可以這樣表示:

aws-eventstream (1.2.0)
- aws-sdk-core (3.112.1)
+ aws-sdk-core (3.121.2)

第一行表示未更動的原始碼
第二行 - 號表示刪除的原程式碼
第三行 + 號表示新增程式碼。

標示方式請參考這篇:

3. replit 嵌入

對一些簡單的程式,直接在論壇中看執行結果更直接。

怎麼做呢?

4. 推薦解答

大家是否看過 Stack Overflow 上面的問答呢?

某網友提出問題後,其他網友陸續提供自己的心得或解答,然後原提問作者,會標註一個解決他問題的解答(但有時不一定是最佳解)。

這個功能,論壇也做得到。範例:

5. 造福學弟妹

大家在學習時,不同的主題,可能會在論壇上找到一些學長姐的分享;或是提出問題,透過佛心前輩的回答,解決了你的問題。

同樣的,大家現在的學習成長歷程,未來也可以嘉惠學弟妹們。


五、下一步

以上說的,看起來好像蠻容易是不是?用看的當然容易,你要實際執行,才會知道自已會卡在哪裡。

1. 在論壇上分組

時間媒合範例:

請大家參與投票,依照自己的情形,找到時間可以配合,每週固定討論的夥伴。

什麼時間合適呢?你什麼時候方便,就是合適的時間。

等組別確定時,我會建立各組的討論區,方便大家未來討論。

這裡是 目前進行中的共學討論,除了 Python 深入學習外,其餘通常在一小時內結束。

目前時間訂比較長,是預做保留。如果未來大家訂的時間接近,我再修改。

4 月起因為 Zoom 提供了雲端錄影的功能,更方便整理到 YouTube,讓各組複習查詢。(連結在各組的時程安排頁)

2. 加入 Discord

目前已較少利用到 Discord 的功能

論壇和 Discord 有什麼差別呢?

之前是因為要使用 Discord 的即時影音、文字討論,不過現在因為畫質的原因,已改用 Zoom。

3. 習慣養成

開始練習,利用習慣堆疊,把每天 1 小時的時段培養出來。

如果行有餘力,買一本「原子習慣」,利用開始上課前這一週,在該時段研讀實踐。


其他

之前的介紹錄影

這是之前【2022 Python 全攻略】共同學習說明會的錄影,就是本文(我對共同學習的一些想法)加上口頭說明。

論壇使用說明

目前各種功能說明散佈各處,沒有整理的很好,我再找時間整理。

在完成前,請先參考選單上方的 論壇使用說明,或是論壇的 公佈欄

重要提醒:論壇功能很多,如果不知道怎麼做,請在論壇提出問題,我會盡量解答。

其他共學課程

有網友私訊詢問,因為已有 Python 部分經驗,可否參加其他進行中的共學課程?

歡迎依自己的程度和進度,加入以下任何一組。

建議可以先旁聽看一兩堂,評估自己適不適合。

目前進行中的共學課程:
一、Py基礎組:目前 Day 47,每週進行一堂。

二、第二屆週一組:目前 Day 25,每週進行一至二堂。

三、第二屆週二組:目前 Day 18,每週進行一堂。

四、Python深入學習:目前 Section 6,每週進行 0.5~1 章。

10個讚

還漏了一些,就我自己的職涯體驗,我覺得勤於幫別人解答的人,其實才是受益最多的人,因為別人的問題,往往會觸發你的思考,考驗你先前學到的知識到底正確與否,有沒有學進去。至於寫筆記是讓自己重新反芻自己剛學過的東西,讓自己在筆記紀錄中,將自己剛學過的東西再重新過帶一次,讓自己再多學一次,並從中檢視自己學得正不正確,也是因為這樣,我往往在記錄筆記過程中,就會發現那些自己學得模模糊糊的地方,然後就會自己上 google 找前輩的解答,讓自己對這些知識點能夠知曉得更清晰,以上是我的學習心得分享,也與大家共勉之~

8個讚