スクラッチから始めよう - CS50x 2026
さあ、自分だけの冒険を選ぶ時が来ました!今回の課題は非常にシンプルです。scratch.mit.edu で、インタラクティブなストーリー、ゲーム、アニメーションなど、好きなプロジェクトを Scratch で実装してください。ただし、以下の要件を満たす必要があります:
- プロジェクトには少なくとも2つのスプライトを使用し、そのうち少なくとも1つは猫以外のものにしてください。
- プロジェクト全体で少なくとも3つのスクリプトが必要です(スプライトごとに3つずつである必要はありません)。
- プロジェクトには、少なくとも1つの条件分岐、少なくとも1つのループ、そして少なくとも1つの変数を使用してください。
- プロジェクトには、自分で作成したカスタムブロック(ブロックを作る経由)を少なくとも1つ使用し、そのブロックは少なくとも1つの入力を受け取るようにしてください。
- プロジェクトは、講義でデモンストレーションされたものの多く(教育的ではありますが、かなり短いものが多かったです)よりも複雑であるべきですが、Oscartime や Ivy’s Hardest Game ほど複雑である必要はありません。
これらの要件を満たすためには、プロジェクト全体で数十個のパズルピースを使用することになるでしょう。また、コードは単に正しいだけでなく、適切に設計されていることが理想的です。スクリプトが長くなりすぎている場合は、複数のスクリプト(それぞれが特定の動作を行うもの)に分割してみてください。そして、可能な限り「抽象化」を活用しましょう。一連のブロックに説明的な名前(例:ニャー)を付けられると想像できるなら、それらはカスタムブロックに移動できるかもしれません!
過去の受講生による作品からインスピレーションを得たい場合は、以下を参考にしてください:
- It’s Raining Men(講義より)
- Soccer(ゲーム)
- Cookie Love Story(アニメーション)
- Gingerbread tales(インタラクティブ・ストーリー)
- Intersection(ゲーム)
- Hogwarts(ゲーム)
これらのチュートリアルやスタータープロジェクトも役立つかもしれません。また、インスピレーションを求めて scratch.mit.edu を探索するのも自由です。しかし、まずは自分でアイデアを考え、それを実装することに挑戦してみてください。ただし、プロジェクト全体を一度に実装しようとしないでください。講義で行ったように、一つずつ取り組んでいきましょう。つまり、スモールステップで進めるのです。少しコードを書き(パズルピースをいくつかドラッグ&ドロップし)、テストし、また少し書いて、テストする、といった具合です。そして、作業内容を失わないよう、数分おきに ファイル > 今すぐ保存 を選択してください!
途中で特定の機能の実装が難しすぎると感じても、心配しないでください。設計を変更したり、問題を回避したりしてみましょう。自分が楽しいと思えるアイデアを実装しようとすれば、上記の要件を満たすのはそれほど難しくないはずです。
プロジェクトに背景、コスチューム、音声をインポートする場合は、コメントを使って出典を明記するように注意してください!
それでは、始めましょう。皆さんの作品を楽しみにしています!
この問題に関しては、以前に別の CS50 コースで提出した Scratch プロジェクトを、上記の要件を満たしている限り、再提出することは**妥当(reasonable)**と見なされます。
プロジェクトが完成したら、最後にもう一度 ファイル > 今すぐ保存 を選択します。次に ファイル > コンピューターに保存する を選択し、提出用にそのファイルを保存しておきます。コンピューターからファイルの「開く」か「保存」かを尋ねられた場合は、必ず「保存」を選択してください。
提出方法
必ず以下の手順を、正確にその順番で完了させてください!
ステップ 1 / 2
このフォームを提出してください。
このフォームを提出した後、ある時点で(手動でまとめ処理されるため、数週間から数ヶ月かかる場合があります)、提出プロセスの一部として GitHub のユーザー名を提供しているため、GitHub Education への招待が届くことがあります。これは想定内のことです!詳細は github.com/education/students で確認できます。
ステップ 2 / 2
このステップでは、Scratch プロジェクトを .sb3 で終わるファイル名としてダウンロード済みであることを前提としています。また、上記のフォームに従って GitHub アカウントを登録済みであることも前提としています。
- このリンクにアクセスし、GitHub アカウントでログインして、Authorize cs50 をクリックします。
- コーススタッフに提出物へのアクセス権限を与えることを示すボックスにチェックを入れ、Join course をクリックします。
- submit.cs50.io/upload/cs50/problems/2026/x/scratch にアクセスします。
- 「Choose File」をクリックして、作成した
.sb3ファイルを選択します。Submit をクリックします。
もし “No files in this directory are expected by cs50/problems/2026/x/scratch” というエラーが発生した場合は、Scratch プロジェクトのファイル名が確かに .sb3 で終わっているか確認してください!
これで完了です!提出物がアップロードされると、提出ページにリダイレクトされるはずです。提出リンクをクリックし、次に check50 リンクをクリックして、プロジェクトがどの要件を満たしているかを確認してください。(締め切り前であれば)何度でも再提出してかまいません!なお、10MB を超えるファイル(Scratch プロジェクトとしてはかなり大きいです)をアップロードすると、check50 の処理がうまくいかない場合があります。ファイルサイズはその制限内に収めるようにしてください。
コースの現在の進捗状況を確認するには、cs50.me/cs50x の成績表(gradebook)にアクセスしてください!