ハーバード大学のCS50W(Web Programming)を始めませんか?
こんにちは、Choimirai School のサンミンです。
【主要なアップデート】
(2022年09月11日)コース名を"RoamでマスターするCS50W"へ変更
0 はじめに
Twitterでも何回か紹介したことのある、ハーバード大学CS50W。同クラスの受講をサポートするプログラム(RoamでマスターするCS50W)をChoimirai Schoolで始めます。
今回の note では「RoamでマスターするCS50W」を始めようと思った理由を3つに分けてシェアさせていただきます。
■ なぜ、CS50Wなのか?
■ なぜ、RoamでマスターするCS50Wなのか?
■ なぜ、今なのか?
1 Why CS50W?
2019年、edXで最も人気のあった授業の一つが、ハーバード大学の「CS50 Introduction to Computer Science」。その後続として、2018年1月に登場したのがCS50Wです。
CS50Wは9個の授業と6つのプロジェクトで構成されています。
2018年1月に登場した授業ですが、ウェブプログラミング世界の変化は早く、今回 Choimirai CS50Wで受ける授業は2020年7月に新しくアップデートされた内容となっています。
CS50Wをオススメする理由は、
① 最新のウェブプログラミングの基礎が学べる
② 先生の説明がわかりやすい
③ ノートやソースコードなどの資料が充実
④ プロジェクトのスコアが70%以上+$190でハーバード大学の修了証がもらえる
また、ウェブプログラミングですので、書いたコードがどのような動きをするのかがすぐ確認できるのもオススメする理由の一つです。
但し、授業の平均長さは1時間半を超えていて、英語話者でないと授業についていくのはそう簡単ではありません。そこで、より多くの方がCS50Wの恩恵を受けられるように準備したのが、RoamでマスターするCS50Wです。
2 RoamでマスターするCS50Wの参加対象
CS50Wはウェブプログラミングの基礎が学べる授業ですが、レクチャーの内容は抽象化やアルゴリズム、セキュリティー、テストまでソフトウェア開発に必要な一連の流れを網羅しています。
Choimirai Schoolでは、最後まで受講できる方を参加対象としています。オンライン授業の場合、90%の参加者が途中で離脱すると言われています。
最後までやり抜く力がある方、或いは、やり抜く力を身につけたいという方が参加対象です。
特に、RoamでマスターするCS50Wで想定している参加者は英語のレベルによって、2つのグループに分けて考えています。
▼過去にオンライン授業を英語で修了したことがある方
①ウェブプログラミングの基礎を英語で学びたい
今後開発のお仕事に就く予定がない方でも「プログラミング的思考」や「ソフトウェア的な解決方法」を知ることはとても大事です。
プログラミング未経験の方は、オリエンテーション時に進め方について相談させてください。
▼英語のオンライン授業は初めての方
①プログラミングの経験があって、プログラミングを英語で学びたい
3 Why from Choimirai School?
学びの究極のゴールは、新しい概念を短期記憶(Short Term Memory)から長期記憶(Long Term Memory)へ保存させることです。
但し、新しい概念と出会う時、分散した情報が大量にあるため、学習しようとする概念の全貌がしっかり見えません。
CS50Wの中でも、HTMLやCSS、JavaScript、Python、Django、SQLなど大量の情報を処理する必要があります。
また、情報間の繋がりを理解しない単純な暗記は周りとの関連性がない情報となり、知識として活用できない状態で死蔵してしまいます。
RoamでマスターするCS50Wでは知識管理システムの「Roam Research」を活用することで情報間の関連性を理解し、長期記憶に保存しやすい仕組みを導入しています。
Choimirai SchoolではCS50Wの理解を深めるため、独自のC・O・P・E、システムを採用しています。
① CAPTURE:授業を受ける
② ORGANIZE:理解しやすい単位で整理する
③ PROCESS:②の情報を解釈したり、他の情報と繋げる
④ EXPRESS:学んだ知識を活かして成果を出す
▼CAPTURE
授業は主にedXのウェブサイトで動画を見ることで行います。
▼ ORGANIZE
RoamでマスターするCS50Wに参加しますと「Roam Research(以下、Roam)」が1年間無料(25000円相当)でご利用できます。また、平均1時間半を超える授業動画をより細かく編集した状態(50分未満)で、Roamのページから見ることができます。
同時に、学んだ内容をRoam上でまとめる方法も紹介させていただきます。
▼PROCESS
CS50Wの授業はReplitのTeams for Educationを使って進めます。最近は機械学習の発展で、コードを書く手間もだいぶ省けるようになっています。
また、Roamでは自分の言葉で授業内容をまとめたり、コードを書いたり、{{mermaid}} を使って様々なダイアグラムを描くこともできる。ダイアグラムで理解を可視化しますと知識をチャンク(分散している情報を記憶しやすい単位で整理した塊)として覚えることができます。
▼EXPRESS
オンライン授業を受けた人の90%以上は途中で離脱すると言われています。
離脱せず最後までやり抜くためには、①受講する明確な理由と②学んだ内容を日常で活用できる環境が肝要です。明確な理由がなく、一時的に思いついてやってみても、なんのためにこんなことをするのか、わからぬうちに嫌になってしまいます。
「Roam Research」を導入するメリットは ORGANIZEやPROCESSでも言及していますが、EXPRESSの段階でも大きな役割を担っています。
RoamはHTMLとCSS、そしてJavaScriptを使えば、様々なカスタマイズができます。授業で学んだ知識をRoamで実装すれば、内容の理解もさらに深まるはずです。
Roam Researchがベータ版で登場したのは2019年10月。まだ1年も経ってないですが、市場価値は既に200億円を超えています。今後APIでのアクセスが有効になりますとRoamに特化した開発の仕事も増えると考えています。Roamの使い方に慣れますと色んな選択肢が広がりますので積極的に活用してください。
あと、AmazonのLightsailを利用すれば、Djangoで作ったアプリを月600円で運用することもできます。参加者の中でご希望の方は、DjangoのアプリをLightsailでデプロイする手順もシェアさせていただきます。
4 RoamでマスターするCS50Wに含まれるサービス
プログラムは6か月間で、下記のサービスが含まれています。
①オリエンテーション2回(60分)
②4週間ごとの個別面談(各30分)
③専用のSlackへ参加
④1年間のRoam Research
⑤Roamにまとめられた授業ノート
⑥ReplitのTeams for Education
⑦DjangoアプリをAmazon Lightsailにデプロイする手順(任意)
CS50Wには9個の授業と6つのプロジェクトがあります。オリエンテーションの際に今のレベルにあわせ、どんなペースで進めるかを一緒に確認させていただきます。
5 Why start NOW?
プログラミングを英語で学ぶことは前から強調していることです。このタイミングで「RoamでマスターするCS50W」を始めた理由は何よりも、学びの効率が急速に改善しているからです。
以前から、プログラミング教育に「C・O・P・Eのシステム」を取り入れたいという考えはあったのですが、ORGANIZE、PROCESS、EXPRESSを効率よく実装する方法がありませんでした。
ところが、知識管理システム「Roam Research」の登場で流れは大きく変わっています。
データや情報として漠然と理解していたものを、より効率よく知識に変換することができます。
また、オンライン授業に対する認知度も上がっています。2020年7月にグーグルは Courseraと組んで新しい認定資格を発表!6か月間の授業で、授業料は300ドル。修了すれば、グーグルの求人に応募する際、大学卒業と同等の資格として扱うとのことです。
あと、時代の変化で開発のハードルは急激に下がっています。この状況でソフトウェア的な解決方法を知る人とそうでない人では絶望的なくらい差が開きます。今後開発の仕事に就かないという方にも、プログラム的な思考を学ぶメリットは大きいです。
6 参加から卒業までの流れ
RoamでマスターするCS50Wへ申し込みますと、オリエンテーション用のメールが届きます。
プログラムの開始は、オリエンテーションの実施日からとなります。卒業までの流れは下記の図を参考にしてください。
7 まとめ
今は、英語で学ぶことができれば、部屋から一歩も出ず、MITやスタンフォード、ハーバード大学などの名門から授業を受けることができます。中には、オンライン授業の成績が大学院に進学する条件となる場合も。
「RoamでマスターするCS50W」で、プログラミング学習を英語で始めませんか?