プログラミングをしたいと言ったら、どこから勉強させますか?
こんにちは、ジャクソンです!
プログラミングインストラクターとして、もし私の子どもはプログラミングをしたいと言ったら、私はどこから勉強させますか?
勉強を始める前に、私は最初に“何をしたいですか?”と聞きます。プログラミングはただの道具であって、目的ではないからです。プログラミングで作りたいものが作れます。
もし私の子どもが小さいならば、例えば小学生ぐらいならば、多分“わかんない”か“ゲーム作りたい!”という返事をします。そうしたら、Scratchスクラッチで始めさせた方がいいと考えています。Scratchは簡単で、やりやすく、またたくさんゲームを作れます。小さい子どもたちはプログラミングをしたいときにはScratchをお勧めします。難しすぎないのでプログラミングを楽しく試すことができます。
でも、小学生じゃなくて、中学生か高校生なら、“何をしたい?”と聞かれたらもちろん“わかりません”か“ゲーム作りたい”と答えますが、もしかした“サイトを作りたい”か“スマホアプリを作りたい”を答える可能性もあります。子供の目的によって、その後にするアドバイスが変わってきます。
「わからない」または「サイトを作りたい」と返事した場合:
ウェブ開発の道を選択しましょう。最初にパイソン(Python)を勉強させます。パイソンは強くて、わかりやすい言語ですからプログラミングの基本なことが学習ができます。その後にJavascript, Html, CSSを勉強させます。その言語を勉強しながらパイソンのウェブフレームワーク、例えばFlaskかDjango、を使いながら簡単のサイトを作らせます。ウェブ開発で仕事によく使われる技術、大事なインターネットに技術のものについて学びます。将来にプログラマーになりたくなくてもこの知識は現代に役に立っていると思います。
もしScratchが簡単すぎるけど、ゲーム作りたい場合?
C#で勉強し始めます。パイソンよりも難しいですが、目的はゲームを作ることです。できるだけ早くUnityゲームエンジンで何か作ることが効果的です。UnityはC#を使いますから、プログラミングの基本のことを勉強しながら楽しくゲーム作れます。この場合に私の子どもは多分いま作っているものと関係あることを勉強します、またはチュートリアルをよく見ます。ゲームを作りながら私は役にたつプログラミングの基本な勉強を時々お勧めしますが、一番大事なのは楽しくプログラミングを勉強しながらゲームを作ります。もちろん、C#の一番基本なことを最初に勉強させます。でも、やりたいことを始める前に勉強が多すぎると始める前に辞めるかもしれませんから、早くゲーム作り始めて欲しいです。UnityチュートリアルとC#で勉強した基本なことで、楽しくゲーム開発の道始められます。その上で、パソコン、携帯のゲームどっちもUnityで作れます!
答えが“将来に役に立つスキルを身につけたい!”の場合
ただスキルを身につけたい場合にはパイソンで始めさせると思います。パイソンは簡単ですし、とても強い言語ですし、複数の仕事で使えますから最初にパイソンでプログラミングの基本なことを勉強させて、その後に役にたつスクリプトの作り方を教えます。将来、プログラマーにならなくても自分がパイソンでパソコンのスクリプトを書けばパソコンが色々自動に何かを動作させることができます。メールを送ったり、好きなゲームが希望のゲームが在庫切れでなくなったかどうかを確認できたり、複数のファイルをあけずに何か確認したいことが確認したりできます。その後にまた興味があったらウェブ開発をお勧めします。
プログラミングで論理的な考え方、問題解決能力を向上させますが、ただ道具です。だから誰かが“プログラミングを勉強したい!”と言ったら本当に何をしたがっているかわからないといけません。“プログラミング勉強したい”だけでその人はプログラミングが道具とわかっていないとわかります。道具が使えるように道具を勉強するのは早くつまらなくなりますが、勉強すれば作りたいものを作れるような道具を勉強したら、長く続けられるのです。
