プログラミングを学ぶ前に知ってほしい基礎知識
プログラムとは
皆さん一度は耳にしたことがある「プログラム」という言葉ですが、その言葉の意味をしっかりと理解している人は少ないんじゃないでしょうか。若しくはパソコン関係の言葉で難しいものだ、と思っている人もいると思います。実は「プログラム」という言葉自体は全然難しくありません。簡単に説明すると、「プログラム」とは「物事を進めていく為の手順」を指します。例えば子供のころにあった運動会や始業式、卒業式等のイベントがあった際、「運動会のプログラム」といった形で予定表が張り出されていたりします。この場合のプログラムは「運動会を進めていく順番」を指すことになります。皆さんが思い浮かべていたパソコン関係でのプログラムも同じです。「目標の動作をさせるための手順」が記録されているものがプログラムになるのです。
プログラムとプログラミング
先ほど「プログラム」について簡単に説明しました。続いて「プログラミング」について説明したいと思います。身も蓋も無いことを言うと、「プログラミング」とは「プログラム」を作成することを指します。アニメやドラマに出てくるシステムエンジニアがパソコンに向かってカタカタと打ち込んでいるシーンがよくイメージされますが、それ以外にも「運動会のプログラムを作る」「おいしいカレーを作るためのレシピを作る」といった作業も立派なプログラミングと言えます。ただ、それぞれに手順を決めるためのルールがあります。レシピを作る場合だと各素材の単位や切り方の呼び方を把握していないといけません。そもそも日本語で作るなら正しい日本語を知っていないといけません。何故ならプログラムとは、基本的にだれが見ても同じ作業が出来るようにする必要があるからです。読む側も作る側も同じルールを知っていることで初めてプログラムは意味を成すわけです。
これは大きく2つ理由があります。まず第一に日本が世界的に見てプログラミング(IT)後進国である、ということです。プログラミングの最先端であるアメリカと比べると2、3年遅れているといわれています。これは日本人の英語嫌いが大きく影響していると思われます。何せ基本的にIT関係の資料やプログラムは全て英語です。一目見て嫌悪感を抱いてしまうわけです。しかし実際はプログラムに用いられる英語はそこまで難しくありません。その最初の嫌悪感を緩和するために小さいころから目にする、という対策が取られているわけです。第二にプログラミングを通して「論理的思考」を獲得してもらいたいということです。「論理的思考」とは、ある事柄に対して「なぜそうなったのか」「どうすれば改善できるか」といった考えを順序だてて考える方法のことです。これから先、日本をよりよくしていくためにはまず目標をしっかりと立て、それの達成に向けて順序だててトライしていき、その結果を分析して次に活かす、という考え方が必要になります。その考え方を鍛えるためにプログラミング学習が取り入れられているのです。
プログラミング教室のメリット
学校で学ぶプログラミングは主に考え方に重きを置いています。なのでシステムエンジニアになれるような基礎スキルは基本的に身につきません。それに対してプログラミング教室では、元システムエンジニアや現役のプログラマーが講師を務めていることが多く、より実践的なスキル、考え方を指導してくれます。また、学校教育ではすべての生徒様が追いつけるよう下のレベルに合わせた学習になりますが、プログラミング教室では個々のレベルに沿った内容でレッスンが進んでいくことがほとんどです。なので得意な子はどんどん進んでいくことが出来ますし、苦手な子も自分のペースで焦ることなく進めることが出来ます。もう1つ、大きなメリットがあります。それは環境がすでに整っていることです。本格的なプログラミングを行う場合、ある程度のスペックを持ったパソコンやテキストエディタ、場合によってはプログラミング言語の入ったファイル等たくさんの準備が必要になることもあります。この準備だけでも結構手間がかかりますし、ある程度慣れが必要です。その手間を省くことが出来るのは大きなメリットです。
プログラミングを教室等で学ぶ際に大事なこと
プログラミングを学び始める際、意識しておくべき大事な点があります。それは目標をしっかりと定めることです。何のためにプログラミングを始めるのかをきちんと把握しておかないとモチベーションが持ちません。代表的な目標だとゲーム作成やホームページ作成、少し詳しい人だとシステムの構築なんかもいいかも表になります。また、ここまでは学ぶ当人が設定する目標でしたが、保護者の方も子供にどのようなスキルを取得してほしいかを考える必要があります。本格的なプログラミングのスキルなのか、プログラミングを通して論理的な思考が出来るようになってほしいのか、それとも今後導入される受験対策に学ばせたいのか。それぞれで方針は異なります。これらをプログラミングを学ぶ前に教室の先生と話し合い、レッスンの内容をまとめてもらいましょう。