コンピュータサイエンスとcode.org②

プログラミング

 前回の記事で、code.orgの紹介と、勤務校での「コンピュータサイエンス」開講までの準備について書きました。

 今回は実際に実践してみた内容を紹介しようと思います。(今回記事に登場するコースのリンクは以下の通りです)

Express Course (2024) - Code.org
Anyonecanlearncomputerscience.Makegames,appsandartwithcode.
Web Development ('22-'23) - Code.org
Anyonecanlearncomputerscience.Makegames,appsandartwithcode.
Code.org
Anyonecanlearncomputerscience.Makegames,appsandartwithcode.

 まずはプログラミング的思考を身につけるため、「エクスプレスコース」というコースを課しました。28のレッスンを通して、シーケンス・繰り返し・条件・関数・変数といった内容を学ぶことができます。授業ごとに到達目標を与え、授業時間内に終わらない場合は家庭で進めるというように進めていきました。4月から初めて、GW中も宿題として進めてもらい、5月半ばには終了しました。ちなみに最後のレッスンは学習のまとめとして自由制作を行うというもので、リンクを共有して全員で相互評価しました。この間全体への講義は一切行っていません。

 次は文字コーディングと英語に親しむために「WebLab」にある「Web Development」というコースを課しました。このコースは日本語に対応しておらず、指示が英語で書かれています。生徒はブラウザなどの翻訳機能を駆使して指示を理解し、進めていきました。内容はhやp、imgといったいくつかのタグとCSSを使ったデザインで、リンクを使った階層構造などは省略しました。22のレッスンの内13までを課題とし、最後に自作のページを作り、相互評価しました。終了まで3週間程度かかりました。

 前期の最後は「AppLab」でのアプリ開発です。と言ってもいきなりは無理なので、アプリ開発に必要な「変数」「ループ」「条件分岐」「入力・出力」などを学ぶため「Computer Science Principles」にある「Intro to App Design」「Variables, Conditionals, and Functions」「Lists, Loops, and Traversals」を課題としました。これも全て英語で指示され、命令ブロックも全て英語なので、指示を日本語に翻訳して注釈を付けたものを資料として配布し取り組むことにしました。

 このあたりから生徒への負荷が大きくなってきていて、期限までに課題が終わらなくなってきていました。何度か期限を延ばしてどうにかこうにか終わらせて(終わらせたことにして…)、夏休み中に簡単なアプリを自由制作してもらうことができました。

 できる生徒はリスト(配列)を駆使して英単語問題アプリを作りました。他にも電卓アプリを作った生徒は、簡単そうに見えて奥が深いことに気づいたそうです。

 このようにして前期はひたすら課題→提出→課題→提出…というように進めていきました。全体への説明はほとんどせず、ひたすら巡回して質問に答えるだけでした。とりあえず課題はこなしていましたが、本当に身についたのかをしっかり評価することができていませんでした。

 今回はここまでにします。次回は探究活動前最後の課題について紹介しようと思います。

コメント