子どもと学ぶScratchプログラミング(1)

クラッチ(Scratch)とは?他の言語は?
マサチューセッツ工科大学(MIT)メディアラボが作った、小学生でも簡単にプログラミングができるソフトウェアです。これは、あくまで子どもが考え方を養うためのものです。従って、これをマスターしてもプロのプログラマとしてのお仕事は、現時点ではないかと思います。というのも、シリコンバレーで現役で活躍しているプログラマは、Computer Scienceを大学で専攻し、C、アセンブリJavaは最低マスターしています。私も、以前シリコンバレーでエンジニアをしていたので、同じ道を辿ってきました。そして、PHP/Pythonは、本を何冊か買って勉強しました。
2019年7月のプログラミング言語の検索数を集計した「TIOBE Index」は、以下の通りです。
https://www.tiobe.com/tiobe-index/
Jul 2019 Programming Language Ratings
1 Java 15.058%
2 C 14.211%
3 Python 9.260%
4 C++ 6.705%
5 C# 4.365%
実際、過去20年仕事で使った言語は、C、PythonJavaPHP、Assembly、Perlの6つで、もっとも多いのが、C言語です。というのも、アプリケーションを開発していても、デバッグをし、深堀りしていくと、最終的には、OSのカーネルに行き着きます。そして、カーネルは、ほとんどC言語で書かれています。そしてC言語カーネルソースコードは、こんな感じです。
f:id:shinji629:20190708220923p:plain
これでは、いきなり学校の先生がつまづいてしまい、教育の現場では、教える人がいなくて困ってしまいます。そこで、だれでも簡単にビジュアルでプログラミングの考え方をマスターできるソフトが必要になります。それが、次のようなスクラッチです。
f:id:shinji629:20190708221946p:plain
いきなり、猫を登場させていかにも簡単な雰囲気が出ています。次回は、アカウントの作成(無料)や、ハーバード大学が用意したカリキュラム(http://scratched.gse.harvard.edu/guide/curriculum.html)をご紹介していきたいと思います。
scratch.mit.edu