プログラミングを教えますとか言っている私ですが、一口にプログラミングと言ってもいろいろあります。
このブログでは毎月一回有名なプログラミング言語ランキングをウォッチしています。
そんな風に言語で分けてしまうのもひとつの分類手法だし、プログラミング教育分野ではよく見る気がします。
だけど、たとえばJavaを学びましょうと言った場合
スマホアプリのプログラミングなのか
Webのサーバサイドのプログラミングなのか
はたまたパソコンのアプリ開発か
いやいや組込みで動かしますとか
いまさらJavaアプレットをブラウザで動かすぜぇ(懐かしい!)とか
そういう切り方の分類もあります。
それぞれ同じJavaでも全然違いますから
学ぶ前にじっくり的を絞って勉強しないと
Javaの入門書買ってみたけど
なんか思ってたのと違う!
という不幸な結末になってしまいます。
コンピュータが好きならば
そうやって闇雲に、手当り次第、
あっちで飽きたり
こっちで挫折したりしながら
ガツガツと知識の幅を広げて行けば
いつかばらばらだったひとつひとつの点がつながり始め
そうかそういうことだったのか!
という気付きに至るでしょう。
それは大いに素晴らしいと思いますが
心配なのは
挫折を繰り返すうちに疲れたり飽きたりしてしまって
点が繋がり始める前に勉強をやめてしまうことです。
だからと言って、的を絞りすぎるのも問題です。
あんな技術もある
こんなこともできる
そういうコンピュータの幅広い可能性を感じながら学ぶほうが
学ぶ意欲も維持しやすいですから。
今集中して学んでいるテーマ以外の分野にも
ある程度アンテナを張りながら
勉強するといいんじゃないかと思います。