見出し画像

CS50 2023 - 基本情報と準備

各Weekの詳細に進む前に、CS50x(以下、CS50)の基本情報と開始前の準備について説明します。


基本情報

CS50

  • CS50は、コンピューターサイエンス(Computer Science)の入門コースです。

  • コースはWeek0からWeek10までの11週間構成です。
    毎週の課題提出は必須ではなく、自分のペースで学習できます。

  • 講師はハーバード大学のDavid J. Malan氏です。

  • 講義の長さは約2時間。長いのは2時間半ほどありますが、David氏の巧みな話術により終始飽きることなく視聴することができます。
    授業とか講義というより、もはやプレゼンテーションの域です。

  • Week0~9では、 Lab(ラボ)と Problem set(問題セット)の提出が求められます。

  • Week10では、Final Project(最終プロジェクト)の提出が必要です。

  • Problem setとFinal Projectをすべて提出すると、修了証明書がもらえます。

  • CS50 2023の課題提出期限は12月31日です。
    期限後も翌年への持ち越しは可能ですが、2024で内容が大きく変更されたWeekは、再提出が必要となる場合があります。

edX

  • edXは、マサチューセッツ工科大学とハーバード大学が共同で創設したMOOC(Massive Open Online Course)プラットフォームです。

  • MOOCは、簡潔に言えば、オンラインで無料受講できる大規模でオープンな講義のことです。

  • CS50は下記ページから受講できます。
    Enrollボタンを押下すると、edXの登録画面が表示されます。
    アカウントを作成して、CS50を開始しましょう。

準備

英語

CS50はすべて英語で提供されますが、以下のサイトやツールを用いることで、ある程度は日本語による学習も可能となります。

CS50 for Japanese
CODEGYM AcademyのCS50日本語翻訳版です。
2021と2022、そして2023の一部の講義動画が公開されています。
2023版が一部しかないのは残念ですが、動画以外にLabやProblem setのページも翻訳されており、これらは2022と2023でほとんど共通した内容となっているので、非常に有用です。


以下は、CS50 for Japaneseを使わず、CS50 2023を翻訳して学びたい方向けのツールです。

Language Reactor
Google Chromeの拡張機能です。
YouTube動画の文字起こし・機械翻訳を簡単に行うことができます。

Language ReactorをインストールしてYoutubeを開くと、下図のように字幕が表示されるようになります。

動画内に表示されるボタンひとつで、機能のオンオフを切り替えることができます。
現時点で問題が報告されているプラグインではないですが、インストールは自己責任でお願いいたします。

なお、CS50の講義はすべてYoutubeにアップされています。

DeepL
テキスト翻訳に便利なツールです。
LabやProblem set、コードの中に入れるコメントの翻訳などに役立ちます。
翻訳精度は高めですが、たまにおかしな訳文が出てくることもあります。
訳文に違和感を覚えたら、Google翻訳などを併用して、訳文を比較。
複数の訳文から正しいニュアンスを掴み取る…というのも、ひとつの手段です。

プログラミングの知識

CS50で学習する主な内容は以下の通りです。

  • C言語

  • SQL

  • HTML

  • CSS

  • JavaScript

  • Python

  • Flask

このコースは初心者向けとされていますが、LabやProblem setを解答する際には、自身でのリサーチや学習が求められます。

特筆すべきは、C言語がコースの中心を占めている点です。
C言語の基礎を事前に学んでおくことができれば、よりスムーズに学習を進めることができるかもしれません。


ちなみに、私自身は英語の理解には困らなかったものの、プログラミングに関する知識がほとんどなかったため、その部分では結構苦労しました。

次回は、Week0 Scratchの解説をしていきます。

この記事が気に入ったらサポートをしてみませんか?