CS50 のカリキュラムの活用の秘訣は?

今日は 2週目/3週目 の講義の様子をお伝えしながら、CODEGYM Academy の前半カリキュラムとして中心的に採用している、CS50(ハーバード大学のコンピュータサイエンスの講座、クリエイティブ・コモンズライセンスで保護されており、非営利で利用可能な教材)についてもご紹介を深めていきたいと思います。
HarvardX CS50x 2021 / CC BY-NC-SA 4.0
Malan先生は、先生はとてもわかり易く平易な言葉で、時折ジョークを交えながら、コンピュータサイエンスの世界を魅力的に講義してくれます。身振り手振り、様々な小道具を使って教えてくれるので、動画を見ると理解がとても深まります。

2週目は、C言語を使って構文・アルゴリズムを学習。

HarvardX CS50x 2021 / CC BY-NC-SA 4.0
CS50 ではイントロダクションにあたる「Week 0」では、完全初心者を対象として、Scratch を使って、繰り返し処理など、アルゴリズムの考え方を学びました。
Week1(授業としては2週目)では、左側にScartch、右側にC言語の構文というような形で対比を行いながら、前回の復習も兼ねて学ぶことで、よりプログラミング言語に対する初学者のアレルギーを払拭する工夫がなされています。
HarvardX CS50x 2021 / CC BY-NC-SA 4.0
HarvardX CS50x 2021 / CC BY-NC-SA 4.0

動画視聴のポイントは、1度も止めずに「通しで視聴すること」

CS50は11週間分(Week0~Week10)にわたって講義ビデオがあり、それらの多くは平均的に2時間30分前後の長尺のビデオです。骨太なハリウッド映画1本分くらいの長さです。
ですが、この動画はぜひ、トイレ休憩や1-2分のコーヒーリフレッシュを覗いて、必ず一度のタイミングで通しで見てください。 30分で区切り、明日続きを見ようとするのではなく、まず3時間という時間の枠を確保し(たとえば、CODEGYM Academy が毎週土曜日のAM9:00~13:00 にこれを行っています)自分に厳しいルールを決めて、まずは映画を見るようにこの動画を視聴します。
独学の e-Learning においては、90% が途中で挫折してしまうというデータがあります。 多くの人は一人で続けられないからこそ、CODEGYM Academy では、「たとえ事前に録画されアーカイブされた動画であれ、厳しく出席管理をして、同じ日・同じ時間にその動画を主張する」という同期性を大切にしています。 このビデオを見ておいてくださいね、というのは、実際多くは見なかったり、挫折する原因となるのです。 CODEGYM が培ってきたノウハウの一つである、厳しい出席管理を含めた「適度な制約、プレッシャー」には従ったいただくことで、最終的に受講生の成功に近づくことを目指します。

つづきはここから

HarvardX CS50x 2021 / CC BY-NC-SA 4.0
HarvardX CS50x 2021 / CC BY-NC-SA 4.0
コンピュータが動く仕組み、0と1。つまりバイナリの解説から始まります。
講堂で行われる講義は、さまざまな小道具を使って、わかりやすく喩えられます。
HarvardX CS50x 2021 / CC BY-NC-SA 4.0
HarvardX CS50x 2021 / CC BY-NC-SA 4.0
HarvardX CS50x 2021 / CC BY-NC-SA 4.0
アルゴリズムについての理解も、本日の講義のなかで触れられました。
詳しいアルゴリズムは、Week 4 で実践されます。
擬似コードによるコーディングの概念を学んだあとは、Week0の入門、Scratch を使った講義です。
小学生の多くがブロックのプログラミングを学んでいますが、 意外とまだ触れたことが多いのではないでしょうか。 子供だましと言うには失礼なほど、かなり自由度の高い表現が出来るうえ、 アルゴリズムを初めて触れる方の最初の2〜3時間目の学習には、うってつけの教材です。
HarvardX CS50x 2021 / CC BY-NC-SA 4.0
HarvardX CS50x 2021 / CC BY-NC-SA 4.0
CODEGYM Academy は、毎週土曜日の 9:00〜13:00 の午前中に講義。 1時間のお昼休憩を挟んで、 14:00〜17:00 に「ピアラーニング」を実施します。
500人の参加者を100チームに分けて、5人1組で「初めまして」から、一緒に学び合う工夫が凝らされています。 このチームは毎週shuffleされるため、少なくともチーム開発に始まるまでの12回、ランダムで様々な受講生と交流し、コミュニケーションの経験を育むことができます。
インターネットを通じて、ビデオ・音声だけで交流する人たちと主に開発する、リモート開発ができるネイティブ学生として卒業することができます。