課程產生器
根據使用者的教案,建立一份可直接教學的投影片。投影片必須:
- 涵蓋教案中的所有學習目標(不可遺漏任何目標,也不可新增與其牴觸的內容)。
- 執行時間為 60–90 分鐘,並根據教學內容的多寡進行調整。
- 在每個學習目標之後立即放入一個互動式網頁遊戲,讓學生能立即應用所學。
- 適用於一個小型、充滿活力的班級,人數約 4–10 名學生(通常是兒童或青少年)。
何時啟動
- 教師上傳教案,並要求製作投影片、簡報、講義或簡報檔。
- 教師要求重建、縮短或重新設定此技能所建立之簡報的主題。
- 不適用於家長報告或課後班級摘要:請使用
report-generator。 - 不適用於沒有教案且教師希望從頭設計課程的情況:請要求提供教案,或說明此技能需要教案才能運作。
步驟 1 — 收集輸入資料
完整閱讀所有上傳的教案。將其內容整理成一個工作清單:
- 課程 / 科目名稱、單元或衝刺期、課號與標題
- 每個已編號的目標,逐字記錄(這是您必須核對的清單)
- 課堂大綱內容、定義、範例與程式碼片段
- 活動、專題、實驗、所需教材、學習單
- 任何提到的連結、準備說明或資源資料夾
然後檢查使用者的訊息,尋找以下資訊:
| 輸入項目 | 如果有提供 | 如果未提供 |
|---|---|---|
| 要使用的遊戲網站 | 僅使用這些網站(步驟 3 中驗證每個網站) | 自行選擇遊戲(步驟 3) |
| 課堂長度 | 使用提供的時長 | 自行計算(步驟 2) |
| 班級人數 / 年齡 | 使用提供的資訊 | 假設 4–10 名學生,年齡約 8–14 歲 |
| 班級行為備註(“混亂”、“安靜”、“進階”) | 調整活動與管理用投影片 | 假設為混合型精力 |
除非教案遺失或無法讀取,否則請勿停下來提問。完成時,用一行話說明您所做的假設。
步驟 2 — 將目標分組為學習目標並設定長度
教案通常列出許多細項目標(例如 8-12 個)。每個目標都做一個遊戲會太多。將相關的目標分組為學習目標(共享一個概念的主題),通常每堂課 2-6 個。例如:“定義 position”、“解釋 top/left”、“應用 position”、“描述 z-index”、“使用 z-index” → 一個目標:Position & 堆疊。
長度(除非使用者已設定):
| 學習目標數量 | 課堂長度 | 遊戲數量 |
|---|---|---|
| 2–3 | 60 分鐘 | 2–3 |
| 4 | 75 分鐘 | 4 |
| 5–6 | 90 分鐘 | 5–6 |
如果兩份教案結合成一堂課,則計算兩者總和的學習目標數量。
每個學習目標的時間預算(調整以符合總時長):
- 教學:5–10 分鐘(解釋、展示、快速理解檢查)
- 試做 / 活動:2–5 分鐘(在自己的專案中動手做,或是不插電的肢體活動)
- 遊戲:4–7 分鐘
- 固定時段:開始時的暖身 + 規則說明 3–5 分鐘;如果教案中有專題,則專題啟動 5–8 分鐘;結束時的 Exit Ticket 2–3 分鐘
如果目標較少,使用較長的時間;如果目標有 5-6 個,則使用較短的時間(6 個目標 × 11 分鐘 + 固定時段 ≈ 76 分鐘,在 90 分鐘內留有餘裕)。如果時間仍不夠,優先縮減教學和試做時間,而非遊戲時間,且絕不將遊戲時間縮短到 4 分鐘以下。
在開始建立投影片之前,先寫出時間表(每個區段的分鐘範圍)。分鐘總和必須完全等於課堂長度。將其中一個區段標記為緩衝區,以便在課堂時間不夠時刪減。
步驟 3 — 挑選並驗證遊戲
每個遊戲都必須練習其後方學習目標的技能。偏好免費、無需登入、瀏覽器為基礎的遊戲;孩子們不應需要帳戶或付費。
如果使用者指定了網站: 擷取每個網站,列出其遊戲,並挑選與每個學習目標匹配的遊戲。記錄哪些是免費的,哪些是付費的;切勿在未標記的情況下指定付費/Pro 版本的遊戲。
如果沒有指定: 從您自己的知識庫中挑選。良好的起點(使用前請先驗證——可用性和價格可能會有變動):
| 主題 | 遊戲 |
|---|---|
| CSS flexbox / grid / positioning | Codepip: Flexbox Froggy, Grid Garden, Anchoreum (codepip.com/games — 檢查哪些是免費版 vs Pro 版);Flexbox Defense |
| CSS 選取器 | CSS Diner |
| HTML 基礎 | Codepip HTML 遊戲(檢查是否免費) |
| JavaScript / 一般程式設計 | CodeCombat(免費關卡),Elevator Saga(較年長學生),Untrusted |
| 積木式程式設計 / 邏輯(較年幼兒童) | Blockly Games,Code.org 活動,Lightbot |
| Python | CodeCombat(Python 模式),CheckiO |
| Git | Learn Git Branching |
| SQL | SQL Murder Mystery,SQL Island |
| 打字 / 鍵盤技能 | typing.com,Nitro Type |
| 機器人 / 邏輯 / 演算法 | Code.org,Blockly Games(Maze,Bird),Lightbot |
| 設計 / UX | Can't Unsee,The Boolean Game,Kerning 遊戲 (type.method.ac),Color 遊戲 (color.method.ac) |
務必驗證: 擷取每個選定遊戲的 URL,以確認其可載入、免費且與目標匹配。應在一個步驟中平行擷取所有候選 URL,而非一個一個來。如果某個遊戲頁面無法擷取,請選擇另一個或告知使用者。如果環境沒有網路存取權限,請在交接時說明連結未經驗證,而非聲稱已檢查過。為每個遊戲提供:確切 URL、該時段的目標關卡(例如“關卡 1–8”),以及一個“快速完成者”的延伸選項。
如果沒有遊戲符合某個學習目標,請改用一個簡短的瀏覽器內挑戰(例如編輯 CodePen / 他們自己的專案以達到某個目標),並加以說明。
步驟 4 — 規劃投影片
投影片順序(典型 22–35 張):
- 封面 — 課程、單元、課號、一個有趣的標題
- 任務地圖 — 包含分鐘範圍的時程表;遊戲休息時間以視覺方式區分
- 課堂規則 — 一個回應用語(例如“Hello!” → “World!” = 手離開鍵盤),“用言語幫助,不要搶滑鼠”,以及一個可賺取遊戲時間的積分系統
- 對於每個學習目標:
- 章節介紹投影片(眉題“第 N 部分”,一句話概括核心概念)
- 2–5 張教學投影片,每張一個概念,使用教案中的定義和範例
- 1 張活動投影片(在程式中試做,或是不插電的“動作扮演”活動)
- 1 張快速檢查投影片(預測 / 指出 / 大聲回答問題;答案在點擊後顯示或寫在備註中)
- 遊戲投影片 — 遊戲名稱、URL、任務(關卡)、時間、快速完成者選項
- 專題啟動(如果教案中有專題/實驗)— 忠實複製要求;選做實驗標記為選做
- Exit Ticket — 每個學習目標一個問題;答案寫在講者備註中;提醒學習單 / 回家作業
在開始建立之前,將步驟 1 中的每個目標對應到至少一張投影片。如果有任何目標沒有對應的投影片,請新增一張。
步驟 5 — 撰寫內容
針對 4–10 名兒童的班級:
- 大字型、短句、每張投影片一個概念。兒童應能在 5 秒內理解每張投影片。
- 使用他們世界中的類比(午餐隊伍、貼紙、電玩遊戲、房屋)。
- 每講 8–10 分鐘,就改變模式:站起來的活動、配對挑戰、測驗或遊戲。
- 指定個人職責(計時員、“隊長”)來引導精力。
- 使用配對或兩個小型團隊,而非大型團體。
- 在深色程式碼面板上顯示真實程式碼,並附有語法色彩;每張投影片的程式碼保持在約 12 行以內。
- 如果投影片格式允許嵌入,請加入小型即時展示(例如運作中的 CSS 動畫)。
每張投影片都應有講者備註——教師閱讀這些備註,而非兒童。包含:
- 該投影片涵蓋哪個目標(“目標 3:…”)
- 要說什麼 / 問什麼,以及預期答案
- 需注意的常見學生錯誤
- 如果時間不夠可以刪減的內容
- 對於遊戲投影片:如何開始、設定計時器以及如何結束(“Hello!” → “World!”)
每張投影片的頁尾:課程名稱和該區段的時間範圍,以便教師始終知道自己是否按時進行。
步驟 6 — 建立投影片
使用當前環境中可用的最佳投影片輸出格式,按以下順序:
- 使用者指定的格式(PowerPoint、Google Slides)— 使用對應的技能。
- 如果工作階段提供Slides 成品類型,則使用它(先列出成品類型)。遵循該類型的說明。
- 否則透過 pptx 技能建立 .pptx 檔案,或建立一個自包含的 HTML 投影片。
設計:一種深色、一種淺色、1–2 種強調色(如果知道課程/腰帶/品牌顏色,則從中選取);可讀的對比度;圓潤或友善的顯示字體搭配乾淨的無襯線字體作為內文;用等寬字體顯示程式碼。遊戲休息時間的投影片應與教學投影片看起來不同(例如深色背景、大字遊戲標題),以便兒童能立即辨識。
步驟 7 — 交接前檢查
- 每個教案目標都出現在至少一張投影片上(並在備註中標記)
- 每個學習目標後都有一個遊戲,且遊戲練習了該目標的技能
- 每個遊戲 URL 都經過驗證且是免費的(或已標記)
- 各區段的分鐘數加起來等於課堂長度(60–90)
- 專題 / 實驗的要求與教案完全相符
- 每張投影片都有講者備註
反模式
- 每個細項目標一個遊戲(8 個以上的遊戲):先將目標分組為學習目標(步驟 2)。
- 憑記憶列出遊戲 URL 而不擷取它,或指定 Pro/付費版本而未標記。
- 時間表的分鐘數加總不符,或每個目標的時間無法容納在課堂長度內。
- 發明教案中沒有的目標,或更改專題要求。
- 文字過多的投影片或超過約 12 行的程式碼區塊;答案直接印在投影片上而非寫在備註中或點擊後顯示。
- 在已有合理預設值的情況下,停下來詢問班級人數、長度或遊戲相關問題(步驟 1)。
步驟 8 — 交接
簡短回覆:投影片涵蓋的內容、課堂長度及其原因、使用了哪些遊戲(以及跳過了哪些付費遊戲)、所做的任何假設,以及如果課堂時間不夠可以刪減哪個緩衝區段。